<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://ohcnwiki.tellmey.fyi/index.php?action=history&amp;feed=atom&amp;title=Concepts%2FSupply_Delivery</id>
	<title>Concepts/Supply Delivery - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://ohcnwiki.tellmey.fyi/index.php?action=history&amp;feed=atom&amp;title=Concepts%2FSupply_Delivery"/>
	<link rel="alternate" type="text/html" href="https://ohcnwiki.tellmey.fyi/index.php?title=Concepts/Supply_Delivery&amp;action=history"/>
	<updated>2026-07-06T09:02:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.4</generator>
	<entry>
		<id>https://ohcnwiki.tellmey.fyi/index.php?title=Concepts/Supply_Delivery&amp;diff=451&amp;oldid=prev</id>
		<title>Admin: Automated edit (via update-page on MediaWiki MCP Server)</title>
		<link rel="alternate" type="text/html" href="https://ohcnwiki.tellmey.fyi/index.php?title=Concepts/Supply_Delivery&amp;diff=451&amp;oldid=prev"/>
		<updated>2026-07-06T04:17:07Z</updated>

		<summary type="html">&lt;p&gt;Automated edit (via update-page on MediaWiki MCP Server)&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:47, 6 July 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 81:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 81:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This concept aligns with the FHIR &#039;&#039;&#039;SupplyDelivery&#039;&#039;&#039; resource, which records the dispatch and receipt of supplies. Care stores coded values (status, condition) as plain snake_case enums rather than FHIR URIs.&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This concept aligns with the FHIR &#039;&#039;&#039;SupplyDelivery&#039;&#039;&#039; resource, which records the dispatch and receipt of supplies. Care stores coded values (status, condition) as plain snake_case enums rather than FHIR URIs.&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Navbox supply}}&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Related}}&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Related}}&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff:1.41:old-124:rev-451:wikidiff2=table:1.14.2:bc2a06be --&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://ohcnwiki.tellmey.fyi/index.php?title=Concepts/Supply_Delivery&amp;diff=124&amp;oldid=prev</id>
		<title>Admin: OHC identity seed</title>
		<link rel="alternate" type="text/html" href="https://ohcnwiki.tellmey.fyi/index.php?title=Concepts/Supply_Delivery&amp;diff=124&amp;oldid=prev"/>
		<updated>2026-07-04T22:43:44Z</updated>

		<summary type="html">&lt;p&gt;OHC identity seed&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Doc header&lt;br /&gt;
|type=concept&lt;br /&gt;
|domain=supply&lt;br /&gt;
|title=Supply Delivery&lt;br /&gt;
|order=5&lt;br /&gt;
|introduced=3.0&lt;br /&gt;
|concept=Concepts/Invoice&lt;br /&gt;
|reference=References/Supply Delivery&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;supply delivery&amp;#039;&amp;#039;&amp;#039; records stock actually moving — a product arriving at a location, whether shipped in from an outside supplier or transferred between rooms inside a facility. It is the &amp;amp;quot;stock in&amp;amp;quot; side of inventory: everything delivered, minus everything dispensed, equals what is on the shelf right now.&lt;br /&gt;
&lt;br /&gt;
== What it represents ==&lt;br /&gt;
&lt;br /&gt;
In Care&amp;#039;s FHIR-aligned model, a supply delivery maps to the &amp;#039;&amp;#039;&amp;#039;SupplyDelivery&amp;#039;&amp;#039;&amp;#039; resource. Each delivery is a single line of received goods, capturing:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;What moved&amp;#039;&amp;#039;&amp;#039; — the product, or a specific batch already in stock, and how much, counted as whole units or as packs times pack-size&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Condition&amp;#039;&amp;#039;&amp;#039; — whether the items arrived &amp;lt;code&amp;gt;normal&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;damaged&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Where it came from and went&amp;#039;&amp;#039;&amp;#039; — carried by the delivery order it belongs to, which names a source and a destination&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Why&amp;#039;&amp;#039;&amp;#039; — an optional link to the supply request this delivery fulfils, and to a billing invoice when stock is handed to a patient&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Cost&amp;#039;&amp;#039;&amp;#039; — the total purchase price of the line&lt;br /&gt;
&lt;br /&gt;
The key distinction is between a request and a delivery. A request is someone &amp;#039;&amp;#039;asking&amp;#039;&amp;#039; for stock; a delivery is stock &amp;#039;&amp;#039;changing hands&amp;#039;&amp;#039;. They are not one-to-one: a single request can be met by several deliveries, and a delivery can also happen with no prior request at all — so Care treats the delivery, not the request, as the event that moves inventory.&lt;br /&gt;
&lt;br /&gt;
== How it connects ==&lt;br /&gt;
&lt;br /&gt;
A delivery never stands alone — each one belongs to a &amp;#039;&amp;#039;&amp;#039;delivery order&amp;#039;&amp;#039;&amp;#039;, the shipment that gives it context. The order answers a single question, &amp;#039;&amp;#039;where is this stock coming from and going to&amp;#039;&amp;#039;, and its answer shapes everything underneath it:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Origin and destination&amp;#039;&amp;#039;&amp;#039; — an order always names a destination. If it also names an origin location, it is an internal transfer between two places in the facility. If it has no origin, the stock is entering from outside, and the order names an external &amp;#039;&amp;#039;&amp;#039;supplier&amp;#039;&amp;#039;&amp;#039; organization instead.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Internal vs. external&amp;#039;&amp;#039;&amp;#039; — this one distinction decides what each delivery line must carry. An internal move draws down a specific inventory item, a known batch already on hand; an external delivery names a product being received for the first time. A line is one or the other, never both.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Patient dispense&amp;#039;&amp;#039;&amp;#039; — an order can instead be aimed at a patient, optionally tied to a billing invoice. An order is either a location-to-location move or a patient dispense, never both — so an order with a patient has no origin.&lt;br /&gt;
&lt;br /&gt;
== Lifecycle ==&lt;br /&gt;
&lt;br /&gt;
A delivery moves through a short lifecycle as goods are received and reconciled:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;in_progress → completed&lt;br /&gt;
in_progress → abandoned&lt;br /&gt;
in_progress → entered_in_error&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;in_progress&amp;#039;&amp;#039;&amp;#039; — the delivery is being recorded but not yet finalized&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;completed&amp;#039;&amp;#039;&amp;#039; — goods are received and counted into stock; only completed lines contribute to inventory totals&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;abandoned&amp;#039;&amp;#039;&amp;#039; — started but will not be finished&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;entered_in_error&amp;#039;&amp;#039;&amp;#039; — created by mistake and should be disregarded&lt;br /&gt;
&lt;br /&gt;
The delivery order that groups these lines has its own status track. Every order begins as &amp;lt;code&amp;gt;draft&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;pending&amp;lt;/code&amp;gt;, moves to &amp;lt;code&amp;gt;in_progress&amp;lt;/code&amp;gt;, and settles into one terminal state: &amp;lt;code&amp;gt;completed&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;abandoned&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;entered_in_error&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Condition ==&lt;br /&gt;
&lt;br /&gt;
Each line records the state the goods arrived in, so damaged stock is flagged rather than silently counted:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;normal&amp;#039;&amp;#039;&amp;#039; — items arrived intact and usable&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;damaged&amp;#039;&amp;#039;&amp;#039; — items arrived compromised; the flag supports returns, write-offs, and supplier follow-up&lt;br /&gt;
&lt;br /&gt;
== Permissions ==&lt;br /&gt;
&lt;br /&gt;
Access to supply deliveries is governed by facility-scoped permissions.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Permission&lt;br /&gt;
! Description&lt;br /&gt;
! System Roles&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;can_write_supply_delivery&amp;lt;/code&amp;gt;&lt;br /&gt;
| Create or update deliveries on internal transfer orders (an order with an origin location); gates both the create and update actions for in-facility moves&lt;br /&gt;
| Facility Admin, Admin&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;can_write_external_supply_delivery&amp;lt;/code&amp;gt;&lt;br /&gt;
| Create or update deliveries on external orders (no origin, stock arriving from an outside supplier); gates both create and update for inbound deliveries&lt;br /&gt;
| Facility Admin, Admin&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;can_read_supply_delivery&amp;lt;/code&amp;gt;&lt;br /&gt;
| List and retrieve deliveries and their delivery orders&lt;br /&gt;
| Facility Admin, Administrator, Admin, Staff, Doctor, Nurse, Volunteer, Pharmacist&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Roles are granted to users through their facility and organization memberships, and permissions cascade down the organization tree — so a role held at a parent organization carries to the facilities beneath it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== FHIR reference ==&lt;br /&gt;
&lt;br /&gt;
This concept aligns with the FHIR &amp;#039;&amp;#039;&amp;#039;SupplyDelivery&amp;#039;&amp;#039;&amp;#039; resource, which records the dispatch and receipt of supplies. Care stores coded values (status, condition) as plain snake_case enums rather than FHIR URIs.&lt;br /&gt;
&lt;br /&gt;
{{Related}}&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>