Goods Receipt Lifecycle¶
Models the lifecycle of a Goods Receipt (bolla di consegna / DDT) from creation on expected delivery through physical receipt, quality check, and matching against the originating Purchase Order and Supplier Invoice. Covers discrepancy handling (quantity, quality, price variances).
Object: goods-receipt ·
States: 8 ·
Transitions: 9
State Diagram¶
flowchart LR
%% ── classDef palette ─────────────────────────────────────
classDef stInit fill:#0d9488,stroke:#0f766e,color:#fff,font-weight:bold
classDef stNorm fill:#3b82f6,stroke:#2563eb,color:#fff
classDef stOk fill:#16a34a,stroke:#15803d,color:#fff,font-weight:bold
classDef stFail fill:#dc2626,stroke:#b91c1c,color:#fff,font-weight:bold
classDef stHold fill:#d97706,stroke:#b45309,color:#fff
%% ── nodes ───────────────────────────────────────────────
expected(["Expected"])
partially_received["Partially Received"]
received["Received"]
under_inspection["Under Inspection"]
matched["Matched"]
discrepancy["Discrepancy"]
closed[["Closed"]]
rejected[["Rejected"]]
%% ── transitions ─────────────────────────────────
expected -->|"inventory-adjusted"| partially_received
expected -->|"inventory-adjusted"| received
partially_received -->|"inventory-adjusted"| received
received -->|"inventory-counted"| under_inspection
under_inspection -->|"inventory-counted"| matched
under_inspection -->|"inventory-adjusted"| discrepancy
under_inspection -->|"inventory-adjusted"| rejected
discrepancy -->|"inventory-adjusted"| matched
matched -->|"inventory-transferred"| closed
%% ── class assignments ───────────────────────────
class expected stInit
class partially_received,received,under_inspection,matched,discrepancy stNorm
class closed stOk
class rejected stFail
States¶
| State | Label | Description | Initial | Terminal |
|---|---|---|---|---|
expected |
Expected | Goods Receipt created from Purchase Order. Awaiting physical delivery. | ✓ | |
partially-received |
Partially Received | Some items from the PO received. Remaining items still expected. | ||
received |
Received | All expected items physically received at warehouse or store. | ||
under-inspection |
Under Inspection | Items being counted, weighed, and quality-checked against the delivery note. | ||
matched |
Matched | Physical receipt matches PO quantities and quality. Ready for invoice matching. | ||
discrepancy |
Discrepancy | Variance found: quantity short/over, damaged items, or wrong products. Supplier notification required. | ||
closed |
Closed | Receipt fully reconciled. Inventory updated. Three-way match (PO, GR, Invoice) complete. Accounting entry posted. | ||
| ✓ | ||||
rejected |
Rejected | Entire delivery refused (e.g. wrong goods, severe damage). Returned to supplier. | ✓ |
Transitions¶
| From | To | Trigger | Guards |
|---|---|---|---|
expected |
partially-received |
inventory-adjusted |
Fewer items received than PO quantity |
expected |
received |
inventory-adjusted |
All PO lines received in expected quantities |
partially-received |
received |
inventory-adjusted |
Remaining expected items now received |
received |
under-inspection |
inventory-counted |
Warehouse operator initiates count and quality check |
under-inspection |
matched |
inventory-counted |
Physical count matches delivery note; No quality issues found |
under-inspection |
discrepancy |
inventory-adjusted |
Count or quality variance beyond tolerance |
under-inspection |
rejected |
inventory-adjusted |
Goods refused in their entirety (wrong product, severe damage) |
discrepancy |
matched |
inventory-adjusted |
Supplier credit note issued OR adjusted quantity agreed; Variance documented and approved |
matched |
closed |
inventory-transferred |
Invoice received and matched; Accounting entry approved |