BodyliaBodylia OpenB2BSign in
← All guides

VMI replenishment

nutrab2b.planning.vmi_proposed.v2 · Inventory & planning

Purpose
Supplier-proposed replenishment based on buyer stock and min/max levels.
When to send
Stock below reorder point.
Sender → receiver
Supplier → Buyer
Expected responses
PO or ACK
Equivalent standards
X12: 852 / 855 · EDIFACT: SLSRPT / ORDRSP
Scenarios using it
-

Fields and mappings

FieldTypeReqDescriptionCode list / formatEDI / GS1 / SAP mapping
proposal_idstringyesProposal
location_glnstringyesBuyer location^\d{13}$
linesarray<object>yesProposed
item_idstringyesItem
on_handobjectyesOn hand
valuenumberyesQuantity
uomstringyesUnit of measureuom
minobjectyesMin
valuenumberyesQuantity
uomstringyesUnit of measureuom
maxobjectyesMax
valuenumberyesQuantity
uomstringyesUnit of measureuom
proposedobjectyesProposed
valuenumberyesQuantity
uomstringyesUnit of measureuom

Business rules

Example

{
  "specversion": "2.0",
  "id": "evt-vmi_replenish-VMI_REPLENISH-1",
  "type": "nutrab2b.planning.vmi_proposed.v2",
  "source": "urn:gln:4012345000009:erp",
  "subject": "VMI_REPLENISH",
  "time": "2026-11-02T09:00:00Z",
  "datacontenttype": "application/json",
  "dataschema": "https://nutrab2b.org/schemas/2.0/VMI_REPLENISH.json",
  "sender": {
    "gln": "4012345000009"
  },
  "receiver": {
    "gln": "0614141000012"
  },
  "correlationid": "CONV-RFQ-1001",
  "idempotencykey": "VMI_REPLENISH:VMI_REPLENISH:1",
  "sequence": 1,
  "env": "test",
  "data": {
    "proposal_id": "VMI-88",
    "location_gln": "0614141000012",
    "lines": [
      {
        "item_id": "ASH-KSM-5",
        "on_hand": {
          "value": 80,
          "uom": "KGM"
        },
        "min": {
          "value": 100,
          "uom": "KGM"
        },
        "max": {
          "value": 600,
          "uom": "KGM"
        },
        "proposed": {
          "value": 520,
          "uom": "KGM"
        }
      }
    ]
  }
}

Mapping checklist