{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://api.orderful.com/v3/simplified-schemas/PURCHASE_ORDER_ACKNOWLEDGMENT","title":"Simplified Purchase Order Acknowledgment","description":"A simplified version of the purchase order acknowledgment document","type":"object","properties":{"purchaseOrderNumber":{"type":"string","description":"Purchase order number this acknowledgment refers to — the buyer’s PO when responding to one, or the number of the replenishment order the supplier is creating.","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.purchaseOrderNumber"],"orderful_x12_notes":["BAK03 — echoes the PO number from the originating 850 BEG03. On a replenishment order there is no originating 850; the number comes from the buyer’s replenishment program and is supplied by the producer."],"orderful_edifact_paths":["ORDRSP:beginningOfMessage.documentMessageId_composite.documentId"],"orderful_edifact_notes":["BGM02 (1004) — echoes the PO number from the originating ORDERS BGM02"]},"acknowledgmentNumber":{"description":"Supplier-assigned acknowledgment or sales order reference number","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.referenceIdentification"],"orderful_x12_notes":["BAK08 — the supplier's internal reference for this acknowledgment or sales order. In the outbound direction the supplier provides this value; if omitted the writer may auto-generate a transaction reference."],"type":"string"},"acknowledgmentDate":{"description":"Date the acknowledgment was issued","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.date1"],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","BAK09 — X12 element 373, \"the date assigned by the sender to the acknowledgment\". Chiefly context for a receiver of a Mosaic 855; when a producer omits it, the writer stamps the acknowledgment's own send date rather than leaving BAK09 empty."],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]},"releaseNumber":{"description":"Release number identifying a specific release against a blanket or contract purchase order","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.releaseNumber"],"orderful_x12_notes":["BAK05 — X12 element 328 (Release Number). Echoes BEG04 from the originating 850 when present."],"type":"string"},"contractNumber":{"description":"Contract number associated with the purchase order being acknowledged","orderful_tags":["context"],"orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.contractNumber"],"orderful_x12_notes":["BAK07 — echoes the contract number from the originating 850 BEG06 when present."],"type":"string"},"purpose":{"type":"string","enum":["original","cancellation","change","replace","confirmation"],"description":"Intended purpose of the acknowledgment transaction (e.g., original acknowledgment, change, cancellation, or confirmation of backorder availability)","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.transactionSetPurposeCode"],"orderful_x12_notes":["BAK01 is mandatory in X12 but optional here — when omitted, the writer defaults to '00' (original) unless the guideline pins a different value. A producer states the acknowledgment's position in its own life cycle, not the purchase order's, and the writer emits the guideline's code for that position; where the guideline has no code for it, the value is rejected."],"orderful_edifact_paths":["ORDRSP:beginningOfMessage.messageFunctionCode"],"orderful_edifact_notes":["BGM03 (1225) message function code. When omitted, the writer defaults to 9 (original)."],"orderful_enum_meta":{"original":{"description":"New purchase order acknowledgment","orderful_x12_codes":["00","16"],"orderful_edifact_codes":["9"]},"cancellation":{"description":"Cancellation of an existing order acknowledgment","orderful_x12_codes":["01"],"orderful_edifact_codes":["1"]},"change":{"description":"Change to an existing order acknowledgment","orderful_x12_codes":["02","03","04","19"],"orderful_edifact_codes":["4"]},"replace":{"description":"Replace an existing order acknowledgment","orderful_x12_codes":["05"],"orderful_edifact_codes":["5"]},"confirmation":{"description":"Confirmation that a previously backordered item is now available","orderful_x12_codes":["06"],"orderful_edifact_codes":["6"]}}},"status":{"type":"string","enum":["accepted","changed","rejected","onHold","replenishment"],"description":"Overall status of the purchase order acknowledgment (BAK02)","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.acknowledgmentTypeCode"],"orderful_x12_notes":["BAK02 is derived from line-level analysis, not echoed verbatim from the producer's status. The producer's status is validated for consistency (rejected → every line rejected; accepted/changed → at least one line fulfilled in some form) and a contradiction throws. Replenishment is exempt: it is a declared state, not one inferred from line outcomes. The emitted code is the highest-preference value from the guideline's allowed set: state 'all accepted, no changes' → AK > AT > AD > AC; state 'some changes' → AC > AE; state 'all rejected' → RJ > RD; state 'on hold' → AH, its only code; state 'replenishment' → AP, its only code. No-detail codes (AK/AT/RJ) suppress PO1_loop emission; AE filters lines to those with at least one non-IA action."],"orderful_edifact_paths":["ORDRSP:beginningOfMessage.responseTypeCode"],"orderful_edifact_notes":["BGM04 (4343) response type code, derived from line-level analysis like BAK02: AP (accepted) for all-accepted-no-changes, AC (accepted with amendment) for any changes, RE (rejected) for all-rejected."],"orderful_enum_meta":{"accepted":{"description":"All line items accepted without changes","orderful_x12_codes":["AD","AK","AT","AC"],"orderful_edifact_codes":["AP"]},"changed":{"description":"One or more line items have changes — including price or quantity adjustments, partial backorders, or items on hold","orderful_x12_codes":["AC","AE"],"orderful_edifact_codes":["AC"]},"rejected":{"description":"Purchase order rejected","orderful_x12_codes":["RD","RJ"],"orderful_edifact_codes":["RE"]},"onHold":{"description":"The supplier has placed the order on hold rather than committing to it — no line is confirmed for supply, and none is rejected.","orderful_x12_codes":["AH"]},"replenishment":{"description":"Supplier-originated replenishment order (VMI) — the supplier proposes the order rather than responding to a buyer purchase order, so no line items were accepted or rejected.","orderful_x12_codes":["AP"],"orderful_x12_notes":["There is no originating 850 on this variant, so the baseline fields — orderQuantity, orderUnitPrice, purchaseOrderLineId, requestedShipDate, requestedDeliveryDate — stay unset rather than being back-filled from the 855. PO102 and PO104 carry the supplier’s own figures and route to the accepted action’s quantity and unitCostPrice. Fields the 855 carries in its own right, such as productIds and purchaseOrderDate, populate normally."]}}},"statusReasonCode":{"description":"Coded reason the order was rejected. Sufficient on its own — an accompanying statusNote is optional.","orderful_x12_notes":["The coded reason is the primary carrier and is complete by itself: when the partner guideline requires a free-text note and no statusNote was supplied, render this code's description into the note element. Source varies by guideline — commonly REF02 with REF01=TD, sometimes N902."],"type":"string","enum":["discontinued","invalidAddress","invalidBillToCode","invalidItemNumber","invalidPrice","invalidItemQuantity","belowMinimumQuantity","invalidQuantityMultiple","itemNotSplittable","invalidShipFrom","invalidShipMethod","invalidShipToName","invalidShipToAddress1","invalidShipToAddress2","invalidShipToCity","invalidShipToStateOrProvince","invalidShipToPostalCode","invalidShipToCountry","itemNotAuthorized","itemRecall","itemSetupIssue","mainlandOnly","missingLineItemId","missingOrderId","missingShipId","naturalDisaster","outOfStock","seasonalOrEndOfLife","shippingInFull","systemIssue","taxNexusIssue","transportationIssuePrepaid","transportationIssueCollect","undeliverableAddress","weather"],"orderful_enum_meta":{"discontinued":{"description":"Item has been discontinued"},"invalidAddress":{"description":"An address on the order is not valid"},"invalidBillToCode":{"description":"The bill-to party code is not recognised"},"invalidItemNumber":{"description":"The item number is not recognised"},"invalidPrice":{"description":"The price on the order does not match the agreed price"},"invalidItemQuantity":{"description":"The quantity ordered is not valid for this item"},"belowMinimumQuantity":{"description":"The quantity ordered is below the minimum the supplier will sell for this item"},"invalidQuantityMultiple":{"description":"The quantity ordered is not a valid multiple of the item's order increment"},"itemNotSplittable":{"description":"The item must be ordered in whole cases and cannot be split"},"invalidShipFrom":{"description":"The ship-from location is not recognised"},"invalidShipMethod":{"description":"The requested carrier, service level or ship method cannot be used"},"invalidShipToName":{"description":"The ship-to name is not valid"},"invalidShipToAddress1":{"description":"The first line of the ship-to address is not valid"},"invalidShipToAddress2":{"description":"The second line of the ship-to address is not valid"},"invalidShipToCity":{"description":"The ship-to city is not valid"},"invalidShipToStateOrProvince":{"description":"The ship-to state or province is not valid"},"invalidShipToPostalCode":{"description":"The ship-to postal code is not valid"},"invalidShipToCountry":{"description":"The ship-to country is not valid"},"itemNotAuthorized":{"description":"The buyer is not authorised to purchase this item"},"itemRecall":{"description":"The item is subject to a recall and cannot be supplied"},"itemSetupIssue":{"description":"The item is not fully set up in the supplier's system"},"mainlandOnly":{"description":"The item ships only to destinations on the contiguous mainland"},"missingLineItemId":{"description":"The order line carries no line item identifier"},"missingOrderId":{"description":"The order carries no order identifier"},"missingShipId":{"description":"The order carries no shipment identifier"},"naturalDisaster":{"description":"A natural disaster prevents the item being supplied"},"outOfStock":{"description":"The item is out of stock"},"seasonalOrEndOfLife":{"description":"The item is seasonal or at end of life and is no longer available"},"shippingInFull":{"description":"The line is being shipped complete, with no balance outstanding","orderful_x12_notes":["Applies only to an accepted line, which carries no reason code — this value is unreachable today and no 855 spec has been found that sources it. Do not route a partner code here without confirming the meaning."]},"systemIssue":{"description":"A system or processing error prevented the order being accepted"},"taxNexusIssue":{"description":"The supplier has no tax nexus for the destination and cannot supply it"},"transportationIssuePrepaid":{"description":"Prepaid transportation could not be arranged"},"transportationIssueCollect":{"description":"Collect transportation could not be arranged"},"undeliverableAddress":{"description":"The address cannot be delivered to — e.g. a PO box where the carrier requires a street address"},"weather":{"description":"Weather conditions prevent the item being supplied"}}},"statusNote":{"description":"Free-text explanation of the acknowledgment — optional context alongside statusReasonCode, or the reason itself when the partner defines no reason-code list.","orderful_x12_notes":["Prose is never coerced into a partner code list: when the guideline requires a coded reason and only this note was supplied, raise it rather than inferring a code. Source varies by guideline — commonly N9-MSG/MTX, sometimes REF03."],"type":"object","properties":{"description":{"description":"Brief description or title of the note","type":"string"},"text":{"description":"Array of text lines for the note content","type":"array","items":{"type":"string"}}},"additionalProperties":false},"detailLevel":{"type":"string","enum":["all","none","exceptionsOnly"],"description":"Indicates how much line-item detail this acknowledgment carries: all lines, no lines, or only the lines the sender changed from the original purchase order. Primarily for recipients of the acknowledgment, who use it to decide whether to rely on lineItems or fall back to the original purchase order for any unlisted line. This is the detail axis of BAK02 and is orthogonal to status — e.g. an accepted order can be acknowledged with full detail (AD) or with no detail (AK).","orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.acknowledgmentTypeCode"],"orderful_x12_notes":["Shares BAK02 with status — the single emitted acknowledgmentTypeCode encodes both the status (accept/change/reject) and the detail axis at once (e.g. AC = changed + full detail, AE = changed + exceptions only, AK = accepted + no detail). When receiving: derive from the actual presence of line detail, not the BAK02 code — senders are unreliable about pairing the right type code with what they actually send, so trust the PO1_loop content: line detail present → all, no line detail present → none. The one case where the code is authoritative is the exception-detail-only codes AE and RF: detail IS present but represents only the changed lines, which presence alone can't distinguish from 'all' — so AE/RF → exceptionsOnly regardless of how many lines appear. When sending: this is a hint that narrows BAK02 selection within the status's allowed set and governs PO1_loop emission — 'none' suppresses line detail, 'exceptionsOnly' filters lineItems to changed lines, 'all' emits every line. When omitted, the writer infers it from whether lineItems is populated together with the guideline's allowed BAK02 codes."],"orderful_enum_meta":{"all":{"description":"Full line-item detail is present — every line of the order appears in lineItems, whether changed or not","orderful_x12_codes":["AD","AC","RD","AP"],"orderful_x12_notes":["AP is a replenishment order rather than a response, so it has no prior purchase order whose lines could be omitted — its PO1_loop is always the complete order."]},"none":{"description":"No line-item detail is present — the acknowledgment conveys only the header-level status. Recipients should fall back to the original purchase order for line detail","orderful_x12_codes":["AK","AT","RJ"]},"exceptionsOnly":{"description":"Only exception lines are present — lineItems contains just the lines the sender changed from the original purchase order (those with isChanged=true). Lines not listed should be treated as accepted exactly as ordered","orderful_x12_codes":["AE","RF"]}}},"dates":{"description":"Important dates such as scheduled ship date and estimated delivery date","orderful_x12_path":["855:dateTimeReference","855:beginningSegmentForPurchaseOrderAcknowledgment.*.date","855:beginningSegmentForPurchaseOrderAcknowledgment.*.date1"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod"],"type":"object","properties":{"purchaseOrderDate":{"description":"Date the purchase order was issued","orderful_tags":["context"],"orderful_x12_path":["855:beginningSegmentForPurchaseOrderAcknowledgment.*.date"],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","BAK04 — echoes the PO date from the originating 850 BEG05"],"orderful_edifact_codes":["4"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=4"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]},"estimatedDeliveryDate":{"description":"Estimated date of delivery to the buyer","orderful_x12_codes":["017","067"],"orderful_x12_path":["855:dateTimeReference.* | dateTimeQualifier=017","855:dateTimeReference.* | dateTimeQualifier=067"],"orderful_edifact_codes":["2","17","67"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=2,17,67"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"requestedPickupDate":{"description":"Requested date for pickup by carrier","orderful_x12_codes":["118"],"orderful_x12_path":["855:dateTimeReference.* | dateTimeQualifier=118"],"orderful_edifact_codes":["200"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=200"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"scheduledShipDate":{"description":"Scheduled date for shipment","orderful_x12_codes":["068"],"orderful_x12_path":["855:dateTimeReference.* | dateTimeQualifier=068"],"orderful_edifact_codes":["10","11"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=10,11"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"latestDeliveryDate":{"description":"Latest acceptable date for delivery","orderful_x12_codes":["063"],"orderful_x12_path":["855:dateTimeReference.* | dateTimeQualifier=063"],"orderful_edifact_codes":["63"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=63"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"earliestDeliveryDate":{"description":"Earliest acceptable date for delivery","orderful_x12_codes":["064"],"orderful_x12_path":["855:dateTimeReference.* | dateTimeQualifier=064"],"orderful_edifact_codes":["64"],"orderful_edifact_paths":["ORDRSP:dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=64"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"salesOrderDate":{"description":"Date the supplier created the corresponding sales order in their system","orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","A guideline that redefines BAK09 to the supplier's sales order date routes it here; BAK09's standard meaning is the acknowledgment date and lands on acknowledgmentDate, so this has no default source."],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]}},"additionalProperties":false},"parties":{"description":"Parties involved in the acknowledgment. Includes contact information where available.","orderful_x12_path":["855:N1_loop","855:administrativeCommunicationsContact"],"orderful_x12_notes":["Parties commonly echo from the originating 850 — when a party is omitted here and the guideline requires it, the writer pulls the corresponding N1_loop entry from $purchaseOrder."],"orderful_edifact_paths":["ORDRSP:nameAndAddress_group"],"type":"object","properties":{"buyer":{"description":"Buying party who is purchasing the product or service","orderful_x12_path":["855:N1_loop.* | entityIdentifierCode=BY"],"orderful_x12_codes":["BY"],"type":"object","properties":{"name":{"description":"Party name or company name","type":"string"},"additionalName1":{"description":"Additional name line 1","type":"string"},"additionalName2":{"description":"Additional name line 2","type":"string"},"identificationCode":{"description":"Party identification code value","type":"string"},"identificationCodeType":{"type":"string","enum":["sendersId","receiversId","duns","plantCode","dunsPlus4","drugEnforcementAdmin","telephone","federalReserveRouting","standardAddressSAN","healthIndustryHIN","warehouse","schoolId","memberId","stateLicenseId","globalLocationId","standardCarrierAlphaCode"],"description":"Type of identification code","orderful_x12_path":["856:HL_loop.*.N1_loop.*.partyIdentification.*.identificationCodeQualifier"],"orderful_x12_notes":["91 and 92 resolve by direction rather than naming a fixed party — the code says who assigned the identifier, so it lands on whichever side of the transaction that is. 850: 92 is the sender, 91 the receiver. 856 and 810: 91 the sender, 92 the receiver. 855: the buyer receives, so 92 (assigned by buyer) is the receiver."],"orderful_enum_meta":{"sendersId":{"description":"Sender's identification code","orderful_x12_codes":["58","93","91","92","ZZ"],"orderful_edifact_codes":["91"]},"receiversId":{"description":"Receiver's identification code","orderful_x12_codes":["59","94","91","92","ZZ"],"orderful_edifact_codes":["92"]},"duns":{"description":"Dun & Bradstreet number","orderful_x12_codes":["1"],"orderful_edifact_codes":["16"]},"plantCode":{"description":"Plant code","orderful_x12_codes":["6"]},"dunsPlus4":{"description":"DUNS+4 identifier","orderful_x12_codes":["9"]},"drugEnforcementAdmin":{"description":"DEA (Drug Enforcement Administration) number","orderful_x12_codes":["11"]},"telephone":{"description":"Telephone number as identifier","orderful_x12_codes":["12"]},"federalReserveRouting":{"description":"Federal Reserve routing number","orderful_x12_codes":["13"]},"standardAddressSAN":{"description":"Standard Address Number (SAN)","orderful_x12_codes":["15"]},"healthIndustryHIN":{"description":"Health Industry Number (HIN)","orderful_x12_codes":["21"]},"warehouse":{"description":"Warehouse identifier","orderful_x12_codes":["54"]},"schoolId":{"description":"School identifier","orderful_x12_codes":["DS"]},"memberId":{"description":"Member identifier","orderful_x12_codes":["MI"]},"stateLicenseId":{"description":"State license identifier","orderful_x12_codes":["SL"]},"globalLocationId":{"description":"Global Location Number (GLN)","orderful_x12_codes":["UL"],"orderful_edifact_codes":["9"]},"standardCarrierAlphaCode":{"description":"Standard Carrier Alpha Code (SCAC)","orderful_x12_codes":["2"]}}},"addressLine1":{"description":"Street address line 1","type":"string"},"addressLine2":{"description":"Street address line 2","type":"string"},"addressLine3":{"description":"Street address line 3","type":"string"},"addressLine4":{"description":"Street address line 4","type":"string"},"city":{"description":"City name","type":"string"},"stateOrProvinceCode":{"description":"State or province code","type":"string"},"postalCode":{"description":"Postal or ZIP code","type":"string"},"countryCode":{"description":"Country code (ISO)","type":"string"},"zoneType":{"description":"Address zone type","type":"string","enum":["residential","commercial"]},"deliveryPoint":{"description":"Specific delivery point within this location, such as a dock, door or bay, identifying where goods should be presented on arrival","type":"string"},"contacts":{"description":"Contact persons for this party","type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["primary","customerRelations","orderInquiry","department","shipping","receiving","hazmat","certifier"],"description":"Type of contact — the role this person or office serves for the party they belong to","orderful_x12_path":["856:HL_loop.*.N1_loop.*.administrativeCommunicationsContact.*.contactFunctionCode","846:administrativeCommunicationsContact.*.contactFunctionCode"],"orderful_x12_notes":["Header-level and party-level contact segments both route to the parent party's contacts; the parent party's role supplies the business context.","Use a value other than 'primary' only to distinguish multiple contacts within a single party."],"orderful_enum_meta":{"primary":{"description":"General contact or party-level contact","orderful_x12_codes":["AJ","BD","IC","DC"]},"customerRelations":{"description":"Customer relations contact","orderful_x12_codes":["CR"]},"orderInquiry":{"description":"Order or billing contact","orderful_x12_codes":["BI","OC"]},"department":{"description":"Sales representative or department contact","orderful_x12_codes":["SR"]},"shipping":{"description":"Shipping department contact","orderful_x12_codes":["SD"]},"receiving":{"description":"Receiving department contact","orderful_x12_codes":["RE"]},"hazmat":{"description":"Hazardous material contact","orderful_x12_codes":["HM"]},"certifier":{"description":"Contact who certifies the accuracy or regulatory compliance of the shipment","orderful_x12_codes":["CE"]}}},"name":{"description":"Contact person name","type":"string"},"phoneNumber":{"description":"Contact phone number. Default source is the comm-number paired with a TE qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type (e.g. \"Fax #\", \"Email\"), follow the note and route accordingly.","type":"string"},"faxNumber":{"description":"Contact fax number. Default source is the comm-number paired with an FX qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on a comm-number element labels its value as fax even when the qualifier is TE/EM, follow the note and route the value here.","type":"string"},"email":{"description":"Contact email address. Default source is the comm-number paired with an EM qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type, follow the note and route accordingly.","type":"string"},"contactReference":{"description":"Reference that clarifies the contact — e.g. an organizational unit, department/role, or partner-assigned code","orderful_x12_path":["850:administrativeCommunicationsContact.*.contactInquiryReference"],"type":"string"}},"required":["type"],"additionalProperties":false}}},"additionalProperties":false},"shipTo":{"description":"Ship-to location where goods will be delivered","orderful_x12_path":["855:N1_loop.* | entityIdentifierCode=ST,BS"],"orderful_x12_codes":["ST","BS"],"orderful_edifact_codes":["ST","DP"],"orderful_edifact_paths":["ORDRSP:nameAndAddress_group.*.nameAndAddress | partyFunctionCodeQualifier=ST,DP"],"type":"object","properties":{"name":{"description":"Party name or company name","type":"string"},"additionalName1":{"description":"Additional name line 1","type":"string"},"additionalName2":{"description":"Additional name line 2","type":"string"},"identificationCode":{"description":"Party identification code value","type":"string"},"identificationCodeType":{"type":"string","enum":["sendersId","receiversId","duns","plantCode","dunsPlus4","drugEnforcementAdmin","telephone","federalReserveRouting","standardAddressSAN","healthIndustryHIN","warehouse","schoolId","memberId","stateLicenseId","globalLocationId","standardCarrierAlphaCode"],"description":"Type of identification code","orderful_x12_path":["856:HL_loop.*.N1_loop.*.partyIdentification.*.identificationCodeQualifier"],"orderful_x12_notes":["91 and 92 resolve by direction rather than naming a fixed party — the code says who assigned the identifier, so it lands on whichever side of the transaction that is. 850: 92 is the sender, 91 the receiver. 856 and 810: 91 the sender, 92 the receiver. 855: the buyer receives, so 92 (assigned by buyer) is the receiver."],"orderful_enum_meta":{"sendersId":{"description":"Sender's identification code","orderful_x12_codes":["58","93","91","92","ZZ"],"orderful_edifact_codes":["91"]},"receiversId":{"description":"Receiver's identification code","orderful_x12_codes":["59","94","91","92","ZZ"],"orderful_edifact_codes":["92"]},"duns":{"description":"Dun & Bradstreet number","orderful_x12_codes":["1"],"orderful_edifact_codes":["16"]},"plantCode":{"description":"Plant code","orderful_x12_codes":["6"]},"dunsPlus4":{"description":"DUNS+4 identifier","orderful_x12_codes":["9"]},"drugEnforcementAdmin":{"description":"DEA (Drug Enforcement Administration) number","orderful_x12_codes":["11"]},"telephone":{"description":"Telephone number as identifier","orderful_x12_codes":["12"]},"federalReserveRouting":{"description":"Federal Reserve routing number","orderful_x12_codes":["13"]},"standardAddressSAN":{"description":"Standard Address Number (SAN)","orderful_x12_codes":["15"]},"healthIndustryHIN":{"description":"Health Industry Number (HIN)","orderful_x12_codes":["21"]},"warehouse":{"description":"Warehouse identifier","orderful_x12_codes":["54"]},"schoolId":{"description":"School identifier","orderful_x12_codes":["DS"]},"memberId":{"description":"Member identifier","orderful_x12_codes":["MI"]},"stateLicenseId":{"description":"State license identifier","orderful_x12_codes":["SL"]},"globalLocationId":{"description":"Global Location Number (GLN)","orderful_x12_codes":["UL"],"orderful_edifact_codes":["9"]},"standardCarrierAlphaCode":{"description":"Standard Carrier Alpha Code (SCAC)","orderful_x12_codes":["2"]}}},"addressLine1":{"description":"Street address line 1","type":"string"},"addressLine2":{"description":"Street address line 2","type":"string"},"addressLine3":{"description":"Street address line 3","type":"string"},"addressLine4":{"description":"Street address line 4","type":"string"},"city":{"description":"City name","type":"string"},"stateOrProvinceCode":{"description":"State or province code","type":"string"},"postalCode":{"description":"Postal or ZIP code","type":"string"},"countryCode":{"description":"Country code (ISO)","type":"string"},"zoneType":{"description":"Address zone type","type":"string","enum":["residential","commercial"]},"deliveryPoint":{"description":"Specific delivery point within this location, such as a dock, door or bay, identifying where goods should be presented on arrival","type":"string"},"contacts":{"description":"Contact persons for this party","type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["primary","customerRelations","orderInquiry","department","shipping","receiving","hazmat","certifier"],"description":"Type of contact — the role this person or office serves for the party they belong to","orderful_x12_path":["856:HL_loop.*.N1_loop.*.administrativeCommunicationsContact.*.contactFunctionCode","846:administrativeCommunicationsContact.*.contactFunctionCode"],"orderful_x12_notes":["Header-level and party-level contact segments both route to the parent party's contacts; the parent party's role supplies the business context.","Use a value other than 'primary' only to distinguish multiple contacts within a single party."],"orderful_enum_meta":{"primary":{"description":"General contact or party-level contact","orderful_x12_codes":["AJ","BD","IC","DC"]},"customerRelations":{"description":"Customer relations contact","orderful_x12_codes":["CR"]},"orderInquiry":{"description":"Order or billing contact","orderful_x12_codes":["BI","OC"]},"department":{"description":"Sales representative or department contact","orderful_x12_codes":["SR"]},"shipping":{"description":"Shipping department contact","orderful_x12_codes":["SD"]},"receiving":{"description":"Receiving department contact","orderful_x12_codes":["RE"]},"hazmat":{"description":"Hazardous material contact","orderful_x12_codes":["HM"]},"certifier":{"description":"Contact who certifies the accuracy or regulatory compliance of the shipment","orderful_x12_codes":["CE"]}}},"name":{"description":"Contact person name","type":"string"},"phoneNumber":{"description":"Contact phone number. Default source is the comm-number paired with a TE qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type (e.g. \"Fax #\", \"Email\"), follow the note and route accordingly.","type":"string"},"faxNumber":{"description":"Contact fax number. Default source is the comm-number paired with an FX qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on a comm-number element labels its value as fax even when the qualifier is TE/EM, follow the note and route the value here.","type":"string"},"email":{"description":"Contact email address. Default source is the comm-number paired with an EM qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type, follow the note and route accordingly.","type":"string"},"contactReference":{"description":"Reference that clarifies the contact — e.g. an organizational unit, department/role, or partner-assigned code","orderful_x12_path":["850:administrativeCommunicationsContact.*.contactInquiryReference"],"type":"string"}},"required":["type"],"additionalProperties":false}}},"additionalProperties":false},"shipFrom":{"description":"Ship-from location where goods will originate","orderful_x12_path":["855:N1_loop.* | entityIdentifierCode=SF"],"orderful_x12_codes":["SF"],"orderful_edifact_codes":["SF"],"orderful_edifact_paths":["ORDRSP:nameAndAddress_group.*.nameAndAddress | partyFunctionCodeQualifier=SF"],"type":"object","properties":{"name":{"description":"Party name or company name","type":"string"},"additionalName1":{"description":"Additional name line 1","type":"string"},"additionalName2":{"description":"Additional name line 2","type":"string"},"identificationCode":{"description":"Party identification code value","type":"string"},"identificationCodeType":{"type":"string","enum":["sendersId","receiversId","duns","plantCode","dunsPlus4","drugEnforcementAdmin","telephone","federalReserveRouting","standardAddressSAN","healthIndustryHIN","warehouse","schoolId","memberId","stateLicenseId","globalLocationId","standardCarrierAlphaCode"],"description":"Type of identification code","orderful_x12_path":["856:HL_loop.*.N1_loop.*.partyIdentification.*.identificationCodeQualifier"],"orderful_x12_notes":["91 and 92 resolve by direction rather than naming a fixed party — the code says who assigned the identifier, so it lands on whichever side of the transaction that is. 850: 92 is the sender, 91 the receiver. 856 and 810: 91 the sender, 92 the receiver. 855: the buyer receives, so 92 (assigned by buyer) is the receiver."],"orderful_enum_meta":{"sendersId":{"description":"Sender's identification code","orderful_x12_codes":["58","93","91","92","ZZ"],"orderful_edifact_codes":["91"]},"receiversId":{"description":"Receiver's identification code","orderful_x12_codes":["59","94","91","92","ZZ"],"orderful_edifact_codes":["92"]},"duns":{"description":"Dun & Bradstreet number","orderful_x12_codes":["1"],"orderful_edifact_codes":["16"]},"plantCode":{"description":"Plant code","orderful_x12_codes":["6"]},"dunsPlus4":{"description":"DUNS+4 identifier","orderful_x12_codes":["9"]},"drugEnforcementAdmin":{"description":"DEA (Drug Enforcement Administration) number","orderful_x12_codes":["11"]},"telephone":{"description":"Telephone number as identifier","orderful_x12_codes":["12"]},"federalReserveRouting":{"description":"Federal Reserve routing number","orderful_x12_codes":["13"]},"standardAddressSAN":{"description":"Standard Address Number (SAN)","orderful_x12_codes":["15"]},"healthIndustryHIN":{"description":"Health Industry Number (HIN)","orderful_x12_codes":["21"]},"warehouse":{"description":"Warehouse identifier","orderful_x12_codes":["54"]},"schoolId":{"description":"School identifier","orderful_x12_codes":["DS"]},"memberId":{"description":"Member identifier","orderful_x12_codes":["MI"]},"stateLicenseId":{"description":"State license identifier","orderful_x12_codes":["SL"]},"globalLocationId":{"description":"Global Location Number (GLN)","orderful_x12_codes":["UL"],"orderful_edifact_codes":["9"]},"standardCarrierAlphaCode":{"description":"Standard Carrier Alpha Code (SCAC)","orderful_x12_codes":["2"]}}},"addressLine1":{"description":"Street address line 1","type":"string"},"addressLine2":{"description":"Street address line 2","type":"string"},"addressLine3":{"description":"Street address line 3","type":"string"},"addressLine4":{"description":"Street address line 4","type":"string"},"city":{"description":"City name","type":"string"},"stateOrProvinceCode":{"description":"State or province code","type":"string"},"postalCode":{"description":"Postal or ZIP code","type":"string"},"countryCode":{"description":"Country code (ISO)","type":"string"},"zoneType":{"description":"Address zone type","type":"string","enum":["residential","commercial"]},"deliveryPoint":{"description":"Specific delivery point within this location, such as a dock, door or bay, identifying where goods should be presented on arrival","type":"string"},"contacts":{"description":"Contact persons for this party","type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["primary","customerRelations","orderInquiry","department","shipping","receiving","hazmat","certifier"],"description":"Type of contact — the role this person or office serves for the party they belong to","orderful_x12_path":["856:HL_loop.*.N1_loop.*.administrativeCommunicationsContact.*.contactFunctionCode","846:administrativeCommunicationsContact.*.contactFunctionCode"],"orderful_x12_notes":["Header-level and party-level contact segments both route to the parent party's contacts; the parent party's role supplies the business context.","Use a value other than 'primary' only to distinguish multiple contacts within a single party."],"orderful_enum_meta":{"primary":{"description":"General contact or party-level contact","orderful_x12_codes":["AJ","BD","IC","DC"]},"customerRelations":{"description":"Customer relations contact","orderful_x12_codes":["CR"]},"orderInquiry":{"description":"Order or billing contact","orderful_x12_codes":["BI","OC"]},"department":{"description":"Sales representative or department contact","orderful_x12_codes":["SR"]},"shipping":{"description":"Shipping department contact","orderful_x12_codes":["SD"]},"receiving":{"description":"Receiving department contact","orderful_x12_codes":["RE"]},"hazmat":{"description":"Hazardous material contact","orderful_x12_codes":["HM"]},"certifier":{"description":"Contact who certifies the accuracy or regulatory compliance of the shipment","orderful_x12_codes":["CE"]}}},"name":{"description":"Contact person name","type":"string"},"phoneNumber":{"description":"Contact phone number. Default source is the comm-number paired with a TE qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type (e.g. \"Fax #\", \"Email\"), follow the note and route accordingly.","type":"string"},"faxNumber":{"description":"Contact fax number. Default source is the comm-number paired with an FX qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on a comm-number element labels its value as fax even when the qualifier is TE/EM, follow the note and route the value here.","type":"string"},"email":{"description":"Contact email address. Default source is the comm-number paired with an EM qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type, follow the note and route accordingly.","type":"string"},"contactReference":{"description":"Reference that clarifies the contact — e.g. an organizational unit, department/role, or partner-assigned code","orderful_x12_path":["850:administrativeCommunicationsContact.*.contactInquiryReference"],"type":"string"}},"required":["type"],"additionalProperties":false}}},"additionalProperties":false},"supplier":{"description":"Supplier or vendor fulfilling the order. Header PER with contactFunctionCode=IC merges into supplier.contacts (the supplier is the 855 sender, so a generic 'Information Contact' defaults to the supplier). If the partner's guideline notes route IC elsewhere, follow the notes — they override this default.","orderful_x12_path":["855:N1_loop.* | entityIdentifierCode=SU,VN","855:administrativeCommunicationsContact.* | contactFunctionCode=IC"],"orderful_x12_codes":["SU","VN","IC"],"orderful_edifact_codes":["SU","SE"],"orderful_edifact_paths":["ORDRSP:nameAndAddress_group.*.nameAndAddress | partyFunctionCodeQualifier=SU,SE"],"type":"object","properties":{"name":{"description":"Party name or company name","type":"string"},"additionalName1":{"description":"Additional name line 1","type":"string"},"additionalName2":{"description":"Additional name line 2","type":"string"},"identificationCode":{"description":"Party identification code value","type":"string"},"identificationCodeType":{"type":"string","enum":["sendersId","receiversId","duns","plantCode","dunsPlus4","drugEnforcementAdmin","telephone","federalReserveRouting","standardAddressSAN","healthIndustryHIN","warehouse","schoolId","memberId","stateLicenseId","globalLocationId","standardCarrierAlphaCode"],"description":"Type of identification code","orderful_x12_path":["856:HL_loop.*.N1_loop.*.partyIdentification.*.identificationCodeQualifier"],"orderful_x12_notes":["91 and 92 resolve by direction rather than naming a fixed party — the code says who assigned the identifier, so it lands on whichever side of the transaction that is. 850: 92 is the sender, 91 the receiver. 856 and 810: 91 the sender, 92 the receiver. 855: the buyer receives, so 92 (assigned by buyer) is the receiver."],"orderful_enum_meta":{"sendersId":{"description":"Sender's identification code","orderful_x12_codes":["58","93","91","92","ZZ"],"orderful_edifact_codes":["91"]},"receiversId":{"description":"Receiver's identification code","orderful_x12_codes":["59","94","91","92","ZZ"],"orderful_edifact_codes":["92"]},"duns":{"description":"Dun & Bradstreet number","orderful_x12_codes":["1"],"orderful_edifact_codes":["16"]},"plantCode":{"description":"Plant code","orderful_x12_codes":["6"]},"dunsPlus4":{"description":"DUNS+4 identifier","orderful_x12_codes":["9"]},"drugEnforcementAdmin":{"description":"DEA (Drug Enforcement Administration) number","orderful_x12_codes":["11"]},"telephone":{"description":"Telephone number as identifier","orderful_x12_codes":["12"]},"federalReserveRouting":{"description":"Federal Reserve routing number","orderful_x12_codes":["13"]},"standardAddressSAN":{"description":"Standard Address Number (SAN)","orderful_x12_codes":["15"]},"healthIndustryHIN":{"description":"Health Industry Number (HIN)","orderful_x12_codes":["21"]},"warehouse":{"description":"Warehouse identifier","orderful_x12_codes":["54"]},"schoolId":{"description":"School identifier","orderful_x12_codes":["DS"]},"memberId":{"description":"Member identifier","orderful_x12_codes":["MI"]},"stateLicenseId":{"description":"State license identifier","orderful_x12_codes":["SL"]},"globalLocationId":{"description":"Global Location Number (GLN)","orderful_x12_codes":["UL"],"orderful_edifact_codes":["9"]},"standardCarrierAlphaCode":{"description":"Standard Carrier Alpha Code (SCAC)","orderful_x12_codes":["2"]}}},"addressLine1":{"description":"Street address line 1","type":"string"},"addressLine2":{"description":"Street address line 2","type":"string"},"addressLine3":{"description":"Street address line 3","type":"string"},"addressLine4":{"description":"Street address line 4","type":"string"},"city":{"description":"City name","type":"string"},"stateOrProvinceCode":{"description":"State or province code","type":"string"},"postalCode":{"description":"Postal or ZIP code","type":"string"},"countryCode":{"description":"Country code (ISO)","type":"string"},"zoneType":{"description":"Address zone type","type":"string","enum":["residential","commercial"]},"deliveryPoint":{"description":"Specific delivery point within this location, such as a dock, door or bay, identifying where goods should be presented on arrival","type":"string"},"contacts":{"description":"Contact persons for this party","type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["primary","customerRelations","orderInquiry","department","shipping","receiving","hazmat","certifier"],"description":"Type of contact — the role this person or office serves for the party they belong to","orderful_x12_path":["856:HL_loop.*.N1_loop.*.administrativeCommunicationsContact.*.contactFunctionCode","846:administrativeCommunicationsContact.*.contactFunctionCode"],"orderful_x12_notes":["Header-level and party-level contact segments both route to the parent party's contacts; the parent party's role supplies the business context.","Use a value other than 'primary' only to distinguish multiple contacts within a single party."],"orderful_enum_meta":{"primary":{"description":"General contact or party-level contact","orderful_x12_codes":["AJ","BD","IC","DC"]},"customerRelations":{"description":"Customer relations contact","orderful_x12_codes":["CR"]},"orderInquiry":{"description":"Order or billing contact","orderful_x12_codes":["BI","OC"]},"department":{"description":"Sales representative or department contact","orderful_x12_codes":["SR"]},"shipping":{"description":"Shipping department contact","orderful_x12_codes":["SD"]},"receiving":{"description":"Receiving department contact","orderful_x12_codes":["RE"]},"hazmat":{"description":"Hazardous material contact","orderful_x12_codes":["HM"]},"certifier":{"description":"Contact who certifies the accuracy or regulatory compliance of the shipment","orderful_x12_codes":["CE"]}}},"name":{"description":"Contact person name","type":"string"},"phoneNumber":{"description":"Contact phone number. Default source is the comm-number paired with a TE qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type (e.g. \"Fax #\", \"Email\"), follow the note and route accordingly.","type":"string"},"faxNumber":{"description":"Contact fax number. Default source is the comm-number paired with an FX qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on a comm-number element labels its value as fax even when the qualifier is TE/EM, follow the note and route the value here.","type":"string"},"email":{"description":"Contact email address. Default source is the comm-number paired with an EM qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type, follow the note and route accordingly.","type":"string"},"contactReference":{"description":"Reference that clarifies the contact — e.g. an organizational unit, department/role, or partner-assigned code","orderful_x12_path":["850:administrativeCommunicationsContact.*.contactInquiryReference"],"type":"string"}},"required":["type"],"additionalProperties":false}}},"additionalProperties":false},"billTo":{"description":"Bill-to party for invoicing purposes","orderful_x12_path":["855:N1_loop.* | entityIdentifierCode=BT,BS"],"orderful_x12_codes":["BT","BS"],"orderful_x12_notes":["BS (Bill To and Ship To) is used when the bill-to and ship-to are the same location. BT is used when bill-to is distinct."],"orderful_edifact_codes":["IV"],"orderful_edifact_paths":["ORDRSP:nameAndAddress_group.*.nameAndAddress | partyFunctionCodeQualifier=IV"],"type":"object","properties":{"name":{"description":"Party name or company name","type":"string"},"additionalName1":{"description":"Additional name line 1","type":"string"},"additionalName2":{"description":"Additional name line 2","type":"string"},"identificationCode":{"description":"Party identification code value","type":"string"},"identificationCodeType":{"type":"string","enum":["sendersId","receiversId","duns","plantCode","dunsPlus4","drugEnforcementAdmin","telephone","federalReserveRouting","standardAddressSAN","healthIndustryHIN","warehouse","schoolId","memberId","stateLicenseId","globalLocationId","standardCarrierAlphaCode"],"description":"Type of identification code","orderful_x12_path":["856:HL_loop.*.N1_loop.*.partyIdentification.*.identificationCodeQualifier"],"orderful_x12_notes":["91 and 92 resolve by direction rather than naming a fixed party — the code says who assigned the identifier, so it lands on whichever side of the transaction that is. 850: 92 is the sender, 91 the receiver. 856 and 810: 91 the sender, 92 the receiver. 855: the buyer receives, so 92 (assigned by buyer) is the receiver."],"orderful_enum_meta":{"sendersId":{"description":"Sender's identification code","orderful_x12_codes":["58","93","91","92","ZZ"],"orderful_edifact_codes":["91"]},"receiversId":{"description":"Receiver's identification code","orderful_x12_codes":["59","94","91","92","ZZ"],"orderful_edifact_codes":["92"]},"duns":{"description":"Dun & Bradstreet number","orderful_x12_codes":["1"],"orderful_edifact_codes":["16"]},"plantCode":{"description":"Plant code","orderful_x12_codes":["6"]},"dunsPlus4":{"description":"DUNS+4 identifier","orderful_x12_codes":["9"]},"drugEnforcementAdmin":{"description":"DEA (Drug Enforcement Administration) number","orderful_x12_codes":["11"]},"telephone":{"description":"Telephone number as identifier","orderful_x12_codes":["12"]},"federalReserveRouting":{"description":"Federal Reserve routing number","orderful_x12_codes":["13"]},"standardAddressSAN":{"description":"Standard Address Number (SAN)","orderful_x12_codes":["15"]},"healthIndustryHIN":{"description":"Health Industry Number (HIN)","orderful_x12_codes":["21"]},"warehouse":{"description":"Warehouse identifier","orderful_x12_codes":["54"]},"schoolId":{"description":"School identifier","orderful_x12_codes":["DS"]},"memberId":{"description":"Member identifier","orderful_x12_codes":["MI"]},"stateLicenseId":{"description":"State license identifier","orderful_x12_codes":["SL"]},"globalLocationId":{"description":"Global Location Number (GLN)","orderful_x12_codes":["UL"],"orderful_edifact_codes":["9"]},"standardCarrierAlphaCode":{"description":"Standard Carrier Alpha Code (SCAC)","orderful_x12_codes":["2"]}}},"addressLine1":{"description":"Street address line 1","type":"string"},"addressLine2":{"description":"Street address line 2","type":"string"},"addressLine3":{"description":"Street address line 3","type":"string"},"addressLine4":{"description":"Street address line 4","type":"string"},"city":{"description":"City name","type":"string"},"stateOrProvinceCode":{"description":"State or province code","type":"string"},"postalCode":{"description":"Postal or ZIP code","type":"string"},"countryCode":{"description":"Country code (ISO)","type":"string"},"zoneType":{"description":"Address zone type","type":"string","enum":["residential","commercial"]},"deliveryPoint":{"description":"Specific delivery point within this location, such as a dock, door or bay, identifying where goods should be presented on arrival","type":"string"},"contacts":{"description":"Contact persons for this party","type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["primary","customerRelations","orderInquiry","department","shipping","receiving","hazmat","certifier"],"description":"Type of contact — the role this person or office serves for the party they belong to","orderful_x12_path":["856:HL_loop.*.N1_loop.*.administrativeCommunicationsContact.*.contactFunctionCode","846:administrativeCommunicationsContact.*.contactFunctionCode"],"orderful_x12_notes":["Header-level and party-level contact segments both route to the parent party's contacts; the parent party's role supplies the business context.","Use a value other than 'primary' only to distinguish multiple contacts within a single party."],"orderful_enum_meta":{"primary":{"description":"General contact or party-level contact","orderful_x12_codes":["AJ","BD","IC","DC"]},"customerRelations":{"description":"Customer relations contact","orderful_x12_codes":["CR"]},"orderInquiry":{"description":"Order or billing contact","orderful_x12_codes":["BI","OC"]},"department":{"description":"Sales representative or department contact","orderful_x12_codes":["SR"]},"shipping":{"description":"Shipping department contact","orderful_x12_codes":["SD"]},"receiving":{"description":"Receiving department contact","orderful_x12_codes":["RE"]},"hazmat":{"description":"Hazardous material contact","orderful_x12_codes":["HM"]},"certifier":{"description":"Contact who certifies the accuracy or regulatory compliance of the shipment","orderful_x12_codes":["CE"]}}},"name":{"description":"Contact person name","type":"string"},"phoneNumber":{"description":"Contact phone number. Default source is the comm-number paired with a TE qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type (e.g. \"Fax #\", \"Email\"), follow the note and route accordingly.","type":"string"},"faxNumber":{"description":"Contact fax number. Default source is the comm-number paired with an FX qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on a comm-number element labels its value as fax even when the qualifier is TE/EM, follow the note and route the value here.","type":"string"},"email":{"description":"Contact email address. Default source is the comm-number paired with an EM qualifier (PER03/04, PER05/06, or PER07/08). If the partner guideline note on the comm-number element labels the value as a different comm type, follow the note and route accordingly.","type":"string"},"contactReference":{"description":"Reference that clarifies the contact — e.g. an organizational unit, department/role, or partner-assigned code","orderful_x12_path":["850:administrativeCommunicationsContact.*.contactInquiryReference"],"type":"string"}},"required":["type"],"additionalProperties":false}}},"additionalProperties":false}},"additionalProperties":false},"termsOfSale":{"description":"Payment terms and conditions","orderful_x12_path":["855:termsOfSaleDeferredTermsOfSale"],"type":"object","properties":{"type":{"type":"string","enum":["basic","basicDiscountOffered","discountNotApplicable","endOfMonth","endOfMonth10","extended","instant","fixedDate","proximo","deferred","mutuallyDefined","letterOfCredit"],"description":"Type of payment terms","orderful_enum_meta":{"basic":{"description":"Basic payment terms","orderful_x12_codes":["01"]},"basicDiscountOffered":{"description":"Basic terms with discount offered","orderful_x12_codes":["08"]},"discountNotApplicable":{"description":"Discount not applicable","orderful_x12_codes":["05"]},"endOfMonth":{"description":"End of month payment","orderful_x12_codes":["02"]},"endOfMonth10":{"description":"End of month, 10 days","orderful_x12_codes":["12"]},"extended":{"description":"Extended payment terms","orderful_x12_codes":["07"]},"instant":{"description":"Immediate or instant payment","orderful_x12_codes":["10","23"]},"fixedDate":{"description":"Fixed payment date","orderful_x12_codes":["03"]},"proximo":{"description":"Proximo (next month) payment","orderful_x12_codes":["09"]},"deferred":{"description":"Deferred or installment payment terms (e.g., seasonal terms where payment is due on a specified future date)","orderful_x12_codes":["04"]},"mutuallyDefined":{"description":"Terms mutually defined by parties","orderful_x12_codes":["ZZ","14"]},"letterOfCredit":{"description":"Payment terms secured by a bank-issued letter of credit","orderful_x12_codes":["41"]}}},"basisDate":{"type":"string","enum":["invoiceDate","receiptOfGoods","deliveryDate","shipDate","mutuallyDefined","gageApprovalDate","specifiedDate","acceptanceDate","invoiceTransmissionDate","effectiveDate"],"description":"Date basis for calculating payment terms","orderful_enum_meta":{"invoiceDate":{"description":"Invoice date","orderful_x12_codes":["3"]},"receiptOfGoods":{"description":"Receipt of goods date","orderful_x12_codes":["15"]},"deliveryDate":{"description":"Delivery date","orderful_x12_codes":["2"]},"shipDate":{"description":"Ship date","orderful_x12_codes":["1"]},"mutuallyDefined":{"description":"Mutually defined date basis","orderful_x12_codes":["ZZ"]},"gageApprovalDate":{"description":"Approval of gage date","orderful_x12_codes":["13"]},"specifiedDate":{"description":"Specified date","orderful_x12_codes":["4"]},"acceptanceDate":{"description":"Completion and acceptance date","orderful_x12_codes":["11"]},"invoiceTransmissionDate":{"description":"Invoice transmission date","orderful_x12_codes":["8"]},"effectiveDate":{"description":"Effective date","orderful_x12_codes":["7"]}}},"dueDateMeasuredBy":{"type":"string","enum":["mailingDate","receiptDate"],"description":"Whether payment counts as on time by the date it is mailed or the date it is received","orderful_x12_path":["875:termsOfSale.*.termsDueDateQualifier","880:termsOfSale.*.termsDueDateQualifier"],"orderful_enum_meta":{"mailingDate":{"description":"Payment is on time if it is mailed (postmarked) by the due date","orderful_x12_codes":["01"]},"receiptDate":{"description":"Payment is on time only if it is received by the due date","orderful_x12_codes":["02"]}}},"effectiveDate":{"description":"Date on which the payment terms take effect","orderful_x12_path":["850:dateTimeReference.* | dateTimeQualifier=007"],"orderful_x12_codes":["007"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"discountPercent":{"description":"Discount percentage if paid early","type":"string"},"discountDaysDue":{"description":"Number of days to qualify for discount","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"discountDueDate":{"description":"Date by which payment must be made for discount","anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"dayOfMonth":{"description":"Day of month for payment","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"netDaysDue":{"description":"Number of days until payment is due","type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"netDueDate":{"description":"Date when payment is due","anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"discountAmount":{"description":"Fixed discount amount","type":"string"},"description":{"description":"Description of payment terms","type":"string"},"deferredDueDate":{"description":"Date when the deferred payment or percent of invoice payable is due, typically used with seasonal or installment terms","orderful_x12_path":["850:termsOfSaleDeferredTermsOfSale.*.termsDeferredDueDate"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"deferredAmountDue":{"description":"Amount due on the deferred payment date, used with deferred or installment terms","orderful_x12_path":["850:termsOfSaleDeferredTermsOfSale.*.deferredAmountDue"],"type":"string"},"percentOfInvoicePayable":{"description":"Percentage of the invoice amount payable on the deferred due date, used with deferred or installment terms","orderful_x12_path":["850:termsOfSaleDeferredTermsOfSale.*.percentOfInvoicePayable"],"type":"string"},"paymentMethodType":{"type":"string","enum":["check","letterOfCredit","privateLabelLetterOfCredit","openAccount","wireTransfer","corporateTradePayment","specialAccount","directPayOthers"],"description":"Method of payment","orderful_enum_meta":{"check":{"description":"Payment by check","orderful_x12_codes":["C"]},"letterOfCredit":{"description":"Payment by letter of credit","orderful_x12_codes":["L"]},"privateLabelLetterOfCredit":{"description":"Payment by letter of credit issued under the buyer's private-label (own-brand) import programme, which the buyer distinguishes from its standard letters of credit"},"openAccount":{"description":"Open account — goods are shipped before payment and the buyer pays on the agreed terms, with no bank guarantee"},"wireTransfer":{"description":"Payment by wire transfer","orderful_x12_codes":["T"]},"corporateTradePayment":{"description":"Corporate trade payment (CTP)","orderful_x12_codes":["O"]},"specialAccount":{"description":"Payment via special account","orderful_x12_codes":["AF"]},"directPayOthers":{"description":"Direct pay or other method","orderful_x12_codes":["U"]}}}},"additionalProperties":false},"buyersCurrency":{"description":"Currency used by the buyer for the transaction","orderful_x12_path":["855:currency.* | entityIdentifierCode=BY"],"orderful_x12_codes":["BY"],"type":"object","properties":{"currencyCode":{"type":"string","description":"ISO currency code (e.g., USD, EUR)"},"exchangeRate":{"description":"Exchange rate for currency conversion","type":"string"}},"required":["currencyCode"],"additionalProperties":false},"sellersCurrency":{"description":"Currency used by the seller for the transaction","orderful_x12_path":["855:currency.* | entityIdentifierCode=SE"],"orderful_x12_codes":["SE"],"type":"object","properties":{"currencyCode":{"type":"string","description":"ISO currency code (e.g., USD, EUR)"},"exchangeRate":{"description":"Exchange rate for currency conversion","type":"string"}},"required":["currencyCode"],"additionalProperties":false},"references":{"description":"Reference numbers associated with the purchase order being acknowledged","orderful_x12_notes":["Header-level REF segments — typically echoed from the originating 850. When omitted here and the guideline requires a reference, the writer pulls the corresponding entry from $purchaseOrder."],"type":"object","properties":{"accountNumber":{"description":"The buyer's account number or customer reference number with the seller","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=11,12,CR","875:extendedReferenceInformation.* | referenceIdentificationQualifier=11,12,CR"],"orderful_x12_codes":["11","12","CR"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=ADE,CR"],"orderful_edifact_codes":["ADE","CR"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"appointmentNumber":{"description":"Identifier for a scheduled delivery or pickup appointment booked with the receiving location","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=AO"],"orderful_x12_codes":["AO"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"arrivalCode":{"description":"Code indicating arrival information or instructions","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=AR","875:extendedReferenceInformation.* | referenceIdentificationQualifier=AR"],"orderful_x12_codes":["AR"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"agreementNumber":{"description":"Identifier of the trading partner agreement under which the order is placed","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=AH","850:N9_loop.*.extendedReferenceInformation.* | referenceIdentificationQualifier=AH"],"orderful_x12_codes":["AH"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"associatedPurchaseOrderNumber":{"description":"Related or parent purchase order number","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=AN","875:extendedReferenceInformation.* | referenceIdentificationQualifier=AN"],"orderful_x12_codes":["AN"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"buyerId":{"description":"Identifier of the buyer assigned by the order-management platform or trading network the order is routed through, used to apply that buyer's requirements. Distinct from the buyer's own party identifier on parties.buyer.","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=YD"],"orderful_x12_codes":["YD"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"reservationNumber":{"description":"Reservation number","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=CNO,CS","875:extendedReferenceInformation.* | referenceIdentificationQualifier=CNO,CS"],"orderful_x12_codes":["CNO","CS"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"customerOrderNumber":{"description":"Customer-assigned order number for tracking","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=CO","875:extendedReferenceInformation.* | referenceIdentificationQualifier=CO"],"orderful_x12_codes":["CO"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=CO"],"orderful_edifact_codes":["CO"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"deliveryReference":{"description":"Reference number for delivery coordination","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=KK","875:extendedReferenceInformation.* | referenceIdentificationQualifier=KK"],"orderful_x12_codes":["KK"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"divisionId":{"description":"Identifier for the business division, branch or company unit of the buying organization placing the order","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=19,3L","875:extendedReferenceInformation.* | referenceIdentificationQualifier=19,3L"],"orderful_x12_codes":["19","3L"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"departmentNumber":{"description":"Department number within the buying organization","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=DP","875:extendedReferenceInformation.* | referenceIdentificationQualifier=DP"],"orderful_x12_codes":["DP"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"freightPayerReference":{"description":"Freight payer reference number","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=F9","875:extendedReferenceInformation.* | referenceIdentificationQualifier=F9"],"orderful_x12_codes":["F9"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"internalCustomerNumber":{"description":"Internal customer identifier used by the buyer","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=IT","875:extendedReferenceInformation.* | referenceIdentificationQualifier=IT"],"orderful_x12_codes":["IT"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=IT"],"orderful_edifact_codes":["IT"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"internalOrderNumber":{"description":"Internal order identifier used by the buyer or by the order-management platform the buyer routes orders through. Assigned on the purchase order and returned unchanged on the invoice and other response documents. Distinct from vendorOrderNumber, which is the seller's own order reference.","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=IL,X9","875:extendedReferenceInformation.* | referenceIdentificationQualifier=IL"],"orderful_x12_codes":["IL","X9"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"vendorOrderNumber":{"description":"The vendor's own reference number for this order (the order ID the vendor uses in their system). NOT an identifier of the vendor entity — that lives on references.vendorNumber.","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=VN"],"orderful_x12_codes":["VN"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"vendorNumber":{"description":"Vendor or supplier identifier assigned by the buyer","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=IA,VR","875:extendedReferenceInformation.* | referenceIdentificationQualifier=IA,VR"],"orderful_x12_codes":["IA","VR"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=IA,VR"],"orderful_edifact_codes":["IA","VR"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"loadPlanningNumber":{"description":"Load planning or load ID number","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=LO"],"orderful_x12_codes":["LO"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"merchandiseTypeCode":{"description":"Code classifying the type of merchandise","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=MR","875:extendedReferenceInformation.* | referenceIdentificationQualifier=MR"],"orderful_x12_codes":["MR"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"pricingQuote":{"description":"Pricing quote reference number","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=PR","875:extendedReferenceInformation.* | referenceIdentificationQualifier=PR"],"orderful_x12_codes":["PR"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=PR"],"orderful_edifact_codes":["PR"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"promotionNumber":{"description":"Promotional campaign or deal identifier","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=PD","875:extendedReferenceInformation.* | referenceIdentificationQualifier=PD"],"orderful_x12_codes":["PD"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=PD"],"orderful_edifact_codes":["PD"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"storeNumber":{"description":"Retail store location identifier. Commonly carried inside a party (N1) loop qualifying the ship-to or bill-to rather than at document level; it names the same store either way.","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=ST","850:N1_loop.*.referenceInformation.* | referenceIdentificationQualifier=ST","875:extendedReferenceInformation.* | referenceIdentificationQualifier=ST"],"orderful_x12_codes":["ST"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"thirdPartyReferenceNumber":{"description":"Reference to a third party (anyone other than the buyer and seller) or to something related to it, for example a reference number from a third-party system, or the identity of another party involved in the order","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=GK","875:extendedReferenceInformation.* | referenceIdentificationQualifier=GK"],"orderful_x12_codes":["GK"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false},"warehouseStorageLocation":{"description":"Warehouse or storage location identifier","orderful_x12_path":["850:referenceInformation.* | referenceIdentificationQualifier=WS,WH","875:extendedReferenceInformation.* | referenceIdentificationQualifier=WS,WH"],"orderful_x12_codes":["WS","WH"],"orderful_edifact_paths":["ORDERS:reference_group.*.reference | referenceCodeQualifier=WS"],"orderful_edifact_codes":["WS"],"type":"object","properties":{"value":{"description":"The reference identifier value","type":"string"},"description":{"description":"Additional description or context for the reference","type":"string"}},"additionalProperties":false}},"additionalProperties":false},"carrierDetails":{"description":"Carrier and shipping details for the acknowledgment","orderful_x12_path":["855:carrierDetailsRoutingSequenceTransitTime","855:FOBRelatedInstructions","855:carrierDetailsQuantityAndWeight"],"orderful_edifact_paths":["ORDRSP:termsOfDeliveryOrTransport_group"],"orderful_edifact_notes":["FOB/INCOTERMS map to the TOD (terms of delivery or transport) segment group. Deferred scope — not yet validated against an ORDRSP guideline that exercises transport terms."],"type":"object","properties":{"routing":{"description":"Carrier routing and transportation method details","orderful_x12_path":["855:carrierDetailsRoutingSequenceTransitTime"],"type":"array","items":{"type":"object","properties":{"sequenceType":{"type":"string","enum":["origin","1stAfterOrigin","4thAfterOrigin","haulage"],"description":"Sequence in the routing chain","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.routingSequenceCode"],"orderful_enum_meta":{"origin":{"description":"Origin carrier","orderful_x12_codes":["O","B"]},"1stAfterOrigin":{"description":"1st carrier after origin carrier","orderful_x12_codes":["1"]},"4thAfterOrigin":{"description":"4th carrier after origin carrier","orderful_x12_codes":["4"]},"haulage":{"description":"Haulage rights carrier and junction","orderful_x12_codes":["H"]}}},"standardCarrierAlphaCode":{"description":"SCAC code identifying the carrier","type":"string"},"customCarrierCode":{"description":"Custom carrier identifier","type":"string"},"transportationMethod":{"type":"string","enum":["air","airExpress","airFreightForward","backhaul","bestWay","commonCarrier","consolidation","customerPickup","expeditedTruck","lessThanTrailerLoad","mail","ocean","oceanContainerized","parcelPost","privateCarrier","rail","shipperAgent","supplierTruck","trailer","mutuallyDefined"],"description":"Method of transportation. EDIFACT: prefer C001.8179 (transportMeansDescriptionCode) — its means/vessel-level codes match this enum directly. Fall back to C220.8067 (transportModeNameCode) ONLY when 8179 is absent; 8067 carries broad-mode codes only (1=Maritime, 2=Rail, 3=Road, 4=Air, 5=Mail, 6=Multimodal, 7=Fixed installation, 8=Inland water) which map loosely: 1→ocean, 2→rail, 3→supplierTruck, 4→air. Granular enum values (airExpress, oceanContainerized, trailer, etc.) cannot be recovered from 8067 — emit a SCHEMA GAP if neither path carries the partner value.","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.transportationMethodTypeCode"],"orderful_edifact_paths":["ORDERS:transportInformation_group.*.transportInformation.transportMeans_composite.transportMeansDescriptionCode"],"orderful_edifact_metadata_paths":["ORDERS:transportInformation_group.*.transportInformation.modeOfTransport_composite.transportModeNameCode"],"orderful_enum_meta":{"air":{"description":"Air freight","orderful_x12_codes":["A"],"orderful_edifact_codes":["6"]},"airExpress":{"description":"Air express service","orderful_x12_codes":["AE"]},"airFreightForward":{"description":"Air freight forwarder","orderful_x12_codes":["AF"]},"backhaul":{"description":"Backhaul shipment","orderful_x12_codes":["K"]},"bestWay":{"description":"Best way (carrier discretion)","orderful_x12_codes":["T"]},"commonCarrier":{"description":"Common carrier","orderful_x12_codes":["M","MP","J"]},"consolidation":{"description":"Consolidation service","orderful_x12_codes":["C"]},"customerPickup":{"description":"Customer pickup","orderful_x12_codes":["H","CE"]},"expeditedTruck":{"description":"Expedited truck","orderful_x12_codes":["E"]},"lessThanTrailerLoad":{"description":"Less than trailer load (LTL)","orderful_x12_codes":["LT"]},"mail":{"description":"Mail service","orderful_x12_codes":["7"]},"ocean":{"description":"Ocean freight","orderful_x12_codes":["S"],"orderful_edifact_codes":["11","13"]},"oceanContainerized":{"description":"Containerized ocean freight","orderful_x12_codes":["O"],"orderful_edifact_codes":["11"]},"parcelPost":{"description":"Parcel post","orderful_x12_codes":["D"]},"privateCarrier":{"description":"Private carrier","orderful_x12_codes":["U","P"]},"rail":{"description":"Rail freight","orderful_x12_codes":["R"],"orderful_edifact_codes":["25"]},"shipperAgent":{"description":"Shipper agent","orderful_x12_codes":["SC"]},"supplierTruck":{"description":"Supplier truck delivery","orderful_x12_codes":["SR"],"orderful_edifact_codes":["31"]},"trailer":{"description":"Trailer load (TL)","orderful_x12_codes":["TL"],"orderful_edifact_codes":["35"]},"mutuallyDefined":{"description":"Transportation method mutually defined","orderful_x12_codes":["ZZ"]}}},"locationType":{"type":"string","enum":["inStore","receiversLocation","allPoints","portOfArrival","portOfEmbarkation","origin","mutuallyDefined"],"description":"Type of routing location","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.locationQualifier"],"orderful_enum_meta":{"inStore":{"description":"In-store location","orderful_x12_codes":["IS"]},"receiversLocation":{"description":"Receiver's location","orderful_x12_codes":["94"]},"allPoints":{"description":"All points in routing","orderful_x12_codes":["AP"]},"portOfArrival":{"description":"Port of arrival","orderful_x12_codes":["PA"]},"portOfEmbarkation":{"description":"Port of embarkation","orderful_x12_codes":["KE"]},"origin":{"description":"Origin location","orderful_x12_codes":["OR"]},"mutuallyDefined":{"description":"Location mutually defined","orderful_x12_codes":["ZZ"]}}},"location":{"description":"Routing location identifier or name","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.locationIdentifier"],"type":"string"},"countryCode":{"description":"ISO country code of the routing location","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.countryCode"],"type":"string"},"description":{"description":"Description of routing details","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.routing"],"type":"string"},"serviceLevel":{"type":"string","enum":["deliveryConfirmation","doorService","economy","eveningService","expedited","firstClass","ground","groundHundredWeight","international","metro","morning","nextDayAir","nextDayHundredWeight","nextDayEvening","nextDayMorning1030","nextDayMorning930","nextDaySaturday","overnight","poBoxZipCode","priorityMail","priorityMailInsured","proofOfDelivery","sameDay","saturdayService","secondDay","secondDayHundredWeight","secondDayAir","secondDaySaturday","standard","standardGround","threeDay"],"description":"Service level for shipping","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.serviceLevelCode","856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.serviceLevelCode1","856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.serviceLevelCode2"],"orderful_enum_meta":{"deliveryConfirmation":{"description":"Delivery confirmation required","orderful_x12_codes":["DC"]},"doorService":{"description":"Door-to-door service","orderful_x12_codes":["DS"]},"economy":{"description":"Economy service","orderful_x12_codes":["LT"]},"eveningService":{"description":"Evening delivery service","orderful_x12_codes":["PM"]},"expedited":{"description":"Expedited service","orderful_x12_codes":["CX","IE","IX"]},"firstClass":{"description":"First class mail service","orderful_x12_codes":["FC"]},"ground":{"description":"Ground shipping service","orderful_x12_codes":["CG"]},"groundHundredWeight":{"description":"Ground hundred-weight service","orderful_x12_codes":["SI"]},"international":{"description":"International service","orderful_x12_codes":["IS"]},"metro":{"description":"Metro area delivery service","orderful_x12_codes":["ME"]},"morning":{"description":"Morning delivery service","orderful_x12_codes":["AM"]},"nextDayAir":{"description":"Next day air service","orderful_x12_codes":["ND"]},"nextDayHundredWeight":{"description":"Next day hundred-weight service","orderful_x12_codes":["NH"]},"nextDayEvening":{"description":"Next day evening delivery","orderful_x12_codes":["PR"]},"nextDayMorning1030":{"description":"Next day morning by 10:30 AM","orderful_x12_codes":["PA"]},"nextDayMorning930":{"description":"Next day morning by 9:30 AM","orderful_x12_codes":["PC"]},"nextDaySaturday":{"description":"Next day Saturday delivery service","orderful_x12_codes":["NS"],"orderful_x12_notes":["NS is a Target-specific qualifier — not a standard X12 service level code"]},"overnight":{"description":"Overnight delivery service","orderful_x12_codes":["ON"]},"poBoxZipCode":{"description":"P.O. Box or ZIP code delivery","orderful_x12_codes":["PO"]},"priorityMail":{"description":"Priority mail service","orderful_x12_codes":["PB"]},"priorityMailInsured":{"description":"Priority mail insured service","orderful_x12_codes":["PI"]},"proofOfDelivery":{"description":"Proof of delivery required","orderful_x12_codes":["ET"]},"sameDay":{"description":"Same day delivery service","orderful_x12_codes":["SA"]},"saturdayService":{"description":"Saturday delivery service","orderful_x12_codes":["SD"]},"secondDay":{"description":"Second day delivery service","orderful_x12_codes":["SE"]},"secondDayHundredWeight":{"description":"Second day hundred-weight service","orderful_x12_codes":["SH"]},"secondDayAir":{"description":"Second day air service","orderful_x12_codes":["SC"]},"secondDaySaturday":{"description":"Second day Saturday delivery service","orderful_x12_codes":["SS"],"orderful_x12_notes":["SS is a Target-invented qualifier — not a standard X12 service level code"]},"standard":{"description":"Standard delivery service","orderful_x12_codes":["ST","G2"]},"standardGround":{"description":"Standard ground service","orderful_x12_codes":["SG"]},"threeDay":{"description":"Three day delivery service","orderful_x12_codes":["3D"]}}},"orderStatus":{"type":"string","enum":["shipCompleteOnDate","complete","partialShipment","shipPartialBackorderToShipOnDate","partialShipOnDate","shipped","backordered","mutuallyDefined","availableScheduledToShip","availableNoShipSchedule","multiPickup","availableToShipUnBilledQuantity","stopOff"],"description":"Order shipping status","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.shipmentOrderStatusCode"],"orderful_enum_meta":{"shipCompleteOnDate":{"description":"Ship complete on specified date","orderful_x12_codes":["CC"]},"complete":{"description":"Order complete","orderful_x12_codes":["CL"]},"partialShipment":{"description":"Partial shipment allowed","orderful_x12_codes":["PR"]},"shipPartialBackorderToShipOnDate":{"description":"Ship partial, backorder remainder to ship on date","orderful_x12_codes":["BP"]},"partialShipOnDate":{"description":"Ship partial on specified date","orderful_x12_codes":["CP"]},"shipped":{"description":"Order shipped","orderful_x12_codes":["SH"]},"backordered":{"description":"Order backordered","orderful_x12_codes":["BK"]},"mutuallyDefined":{"description":"Status mutually defined","orderful_x12_codes":["ZZ"]},"availableScheduledToShip":{"description":"Available and scheduled to ship","orderful_x12_codes":["AS"]},"availableNoShipSchedule":{"description":"Available but no ship schedule","orderful_x12_codes":["AN"]},"multiPickup":{"description":"Multiple pickup","orderful_x12_codes":["AA"]},"availableToShipUnBilledQuantity":{"description":"Available to ship unbilled quantity","orderful_x12_codes":["AU"]},"stopOff":{"description":"Stop-off shipment","orderful_x12_codes":["ST"]}}},"transitDirectionType":{"type":"string","enum":["buyerToSeller","sellerToBuyer","subcontractorToSeller","sellerToDropShipLocation","sellToForwarder","sellerToSubcontractor","mutuallyDefined"],"description":"Direction of transit","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.transitDirectionCode"],"orderful_enum_meta":{"buyerToSeller":{"description":"Transit from buyer to seller","orderful_x12_codes":["BS"]},"sellerToBuyer":{"description":"Transit from seller to buyer","orderful_x12_codes":["SB"]},"subcontractorToSeller":{"description":"Transit from subcontractor to seller","orderful_x12_codes":["SC"]},"sellerToDropShipLocation":{"description":"Transit from seller to drop ship location","orderful_x12_codes":["SD"]},"sellToForwarder":{"description":"Transit from seller to forwarder","orderful_x12_codes":["SF"]},"sellerToSubcontractor":{"description":"Transit from seller to subcontractor","orderful_x12_codes":["SS"]},"mutuallyDefined":{"description":"Transit direction mutually defined","orderful_x12_codes":["ZZ"]}}},"transitTimeType":{"type":"string","enum":["calendarDays","hours","workingDays"],"description":"Unit for transit time","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.transitTimeDirectionQualifier"],"orderful_enum_meta":{"calendarDays":{"description":"Calendar days (includes weekends and holidays)","orderful_x12_codes":["CD"]},"hours":{"description":"Hours","orderful_x12_codes":["HO"]},"workingDays":{"description":"Working days (excludes weekends and holidays)","orderful_x12_codes":["WD"]}}},"transitTime":{"description":"Expected transit time value","type":"string"}},"additionalProperties":false}},"freeOnBoard":{"description":"FOB (Free on Board) terms and conditions","orderful_x12_path":["855:FOBRelatedInstructions"],"orderful_edifact_paths":["ORDRSP:termsOfDeliveryOrTransport_group.*.termsOfDeliveryOrTransport"],"type":"array","items":{"type":"object","properties":{"methodOfPayment":{"type":"string","enum":["airCollect","airPrepaid","paidByBuyer","collect","collectOnDelivery","collectFreightCreditedBack","mutuallyAgreed","portOfCall","halfPrepaid","mixed","serviceFreightNoCharge","advancePrepaid","customerPickupBackhaul","prepaidChargeCustomer","prepaidBySeller","paidBySeller","pickup","thirdPartyPay"],"description":"Freight payment method","orderful_x12_path":["850:FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","850:N1_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","850:PO1_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","856:HL_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","860:FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","860:N1_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","860:POC_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode"],"orderful_enum_meta":{"airCollect":{"description":"Air collect payment","orderful_x12_codes":["AC"]},"airPrepaid":{"description":"Air prepaid payment","orderful_x12_codes":["AP"]},"paidByBuyer":{"description":"Freight paid by buyer","orderful_x12_codes":["BP"]},"collect":{"description":"Collect payment","orderful_x12_codes":["CC"]},"collectOnDelivery":{"description":"Freight charges paid by the consignee to the carrier at the time of delivery","orderful_x12_codes":["CD"]},"collectFreightCreditedBack":{"description":"Freight collected from the buyer at delivery, then credited back to them","orderful_x12_codes":["CF"]},"mutuallyAgreed":{"description":"Mutually agreed payment method","orderful_x12_codes":["DF"]},"portOfCall":{"description":"Port of call payment","orderful_x12_codes":["FO"]},"halfPrepaid":{"description":"Half prepaid payment","orderful_x12_codes":["HP"]},"mixed":{"description":"Mixed payment method","orderful_x12_codes":["MX"]},"serviceFreightNoCharge":{"description":"Service freight with no charge","orderful_x12_codes":["NC"]},"advancePrepaid":{"description":"Advance prepaid payment","orderful_x12_codes":["PA"]},"customerPickupBackhaul":{"description":"Customer pickup or backhaul","orderful_x12_codes":["PB"]},"prepaidChargeCustomer":{"description":"Prepaid and charged to customer","orderful_x12_codes":["PC"]},"prepaidBySeller":{"description":"Prepaid by seller","orderful_x12_codes":["PP","PO"]},"paidBySeller":{"description":"Freight paid by seller","orderful_x12_codes":["PS"]},"pickup":{"description":"Pickup by consignee","orderful_x12_codes":["PU"]},"thirdPartyPay":{"description":"Third party pays freight","orderful_x12_codes":["TP"]}}},"locationType":{"type":"string","enum":["cityAndState","country","destination","origin","stateProvince","warehouse","foreignFreightForwarder","onVessel","mutuallyDefined"],"description":"Type of FOB location","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.locationQualifier"],"orderful_enum_meta":{"cityAndState":{"description":"City and state location","orderful_x12_codes":["AC"]},"country":{"description":"Country location","orderful_x12_codes":["CA","CC"]},"destination":{"description":"Destination location","orderful_x12_codes":["DE"]},"origin":{"description":"Origin location","orderful_x12_codes":["OR"]},"stateProvince":{"description":"State or province location","orderful_x12_codes":["SP"]},"warehouse":{"description":"Warehouse location","orderful_x12_codes":["WH"]},"foreignFreightForwarder":{"description":"Foreign freight forwarder location — the consolidation port or freight forwarder facility used in international trade","orderful_x12_codes":["FF"]},"onVessel":{"description":"FOB point is on board the vessel carrying the goods","orderful_x12_codes":["OV"]},"mutuallyDefined":{"description":"Location mutually defined by trading partners","orderful_x12_codes":["ZZ"]}}},"locationDescription":{"description":"Description of FOB location","type":"string"},"titlePassageType":{"type":"string","enum":["cityAndState","country","destination","origin","stateProvince","warehouse","portOfLoading","foreignFreightForwarder"],"description":"Type of title passage location","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.locationQualifier1"],"orderful_enum_meta":{"cityAndState":{"description":"City and state title passage","orderful_x12_codes":["AC"]},"country":{"description":"Country title passage","orderful_x12_codes":["CA","CC"]},"destination":{"description":"Destination title passage","orderful_x12_codes":["DE"]},"origin":{"description":"Origin title passage","orderful_x12_codes":["OR"]},"stateProvince":{"description":"State or province title passage","orderful_x12_codes":["SP"]},"warehouse":{"description":"Warehouse title passage","orderful_x12_codes":["WH"]},"portOfLoading":{"description":"Title passes at the port where the goods are loaded onto the vessel, used on import orders","orderful_x12_codes":["KL"]},"foreignFreightForwarder":{"description":"Title passes at the foreign freight forwarder — the consolidation port or freight forwarder facility used in international trade","orderful_x12_codes":["FF"]}}},"titlePassageDescription":{"description":"Description of title passage location","type":"string"},"transportationTermsSource":{"type":"string","enum":["incoTerms","tradeTerms","mutuallyDefined"],"description":"Source of transportation terms","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.transportationTermsQualifierCode"],"orderful_enum_meta":{"incoTerms":{"description":"Incoterms","orderful_x12_codes":["01"]},"tradeTerms":{"description":"Trade terms code","orderful_x12_codes":["02"]},"mutuallyDefined":{"description":"Mutually defined","orderful_x12_codes":["ZZ"]}}},"transportationTerms":{"type":"string","enum":["costAndFreight","costInsuranceAndFreight","carriageAndInsurancePaidTo","carriagePaidTo","deliveredAtFrontier","deliverDutyPaid","deliverDutyUnpaid","deliveredDutyUnpaid","deliveredExQuay","deliveredExShip","domesticallySupplied","exQuay","exShip","exWorks","freeAlongsideShip","freeCarrier","freightCarriageInsurancePaidTo","freightCarriagePaidTo","freeOnBoard","freeOnRail","freeOnTruck","nonPrivilegedForeign","privilegedForeign","mutuallyDefined"],"description":"Incoterms or trade terms code","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.transportationTermsCode"],"orderful_enum_meta":{"costAndFreight":{"description":"Cost and freight (CFR)","orderful_x12_codes":["CFR"],"orderful_edifact_codes":["CFR"]},"costInsuranceAndFreight":{"description":"Cost, insurance and freight (CIF)","orderful_x12_codes":["CIF"],"orderful_edifact_codes":["CIF"]},"carriageAndInsurancePaidTo":{"description":"Carriage and insurance paid to (CIP)","orderful_x12_codes":["CIP"],"orderful_edifact_codes":["CIP"]},"carriagePaidTo":{"description":"Carriage paid to (CPT)","orderful_x12_codes":["CPT"],"orderful_edifact_codes":["CPT"]},"deliveredAtFrontier":{"description":"Delivered at frontier (DAF)","orderful_x12_codes":["DAF"],"orderful_edifact_codes":["DAF"]},"deliverDutyPaid":{"description":"Delivered duty paid (DDP)","orderful_x12_codes":["DDP"],"orderful_edifact_codes":["DDP"]},"deliverDutyUnpaid":{"description":"Delivered duty unpaid (DDU)","orderful_x12_codes":["DDU"],"orderful_edifact_codes":["DDU"]},"deliveredDutyUnpaid":{"description":"Delivered duty unpaid variant (DUP)","orderful_x12_codes":["DUP"],"orderful_edifact_codes":["DUP"]},"deliveredExQuay":{"description":"Delivered ex quay (DEQ)","orderful_x12_codes":["DEQ"],"orderful_edifact_codes":["DEQ"]},"deliveredExShip":{"description":"Delivered ex ship (DES)","orderful_x12_codes":["DES"],"orderful_edifact_codes":["DES"]},"domesticallySupplied":{"description":"Domestically supplied (DOM)","orderful_x12_codes":["DOM"],"orderful_edifact_codes":["DOM"]},"exQuay":{"description":"Ex quay (EXQ)","orderful_x12_codes":["EXQ"],"orderful_edifact_codes":["EXQ"]},"exShip":{"description":"Ex ship (EXS)","orderful_x12_codes":["EXS"],"orderful_edifact_codes":["EXS"]},"exWorks":{"description":"Ex works (EXW)","orderful_x12_codes":["EXW"],"orderful_edifact_codes":["EXW"]},"freeAlongsideShip":{"description":"Free alongside ship (FAS)","orderful_x12_codes":["FAS"],"orderful_edifact_codes":["FAS"]},"freeCarrier":{"description":"Free carrier (FCA)","orderful_x12_codes":["FCA"],"orderful_edifact_codes":["FCA"]},"freightCarriageInsurancePaidTo":{"description":"Freight, carriage and insurance paid to (FCI)","orderful_x12_codes":["FCI"],"orderful_edifact_codes":["FCI"]},"freightCarriagePaidTo":{"description":"Freight and carriage paid to (FCP)","orderful_x12_codes":["FCP"],"orderful_edifact_codes":["FCP"]},"freeOnBoard":{"description":"Free on board (FOB)","orderful_x12_codes":["FOB"],"orderful_edifact_codes":["FOB"]},"freeOnRail":{"description":"Free on rail (FOR)","orderful_x12_codes":["FOR"],"orderful_edifact_codes":["FOR"]},"freeOnTruck":{"description":"Free on truck (FOT)","orderful_x12_codes":["FOT"],"orderful_edifact_codes":["FOT"]},"nonPrivilegedForeign":{"description":"Non-privileged foreign status (NPF)","orderful_x12_codes":["NPF"]},"privilegedForeign":{"description":"Privileged foreign status (PPF)","orderful_x12_codes":["PPF"]},"mutuallyDefined":{"description":"Mutually defined terms","orderful_x12_codes":["ZZZ"],"orderful_edifact_codes":["ZZZ"]}}},"riskOfLoss":{"type":"string","enum":["toDestinationBuyer","toFreightEqPointSeller","toPoolPointSeller","toDestinationSeller","mutuallyDefined"],"description":"Risk of loss transfer point","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.riskOfLossCode"],"orderful_enum_meta":{"toDestinationBuyer":{"description":"Risk transfers to buyer at destination","orderful_x12_codes":["BY"]},"toFreightEqPointSeller":{"description":"Risk transfers to seller at freight equalization point","orderful_x12_codes":["FE"]},"toPoolPointSeller":{"description":"Risk transfers to seller at pool point","orderful_x12_codes":["PP"]},"toDestinationSeller":{"description":"Risk transfers to seller at destination","orderful_x12_codes":["SE"]},"mutuallyDefined":{"description":"Risk of loss mutually defined","orderful_x12_codes":["ZZ"]}}},"description":{"description":"Additional FOB description","type":"string"}},"additionalProperties":false}},"quantityAndWeight":{"description":"Quantity, weight, and volume details for the shipment — one entry per distinct packaging form (e.g. cases, pallets).","orderful_x12_path":["855:carrierDetailsQuantityAndWeight"],"orderful_x12_notes":["855: TD1 segment — one entry per distinct packaging form (TD101), each carrying its lading quantity (TD102), weight (TD106/107/108) and volume (TD109/110). Weight qualifier TD106=G maps to grossWeight, N to netWeight."],"type":"array","items":{"type":"object","properties":{"packageForm":{"type":"string","enum":["bag","carton","case","coil","pallet"],"description":"Form of packaging","orderful_enum_meta":{"bag":{"description":"Bag packaging form","orderful_x12_codes":["BAG"]},"carton":{"description":"Carton packaging form","orderful_x12_codes":["CTN"]},"case":{"description":"Case packaging form","orderful_x12_codes":["CAS"]},"coil":{"description":"Coil packaging form","orderful_x12_codes":["COL"]},"pallet":{"description":"Pallet packaging form","orderful_x12_codes":["PLT"]}}},"packageMaterial":{"type":"string","enum":["aluminum","corrugated","plastic","plasticVacuumed","standard","steel","wood"],"description":"Material of packaging","orderful_enum_meta":{"aluminum":{"description":"Aluminum material","orderful_x12_codes":["01"]},"corrugated":{"description":"Corrugated cardboard material","orderful_x12_codes":["25"]},"plastic":{"description":"Plastic material","orderful_x12_codes":["79"]},"plasticVacuumed":{"description":"Vacuum-sealed plastic material","orderful_x12_codes":["75"]},"standard":{"description":"Standard material","orderful_x12_codes":["90"]},"steel":{"description":"Steel material","orderful_x12_codes":["52"]},"wood":{"description":"Wood material","orderful_x12_codes":["94"]}}},"ladingQuantity":{"description":"Number of units (pieces) of the lading commodity for this packaging form","orderful_x12_path":["855:carrierDetailsQuantityAndWeight.*.ladingQuantity"],"type":"string"},"totalQuantity":{"description":"Document-level hash total of item quantities — the sum of the line-item quantities, not a count of shipping packages","orderful_x12_path":["940:totalShippingOrder.*.quantity","810:ISS_loop.*.invoiceShipmentSummary.*.numberOfUnitsShipped","880:totalInvoiceQuantity.*.numberOfUnitsShipped","875:totalPurchaseOrder.*.quantity"],"orderful_x12_notes":["Distinct from ladingQuantity, which counts shipping packages (cartons/pallets). W76 and W03 define this as a unitless hash total; the 810 ISS, 880 G31 and 875 G76 total segments carry an explicit unit of measure alongside it, which lands on totalQuantityUOM."],"type":"string"},"totalQuantityUOM":{"description":"Unit of measure for the total quantity","orderful_x12_path":["810:ISS_loop.*.invoiceShipmentSummary.*.unitOrBasisForMeasurementCode","880:totalInvoiceQuantity.*.unitOrBasisForMeasurementCode","875:totalPurchaseOrder.*.unitOrBasisForMeasurementCode"],"type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}},"weightUOM":{"description":"Unit of measure for weight","orderful_x12_path":["875:totalPurchaseOrder.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.carrierDetailsQuantityAndWeight.*.unitOrBasisForMeasurementCode","810:ISS_loop.*.invoiceShipmentSummary.*.unitOrBasisForMeasurementCode1","880:totalInvoiceQuantity.*.unitOrBasisForMeasurementCode1","940:totalShippingOrder.*.unitOrBasisForMeasurementCode","850:carrierDetailsQuantityAndWeight.*.unitOrBasisForMeasurementCode","850:CTT_loop.*.transactionTotals.*.unitOrBasisForMeasurementCode","860:CTT_loop.*.transactionTotals.*.unitOrBasisForMeasurementCode"],"orderful_x12_notes":["PG and PN both map to pound; the gross/net hint is not carried here. A total with no TD106 lands on grossWeight."],"type":"string","enum":["pound","kilogram","gram","ounce"],"orderful_enum_meta":{"pound":{"description":"Pound — imperial weight unit","orderful_x12_codes":["LB","01","PG","PN"]},"kilogram":{"description":"Kilogram — metric weight unit","orderful_x12_codes":["KG","50"]},"gram":{"description":"Gram — metric weight unit, one thousandth of a kilogram","orderful_x12_codes":["GR"]},"ounce":{"description":"Ounce (avoirdupois) — imperial weight unit, one sixteenth of a pound","orderful_x12_codes":["OZ"]}}},"grossWeight":{"description":"Gross weight including packaging","orderful_x12_path":["875:totalPurchaseOrder.*.weight","810:ISS_loop.*.invoiceShipmentSummary.*.weight","880:totalInvoiceQuantity.*.weight","940:totalShippingOrder.*.weight","850:carrierDetailsQuantityAndWeight.*.weight | weightQualifier=G","850:CTT_loop.*.transactionTotals.*.weight","860:CTT_loop.*.transactionTotals.*.weight","856:HL_loop.*.carrierDetailsQuantityAndWeight.*.weight | weightQualifier=G"],"orderful_x12_codes":["G"],"orderful_x12_notes":["850/860: CTT03 carries no gross/net qualifier and lands here by default. Where the guideline note, or the line data it totals, shows it is net product weight (e.g. for catch-weight items), route it to netWeight instead."],"type":"string"},"netWeight":{"description":"Net weight of contents only","orderful_x12_path":["850:carrierDetailsQuantityAndWeight.*.weight | weightQualifier=N","856:HL_loop.*.carrierDetailsQuantityAndWeight.*.weight | weightQualifier=N"],"orderful_x12_codes":["N"],"type":"string"},"volume":{"description":"Total volume of the shipment","orderful_x12_path":["810:ISS_loop.*.invoiceShipmentSummary.*.volume","880:totalInvoiceQuantity.*.volume","940:totalShippingOrder.*.volume","875:totalPurchaseOrder.*.volume","850:carrierDetailsQuantityAndWeight.*.volume","850:CTT_loop.*.transactionTotals.*.volume","860:CTT_loop.*.transactionTotals.*.volume","856:HL_loop.*.carrierDetailsQuantityAndWeight.*.volume"],"type":"string"},"volumeUOM":{"type":"string","enum":["cubicFeet","cubicInches","cubicMeter","cubicYard","gallon","liter"],"description":"Unit of measure for volume","orderful_x12_path":["856:HL_loop.*.carrierDetailsQuantityAndWeight.*.unitOrBasisForMeasurementCode1","810:ISS_loop.*.invoiceShipmentSummary.*.unitOrBasisForMeasurementCode2","880:totalInvoiceQuantity.*.unitOrBasisForMeasurementCode2","940:totalShippingOrder.*.unitOrBasisForMeasurementCode1","875:totalPurchaseOrder.*.unitOrBasisForMeasurementCode2","850:carrierDetailsQuantityAndWeight.*.unitOrBasisForMeasurementCode1","850:CTT_loop.*.transactionTotals.*.unitOrBasisForMeasurementCode1","860:CTT_loop.*.transactionTotals.*.unitOrBasisForMeasurementCode1"],"orderful_enum_meta":{"cubicFeet":{"description":"Cubic feet volume measure","orderful_x12_codes":["CF"]},"cubicInches":{"description":"Cubic inches volume measure","orderful_x12_codes":["CI"]},"cubicMeter":{"description":"Cubic meter volume measure","orderful_x12_codes":["CR"]},"cubicYard":{"description":"Cubic yard volume measure","orderful_x12_codes":["CY"]},"gallon":{"description":"Gallon volume measure","orderful_x12_codes":["GA"]},"liter":{"description":"Liter volume measure","orderful_x12_codes":["LT"]}}},"dimensionUOM":{"type":"string","enum":["foot","meter"],"description":"Unit of measure for length","orderful_x12_path":["856:HL_loop.*.measurements.*.unitOrBasisForMeasurementCode | measurementQualifier=LN"],"orderful_enum_meta":{"foot":{"description":"Foot length measure","orderful_x12_codes":["FT"]},"meter":{"description":"Meter length measure","orderful_x12_codes":["MR"]}}},"length":{"description":"Total linear length of coils in the shipment","orderful_x12_path":["HL_loop.*.measurements.* | measurementQualifier=LN"],"orderful_x12_codes":["LN"],"type":"string"},"basebox":{"description":"Billable quantity in baseboxes (tin plate industry unit: 112 sheets × 14\"×20\" = 31,360 sq in)","orderful_x12_path":["HL_loop.*.measurements.* | unitOrBasisForMeasurementCode=BB"],"orderful_x12_codes":["BB"],"type":"string"}},"additionalProperties":false}}},"additionalProperties":false},"allowances":{"description":"Allowances or discounts applied to the order","orderful_x12_path":["855:SAC_loop.* | allowanceOrChargeIndicatorCode=A"],"orderful_x12_codes":["A"],"orderful_edifact_codes":["A"],"orderful_edifact_paths":["ORDRSP:allowanceOrCharge_group.*.allowanceOrCharge | allowanceOrChargeCodeQualifier=A"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["advertising","centralBuy","centsOff","competitiveAllowance","cooperativeAdvertising","customsBrokerFee","customsEntry","claim","commission","damagedMerchandiseAllowance","defectiveAllowance","coreCharge","credit","deposit","discount","displayAllowance","dropDock","earlyBuyAllowance","forwardingCharge","freeGoods","freight","fuelSurcharge","goodsAndServicesTax","handling","hangerService","iceCharge","inboundFreight","inlandTransportation","labelAllowance","lateDocumentDeduction","latePaymentCharge","lateShipmentDiscount","materialSurcharge","networkAllowance","newDistributionAllowance","newStore","newWarehouse","nonPerformanceAllowance","other","pallet","pickup","pickupAndDelivery","priceDeviation","promotionalAllowance","quantityDiscount","quantitySurcharge","rebate","refrigeration","restocking","royalty","serviceAtPickupOrDelivery","serviceCharge","shipping","shippingAndHandling","specialAllowance","specialBuy","splitDelivery","swell","tax","temperatureProtection","ticketing","tobaccoProductsReportCharge","truckloadDiscount","unloading","unsaleableMerchandiseAllowance","valueAddedTax","volume","warehouse","duty"],"description":"Type of allowance or charge","orderful_x12_notes":["810/850/860: SAC02 D340 is a goods and services charge by default. Where the guideline note defines D340 as the taxable or merchandise value of the sale (as Rithum-family guidelines do), it is not a charge: route it to monetaryAmounts.taxable and do not emit it here."],"orderful_x12_path":["810:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","810:IT1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode"],"orderful_enum_meta":{"advertising":{"description":"Advertising allowance or charge","orderful_x12_codes":["A260"]},"centralBuy":{"description":"Allowance for goods bought centrally by the buyer's head office on behalf of its individual locations.","orderful_x12_codes":["B000"]},"centsOff":{"description":"Per-unit price reduction of a stated amount, typically marked on the product package as a cents-off offer to the consumer.","orderful_x12_codes":["B010"]},"competitiveAllowance":{"description":"Allowance granted to help the buyer meet a competitor's price on the goods.","orderful_x12_codes":["B320"]},"cooperativeAdvertising":{"description":"Allowance funding advertising of the goods where the cost is shared between buyer and seller.","orderful_x12_codes":["B720","B210"]},"customsBrokerFee":{"description":"Fee charged by a customs broker for clearing the goods through customs.","orderful_x12_codes":["B860"]},"customsEntry":{"description":"Charge for preparing and filing the customs entry declaration for the goods.","orderful_x12_codes":["B880"]},"claim":{"description":"Deduction taken against the invoice to settle a claim."},"commission":{"description":"Commission amount owed on the goods","orderful_x12_codes":["B310"]},"damagedMerchandiseAllowance":{"description":"Allowance for merchandise damaged in transit or handling, as distinct from merchandise defective on manufacture","orderful_x12_codes":["B950"]},"defectiveAllowance":{"description":"Defective merchandise allowance","orderful_x12_codes":["C000"]},"coreCharge":{"description":"Core charge — a refundable surcharge for the remanufacturable core of an auto part, refunded upon return of the old core","orderful_x12_codes":["B750"]},"credit":{"description":"General credit reducing the amount owed, where no more specific allowance applies","orderful_x12_codes":["B800"]},"deposit":{"description":"Deposit charge (e.g., container or bottle deposit)","orderful_x12_codes":["C110"]},"discount":{"description":"General discount","orderful_x12_codes":["C310"]},"displayAllowance":{"description":"Allowance funding in-store display of the goods.","orderful_x12_codes":["C320"]},"dropDock":{"description":"Charge for delivering the shipment to the dock of the receiving location.","orderful_x12_codes":["C460"]},"earlyBuyAllowance":{"description":"Allowance for committing to an order ahead of the normal buying period.","orderful_x12_codes":["C540"]},"forwardingCharge":{"description":"Charge by a freight forwarder for arranging onward transport of the goods.","orderful_x12_codes":["D140"]},"freeGoods":{"description":"Allowance covering goods supplied at no charge, such as samples or promotional stock.","orderful_x12_codes":["D170"]},"freight":{"description":"Freight — the cost of transporting the goods; whether it is an allowance or a charge is given by the array it is in","orderful_x12_codes":["D240","53","C040","504"]},"fuelSurcharge":{"description":"Surcharge reflecting the cost of fuel used to transport the goods.","orderful_x12_codes":["D270"]},"goodsAndServicesTax":{"description":"Goods and services tax (GST), or harmonized sales tax (HST) where GST is combined with the provincial portion, charged on the goods","orderful_x12_codes":["D360"]},"handling":{"description":"Handling charge","orderful_x12_codes":["D500","61","503"]},"hangerService":{"description":"Charge for supplying the goods on hangers rather than flat-packed."},"iceCharge":{"description":"Charge for ice, including dry ice, supplied to keep the goods chilled in transit.","orderful_x12_codes":["C510"]},"inboundFreight":{"description":"Freight charge for transporting the goods into the buyer's receiving location.","orderful_x12_codes":["D750"]},"inlandTransportation":{"description":"Charge for overland transport between a port or terminal and an inland location.","orderful_x12_codes":["D800"]},"labelAllowance":{"description":"Allowance covering the cost of applying labels to the goods.","orderful_x12_codes":["E160"]},"lateDocumentDeduction":{"description":"Deduction taken when required documents are presented later than agreed."},"latePaymentCharge":{"description":"Charge applied when payment is made after the due date.","orderful_x12_codes":["E280"]},"lateShipmentDiscount":{"description":"Discount taken when the goods shipped later than the agreed date."},"materialSurcharge":{"description":"Surcharge passing on a change in the cost of the raw material, such as metal, that the goods are made from.","orderful_x12_codes":["E620"]},"networkAllowance":{"description":"Allowance granted for distributing the goods through the buyer's own network of locations.","orderful_x12_notes":["This concept is also sent by some partners under a code whose standard meaning differs. Where that happens the code-to-value routing belongs in the guideline parameters, not here."]},"newDistributionAllowance":{"description":"Allowance supporting the introduction of the goods into a new distribution channel.","orderful_x12_codes":["E720"]},"newStore":{"description":"New store allowance","orderful_x12_codes":["E740","E750"]},"newWarehouse":{"description":"Allowance supporting the initial stocking of a newly opened warehouse.","orderful_x12_codes":["E770"]},"nonPerformanceAllowance":{"description":"Trade promotion allowance granted to the buyer with no merchandising performance, such as advertising or display, required in return.","orderful_x12_codes":["A400"]},"other":{"description":"Other allowance or charge","orderful_x12_codes":["F050","499","999","I131","ZZZZ","A170"]},"pallet":{"description":"Charge for the pallets used to ship the goods.","orderful_x12_codes":["F180"]},"pickup":{"description":"Charge for collecting the goods from the origin location.","orderful_x12_codes":["F340"]},"pickupAndDelivery":{"description":"Charge for a service that both collects the goods from the origin and delivers them to the destination.","orderful_x12_codes":["F330"]},"priceDeviation":{"description":"Adjustment reflecting an agreed departure from the standard price of the goods.","orderful_x12_codes":["F680"]},"promotionalAllowance":{"description":"Promotional allowance","orderful_x12_codes":["F800","47","F810","F670","E550"]},"quantityDiscount":{"description":"Quantity discount","orderful_x12_codes":["F910"]},"quantitySurcharge":{"description":"Surcharge applied when the quantity ordered falls below the threshold that earns standard pricing.","orderful_x12_codes":["F920"]},"rebate":{"description":"Rebate","orderful_x12_codes":["F970"]},"refrigeration":{"description":"Charge for refrigerated handling or storage of the goods.","orderful_x12_codes":["G220"]},"restocking":{"description":"Restocking charge","orderful_x12_codes":["G470"]},"royalty":{"description":"Royalty owed on the goods, typically for licensed merchandise","orderful_x12_codes":["G580"]},"serviceAtPickupOrDelivery":{"description":"Service charge at pickup or delivery","orderful_x12_codes":["E380","54","518"]},"serviceCharge":{"description":"General charge for a service performed in connection with the order, where no more specific service value applies; the service, when stated, is carried in the description.","orderful_x12_codes":["G740"]},"shipping":{"description":"Shipping charge","orderful_x12_codes":["G821"]},"shippingAndHandling":{"description":"Shipping and handling charge","orderful_x12_codes":["G830"]},"specialAllowance":{"description":"Allowance agreed for a specific circumstance outside the standard terms.","orderful_x12_codes":["H000"]},"specialBuy":{"description":"Allowance for a one-off purchase made on specially negotiated terms.","orderful_x12_codes":["H010"]},"splitDelivery":{"description":"Charge for delivering a single order to more than one destination or across more than one drop.","orderful_x12_codes":["H230"]},"swell":{"description":"Swell allowance","orderful_x12_codes":["H560","95"]},"tax":{"description":"Tax charge (general, local, or city sales tax applied as a line-item allowance/charge)","orderful_x12_codes":["H850","H730","H630","H740"]},"temperatureProtection":{"description":"Charge for keeping the goods within a required temperature range while in transit.","orderful_x12_codes":["H910"]},"ticketing":{"description":"Charge for applying price tickets to the goods before delivery."},"tobaccoProductsReportCharge":{"description":"Charge for the reporting required on shipments of tobacco products.","orderful_x12_codes":["I070"]},"truckloadDiscount":{"description":"Discount for ordering a quantity that fills a full truckload.","orderful_x12_codes":["I310"]},"unloading":{"description":"Charge for unloading the goods at the delivery location.","orderful_x12_codes":["I390"]},"unsaleableMerchandiseAllowance":{"description":"Unsaleable merchandise allowance","orderful_x12_codes":["I410"]},"valueAddedTax":{"description":"Value added tax charged on the goods. Distinct from a general sales tax: a registered buyer can normally reclaim it as input tax.","orderful_x12_codes":["H800"]},"volume":{"description":"Volume allowance or discount","orderful_x12_codes":["I530"]},"warehouse":{"description":"Warehouse charge or allowance","orderful_x12_codes":["I570","511"]},"duty":{"description":"Import duty charge — the customs duty payable on the goods, expressed as a percentage of value or as a per-unit amount","orderful_x12_codes":["B872","C530"]}}},"amount":{"description":"Fixed amount of allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount"],"type":"string"},"percent":{"description":"Percentage of allowance or charge","type":"string"},"percentBasis":{"type":"string","enum":["basePrice","basePricePerUnit","discountGross"],"description":"Basis for calculating percentage","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier"],"orderful_enum_meta":{"basePrice":{"description":"The percentage applies to the total base price amount","orderful_x12_codes":["6"]},"basePricePerUnit":{"description":"The percentage applies to the base price of a single unit","orderful_x12_codes":["5"]},"discountGross":{"description":"The percentage is a discount applied to the gross amount","orderful_x12_codes":["3"]}}},"rate":{"description":"Rate per unit at which the allowance or charge is calculated","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate"],"type":"string"},"quantity":{"description":"Quantity of goods the allowance or charge applies to","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"methodOfHandling":{"type":"string","enum":["collect","paidByVendor","paidByCustomer","prepaid","billBack","offInvoice","creditCustomerAccount"],"description":"How the charge is handled","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode"],"orderful_enum_meta":{"collect":{"description":"Collect from recipient","orderful_x12_codes":["CC"]},"paidByVendor":{"description":"The allowance or charge is paid by the vendor.","orderful_x12_codes":["03","05"]},"paidByCustomer":{"description":"Paid by customer","orderful_x12_codes":["06"]},"prepaid":{"description":"Prepaid by shipper","orderful_x12_codes":["PP"]},"billBack":{"description":"The allowance or charge is settled separately (as a debit/credit memo or a separate invoice) and is NOT reflected in the invoice total.","orderful_x12_codes":["01"]},"offInvoice":{"description":"The allowance or charge is deducted on the invoice and IS reflected in the invoice total.","orderful_x12_codes":["02"]},"creditCustomerAccount":{"description":"The allowance or charge is applied as a credit to the customer's account; not reflected in the invoice total.","orderful_x12_codes":["04"]}}},"description":{"description":"Description of the allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription","875:G68_loop.*.G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription"],"type":"string"}},"required":["type"],"additionalProperties":false}},"charges":{"description":"Additional charges applied to the order","orderful_x12_path":["855:SAC_loop.* | allowanceOrChargeIndicatorCode=C"],"orderful_x12_codes":["C"],"orderful_edifact_codes":["C"],"orderful_edifact_paths":["ORDRSP:allowanceOrCharge_group.*.allowanceOrCharge | allowanceOrChargeCodeQualifier=C"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["advertising","centralBuy","centsOff","competitiveAllowance","cooperativeAdvertising","customsBrokerFee","customsEntry","claim","commission","damagedMerchandiseAllowance","defectiveAllowance","coreCharge","credit","deposit","discount","displayAllowance","dropDock","earlyBuyAllowance","forwardingCharge","freeGoods","freight","fuelSurcharge","goodsAndServicesTax","handling","hangerService","iceCharge","inboundFreight","inlandTransportation","labelAllowance","lateDocumentDeduction","latePaymentCharge","lateShipmentDiscount","materialSurcharge","networkAllowance","newDistributionAllowance","newStore","newWarehouse","nonPerformanceAllowance","other","pallet","pickup","pickupAndDelivery","priceDeviation","promotionalAllowance","quantityDiscount","quantitySurcharge","rebate","refrigeration","restocking","royalty","serviceAtPickupOrDelivery","serviceCharge","shipping","shippingAndHandling","specialAllowance","specialBuy","splitDelivery","swell","tax","temperatureProtection","ticketing","tobaccoProductsReportCharge","truckloadDiscount","unloading","unsaleableMerchandiseAllowance","valueAddedTax","volume","warehouse","duty"],"description":"Type of allowance or charge","orderful_x12_notes":["810/850/860: SAC02 D340 is a goods and services charge by default. Where the guideline note defines D340 as the taxable or merchandise value of the sale (as Rithum-family guidelines do), it is not a charge: route it to monetaryAmounts.taxable and do not emit it here."],"orderful_x12_path":["810:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","810:IT1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode"],"orderful_enum_meta":{"advertising":{"description":"Advertising allowance or charge","orderful_x12_codes":["A260"]},"centralBuy":{"description":"Allowance for goods bought centrally by the buyer's head office on behalf of its individual locations.","orderful_x12_codes":["B000"]},"centsOff":{"description":"Per-unit price reduction of a stated amount, typically marked on the product package as a cents-off offer to the consumer.","orderful_x12_codes":["B010"]},"competitiveAllowance":{"description":"Allowance granted to help the buyer meet a competitor's price on the goods.","orderful_x12_codes":["B320"]},"cooperativeAdvertising":{"description":"Allowance funding advertising of the goods where the cost is shared between buyer and seller.","orderful_x12_codes":["B720","B210"]},"customsBrokerFee":{"description":"Fee charged by a customs broker for clearing the goods through customs.","orderful_x12_codes":["B860"]},"customsEntry":{"description":"Charge for preparing and filing the customs entry declaration for the goods.","orderful_x12_codes":["B880"]},"claim":{"description":"Deduction taken against the invoice to settle a claim."},"commission":{"description":"Commission amount owed on the goods","orderful_x12_codes":["B310"]},"damagedMerchandiseAllowance":{"description":"Allowance for merchandise damaged in transit or handling, as distinct from merchandise defective on manufacture","orderful_x12_codes":["B950"]},"defectiveAllowance":{"description":"Defective merchandise allowance","orderful_x12_codes":["C000"]},"coreCharge":{"description":"Core charge — a refundable surcharge for the remanufacturable core of an auto part, refunded upon return of the old core","orderful_x12_codes":["B750"]},"credit":{"description":"General credit reducing the amount owed, where no more specific allowance applies","orderful_x12_codes":["B800"]},"deposit":{"description":"Deposit charge (e.g., container or bottle deposit)","orderful_x12_codes":["C110"]},"discount":{"description":"General discount","orderful_x12_codes":["C310"]},"displayAllowance":{"description":"Allowance funding in-store display of the goods.","orderful_x12_codes":["C320"]},"dropDock":{"description":"Charge for delivering the shipment to the dock of the receiving location.","orderful_x12_codes":["C460"]},"earlyBuyAllowance":{"description":"Allowance for committing to an order ahead of the normal buying period.","orderful_x12_codes":["C540"]},"forwardingCharge":{"description":"Charge by a freight forwarder for arranging onward transport of the goods.","orderful_x12_codes":["D140"]},"freeGoods":{"description":"Allowance covering goods supplied at no charge, such as samples or promotional stock.","orderful_x12_codes":["D170"]},"freight":{"description":"Freight — the cost of transporting the goods; whether it is an allowance or a charge is given by the array it is in","orderful_x12_codes":["D240","53","C040","504"]},"fuelSurcharge":{"description":"Surcharge reflecting the cost of fuel used to transport the goods.","orderful_x12_codes":["D270"]},"goodsAndServicesTax":{"description":"Goods and services tax (GST), or harmonized sales tax (HST) where GST is combined with the provincial portion, charged on the goods","orderful_x12_codes":["D360"]},"handling":{"description":"Handling charge","orderful_x12_codes":["D500","61","503"]},"hangerService":{"description":"Charge for supplying the goods on hangers rather than flat-packed."},"iceCharge":{"description":"Charge for ice, including dry ice, supplied to keep the goods chilled in transit.","orderful_x12_codes":["C510"]},"inboundFreight":{"description":"Freight charge for transporting the goods into the buyer's receiving location.","orderful_x12_codes":["D750"]},"inlandTransportation":{"description":"Charge for overland transport between a port or terminal and an inland location.","orderful_x12_codes":["D800"]},"labelAllowance":{"description":"Allowance covering the cost of applying labels to the goods.","orderful_x12_codes":["E160"]},"lateDocumentDeduction":{"description":"Deduction taken when required documents are presented later than agreed."},"latePaymentCharge":{"description":"Charge applied when payment is made after the due date.","orderful_x12_codes":["E280"]},"lateShipmentDiscount":{"description":"Discount taken when the goods shipped later than the agreed date."},"materialSurcharge":{"description":"Surcharge passing on a change in the cost of the raw material, such as metal, that the goods are made from.","orderful_x12_codes":["E620"]},"networkAllowance":{"description":"Allowance granted for distributing the goods through the buyer's own network of locations.","orderful_x12_notes":["This concept is also sent by some partners under a code whose standard meaning differs. Where that happens the code-to-value routing belongs in the guideline parameters, not here."]},"newDistributionAllowance":{"description":"Allowance supporting the introduction of the goods into a new distribution channel.","orderful_x12_codes":["E720"]},"newStore":{"description":"New store allowance","orderful_x12_codes":["E740","E750"]},"newWarehouse":{"description":"Allowance supporting the initial stocking of a newly opened warehouse.","orderful_x12_codes":["E770"]},"nonPerformanceAllowance":{"description":"Trade promotion allowance granted to the buyer with no merchandising performance, such as advertising or display, required in return.","orderful_x12_codes":["A400"]},"other":{"description":"Other allowance or charge","orderful_x12_codes":["F050","499","999","I131","ZZZZ","A170"]},"pallet":{"description":"Charge for the pallets used to ship the goods.","orderful_x12_codes":["F180"]},"pickup":{"description":"Charge for collecting the goods from the origin location.","orderful_x12_codes":["F340"]},"pickupAndDelivery":{"description":"Charge for a service that both collects the goods from the origin and delivers them to the destination.","orderful_x12_codes":["F330"]},"priceDeviation":{"description":"Adjustment reflecting an agreed departure from the standard price of the goods.","orderful_x12_codes":["F680"]},"promotionalAllowance":{"description":"Promotional allowance","orderful_x12_codes":["F800","47","F810","F670","E550"]},"quantityDiscount":{"description":"Quantity discount","orderful_x12_codes":["F910"]},"quantitySurcharge":{"description":"Surcharge applied when the quantity ordered falls below the threshold that earns standard pricing.","orderful_x12_codes":["F920"]},"rebate":{"description":"Rebate","orderful_x12_codes":["F970"]},"refrigeration":{"description":"Charge for refrigerated handling or storage of the goods.","orderful_x12_codes":["G220"]},"restocking":{"description":"Restocking charge","orderful_x12_codes":["G470"]},"royalty":{"description":"Royalty owed on the goods, typically for licensed merchandise","orderful_x12_codes":["G580"]},"serviceAtPickupOrDelivery":{"description":"Service charge at pickup or delivery","orderful_x12_codes":["E380","54","518"]},"serviceCharge":{"description":"General charge for a service performed in connection with the order, where no more specific service value applies; the service, when stated, is carried in the description.","orderful_x12_codes":["G740"]},"shipping":{"description":"Shipping charge","orderful_x12_codes":["G821"]},"shippingAndHandling":{"description":"Shipping and handling charge","orderful_x12_codes":["G830"]},"specialAllowance":{"description":"Allowance agreed for a specific circumstance outside the standard terms.","orderful_x12_codes":["H000"]},"specialBuy":{"description":"Allowance for a one-off purchase made on specially negotiated terms.","orderful_x12_codes":["H010"]},"splitDelivery":{"description":"Charge for delivering a single order to more than one destination or across more than one drop.","orderful_x12_codes":["H230"]},"swell":{"description":"Swell allowance","orderful_x12_codes":["H560","95"]},"tax":{"description":"Tax charge (general, local, or city sales tax applied as a line-item allowance/charge)","orderful_x12_codes":["H850","H730","H630","H740"]},"temperatureProtection":{"description":"Charge for keeping the goods within a required temperature range while in transit.","orderful_x12_codes":["H910"]},"ticketing":{"description":"Charge for applying price tickets to the goods before delivery."},"tobaccoProductsReportCharge":{"description":"Charge for the reporting required on shipments of tobacco products.","orderful_x12_codes":["I070"]},"truckloadDiscount":{"description":"Discount for ordering a quantity that fills a full truckload.","orderful_x12_codes":["I310"]},"unloading":{"description":"Charge for unloading the goods at the delivery location.","orderful_x12_codes":["I390"]},"unsaleableMerchandiseAllowance":{"description":"Unsaleable merchandise allowance","orderful_x12_codes":["I410"]},"valueAddedTax":{"description":"Value added tax charged on the goods. Distinct from a general sales tax: a registered buyer can normally reclaim it as input tax.","orderful_x12_codes":["H800"]},"volume":{"description":"Volume allowance or discount","orderful_x12_codes":["I530"]},"warehouse":{"description":"Warehouse charge or allowance","orderful_x12_codes":["I570","511"]},"duty":{"description":"Import duty charge — the customs duty payable on the goods, expressed as a percentage of value or as a per-unit amount","orderful_x12_codes":["B872","C530"]}}},"amount":{"description":"Fixed amount of allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount"],"type":"string"},"percent":{"description":"Percentage of allowance or charge","type":"string"},"percentBasis":{"type":"string","enum":["basePrice","basePricePerUnit","discountGross"],"description":"Basis for calculating percentage","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier"],"orderful_enum_meta":{"basePrice":{"description":"The percentage applies to the total base price amount","orderful_x12_codes":["6"]},"basePricePerUnit":{"description":"The percentage applies to the base price of a single unit","orderful_x12_codes":["5"]},"discountGross":{"description":"The percentage is a discount applied to the gross amount","orderful_x12_codes":["3"]}}},"rate":{"description":"Rate per unit at which the allowance or charge is calculated","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate"],"type":"string"},"quantity":{"description":"Quantity of goods the allowance or charge applies to","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"methodOfHandling":{"type":"string","enum":["collect","paidByVendor","paidByCustomer","prepaid","billBack","offInvoice","creditCustomerAccount"],"description":"How the charge is handled","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode"],"orderful_enum_meta":{"collect":{"description":"Collect from recipient","orderful_x12_codes":["CC"]},"paidByVendor":{"description":"The allowance or charge is paid by the vendor.","orderful_x12_codes":["03","05"]},"paidByCustomer":{"description":"Paid by customer","orderful_x12_codes":["06"]},"prepaid":{"description":"Prepaid by shipper","orderful_x12_codes":["PP"]},"billBack":{"description":"The allowance or charge is settled separately (as a debit/credit memo or a separate invoice) and is NOT reflected in the invoice total.","orderful_x12_codes":["01"]},"offInvoice":{"description":"The allowance or charge is deducted on the invoice and IS reflected in the invoice total.","orderful_x12_codes":["02"]},"creditCustomerAccount":{"description":"The allowance or charge is applied as a credit to the customer's account; not reflected in the invoice total.","orderful_x12_codes":["04"]}}},"description":{"description":"Description of the allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription","875:G68_loop.*.G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription"],"type":"string"}},"required":["type"],"additionalProperties":false}},"lineItems":{"description":"Line items with their acknowledgment status and details","orderful_x12_path":["855:PO1_loop"],"orderful_x12_notes":["When provided (non-empty), this is the authoritative line list — the writer doesn't backfill missing lines from $purchaseOrder. When omitted or empty, the writer either emits no line detail (if the chosen BAK02 is no-detail like AK/AT/RJ) or synthesizes one ACK_loop per $purchaseOrder line (status:'accepted' → all IA; status:'rejected' → all IR/ID)."],"orderful_edifact_paths":["ORDRSP:lineItem_group"],"type":"array","items":{"type":"object","properties":{"purchaseOrderLineId":{"description":"Line item identifier from the original purchase order","orderful_x12_path":["855:PO1_loop.*.baselineItemData.*.assignedIdentification"],"orderful_x12_notes":["PO101 — echoes the line item ID from the originating 850 PO101"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.lineItem.lineItemId"],"type":"string"},"productIds":{"type":"object","properties":{"buyerItemNumber":{"description":"Buyer-assigned item number","orderful_x12_codes":["BP","IN","CB","SK","PI","IT","PN","ST"],"orderful_edifact_codes":["BP","IN","SK","IT"],"type":"string"},"vendorItemNumber":{"description":"Vendor-assigned item number (EDIFACT LIN/PIA supplier's item number)","orderful_x12_codes":["VA","VC","VN","VP","MG","MF","SA","MN"],"orderful_edifact_codes":["SA","VN","VP","MF"],"type":"string"},"gtin8":{"description":"GTIN-8 (EAN-8) barcode, used on items too small for a full-length barcode","orderful_x12_codes":["EO"],"type":"string"},"gtin12":{"description":"GTIN-12 (UPC-A) barcode","orderful_x12_codes":["UP"],"orderful_edifact_codes":["UP"],"type":"string"},"gtin13":{"description":"GTIN-13 (EAN) barcode","orderful_x12_codes":["EN"],"orderful_edifact_codes":["EN","SRV"],"type":"string"},"gtin14":{"description":"GTIN-14 (ITF-14) case code barcode","orderful_x12_codes":["UK"],"type":"string"},"caseCode":{"description":"Case code identifier","orderful_x12_codes":["UI","UN","UA","UB","UD"],"type":"string"},"moduleCode":{"description":"U.P.C./EAN module code (2-5-5 format)","orderful_x12_codes":["UE"],"type":"string"},"drugCode":{"description":"National Drug Code (NDC)","orderful_x12_codes":["N1","N2","N3","N4","ND"],"type":"string"},"standardBookNumber":{"description":"ISBN or standard book number","orderful_x12_codes":["IB"],"orderful_edifact_codes":["IB"],"type":"string"},"priceLookupNumber":{"description":"Price Look-Up (PLU) code used at point of sale, typically for loose or variable-weight retail goods","orderful_x12_codes":["P8"],"type":"string"},"buyerItemIds":{"description":"Additional buyer product identifiers","orderful_x12_codes":["CB","SK","ST","IT"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["catalog","manufacturerPart","sku","style"],"description":"Type of product identifier","orderful_x12_path":["856:HL_loop.*.itemIdentification.*.productServiceIDQualifier","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier1","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier2","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier3","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier4","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier5","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier6","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier7","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier8","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier9","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier10","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier11","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier12","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier13","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier14"],"orderful_enum_meta":{"catalog":{"description":"Catalog number (buyer catalog reference)","orderful_x12_codes":["CB","VC"]},"manufacturerPart":{"description":"Manufacturer part number","orderful_x12_codes":["MG","MF"]},"sku":{"description":"Stock keeping unit identifier","orderful_x12_codes":["SK"]},"style":{"description":"Style number or code","orderful_x12_codes":["ST","IT","VA"]}}},"value":{"type":"string","description":"Product identifier value"}},"required":["type","value"],"additionalProperties":false}},"vendorItemIds":{"description":"Additional vendor product identifiers","orderful_x12_codes":["VC","MG","VA","MF"],"orderful_edifact_codes":["MF"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["catalog","manufacturerPart","sku","style"],"description":"Type of product identifier","orderful_x12_path":["856:HL_loop.*.itemIdentification.*.productServiceIDQualifier","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier1","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier2","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier3","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier4","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier5","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier6","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier7","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier8","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier9","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier10","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier11","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier12","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier13","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier14"],"orderful_enum_meta":{"catalog":{"description":"Catalog number (buyer catalog reference)","orderful_x12_codes":["CB","VC"]},"manufacturerPart":{"description":"Manufacturer part number","orderful_x12_codes":["MG","MF"]},"sku":{"description":"Stock keeping unit identifier","orderful_x12_codes":["SK"]},"style":{"description":"Style number or code","orderful_x12_codes":["ST","IT","VA"]}}},"value":{"type":"string","description":"Product identifier value"}},"required":["type","value"],"additionalProperties":false}}},"additionalProperties":false,"description":"Product identification codes such as UPC, SKU, or vendor item number","orderful_x12_notes":["PO106/PO107 qualifier+value pair. Must match the originating 850 PO106/PO107."],"orderful_x12_path":["855:PO1_loop.*.baselineItemData.*"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.lineItem.itemNumberId_composite","ORDRSP:lineItem_group.*.additionalProductId.*.itemNumberId_composite"],"orderful_edifact_notes":["LIN itemNumberId (itemId + itemTypeIdCode) is the primary product ID; secondary identifiers (e.g. buyer/supplier item) come from PIA additionalProductId. Must match the originating ORDERS."]},"productAttributes":{"description":"Product attributes such as color, size, and description","orderful_x12_path":["855:PO1_loop.*.PID_loop.*.productItemDescription.*"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.itemDescription.*.itemDescription_composite"],"type":"object","properties":{"description":{"description":"General product description. Sourced from X12 PID05 when PID02=\"08\" (Product Description, general) or when PID02 is absent. In EDIFACT, sourced from EVERY IMD composite for this line item where itemDescriptionCode=\"SP\" (Product) — there may be MULTIPLE matching IMD repetitions per line item, and ALL of them must be included. Within each matching IMD, concatenate itemDescription + itemDescription_1 (the continuation field) with a single space; then $join those per-IMD strings across ALL matching IMDs with a single space separator. Do NOT pick only the first matching IMD — partners commonly split a long description across multiple IMD segments because each itemDescription element is capped at 35 characters. The qualifier code \"SP\" (or X12 \"08\") is positional — it identifies which IMDs carry the product description, and must NOT be reported as a schema gap.","orderful_edifact_paths":["ORDERS:lineItem_group.*.itemDescription.*.itemDescription_composite | itemDescriptionCode=SP"],"orderful_edifact_codes":["SP"],"type":"string"},"shortDescription":{"description":"{\"description\":\"Short product description\"}","type":"string"},"brand":{"description":"Brand or label name for the product","orderful_x12_path":["850:PO1_loop.*.referenceInformation.* | referenceIdentificationQualifier=2N","850:PO1_loop.*.baselineItemData.*.productServiceID | productServiceIDQualifier=BL","850:PO1_loop.*.N1_loop.*.partyIdentification.*.name | entityIdentifierCode=BRN","860:POC_loop.*.referenceInformation.* | referenceIdentificationQualifier=2N","860:POC_loop.*.lineItemChange.*.productServiceID | productServiceIDQualifier=BL","860:POC_loop.*.N1_loop.*.partyIdentification.*.name | entityIdentifierCode=BRN","850:PO1_loop.*.N9_loop.*.extendedReferenceInformation.*.freeFormDescription | referenceIdentificationQualifier=JH","860:POC_loop.*.SLN_loop.*.N9_loop.*.extendedReferenceInformation.*.freeFormDescription | referenceIdentificationQualifier=JH"],"orderful_x12_codes":["2N","BL","BRN","JH"],"orderful_x12_notes":["REF02 when REF01=2N; PO107/09.. when PO106/08..=BL; N102 when N101=BRN","N9 Label Code (N901=JH): the brand name is the free-form N903 (e.g. \"Roundtree & Yorke\"); N902 carries the short label code."],"type":"string"},"colorCode":{"description":"Color code identifier","orderful_x12_codes":["BO","CM","VE"],"type":"string"},"colorDescription":{"description":"Color description text","orderful_x12_codes":["73","75"],"orderful_x12_path":["943:W04_loop.*.lineItemDetail1.*.color"],"type":"string"},"sizeCode":{"description":"Size code identifier","orderful_x12_codes":["IZ","SM","SZ"],"type":"string"},"sizeDescription":{"description":"Size description text","orderful_x12_codes":["74","91"],"type":"string"},"prepackType":{"description":"Prepack assortment or configuration type","orderful_x12_codes":["JP","PP"],"type":"string"},"widthClassification":{"description":"Width classification for the product, such as a footwear width (e.g. \"M\", \"W\", \"N\"). Not a measurement — see width for the physical dimension.","type":"string"},"materialCode":{"description":"Material code identifier","orderful_x12_codes":["KJ"],"type":"string"},"materialDescription":{"description":"Material description text","orderful_x12_codes":["78","92","AH"],"type":"string"},"materialAttributes":{"type":"object","properties":{"type":{"description":"Material type or classification","type":"string"},"grade":{"description":"Material grade or quality tier (e.g., prime, excessPrime, waste)","type":"string"},"annealMethod":{"description":"Annealing method applied to the material","type":"string"},"temper":{"description":"Heat treatment or mechanical processing state of the material","type":"string"},"finish":{"description":"Surface finish or texture applied to the material","type":"string"},"outerCoating":{"description":"Outer surface coating or plating","type":"string"},"innerCoating":{"description":"Inner surface coating or plating","type":"string"},"surfaceProtection":{"description":"Surface protection method or specification","type":"string"},"treatment":{"description":"Chemical or mechanical treatment applied to the material","type":"string"},"weld":{"description":"Welding specification or classification for the material","type":"string"}},"additionalProperties":false},"processCode":{"description":"Process code identifier","orderful_x12_codes":["PR"],"type":"string"},"processDescription":{"description":"Process description text","orderful_x12_codes":["12","PP","PR"],"type":"string"},"specifications":{"description":"Buyer-defined product specifications carried as name/value pairs — the customization detail accompanying made-to-order or special-order items. Only for characteristics that have no named field on this schema; colour, size, material and the physical dimensions each have their own field.","orderful_x12_codes":["84"],"orderful_x12_notes":["PID02=84 (Special Specification) is the declared source. Other buyer-defined characteristic qualifiers carrying product customization detail route here too; those are per-guideline and belong in the guideline parameters, not in this code list."],"type":"array","items":{"type":"object","properties":{"type":{"description":"Name of the product characteristic being specified, as defined by the buyer’s specification (e.g. flex, loft, length, hand)","orderful_x12_path":["850:PO1_loop.*.PID_loop.*.productItemDescription.*.productDescriptionCode | productProcessCharacteristicCode=84","860:POC_loop.*.PID_loop.*.productItemDescription.*.productDescriptionCode | productProcessCharacteristicCode=84"],"type":"string"},"value":{"description":"Value supplied for that characteristic","orderful_x12_path":["850:PO1_loop.*.PID_loop.*.productItemDescription.*.description | productProcessCharacteristicCode=84","860:POC_loop.*.PID_loop.*.productItemDescription.*.description | productProcessCharacteristicCode=84"],"type":"string"}},"additionalProperties":false}},"height":{"description":"Product height dimension","type":"string"},"length":{"description":"Product length dimension","type":"string"},"width":{"description":"Product width dimension","type":"string"},"dimensionUOM":{"type":"string","enum":["standardCubicFoot","boardFeet","hundredBoardFeet","cubicDecimeter","cubicCentimeter","cubicFeet","cubicInches","centimeter","cubicMeter","cubicYard","decimeter","foot","hundredFeet","hundredFeetLinear","hundredSquareFeet","hundredYards","inch","linearFoot","linearMeter","linearYard","millimeter","meter","squareFoot","squareInches","squareMeter","squareYard","thousandSquareInches","thousandFeetLinear","thousandFeetBoard","tenSquareFeet","thousandSquareFeet","yard"],"description":"Unit of measure for product dimensions","orderful_enum_meta":{"standardCubicFoot":{"description":"Standard cubic foot","orderful_x12_codes":["5I"]},"boardFeet":{"description":"Board feet measure","orderful_x12_codes":["BF"]},"hundredBoardFeet":{"description":"Hundred board feet measure","orderful_x12_codes":["BP"]},"cubicDecimeter":{"description":"Cubic decimeter","orderful_x12_codes":["C8"]},"cubicCentimeter":{"description":"Cubic centimeter","orderful_x12_codes":["CC"]},"cubicFeet":{"description":"Cubic feet","orderful_x12_codes":["CF"]},"cubicInches":{"description":"Cubic inches","orderful_x12_codes":["CI"]},"centimeter":{"description":"Centimeter length measure","orderful_x12_codes":["CM"]},"cubicMeter":{"description":"Cubic meter","orderful_x12_codes":["CR"]},"cubicYard":{"description":"Cubic yard","orderful_x12_codes":["CY"]},"decimeter":{"description":"Decimeter length measure","orderful_x12_codes":["DM"]},"foot":{"description":"Foot length measure","orderful_x12_codes":["FT"]},"hundredFeet":{"description":"Hundred feet measure","orderful_x12_codes":["HF"]},"hundredFeetLinear":{"description":"Hundred linear feet measure","orderful_x12_codes":["HL"]},"hundredSquareFeet":{"description":"Hundred square feet measure","orderful_x12_codes":["HS"]},"hundredYards":{"description":"Hundred yards measure","orderful_x12_codes":["HY"]},"inch":{"description":"Inch length measure","orderful_x12_codes":["IN"]},"linearFoot":{"description":"Linear foot measure","orderful_x12_codes":["LF"]},"linearMeter":{"description":"Linear meter measure","orderful_x12_codes":["LM"]},"linearYard":{"description":"Linear yard measure","orderful_x12_codes":["LY"]},"millimeter":{"description":"Millimeter length measure","orderful_x12_codes":["MM"]},"meter":{"description":"Meter length measure","orderful_x12_codes":["MR"]},"squareFoot":{"description":"Square foot area measure","orderful_x12_codes":["SF"]},"squareInches":{"description":"Square inches area measure","orderful_x12_codes":["SI"]},"squareMeter":{"description":"Square meter area measure","orderful_x12_codes":["SM"]},"squareYard":{"description":"Square yard area measure","orderful_x12_codes":["SY"]},"thousandSquareInches":{"description":"Thousand square inches area measure","orderful_x12_codes":["TI"]},"thousandFeetLinear":{"description":"Thousand linear feet measure","orderful_x12_codes":["TL"]},"thousandFeetBoard":{"description":"Thousand board feet measure","orderful_x12_codes":["TM"]},"tenSquareFeet":{"description":"Ten square feet area measure","orderful_x12_codes":["TR"]},"thousandSquareFeet":{"description":"Thousand square feet area measure","orderful_x12_codes":["TS"]},"yard":{"description":"Yard length measure","orderful_x12_codes":["YD"]}}},"vehicleFitment":{"description":"The vehicle the ordered part is an application for (automotive fitment)","orderful_x12_notes":["VIN arrives under the standard qualifiers VT (REF01) or VV (product/service ID). No standard qualifier carries vehicle make or model, so a partner sending those redefines a qualifier privately and that binding is declared in the guideline rather than here."],"type":"object","properties":{"vin":{"description":"Vehicle Identification Number (VIN) of the specific vehicle the part fits","orderful_x12_path":["850:PO1_loop.*.referenceInformation.* | referenceIdentificationQualifier=VT","850:PO1_loop.*.baselineItemData.*.productServiceID | productServiceIDQualifier=VV","860:POC_loop.*.referenceInformation.* | referenceIdentificationQualifier=VT","860:POC_loop.*.lineItemChange.*.productServiceID | productServiceIDQualifier=VV"],"orderful_x12_codes":["VT","VV"],"type":"string"},"make":{"description":"Vehicle manufacturer / make the part is an application for (e.g., Honda, Toyota)","type":"string"},"model":{"description":"Vehicle model the part is an application for (e.g., Civic, Camry)","type":"string"}},"additionalProperties":false}},"additionalProperties":false},"orderQuantity":{"description":"Quantity originally requested on the purchase order. Compare against an accepted action's quantity to detect changes. Not set on a replenishment order, where there is no prior request — the quantity is carried on the accepted action.","orderful_tags":["context"],"orderful_x12_path":["855:PO1_loop.*.baselineItemData.*.quantity"],"orderful_x12_notes":["PO102/PO103 — echoed from the originating 850 PO102/PO103"],"orderful_edifact_codes":["21"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.quantity.*.quantityDetails_composite | quantityTypeCodeQualifier=21"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"orderUnitPrice":{"description":"Unit price originally requested on the purchase order. Compare against an accepted action's unitCostPrice to detect price changes. Not set on a replenishment order, where there is no prior request — the price is carried on the accepted action.","orderful_x12_notes":["Sourced from the originating 850 PO104 — not a native 855 field; populated by mapping enrichment from the corresponding 850"],"type":"string"},"requestedShipDate":{"description":"Ship date originally requested on the purchase order. Compare against an accepted action's scheduledShipDate to detect date changes.","orderful_tags":["context"],"orderful_x12_codes":["010"],"orderful_x12_path":["855:PO1_loop.*.dateTimeReference.* | dateTimeQualifier=010"],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","DTM02 with DTM01=010 — echoed from the originating 850"],"orderful_edifact_codes":["10","11"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=10,11"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]},"requestedDeliveryDate":{"description":"Delivery date originally requested on the purchase order. Compare against an accepted action's estimatedDeliveryDate to detect date changes.","orderful_tags":["context"],"orderful_x12_codes":["017"],"orderful_x12_path":["855:PO1_loop.*.dateTimeReference.* | dateTimeQualifier=017"],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","DTM02 with DTM01=017 — echoed from the originating 850"],"orderful_edifact_codes":["2","17"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=2,17"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]},"carrierDetails":{"description":"Carrier and shipping details for this line item","orderful_x12_path":["855:PO1_loop.*.carrierDetailsRoutingSequenceTransitTime","855:PO1_loop.*.FOBRelatedInstructions"],"type":"object","properties":{"routing":{"description":"Carrier routing information for this line item","orderful_x12_path":["855:PO1_loop.*.carrierDetailsRoutingSequenceTransitTime"],"type":"array","items":{"type":"object","properties":{"sequenceType":{"type":"string","enum":["origin","1stAfterOrigin","4thAfterOrigin","haulage"],"description":"Sequence in the routing chain","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.routingSequenceCode"],"orderful_enum_meta":{"origin":{"description":"Origin carrier","orderful_x12_codes":["O","B"]},"1stAfterOrigin":{"description":"1st carrier after origin carrier","orderful_x12_codes":["1"]},"4thAfterOrigin":{"description":"4th carrier after origin carrier","orderful_x12_codes":["4"]},"haulage":{"description":"Haulage rights carrier and junction","orderful_x12_codes":["H"]}}},"standardCarrierAlphaCode":{"description":"SCAC code identifying the carrier","type":"string"},"customCarrierCode":{"description":"Custom carrier identifier","type":"string"},"transportationMethod":{"type":"string","enum":["air","airExpress","airFreightForward","backhaul","bestWay","commonCarrier","consolidation","customerPickup","expeditedTruck","lessThanTrailerLoad","mail","ocean","oceanContainerized","parcelPost","privateCarrier","rail","shipperAgent","supplierTruck","trailer","mutuallyDefined"],"description":"Method of transportation. EDIFACT: prefer C001.8179 (transportMeansDescriptionCode) — its means/vessel-level codes match this enum directly. Fall back to C220.8067 (transportModeNameCode) ONLY when 8179 is absent; 8067 carries broad-mode codes only (1=Maritime, 2=Rail, 3=Road, 4=Air, 5=Mail, 6=Multimodal, 7=Fixed installation, 8=Inland water) which map loosely: 1→ocean, 2→rail, 3→supplierTruck, 4→air. Granular enum values (airExpress, oceanContainerized, trailer, etc.) cannot be recovered from 8067 — emit a SCHEMA GAP if neither path carries the partner value.","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.transportationMethodTypeCode"],"orderful_edifact_paths":["ORDERS:transportInformation_group.*.transportInformation.transportMeans_composite.transportMeansDescriptionCode"],"orderful_edifact_metadata_paths":["ORDERS:transportInformation_group.*.transportInformation.modeOfTransport_composite.transportModeNameCode"],"orderful_enum_meta":{"air":{"description":"Air freight","orderful_x12_codes":["A"],"orderful_edifact_codes":["6"]},"airExpress":{"description":"Air express service","orderful_x12_codes":["AE"]},"airFreightForward":{"description":"Air freight forwarder","orderful_x12_codes":["AF"]},"backhaul":{"description":"Backhaul shipment","orderful_x12_codes":["K"]},"bestWay":{"description":"Best way (carrier discretion)","orderful_x12_codes":["T"]},"commonCarrier":{"description":"Common carrier","orderful_x12_codes":["M","MP","J"]},"consolidation":{"description":"Consolidation service","orderful_x12_codes":["C"]},"customerPickup":{"description":"Customer pickup","orderful_x12_codes":["H","CE"]},"expeditedTruck":{"description":"Expedited truck","orderful_x12_codes":["E"]},"lessThanTrailerLoad":{"description":"Less than trailer load (LTL)","orderful_x12_codes":["LT"]},"mail":{"description":"Mail service","orderful_x12_codes":["7"]},"ocean":{"description":"Ocean freight","orderful_x12_codes":["S"],"orderful_edifact_codes":["11","13"]},"oceanContainerized":{"description":"Containerized ocean freight","orderful_x12_codes":["O"],"orderful_edifact_codes":["11"]},"parcelPost":{"description":"Parcel post","orderful_x12_codes":["D"]},"privateCarrier":{"description":"Private carrier","orderful_x12_codes":["U","P"]},"rail":{"description":"Rail freight","orderful_x12_codes":["R"],"orderful_edifact_codes":["25"]},"shipperAgent":{"description":"Shipper agent","orderful_x12_codes":["SC"]},"supplierTruck":{"description":"Supplier truck delivery","orderful_x12_codes":["SR"],"orderful_edifact_codes":["31"]},"trailer":{"description":"Trailer load (TL)","orderful_x12_codes":["TL"],"orderful_edifact_codes":["35"]},"mutuallyDefined":{"description":"Transportation method mutually defined","orderful_x12_codes":["ZZ"]}}},"locationType":{"type":"string","enum":["inStore","receiversLocation","allPoints","portOfArrival","portOfEmbarkation","origin","mutuallyDefined"],"description":"Type of routing location","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.locationQualifier"],"orderful_enum_meta":{"inStore":{"description":"In-store location","orderful_x12_codes":["IS"]},"receiversLocation":{"description":"Receiver's location","orderful_x12_codes":["94"]},"allPoints":{"description":"All points in routing","orderful_x12_codes":["AP"]},"portOfArrival":{"description":"Port of arrival","orderful_x12_codes":["PA"]},"portOfEmbarkation":{"description":"Port of embarkation","orderful_x12_codes":["KE"]},"origin":{"description":"Origin location","orderful_x12_codes":["OR"]},"mutuallyDefined":{"description":"Location mutually defined","orderful_x12_codes":["ZZ"]}}},"location":{"description":"Routing location identifier or name","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.locationIdentifier"],"type":"string"},"countryCode":{"description":"ISO country code of the routing location","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.countryCode"],"type":"string"},"description":{"description":"Description of routing details","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.routing"],"type":"string"},"serviceLevel":{"type":"string","enum":["deliveryConfirmation","doorService","economy","eveningService","expedited","firstClass","ground","groundHundredWeight","international","metro","morning","nextDayAir","nextDayHundredWeight","nextDayEvening","nextDayMorning1030","nextDayMorning930","nextDaySaturday","overnight","poBoxZipCode","priorityMail","priorityMailInsured","proofOfDelivery","sameDay","saturdayService","secondDay","secondDayHundredWeight","secondDayAir","secondDaySaturday","standard","standardGround","threeDay"],"description":"Service level for shipping","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.serviceLevelCode","856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.serviceLevelCode1","856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.serviceLevelCode2"],"orderful_enum_meta":{"deliveryConfirmation":{"description":"Delivery confirmation required","orderful_x12_codes":["DC"]},"doorService":{"description":"Door-to-door service","orderful_x12_codes":["DS"]},"economy":{"description":"Economy service","orderful_x12_codes":["LT"]},"eveningService":{"description":"Evening delivery service","orderful_x12_codes":["PM"]},"expedited":{"description":"Expedited service","orderful_x12_codes":["CX","IE","IX"]},"firstClass":{"description":"First class mail service","orderful_x12_codes":["FC"]},"ground":{"description":"Ground shipping service","orderful_x12_codes":["CG"]},"groundHundredWeight":{"description":"Ground hundred-weight service","orderful_x12_codes":["SI"]},"international":{"description":"International service","orderful_x12_codes":["IS"]},"metro":{"description":"Metro area delivery service","orderful_x12_codes":["ME"]},"morning":{"description":"Morning delivery service","orderful_x12_codes":["AM"]},"nextDayAir":{"description":"Next day air service","orderful_x12_codes":["ND"]},"nextDayHundredWeight":{"description":"Next day hundred-weight service","orderful_x12_codes":["NH"]},"nextDayEvening":{"description":"Next day evening delivery","orderful_x12_codes":["PR"]},"nextDayMorning1030":{"description":"Next day morning by 10:30 AM","orderful_x12_codes":["PA"]},"nextDayMorning930":{"description":"Next day morning by 9:30 AM","orderful_x12_codes":["PC"]},"nextDaySaturday":{"description":"Next day Saturday delivery service","orderful_x12_codes":["NS"],"orderful_x12_notes":["NS is a Target-specific qualifier — not a standard X12 service level code"]},"overnight":{"description":"Overnight delivery service","orderful_x12_codes":["ON"]},"poBoxZipCode":{"description":"P.O. Box or ZIP code delivery","orderful_x12_codes":["PO"]},"priorityMail":{"description":"Priority mail service","orderful_x12_codes":["PB"]},"priorityMailInsured":{"description":"Priority mail insured service","orderful_x12_codes":["PI"]},"proofOfDelivery":{"description":"Proof of delivery required","orderful_x12_codes":["ET"]},"sameDay":{"description":"Same day delivery service","orderful_x12_codes":["SA"]},"saturdayService":{"description":"Saturday delivery service","orderful_x12_codes":["SD"]},"secondDay":{"description":"Second day delivery service","orderful_x12_codes":["SE"]},"secondDayHundredWeight":{"description":"Second day hundred-weight service","orderful_x12_codes":["SH"]},"secondDayAir":{"description":"Second day air service","orderful_x12_codes":["SC"]},"secondDaySaturday":{"description":"Second day Saturday delivery service","orderful_x12_codes":["SS"],"orderful_x12_notes":["SS is a Target-invented qualifier — not a standard X12 service level code"]},"standard":{"description":"Standard delivery service","orderful_x12_codes":["ST","G2"]},"standardGround":{"description":"Standard ground service","orderful_x12_codes":["SG"]},"threeDay":{"description":"Three day delivery service","orderful_x12_codes":["3D"]}}},"orderStatus":{"type":"string","enum":["shipCompleteOnDate","complete","partialShipment","shipPartialBackorderToShipOnDate","partialShipOnDate","shipped","backordered","mutuallyDefined","availableScheduledToShip","availableNoShipSchedule","multiPickup","availableToShipUnBilledQuantity","stopOff"],"description":"Order shipping status","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.shipmentOrderStatusCode"],"orderful_enum_meta":{"shipCompleteOnDate":{"description":"Ship complete on specified date","orderful_x12_codes":["CC"]},"complete":{"description":"Order complete","orderful_x12_codes":["CL"]},"partialShipment":{"description":"Partial shipment allowed","orderful_x12_codes":["PR"]},"shipPartialBackorderToShipOnDate":{"description":"Ship partial, backorder remainder to ship on date","orderful_x12_codes":["BP"]},"partialShipOnDate":{"description":"Ship partial on specified date","orderful_x12_codes":["CP"]},"shipped":{"description":"Order shipped","orderful_x12_codes":["SH"]},"backordered":{"description":"Order backordered","orderful_x12_codes":["BK"]},"mutuallyDefined":{"description":"Status mutually defined","orderful_x12_codes":["ZZ"]},"availableScheduledToShip":{"description":"Available and scheduled to ship","orderful_x12_codes":["AS"]},"availableNoShipSchedule":{"description":"Available but no ship schedule","orderful_x12_codes":["AN"]},"multiPickup":{"description":"Multiple pickup","orderful_x12_codes":["AA"]},"availableToShipUnBilledQuantity":{"description":"Available to ship unbilled quantity","orderful_x12_codes":["AU"]},"stopOff":{"description":"Stop-off shipment","orderful_x12_codes":["ST"]}}},"transitDirectionType":{"type":"string","enum":["buyerToSeller","sellerToBuyer","subcontractorToSeller","sellerToDropShipLocation","sellToForwarder","sellerToSubcontractor","mutuallyDefined"],"description":"Direction of transit","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.transitDirectionCode"],"orderful_enum_meta":{"buyerToSeller":{"description":"Transit from buyer to seller","orderful_x12_codes":["BS"]},"sellerToBuyer":{"description":"Transit from seller to buyer","orderful_x12_codes":["SB"]},"subcontractorToSeller":{"description":"Transit from subcontractor to seller","orderful_x12_codes":["SC"]},"sellerToDropShipLocation":{"description":"Transit from seller to drop ship location","orderful_x12_codes":["SD"]},"sellToForwarder":{"description":"Transit from seller to forwarder","orderful_x12_codes":["SF"]},"sellerToSubcontractor":{"description":"Transit from seller to subcontractor","orderful_x12_codes":["SS"]},"mutuallyDefined":{"description":"Transit direction mutually defined","orderful_x12_codes":["ZZ"]}}},"transitTimeType":{"type":"string","enum":["calendarDays","hours","workingDays"],"description":"Unit for transit time","orderful_x12_path":["856:HL_loop.*.carrierDetailsRoutingSequenceTransitTime.*.transitTimeDirectionQualifier"],"orderful_enum_meta":{"calendarDays":{"description":"Calendar days (includes weekends and holidays)","orderful_x12_codes":["CD"]},"hours":{"description":"Hours","orderful_x12_codes":["HO"]},"workingDays":{"description":"Working days (excludes weekends and holidays)","orderful_x12_codes":["WD"]}}},"transitTime":{"description":"Expected transit time value","type":"string"}},"additionalProperties":false}},"freeOnBoard":{"description":"FOB (Free on Board) terms and conditions for this line item","orderful_x12_path":["855:PO1_loop.*.FOBRelatedInstructions"],"type":"array","items":{"type":"object","properties":{"methodOfPayment":{"type":"string","enum":["airCollect","airPrepaid","paidByBuyer","collect","collectOnDelivery","collectFreightCreditedBack","mutuallyAgreed","portOfCall","halfPrepaid","mixed","serviceFreightNoCharge","advancePrepaid","customerPickupBackhaul","prepaidChargeCustomer","prepaidBySeller","paidBySeller","pickup","thirdPartyPay"],"description":"Freight payment method","orderful_x12_path":["850:FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","850:N1_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","850:PO1_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","856:HL_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","860:FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","860:N1_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode","860:POC_loop.*.FOBRelatedInstructions.*.shipmentMethodOfPaymentCode"],"orderful_enum_meta":{"airCollect":{"description":"Air collect payment","orderful_x12_codes":["AC"]},"airPrepaid":{"description":"Air prepaid payment","orderful_x12_codes":["AP"]},"paidByBuyer":{"description":"Freight paid by buyer","orderful_x12_codes":["BP"]},"collect":{"description":"Collect payment","orderful_x12_codes":["CC"]},"collectOnDelivery":{"description":"Freight charges paid by the consignee to the carrier at the time of delivery","orderful_x12_codes":["CD"]},"collectFreightCreditedBack":{"description":"Freight collected from the buyer at delivery, then credited back to them","orderful_x12_codes":["CF"]},"mutuallyAgreed":{"description":"Mutually agreed payment method","orderful_x12_codes":["DF"]},"portOfCall":{"description":"Port of call payment","orderful_x12_codes":["FO"]},"halfPrepaid":{"description":"Half prepaid payment","orderful_x12_codes":["HP"]},"mixed":{"description":"Mixed payment method","orderful_x12_codes":["MX"]},"serviceFreightNoCharge":{"description":"Service freight with no charge","orderful_x12_codes":["NC"]},"advancePrepaid":{"description":"Advance prepaid payment","orderful_x12_codes":["PA"]},"customerPickupBackhaul":{"description":"Customer pickup or backhaul","orderful_x12_codes":["PB"]},"prepaidChargeCustomer":{"description":"Prepaid and charged to customer","orderful_x12_codes":["PC"]},"prepaidBySeller":{"description":"Prepaid by seller","orderful_x12_codes":["PP","PO"]},"paidBySeller":{"description":"Freight paid by seller","orderful_x12_codes":["PS"]},"pickup":{"description":"Pickup by consignee","orderful_x12_codes":["PU"]},"thirdPartyPay":{"description":"Third party pays freight","orderful_x12_codes":["TP"]}}},"locationType":{"type":"string","enum":["cityAndState","country","destination","origin","stateProvince","warehouse","foreignFreightForwarder","onVessel","mutuallyDefined"],"description":"Type of FOB location","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.locationQualifier"],"orderful_enum_meta":{"cityAndState":{"description":"City and state location","orderful_x12_codes":["AC"]},"country":{"description":"Country location","orderful_x12_codes":["CA","CC"]},"destination":{"description":"Destination location","orderful_x12_codes":["DE"]},"origin":{"description":"Origin location","orderful_x12_codes":["OR"]},"stateProvince":{"description":"State or province location","orderful_x12_codes":["SP"]},"warehouse":{"description":"Warehouse location","orderful_x12_codes":["WH"]},"foreignFreightForwarder":{"description":"Foreign freight forwarder location — the consolidation port or freight forwarder facility used in international trade","orderful_x12_codes":["FF"]},"onVessel":{"description":"FOB point is on board the vessel carrying the goods","orderful_x12_codes":["OV"]},"mutuallyDefined":{"description":"Location mutually defined by trading partners","orderful_x12_codes":["ZZ"]}}},"locationDescription":{"description":"Description of FOB location","type":"string"},"titlePassageType":{"type":"string","enum":["cityAndState","country","destination","origin","stateProvince","warehouse","portOfLoading","foreignFreightForwarder"],"description":"Type of title passage location","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.locationQualifier1"],"orderful_enum_meta":{"cityAndState":{"description":"City and state title passage","orderful_x12_codes":["AC"]},"country":{"description":"Country title passage","orderful_x12_codes":["CA","CC"]},"destination":{"description":"Destination title passage","orderful_x12_codes":["DE"]},"origin":{"description":"Origin title passage","orderful_x12_codes":["OR"]},"stateProvince":{"description":"State or province title passage","orderful_x12_codes":["SP"]},"warehouse":{"description":"Warehouse title passage","orderful_x12_codes":["WH"]},"portOfLoading":{"description":"Title passes at the port where the goods are loaded onto the vessel, used on import orders","orderful_x12_codes":["KL"]},"foreignFreightForwarder":{"description":"Title passes at the foreign freight forwarder — the consolidation port or freight forwarder facility used in international trade","orderful_x12_codes":["FF"]}}},"titlePassageDescription":{"description":"Description of title passage location","type":"string"},"transportationTermsSource":{"type":"string","enum":["incoTerms","tradeTerms","mutuallyDefined"],"description":"Source of transportation terms","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.transportationTermsQualifierCode"],"orderful_enum_meta":{"incoTerms":{"description":"Incoterms","orderful_x12_codes":["01"]},"tradeTerms":{"description":"Trade terms code","orderful_x12_codes":["02"]},"mutuallyDefined":{"description":"Mutually defined","orderful_x12_codes":["ZZ"]}}},"transportationTerms":{"type":"string","enum":["costAndFreight","costInsuranceAndFreight","carriageAndInsurancePaidTo","carriagePaidTo","deliveredAtFrontier","deliverDutyPaid","deliverDutyUnpaid","deliveredDutyUnpaid","deliveredExQuay","deliveredExShip","domesticallySupplied","exQuay","exShip","exWorks","freeAlongsideShip","freeCarrier","freightCarriageInsurancePaidTo","freightCarriagePaidTo","freeOnBoard","freeOnRail","freeOnTruck","nonPrivilegedForeign","privilegedForeign","mutuallyDefined"],"description":"Incoterms or trade terms code","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.transportationTermsCode"],"orderful_enum_meta":{"costAndFreight":{"description":"Cost and freight (CFR)","orderful_x12_codes":["CFR"],"orderful_edifact_codes":["CFR"]},"costInsuranceAndFreight":{"description":"Cost, insurance and freight (CIF)","orderful_x12_codes":["CIF"],"orderful_edifact_codes":["CIF"]},"carriageAndInsurancePaidTo":{"description":"Carriage and insurance paid to (CIP)","orderful_x12_codes":["CIP"],"orderful_edifact_codes":["CIP"]},"carriagePaidTo":{"description":"Carriage paid to (CPT)","orderful_x12_codes":["CPT"],"orderful_edifact_codes":["CPT"]},"deliveredAtFrontier":{"description":"Delivered at frontier (DAF)","orderful_x12_codes":["DAF"],"orderful_edifact_codes":["DAF"]},"deliverDutyPaid":{"description":"Delivered duty paid (DDP)","orderful_x12_codes":["DDP"],"orderful_edifact_codes":["DDP"]},"deliverDutyUnpaid":{"description":"Delivered duty unpaid (DDU)","orderful_x12_codes":["DDU"],"orderful_edifact_codes":["DDU"]},"deliveredDutyUnpaid":{"description":"Delivered duty unpaid variant (DUP)","orderful_x12_codes":["DUP"],"orderful_edifact_codes":["DUP"]},"deliveredExQuay":{"description":"Delivered ex quay (DEQ)","orderful_x12_codes":["DEQ"],"orderful_edifact_codes":["DEQ"]},"deliveredExShip":{"description":"Delivered ex ship (DES)","orderful_x12_codes":["DES"],"orderful_edifact_codes":["DES"]},"domesticallySupplied":{"description":"Domestically supplied (DOM)","orderful_x12_codes":["DOM"],"orderful_edifact_codes":["DOM"]},"exQuay":{"description":"Ex quay (EXQ)","orderful_x12_codes":["EXQ"],"orderful_edifact_codes":["EXQ"]},"exShip":{"description":"Ex ship (EXS)","orderful_x12_codes":["EXS"],"orderful_edifact_codes":["EXS"]},"exWorks":{"description":"Ex works (EXW)","orderful_x12_codes":["EXW"],"orderful_edifact_codes":["EXW"]},"freeAlongsideShip":{"description":"Free alongside ship (FAS)","orderful_x12_codes":["FAS"],"orderful_edifact_codes":["FAS"]},"freeCarrier":{"description":"Free carrier (FCA)","orderful_x12_codes":["FCA"],"orderful_edifact_codes":["FCA"]},"freightCarriageInsurancePaidTo":{"description":"Freight, carriage and insurance paid to (FCI)","orderful_x12_codes":["FCI"],"orderful_edifact_codes":["FCI"]},"freightCarriagePaidTo":{"description":"Freight and carriage paid to (FCP)","orderful_x12_codes":["FCP"],"orderful_edifact_codes":["FCP"]},"freeOnBoard":{"description":"Free on board (FOB)","orderful_x12_codes":["FOB"],"orderful_edifact_codes":["FOB"]},"freeOnRail":{"description":"Free on rail (FOR)","orderful_x12_codes":["FOR"],"orderful_edifact_codes":["FOR"]},"freeOnTruck":{"description":"Free on truck (FOT)","orderful_x12_codes":["FOT"],"orderful_edifact_codes":["FOT"]},"nonPrivilegedForeign":{"description":"Non-privileged foreign status (NPF)","orderful_x12_codes":["NPF"]},"privilegedForeign":{"description":"Privileged foreign status (PPF)","orderful_x12_codes":["PPF"]},"mutuallyDefined":{"description":"Mutually defined terms","orderful_x12_codes":["ZZZ"],"orderful_edifact_codes":["ZZZ"]}}},"riskOfLoss":{"type":"string","enum":["toDestinationBuyer","toFreightEqPointSeller","toPoolPointSeller","toDestinationSeller","mutuallyDefined"],"description":"Risk of loss transfer point","orderful_x12_path":["856:HL_loop.*.FOBRelatedInstructions.*.riskOfLossCode"],"orderful_enum_meta":{"toDestinationBuyer":{"description":"Risk transfers to buyer at destination","orderful_x12_codes":["BY"]},"toFreightEqPointSeller":{"description":"Risk transfers to seller at freight equalization point","orderful_x12_codes":["FE"]},"toPoolPointSeller":{"description":"Risk transfers to seller at pool point","orderful_x12_codes":["PP"]},"toDestinationSeller":{"description":"Risk transfers to seller at destination","orderful_x12_codes":["SE"]},"mutuallyDefined":{"description":"Risk of loss mutually defined","orderful_x12_codes":["ZZ"]}}},"description":{"description":"Additional FOB description","type":"string"}},"additionalProperties":false}}},"additionalProperties":false},"allowances":{"description":"Allowances or discounts applied to this line item","orderful_x12_path":["855:PO1_loop.*.SAC_loop.* | allowanceOrChargeIndicatorCode=A"],"orderful_x12_codes":["A"],"orderful_edifact_codes":["A"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.allowanceOrCharge_group.*.allowanceOrCharge | allowanceOrChargeCodeQualifier=A"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["advertising","centralBuy","centsOff","competitiveAllowance","cooperativeAdvertising","customsBrokerFee","customsEntry","claim","commission","damagedMerchandiseAllowance","defectiveAllowance","coreCharge","credit","deposit","discount","displayAllowance","dropDock","earlyBuyAllowance","forwardingCharge","freeGoods","freight","fuelSurcharge","goodsAndServicesTax","handling","hangerService","iceCharge","inboundFreight","inlandTransportation","labelAllowance","lateDocumentDeduction","latePaymentCharge","lateShipmentDiscount","materialSurcharge","networkAllowance","newDistributionAllowance","newStore","newWarehouse","nonPerformanceAllowance","other","pallet","pickup","pickupAndDelivery","priceDeviation","promotionalAllowance","quantityDiscount","quantitySurcharge","rebate","refrigeration","restocking","royalty","serviceAtPickupOrDelivery","serviceCharge","shipping","shippingAndHandling","specialAllowance","specialBuy","splitDelivery","swell","tax","temperatureProtection","ticketing","tobaccoProductsReportCharge","truckloadDiscount","unloading","unsaleableMerchandiseAllowance","valueAddedTax","volume","warehouse","duty"],"description":"Type of allowance or charge","orderful_x12_notes":["810/850/860: SAC02 D340 is a goods and services charge by default. Where the guideline note defines D340 as the taxable or merchandise value of the sale (as Rithum-family guidelines do), it is not a charge: route it to monetaryAmounts.taxable and do not emit it here."],"orderful_x12_path":["810:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","810:IT1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode"],"orderful_enum_meta":{"advertising":{"description":"Advertising allowance or charge","orderful_x12_codes":["A260"]},"centralBuy":{"description":"Allowance for goods bought centrally by the buyer's head office on behalf of its individual locations.","orderful_x12_codes":["B000"]},"centsOff":{"description":"Per-unit price reduction of a stated amount, typically marked on the product package as a cents-off offer to the consumer.","orderful_x12_codes":["B010"]},"competitiveAllowance":{"description":"Allowance granted to help the buyer meet a competitor's price on the goods.","orderful_x12_codes":["B320"]},"cooperativeAdvertising":{"description":"Allowance funding advertising of the goods where the cost is shared between buyer and seller.","orderful_x12_codes":["B720","B210"]},"customsBrokerFee":{"description":"Fee charged by a customs broker for clearing the goods through customs.","orderful_x12_codes":["B860"]},"customsEntry":{"description":"Charge for preparing and filing the customs entry declaration for the goods.","orderful_x12_codes":["B880"]},"claim":{"description":"Deduction taken against the invoice to settle a claim."},"commission":{"description":"Commission amount owed on the goods","orderful_x12_codes":["B310"]},"damagedMerchandiseAllowance":{"description":"Allowance for merchandise damaged in transit or handling, as distinct from merchandise defective on manufacture","orderful_x12_codes":["B950"]},"defectiveAllowance":{"description":"Defective merchandise allowance","orderful_x12_codes":["C000"]},"coreCharge":{"description":"Core charge — a refundable surcharge for the remanufacturable core of an auto part, refunded upon return of the old core","orderful_x12_codes":["B750"]},"credit":{"description":"General credit reducing the amount owed, where no more specific allowance applies","orderful_x12_codes":["B800"]},"deposit":{"description":"Deposit charge (e.g., container or bottle deposit)","orderful_x12_codes":["C110"]},"discount":{"description":"General discount","orderful_x12_codes":["C310"]},"displayAllowance":{"description":"Allowance funding in-store display of the goods.","orderful_x12_codes":["C320"]},"dropDock":{"description":"Charge for delivering the shipment to the dock of the receiving location.","orderful_x12_codes":["C460"]},"earlyBuyAllowance":{"description":"Allowance for committing to an order ahead of the normal buying period.","orderful_x12_codes":["C540"]},"forwardingCharge":{"description":"Charge by a freight forwarder for arranging onward transport of the goods.","orderful_x12_codes":["D140"]},"freeGoods":{"description":"Allowance covering goods supplied at no charge, such as samples or promotional stock.","orderful_x12_codes":["D170"]},"freight":{"description":"Freight — the cost of transporting the goods; whether it is an allowance or a charge is given by the array it is in","orderful_x12_codes":["D240","53","C040","504"]},"fuelSurcharge":{"description":"Surcharge reflecting the cost of fuel used to transport the goods.","orderful_x12_codes":["D270"]},"goodsAndServicesTax":{"description":"Goods and services tax (GST), or harmonized sales tax (HST) where GST is combined with the provincial portion, charged on the goods","orderful_x12_codes":["D360"]},"handling":{"description":"Handling charge","orderful_x12_codes":["D500","61","503"]},"hangerService":{"description":"Charge for supplying the goods on hangers rather than flat-packed."},"iceCharge":{"description":"Charge for ice, including dry ice, supplied to keep the goods chilled in transit.","orderful_x12_codes":["C510"]},"inboundFreight":{"description":"Freight charge for transporting the goods into the buyer's receiving location.","orderful_x12_codes":["D750"]},"inlandTransportation":{"description":"Charge for overland transport between a port or terminal and an inland location.","orderful_x12_codes":["D800"]},"labelAllowance":{"description":"Allowance covering the cost of applying labels to the goods.","orderful_x12_codes":["E160"]},"lateDocumentDeduction":{"description":"Deduction taken when required documents are presented later than agreed."},"latePaymentCharge":{"description":"Charge applied when payment is made after the due date.","orderful_x12_codes":["E280"]},"lateShipmentDiscount":{"description":"Discount taken when the goods shipped later than the agreed date."},"materialSurcharge":{"description":"Surcharge passing on a change in the cost of the raw material, such as metal, that the goods are made from.","orderful_x12_codes":["E620"]},"networkAllowance":{"description":"Allowance granted for distributing the goods through the buyer's own network of locations.","orderful_x12_notes":["This concept is also sent by some partners under a code whose standard meaning differs. Where that happens the code-to-value routing belongs in the guideline parameters, not here."]},"newDistributionAllowance":{"description":"Allowance supporting the introduction of the goods into a new distribution channel.","orderful_x12_codes":["E720"]},"newStore":{"description":"New store allowance","orderful_x12_codes":["E740","E750"]},"newWarehouse":{"description":"Allowance supporting the initial stocking of a newly opened warehouse.","orderful_x12_codes":["E770"]},"nonPerformanceAllowance":{"description":"Trade promotion allowance granted to the buyer with no merchandising performance, such as advertising or display, required in return.","orderful_x12_codes":["A400"]},"other":{"description":"Other allowance or charge","orderful_x12_codes":["F050","499","999","I131","ZZZZ","A170"]},"pallet":{"description":"Charge for the pallets used to ship the goods.","orderful_x12_codes":["F180"]},"pickup":{"description":"Charge for collecting the goods from the origin location.","orderful_x12_codes":["F340"]},"pickupAndDelivery":{"description":"Charge for a service that both collects the goods from the origin and delivers them to the destination.","orderful_x12_codes":["F330"]},"priceDeviation":{"description":"Adjustment reflecting an agreed departure from the standard price of the goods.","orderful_x12_codes":["F680"]},"promotionalAllowance":{"description":"Promotional allowance","orderful_x12_codes":["F800","47","F810","F670","E550"]},"quantityDiscount":{"description":"Quantity discount","orderful_x12_codes":["F910"]},"quantitySurcharge":{"description":"Surcharge applied when the quantity ordered falls below the threshold that earns standard pricing.","orderful_x12_codes":["F920"]},"rebate":{"description":"Rebate","orderful_x12_codes":["F970"]},"refrigeration":{"description":"Charge for refrigerated handling or storage of the goods.","orderful_x12_codes":["G220"]},"restocking":{"description":"Restocking charge","orderful_x12_codes":["G470"]},"royalty":{"description":"Royalty owed on the goods, typically for licensed merchandise","orderful_x12_codes":["G580"]},"serviceAtPickupOrDelivery":{"description":"Service charge at pickup or delivery","orderful_x12_codes":["E380","54","518"]},"serviceCharge":{"description":"General charge for a service performed in connection with the order, where no more specific service value applies; the service, when stated, is carried in the description.","orderful_x12_codes":["G740"]},"shipping":{"description":"Shipping charge","orderful_x12_codes":["G821"]},"shippingAndHandling":{"description":"Shipping and handling charge","orderful_x12_codes":["G830"]},"specialAllowance":{"description":"Allowance agreed for a specific circumstance outside the standard terms.","orderful_x12_codes":["H000"]},"specialBuy":{"description":"Allowance for a one-off purchase made on specially negotiated terms.","orderful_x12_codes":["H010"]},"splitDelivery":{"description":"Charge for delivering a single order to more than one destination or across more than one drop.","orderful_x12_codes":["H230"]},"swell":{"description":"Swell allowance","orderful_x12_codes":["H560","95"]},"tax":{"description":"Tax charge (general, local, or city sales tax applied as a line-item allowance/charge)","orderful_x12_codes":["H850","H730","H630","H740"]},"temperatureProtection":{"description":"Charge for keeping the goods within a required temperature range while in transit.","orderful_x12_codes":["H910"]},"ticketing":{"description":"Charge for applying price tickets to the goods before delivery."},"tobaccoProductsReportCharge":{"description":"Charge for the reporting required on shipments of tobacco products.","orderful_x12_codes":["I070"]},"truckloadDiscount":{"description":"Discount for ordering a quantity that fills a full truckload.","orderful_x12_codes":["I310"]},"unloading":{"description":"Charge for unloading the goods at the delivery location.","orderful_x12_codes":["I390"]},"unsaleableMerchandiseAllowance":{"description":"Unsaleable merchandise allowance","orderful_x12_codes":["I410"]},"valueAddedTax":{"description":"Value added tax charged on the goods. Distinct from a general sales tax: a registered buyer can normally reclaim it as input tax.","orderful_x12_codes":["H800"]},"volume":{"description":"Volume allowance or discount","orderful_x12_codes":["I530"]},"warehouse":{"description":"Warehouse charge or allowance","orderful_x12_codes":["I570","511"]},"duty":{"description":"Import duty charge — the customs duty payable on the goods, expressed as a percentage of value or as a per-unit amount","orderful_x12_codes":["B872","C530"]}}},"amount":{"description":"Fixed amount of allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount"],"type":"string"},"percent":{"description":"Percentage of allowance or charge","type":"string"},"percentBasis":{"type":"string","enum":["basePrice","basePricePerUnit","discountGross"],"description":"Basis for calculating percentage","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier"],"orderful_enum_meta":{"basePrice":{"description":"The percentage applies to the total base price amount","orderful_x12_codes":["6"]},"basePricePerUnit":{"description":"The percentage applies to the base price of a single unit","orderful_x12_codes":["5"]},"discountGross":{"description":"The percentage is a discount applied to the gross amount","orderful_x12_codes":["3"]}}},"rate":{"description":"Rate per unit at which the allowance or charge is calculated","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate"],"type":"string"},"quantity":{"description":"Quantity of goods the allowance or charge applies to","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"methodOfHandling":{"type":"string","enum":["collect","paidByVendor","paidByCustomer","prepaid","billBack","offInvoice","creditCustomerAccount"],"description":"How the charge is handled","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode"],"orderful_enum_meta":{"collect":{"description":"Collect from recipient","orderful_x12_codes":["CC"]},"paidByVendor":{"description":"The allowance or charge is paid by the vendor.","orderful_x12_codes":["03","05"]},"paidByCustomer":{"description":"Paid by customer","orderful_x12_codes":["06"]},"prepaid":{"description":"Prepaid by shipper","orderful_x12_codes":["PP"]},"billBack":{"description":"The allowance or charge is settled separately (as a debit/credit memo or a separate invoice) and is NOT reflected in the invoice total.","orderful_x12_codes":["01"]},"offInvoice":{"description":"The allowance or charge is deducted on the invoice and IS reflected in the invoice total.","orderful_x12_codes":["02"]},"creditCustomerAccount":{"description":"The allowance or charge is applied as a credit to the customer's account; not reflected in the invoice total.","orderful_x12_codes":["04"]}}},"description":{"description":"Description of the allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription","875:G68_loop.*.G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription"],"type":"string"}},"required":["type"],"additionalProperties":false}},"charges":{"description":"Additional charges applied to this line item","orderful_x12_path":["855:PO1_loop.*.SAC_loop.* | allowanceOrChargeIndicatorCode=C"],"orderful_x12_codes":["C"],"orderful_edifact_codes":["C"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.allowanceOrCharge_group.*.allowanceOrCharge | allowanceOrChargeCodeQualifier=C"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["advertising","centralBuy","centsOff","competitiveAllowance","cooperativeAdvertising","customsBrokerFee","customsEntry","claim","commission","damagedMerchandiseAllowance","defectiveAllowance","coreCharge","credit","deposit","discount","displayAllowance","dropDock","earlyBuyAllowance","forwardingCharge","freeGoods","freight","fuelSurcharge","goodsAndServicesTax","handling","hangerService","iceCharge","inboundFreight","inlandTransportation","labelAllowance","lateDocumentDeduction","latePaymentCharge","lateShipmentDiscount","materialSurcharge","networkAllowance","newDistributionAllowance","newStore","newWarehouse","nonPerformanceAllowance","other","pallet","pickup","pickupAndDelivery","priceDeviation","promotionalAllowance","quantityDiscount","quantitySurcharge","rebate","refrigeration","restocking","royalty","serviceAtPickupOrDelivery","serviceCharge","shipping","shippingAndHandling","specialAllowance","specialBuy","splitDelivery","swell","tax","temperatureProtection","ticketing","tobaccoProductsReportCharge","truckloadDiscount","unloading","unsaleableMerchandiseAllowance","valueAddedTax","volume","warehouse","duty"],"description":"Type of allowance or charge","orderful_x12_notes":["810/850/860: SAC02 D340 is a goods and services charge by default. Where the guideline note defines D340 as the taxable or merchandise value of the sale (as Rithum-family guidelines do), it is not a charge: route it to monetaryAmounts.taxable and do not emit it here."],"orderful_x12_path":["810:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","810:IT1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.servicePromotionAllowanceOrChargeCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeCode"],"orderful_enum_meta":{"advertising":{"description":"Advertising allowance or charge","orderful_x12_codes":["A260"]},"centralBuy":{"description":"Allowance for goods bought centrally by the buyer's head office on behalf of its individual locations.","orderful_x12_codes":["B000"]},"centsOff":{"description":"Per-unit price reduction of a stated amount, typically marked on the product package as a cents-off offer to the consumer.","orderful_x12_codes":["B010"]},"competitiveAllowance":{"description":"Allowance granted to help the buyer meet a competitor's price on the goods.","orderful_x12_codes":["B320"]},"cooperativeAdvertising":{"description":"Allowance funding advertising of the goods where the cost is shared between buyer and seller.","orderful_x12_codes":["B720","B210"]},"customsBrokerFee":{"description":"Fee charged by a customs broker for clearing the goods through customs.","orderful_x12_codes":["B860"]},"customsEntry":{"description":"Charge for preparing and filing the customs entry declaration for the goods.","orderful_x12_codes":["B880"]},"claim":{"description":"Deduction taken against the invoice to settle a claim."},"commission":{"description":"Commission amount owed on the goods","orderful_x12_codes":["B310"]},"damagedMerchandiseAllowance":{"description":"Allowance for merchandise damaged in transit or handling, as distinct from merchandise defective on manufacture","orderful_x12_codes":["B950"]},"defectiveAllowance":{"description":"Defective merchandise allowance","orderful_x12_codes":["C000"]},"coreCharge":{"description":"Core charge — a refundable surcharge for the remanufacturable core of an auto part, refunded upon return of the old core","orderful_x12_codes":["B750"]},"credit":{"description":"General credit reducing the amount owed, where no more specific allowance applies","orderful_x12_codes":["B800"]},"deposit":{"description":"Deposit charge (e.g., container or bottle deposit)","orderful_x12_codes":["C110"]},"discount":{"description":"General discount","orderful_x12_codes":["C310"]},"displayAllowance":{"description":"Allowance funding in-store display of the goods.","orderful_x12_codes":["C320"]},"dropDock":{"description":"Charge for delivering the shipment to the dock of the receiving location.","orderful_x12_codes":["C460"]},"earlyBuyAllowance":{"description":"Allowance for committing to an order ahead of the normal buying period.","orderful_x12_codes":["C540"]},"forwardingCharge":{"description":"Charge by a freight forwarder for arranging onward transport of the goods.","orderful_x12_codes":["D140"]},"freeGoods":{"description":"Allowance covering goods supplied at no charge, such as samples or promotional stock.","orderful_x12_codes":["D170"]},"freight":{"description":"Freight — the cost of transporting the goods; whether it is an allowance or a charge is given by the array it is in","orderful_x12_codes":["D240","53","C040","504"]},"fuelSurcharge":{"description":"Surcharge reflecting the cost of fuel used to transport the goods.","orderful_x12_codes":["D270"]},"goodsAndServicesTax":{"description":"Goods and services tax (GST), or harmonized sales tax (HST) where GST is combined with the provincial portion, charged on the goods","orderful_x12_codes":["D360"]},"handling":{"description":"Handling charge","orderful_x12_codes":["D500","61","503"]},"hangerService":{"description":"Charge for supplying the goods on hangers rather than flat-packed."},"iceCharge":{"description":"Charge for ice, including dry ice, supplied to keep the goods chilled in transit.","orderful_x12_codes":["C510"]},"inboundFreight":{"description":"Freight charge for transporting the goods into the buyer's receiving location.","orderful_x12_codes":["D750"]},"inlandTransportation":{"description":"Charge for overland transport between a port or terminal and an inland location.","orderful_x12_codes":["D800"]},"labelAllowance":{"description":"Allowance covering the cost of applying labels to the goods.","orderful_x12_codes":["E160"]},"lateDocumentDeduction":{"description":"Deduction taken when required documents are presented later than agreed."},"latePaymentCharge":{"description":"Charge applied when payment is made after the due date.","orderful_x12_codes":["E280"]},"lateShipmentDiscount":{"description":"Discount taken when the goods shipped later than the agreed date."},"materialSurcharge":{"description":"Surcharge passing on a change in the cost of the raw material, such as metal, that the goods are made from.","orderful_x12_codes":["E620"]},"networkAllowance":{"description":"Allowance granted for distributing the goods through the buyer's own network of locations.","orderful_x12_notes":["This concept is also sent by some partners under a code whose standard meaning differs. Where that happens the code-to-value routing belongs in the guideline parameters, not here."]},"newDistributionAllowance":{"description":"Allowance supporting the introduction of the goods into a new distribution channel.","orderful_x12_codes":["E720"]},"newStore":{"description":"New store allowance","orderful_x12_codes":["E740","E750"]},"newWarehouse":{"description":"Allowance supporting the initial stocking of a newly opened warehouse.","orderful_x12_codes":["E770"]},"nonPerformanceAllowance":{"description":"Trade promotion allowance granted to the buyer with no merchandising performance, such as advertising or display, required in return.","orderful_x12_codes":["A400"]},"other":{"description":"Other allowance or charge","orderful_x12_codes":["F050","499","999","I131","ZZZZ","A170"]},"pallet":{"description":"Charge for the pallets used to ship the goods.","orderful_x12_codes":["F180"]},"pickup":{"description":"Charge for collecting the goods from the origin location.","orderful_x12_codes":["F340"]},"pickupAndDelivery":{"description":"Charge for a service that both collects the goods from the origin and delivers them to the destination.","orderful_x12_codes":["F330"]},"priceDeviation":{"description":"Adjustment reflecting an agreed departure from the standard price of the goods.","orderful_x12_codes":["F680"]},"promotionalAllowance":{"description":"Promotional allowance","orderful_x12_codes":["F800","47","F810","F670","E550"]},"quantityDiscount":{"description":"Quantity discount","orderful_x12_codes":["F910"]},"quantitySurcharge":{"description":"Surcharge applied when the quantity ordered falls below the threshold that earns standard pricing.","orderful_x12_codes":["F920"]},"rebate":{"description":"Rebate","orderful_x12_codes":["F970"]},"refrigeration":{"description":"Charge for refrigerated handling or storage of the goods.","orderful_x12_codes":["G220"]},"restocking":{"description":"Restocking charge","orderful_x12_codes":["G470"]},"royalty":{"description":"Royalty owed on the goods, typically for licensed merchandise","orderful_x12_codes":["G580"]},"serviceAtPickupOrDelivery":{"description":"Service charge at pickup or delivery","orderful_x12_codes":["E380","54","518"]},"serviceCharge":{"description":"General charge for a service performed in connection with the order, where no more specific service value applies; the service, when stated, is carried in the description.","orderful_x12_codes":["G740"]},"shipping":{"description":"Shipping charge","orderful_x12_codes":["G821"]},"shippingAndHandling":{"description":"Shipping and handling charge","orderful_x12_codes":["G830"]},"specialAllowance":{"description":"Allowance agreed for a specific circumstance outside the standard terms.","orderful_x12_codes":["H000"]},"specialBuy":{"description":"Allowance for a one-off purchase made on specially negotiated terms.","orderful_x12_codes":["H010"]},"splitDelivery":{"description":"Charge for delivering a single order to more than one destination or across more than one drop.","orderful_x12_codes":["H230"]},"swell":{"description":"Swell allowance","orderful_x12_codes":["H560","95"]},"tax":{"description":"Tax charge (general, local, or city sales tax applied as a line-item allowance/charge)","orderful_x12_codes":["H850","H730","H630","H740"]},"temperatureProtection":{"description":"Charge for keeping the goods within a required temperature range while in transit.","orderful_x12_codes":["H910"]},"ticketing":{"description":"Charge for applying price tickets to the goods before delivery."},"tobaccoProductsReportCharge":{"description":"Charge for the reporting required on shipments of tobacco products.","orderful_x12_codes":["I070"]},"truckloadDiscount":{"description":"Discount for ordering a quantity that fills a full truckload.","orderful_x12_codes":["I310"]},"unloading":{"description":"Charge for unloading the goods at the delivery location.","orderful_x12_codes":["I390"]},"unsaleableMerchandiseAllowance":{"description":"Unsaleable merchandise allowance","orderful_x12_codes":["I410"]},"valueAddedTax":{"description":"Value added tax charged on the goods. Distinct from a general sales tax: a registered buyer can normally reclaim it as input tax.","orderful_x12_codes":["H800"]},"volume":{"description":"Volume allowance or discount","orderful_x12_codes":["I530"]},"warehouse":{"description":"Warehouse charge or allowance","orderful_x12_codes":["I570","511"]},"duty":{"description":"Import duty charge — the customs duty payable on the goods, expressed as a percentage of value or as a per-unit amount","orderful_x12_codes":["B872","C530"]}}},"amount":{"description":"Fixed amount of allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeTotalAmount"],"type":"string"},"percent":{"description":"Percentage of allowance or charge","type":"string"},"percentBasis":{"type":"string","enum":["basePrice","basePricePerUnit","discountGross"],"description":"Basis for calculating percentage","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier","860:POC_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceChargePercentQualifier"],"orderful_enum_meta":{"basePrice":{"description":"The percentage applies to the total base price amount","orderful_x12_codes":["6"]},"basePricePerUnit":{"description":"The percentage applies to the base price of a single unit","orderful_x12_codes":["5"]},"discountGross":{"description":"The percentage is a discount applied to the gross amount","orderful_x12_codes":["3"]}}},"rate":{"description":"Rate per unit at which the allowance or charge is calculated","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.rate","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeRate"],"type":"string"},"quantity":{"description":"Quantity of goods the allowance or charge applies to","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.quantity","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.unitOrBasisForMeasurementCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeQuantity","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.unitOrBasisForMeasurementCode"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"methodOfHandling":{"type":"string","enum":["collect","paidByVendor","paidByCustomer","prepaid","billBack","offInvoice","creditCustomerAccount"],"description":"How the charge is handled","orderful_x12_path":["850:SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","850:PO1_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","856:HL_loop.*.SAC_loop.*.servicePromotionAllowanceOrChargeInformation.*.allowanceOrChargeMethodOfHandlingCode","875:G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode","875:G68_loop.*.G72_loop.*.allowanceOrCharge.*.allowanceOrChargeMethodOfHandlingCode"],"orderful_enum_meta":{"collect":{"description":"Collect from recipient","orderful_x12_codes":["CC"]},"paidByVendor":{"description":"The allowance or charge is paid by the vendor.","orderful_x12_codes":["03","05"]},"paidByCustomer":{"description":"Paid by customer","orderful_x12_codes":["06"]},"prepaid":{"description":"Prepaid by shipper","orderful_x12_codes":["PP"]},"billBack":{"description":"The allowance or charge is settled separately (as a debit/credit memo or a separate invoice) and is NOT reflected in the invoice total.","orderful_x12_codes":["01"]},"offInvoice":{"description":"The allowance or charge is deducted on the invoice and IS reflected in the invoice total.","orderful_x12_codes":["02"]},"creditCustomerAccount":{"description":"The allowance or charge is applied as a credit to the customer's account; not reflected in the invoice total.","orderful_x12_codes":["04"]}}},"description":{"description":"Description of the allowance or charge","orderful_x12_path":["875:G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription","875:G68_loop.*.G72_loop.*.allowanceOrChargeDescription.*.freeFormDescription"],"type":"string"}},"required":["type"],"additionalProperties":false}},"isChanged":{"description":"Whether this line differs from the original purchase order — true when the sender changed quantity, price, ship/delivery date, or the item itself (substitution), or when the line is rejected, backordered, or on hold; false when the line is accepted exactly as ordered. A recipient-facing rollup of the line's actions that pairs with the header detailLevel field: when detailLevel is 'exceptionsOnly', only lines with isChanged=true are present.","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.lineItemStatusCode"],"orderful_x12_notes":["Summarizes the line's ACK01 (lineItemStatusCode, element 668) values across its actions. isChanged=false corresponds to clean-accept codes only — IA (Item Accepted), AC (Accepted and Shipped), AR (Accepted and Released for Shipment), SP (Accepted, Pending Schedule), AA (Accepted, forwarded to alternate supplier). isChanged=true corresponds to any change or exception code: IC (Changes Made), IP (Price Changed), IQ (Quantity Changed), IS (Substitution Made), DR (Date Rescheduled), BP (Partial Shipment, Balance Backordered), IB (Backordered), IH/IF/IW (on hold variants), and IR/ID/R1-R8 (rejected/deleted variants). When receiving: derive by inspecting each action's ACK01 — true if any action resolves to a non-clean-accept code. When sending: optional and informational — the writer already derives ACK01 per action from the line-vs-baseline comparison, so a producer-supplied value is treated as a hint and reconciled, not taken as authoritative."],"type":"boolean"},"actions":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"status":{"type":"string","const":"accepted","description":"The supplier will supply this line. On an acknowledgment responding to a purchase order that means the buyer’s line is accepted; on a replenishment order the supplier originated the line, so it records a commitment to supply rather than agreement to anything — and it is the only disposition such a line can carry.","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.lineItemStatusCode"],"orderful_x12_codes":["IA","IC","IP","IQ","IS","DR","BP"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.lineItem.actionCode"],"orderful_edifact_codes":["4","5","6","3"],"orderful_edifact_notes":["LIN03 (1229) action code: 4 (no action) / 5 (accepted without amendment) map to IA; 6 (accepted with amendment) / 3 (changed) map to IC/IP/IQ/DR. No EDIFACT analog to the X12 substitution code IS — substitution surfaces via amended item identifiers, not the action code."],"orderful_x12_notes":["ACK01 is derived per action against the line's PO baseline (line.* → $purchaseOrder line.* fallback). IA when no changes; IS when substitutedItem is set (absorbs other changes, no comparison); IQ/IP/DR for a single quantity/price/date change when the specific code is allowed; IC as the umbrella when multiple changes occur or the specific code isn't allowed. BP only when an accepted+backordered pair on the same line collapses — guideline allows BP, doesn't allow IB, and the accepted action has no derived changes. Fulfillment progress codes (AC, AR, SP) belong to fulfillmentStatus; any code above takes precedence over them."]},"fulfillmentStatus":{"type":"string","enum":["pendingSchedule","released","shipped"],"description":"How far the supplier had already taken this line when the acknowledgment was issued. Orthogonal to the accepted status, which says only that the line will be supplied. Omitted by suppliers that do not track fulfillment progress at acknowledgment time.","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.lineItemStatusCode"],"orderful_x12_notes":["Shares ACK01 with the accepted status, which always takes precedence: a derived change code wins and fulfillment progress is not expressed. AC, AR and SP each mean an accepted line with no changes plus this progress. When sending: shipped emits AC, released emits AR and pendingSchedule emits SP, each only where the guideline allows that code; omitted, or carrying a value the guideline does not allow, emits the general acceptance code IA, which stays truthful because the line is accepted either way. When receiving: only take fulfillment progress from ACK01 where the guideline distinguishes AC, AR and IA — a guideline whose only acceptance code is AC means plain acceptance and sets nothing here."],"orderful_enum_meta":{"pendingSchedule":{"description":"The line is accepted in full, at the requested quantities and dates, but the shipment has not yet been scheduled. Uncommon — few partners support this state, and one that requires a scheduled ship date will reject an acknowledgment that omits it.","orderful_x12_codes":["SP"]},"released":{"description":"The line had been released for shipment, but had not yet shipped, when the acknowledgment was issued","orderful_x12_codes":["AR"]},"shipped":{"description":"The line had already shipped when the acknowledgment was issued","orderful_x12_codes":["AC"]}}},"statusNote":{"description":"Free-text explanation of the acceptance","orderful_x12_notes":["Source varies by guideline — commonly N9-MSG/MTX, sometimes REF03."],"type":"object","properties":{"description":{"description":"Brief description or title of the note","type":"string"},"text":{"description":"Array of text lines for the note content","type":"array","items":{"type":"string"}}},"additionalProperties":false},"quantity":{"description":"Confirmed quantity for this line item. When sending: include the confirmed quantity whenever it differs from the line's orderQuantity; omitting it asserts no change (contributes to IA). On a replenishment order there is no prior quantity to differ from, so include the line's own quantity. When receiving: always populated via mapping — compare against the line item's orderQuantity to detect changes.","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.quantity"],"orderful_x12_notes":["ACK02/ACK03 — quantity and unit of measure"],"orderful_edifact_codes":["12","21"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.quantity.*.quantityDetails_composite | quantityTypeCodeQualifier=12,21"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"scheduledShipDate":{"description":"Scheduled date for shipment","orderful_x12_codes":["068","010","080","083","086"],"orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.* | dateTimeQualifier=068,010,080,083,086","855:PO1_loop.*.ACK_loop.*.dateTimeReference.* | dateTimeQualifier=068,010,080,083,086"],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","When sending: include only if changing from the line's requestedShipDate. A difference vs the PO baseline contributes a 'date' entry to the ACK01 change-set (DR if specifically allowed, else IC). Compared as calendar-day equality — date-only and datetime values for the same day are not a change."],"orderful_edifact_codes":["10","11"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=10,11"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]},"estimatedDeliveryDate":{"description":"Estimated date of delivery","orderful_x12_codes":["067","017"],"orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.* | dateTimeQualifier=067,017","855:PO1_loop.*.ACK_loop.*.dateTimeReference.* | dateTimeQualifier=067,017","855:PO1_loop.*.dateTimeReference.* | dateTimeQualifier=067,017"],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one.","When sending: include only if changing from the line's requestedDeliveryDate. Same date-change semantics as scheduledShipDate — both date fields collapse into one 'date' entry in the ACK01 change-set."],"orderful_edifact_codes":["2","17","67"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=2,17,67"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}]},"unitCostPrice":{"description":"Confirmed unit price for this line item. When sending: include only if changing from the original purchase order. On a replenishment order there is no original, so include the line's own price. When receiving: always populated via mapping — compare against the line item's orderUnitPrice to detect price changes.","orderful_x12_path":["855:PO1_loop.*.baselineItemData.*.unitPrice"],"orderful_x12_notes":["PO104 — present when ACK01=IP (price changed)"],"orderful_edifact_codes":["AAA","AAB"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.priceDetails_group.*.priceDetails.priceInformation_composite | priceCodeQualifier=AAA,AAB"],"type":"string"},"unitPriceBasis":{"description":"Basis on which the unit price is calculated","orderful_tags":["context"],"orderful_x12_path":["855:PO1_loop.*.baselineItemData.*.basisOfUnitPriceCode"],"orderful_x12_notes":["PO105 — the basis the price is quoted on. The buyer sets it on the purchase order and the acknowledgment is not expected to change it, so where the acknowledgment omits it, take it from the originating 850. On a replenishment order there is no originating 850 and it is the supplier’s own basis."],"type":"string","enum":["advise","adjustable","beforeDiscount","discount","net","noCharge","perHundred","perThousand","perDozen","perEach","perFoot","perGram","perKilogram","perTen","perOunce","perPound","perTenThousand","perUOM","promotion","retail","standard","suggestedRetail","wholesale","wholesalePerEach"],"orderful_enum_meta":{"advise":{"description":"Price to be advised","orderful_x12_codes":["AP"]},"adjustable":{"description":"Expected unit cost that the seller may adjust when invoicing; the buyer accepts an invoiced unit cost different from the one ordered"},"beforeDiscount":{"description":"Price before discount","orderful_x12_codes":["BD"]},"discount":{"description":"Discount price","orderful_x12_codes":["DS"]},"net":{"description":"Net price","orderful_x12_codes":["NT"]},"noCharge":{"description":"No charge","orderful_x12_codes":["NC"]},"perHundred":{"description":"Price per hundred units","orderful_x12_codes":["HP"]},"perThousand":{"description":"Price per thousand units","orderful_x12_codes":["HT"]},"perDozen":{"description":"Price per dozen (12 units)","orderful_x12_codes":["WD"]},"perEach":{"description":"Price per each unit","orderful_x12_codes":["LE","TE","PE","QE"]},"perFoot":{"description":"Price per foot","orderful_x12_codes":["PF"]},"perGram":{"description":"Price per gram","orderful_x12_codes":["PG"]},"perKilogram":{"description":"Price per kilogram","orderful_x12_codes":["PK"]},"perTen":{"description":"Price per ten units","orderful_x12_codes":["PN"]},"perOunce":{"description":"Price per ounce","orderful_x12_codes":["PO"]},"perPound":{"description":"Price per pound","orderful_x12_codes":["PP"]},"perTenThousand":{"description":"Price per ten thousand units","orderful_x12_codes":["TT"]},"perUOM":{"description":"Price per specified unit of measure","orderful_x12_codes":["UM"]},"promotion":{"description":"Promotional price","orderful_x12_codes":["PR"]},"retail":{"description":"Actual retail price the item sells at to the end consumer, as distinct from a manufacturer-suggested price","orderful_x12_codes":["RT","RE"]},"standard":{"description":"Standard list price","orderful_x12_codes":["ST","QT","CT","CA","FX","DI","CP","AB"]},"suggestedRetail":{"description":"Suggested retail price (MSRP)","orderful_x12_codes":["SR"]},"wholesale":{"description":"Wholesale price","orderful_x12_codes":["WH","SW"]},"wholesalePerEach":{"description":"Wholesale price per each unit","orderful_x12_codes":["WE"]}}},"substitutedItem":{"description":"Details of a substitute item being shipped instead","orderful_x12_notes":["ACK01=IS. Substituted product IDs typically sourced from N9-MSG/MTX or additional PO1 qualifier pairs."],"type":"object","properties":{"productIds":{"type":"object","properties":{"buyerItemNumber":{"description":"Buyer-assigned item number","orderful_x12_codes":["BP","IN","CB","SK","PI","IT","PN","ST"],"orderful_edifact_codes":["BP","IN","SK","IT"],"type":"string"},"vendorItemNumber":{"description":"Vendor-assigned item number (EDIFACT LIN/PIA supplier's item number)","orderful_x12_codes":["VA","VC","VN","VP","MG","MF","SA","MN"],"orderful_edifact_codes":["SA","VN","VP","MF"],"type":"string"},"gtin8":{"description":"GTIN-8 (EAN-8) barcode, used on items too small for a full-length barcode","orderful_x12_codes":["EO"],"type":"string"},"gtin12":{"description":"GTIN-12 (UPC-A) barcode","orderful_x12_codes":["UP"],"orderful_edifact_codes":["UP"],"type":"string"},"gtin13":{"description":"GTIN-13 (EAN) barcode","orderful_x12_codes":["EN"],"orderful_edifact_codes":["EN","SRV"],"type":"string"},"gtin14":{"description":"GTIN-14 (ITF-14) case code barcode","orderful_x12_codes":["UK"],"type":"string"},"caseCode":{"description":"Case code identifier","orderful_x12_codes":["UI","UN","UA","UB","UD"],"type":"string"},"moduleCode":{"description":"U.P.C./EAN module code (2-5-5 format)","orderful_x12_codes":["UE"],"type":"string"},"drugCode":{"description":"National Drug Code (NDC)","orderful_x12_codes":["N1","N2","N3","N4","ND"],"type":"string"},"standardBookNumber":{"description":"ISBN or standard book number","orderful_x12_codes":["IB"],"orderful_edifact_codes":["IB"],"type":"string"},"priceLookupNumber":{"description":"Price Look-Up (PLU) code used at point of sale, typically for loose or variable-weight retail goods","orderful_x12_codes":["P8"],"type":"string"},"buyerItemIds":{"description":"Additional buyer product identifiers","orderful_x12_codes":["CB","SK","ST","IT"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["catalog","manufacturerPart","sku","style"],"description":"Type of product identifier","orderful_x12_path":["856:HL_loop.*.itemIdentification.*.productServiceIDQualifier","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier1","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier2","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier3","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier4","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier5","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier6","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier7","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier8","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier9","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier10","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier11","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier12","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier13","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier14"],"orderful_enum_meta":{"catalog":{"description":"Catalog number (buyer catalog reference)","orderful_x12_codes":["CB","VC"]},"manufacturerPart":{"description":"Manufacturer part number","orderful_x12_codes":["MG","MF"]},"sku":{"description":"Stock keeping unit identifier","orderful_x12_codes":["SK"]},"style":{"description":"Style number or code","orderful_x12_codes":["ST","IT","VA"]}}},"value":{"type":"string","description":"Product identifier value"}},"required":["type","value"],"additionalProperties":false}},"vendorItemIds":{"description":"Additional vendor product identifiers","orderful_x12_codes":["VC","MG","VA","MF"],"orderful_edifact_codes":["MF"],"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["catalog","manufacturerPart","sku","style"],"description":"Type of product identifier","orderful_x12_path":["856:HL_loop.*.itemIdentification.*.productServiceIDQualifier","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier1","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier2","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier3","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier4","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier5","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier6","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier7","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier8","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier9","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier10","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier11","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier12","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier13","856:HL_loop.*.itemIdentification.*.productServiceIDQualifier14"],"orderful_enum_meta":{"catalog":{"description":"Catalog number (buyer catalog reference)","orderful_x12_codes":["CB","VC"]},"manufacturerPart":{"description":"Manufacturer part number","orderful_x12_codes":["MG","MF"]},"sku":{"description":"Stock keeping unit identifier","orderful_x12_codes":["SK"]},"style":{"description":"Style number or code","orderful_x12_codes":["ST","IT","VA"]}}},"value":{"type":"string","description":"Product identifier value"}},"required":["type","value"],"additionalProperties":false}}},"additionalProperties":false,"description":"Product identifiers for the substituted item","orderful_x12_notes":["Mapping rule when a guideline requires a code that this schema can supply from multiple fields:\n  1. Fill mandatory guideline positions before optional/conditional ones.\n  2. Prefer the more specific source. `*ItemIds` typed-array entries cover a tighter code set than `*ItemNumber` string fields; use the array entry when both could satisfy the same code.\n  3. Each simplified property maps to exactly one X12 qualifier across every line item in a transformation. Do not switch a property's qualifier line-by-line based on which sibling fields are populated. The position where the qualifier appears within a repeating element group can vary per line item depending on which other identifiers are present."]}},"required":["productIds"],"additionalProperties":false}},"required":["status"],"additionalProperties":false},{"type":"object","properties":{"status":{"type":"string","const":"rejected","description":"Indicates the line item is rejected","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.lineItemStatusCode"],"orderful_x12_codes":["IR","ID","R1","R2","R3","R4"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.lineItem.actionCode"],"orderful_edifact_codes":["7","2"],"orderful_edifact_notes":["LIN03 (1229) action code: 7 (not accepted) is the primary rejection signal; 2 (deleted) when the line is removed from the order."]},"statusReasonCode":{"description":"Coded reason the item was rejected. Sufficient on its own — an accompanying statusNote is optional.","orderful_x12_notes":["The coded reason is the primary carrier and is complete by itself: when the partner guideline requires a free-text note and no statusNote was supplied, render this code's description into the note element. Source varies by guideline — commonly REF02 with REF01=TD, sometimes N902."],"type":"string","enum":["discontinued","invalidAddress","invalidBillToCode","invalidItemNumber","invalidPrice","invalidItemQuantity","belowMinimumQuantity","invalidQuantityMultiple","itemNotSplittable","invalidShipFrom","invalidShipMethod","invalidShipToName","invalidShipToAddress1","invalidShipToAddress2","invalidShipToCity","invalidShipToStateOrProvince","invalidShipToPostalCode","invalidShipToCountry","itemNotAuthorized","itemRecall","itemSetupIssue","mainlandOnly","missingLineItemId","missingOrderId","missingShipId","naturalDisaster","outOfStock","seasonalOrEndOfLife","shippingInFull","systemIssue","taxNexusIssue","transportationIssuePrepaid","transportationIssueCollect","undeliverableAddress","weather"],"orderful_enum_meta":{"discontinued":{"description":"Item has been discontinued"},"invalidAddress":{"description":"An address on the order is not valid"},"invalidBillToCode":{"description":"The bill-to party code is not recognised"},"invalidItemNumber":{"description":"The item number is not recognised"},"invalidPrice":{"description":"The price on the order does not match the agreed price"},"invalidItemQuantity":{"description":"The quantity ordered is not valid for this item"},"belowMinimumQuantity":{"description":"The quantity ordered is below the minimum the supplier will sell for this item"},"invalidQuantityMultiple":{"description":"The quantity ordered is not a valid multiple of the item's order increment"},"itemNotSplittable":{"description":"The item must be ordered in whole cases and cannot be split"},"invalidShipFrom":{"description":"The ship-from location is not recognised"},"invalidShipMethod":{"description":"The requested carrier, service level or ship method cannot be used"},"invalidShipToName":{"description":"The ship-to name is not valid"},"invalidShipToAddress1":{"description":"The first line of the ship-to address is not valid"},"invalidShipToAddress2":{"description":"The second line of the ship-to address is not valid"},"invalidShipToCity":{"description":"The ship-to city is not valid"},"invalidShipToStateOrProvince":{"description":"The ship-to state or province is not valid"},"invalidShipToPostalCode":{"description":"The ship-to postal code is not valid"},"invalidShipToCountry":{"description":"The ship-to country is not valid"},"itemNotAuthorized":{"description":"The buyer is not authorised to purchase this item"},"itemRecall":{"description":"The item is subject to a recall and cannot be supplied"},"itemSetupIssue":{"description":"The item is not fully set up in the supplier's system"},"mainlandOnly":{"description":"The item ships only to destinations on the contiguous mainland"},"missingLineItemId":{"description":"The order line carries no line item identifier"},"missingOrderId":{"description":"The order carries no order identifier"},"missingShipId":{"description":"The order carries no shipment identifier"},"naturalDisaster":{"description":"A natural disaster prevents the item being supplied"},"outOfStock":{"description":"The item is out of stock"},"seasonalOrEndOfLife":{"description":"The item is seasonal or at end of life and is no longer available"},"shippingInFull":{"description":"The line is being shipped complete, with no balance outstanding","orderful_x12_notes":["Applies only to an accepted line, which carries no reason code — this value is unreachable today and no 855 spec has been found that sources it. Do not route a partner code here without confirming the meaning."]},"systemIssue":{"description":"A system or processing error prevented the order being accepted"},"taxNexusIssue":{"description":"The supplier has no tax nexus for the destination and cannot supply it"},"transportationIssuePrepaid":{"description":"Prepaid transportation could not be arranged"},"transportationIssueCollect":{"description":"Collect transportation could not be arranged"},"undeliverableAddress":{"description":"The address cannot be delivered to — e.g. a PO box where the carrier requires a street address"},"weather":{"description":"Weather conditions prevent the item being supplied"}}},"statusNote":{"description":"Free-text explanation of the rejection — optional context alongside statusReasonCode, or the reason itself when the partner defines no reason-code list.","orderful_x12_notes":["Prose is never coerced into a partner code list: when the guideline requires a coded reason and only this note was supplied, raise it rather than inferring a code. Source varies by guideline — commonly N9-MSG/MTX, sometimes REF03."],"type":"object","properties":{"description":{"description":"Brief description or title of the note","type":"string"},"text":{"description":"Array of text lines for the note content","type":"array","items":{"type":"string"}}},"additionalProperties":false},"quantity":{"description":"Quantity being rejected","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.quantity"],"orderful_x12_notes":["ACK02/ACK03 — quantity and unit of measure"],"orderful_edifact_codes":["12","21"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.quantity.*.quantityDetails_composite | quantityTypeCodeQualifier=12,21"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false}},"required":["status"],"additionalProperties":false},{"type":"object","properties":{"status":{"type":"string","const":"backordered","description":"Indicates the line item is backordered with a known availability date","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.lineItemStatusCode"],"orderful_x12_codes":["IB"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.lineItem.actionCode"],"orderful_edifact_codes":["6"],"orderful_edifact_notes":["No clean 1229 analog for backorder. Best-effort: 6 (accepted with amendment), with the backorder itself signalled by a reduced confirmed quantity plus a scheduled availability date (DTM). The action-code value needs validation against a real ORDRSP guideline."]},"statusReasonCode":{"description":"Coded reason the item was backordered. Sufficient on its own — an accompanying statusNote is optional.","orderful_x12_notes":["The coded reason is the primary carrier and is complete by itself: when the partner guideline requires a free-text note and no statusNote was supplied, render this code's description into the note element. Source varies by guideline — commonly REF02 with REF01=TD, sometimes N902."],"type":"string","enum":["discontinued","invalidAddress","invalidBillToCode","invalidItemNumber","invalidPrice","invalidItemQuantity","belowMinimumQuantity","invalidQuantityMultiple","itemNotSplittable","invalidShipFrom","invalidShipMethod","invalidShipToName","invalidShipToAddress1","invalidShipToAddress2","invalidShipToCity","invalidShipToStateOrProvince","invalidShipToPostalCode","invalidShipToCountry","itemNotAuthorized","itemRecall","itemSetupIssue","mainlandOnly","missingLineItemId","missingOrderId","missingShipId","naturalDisaster","outOfStock","seasonalOrEndOfLife","shippingInFull","systemIssue","taxNexusIssue","transportationIssuePrepaid","transportationIssueCollect","undeliverableAddress","weather"],"orderful_enum_meta":{"discontinued":{"description":"Item has been discontinued"},"invalidAddress":{"description":"An address on the order is not valid"},"invalidBillToCode":{"description":"The bill-to party code is not recognised"},"invalidItemNumber":{"description":"The item number is not recognised"},"invalidPrice":{"description":"The price on the order does not match the agreed price"},"invalidItemQuantity":{"description":"The quantity ordered is not valid for this item"},"belowMinimumQuantity":{"description":"The quantity ordered is below the minimum the supplier will sell for this item"},"invalidQuantityMultiple":{"description":"The quantity ordered is not a valid multiple of the item's order increment"},"itemNotSplittable":{"description":"The item must be ordered in whole cases and cannot be split"},"invalidShipFrom":{"description":"The ship-from location is not recognised"},"invalidShipMethod":{"description":"The requested carrier, service level or ship method cannot be used"},"invalidShipToName":{"description":"The ship-to name is not valid"},"invalidShipToAddress1":{"description":"The first line of the ship-to address is not valid"},"invalidShipToAddress2":{"description":"The second line of the ship-to address is not valid"},"invalidShipToCity":{"description":"The ship-to city is not valid"},"invalidShipToStateOrProvince":{"description":"The ship-to state or province is not valid"},"invalidShipToPostalCode":{"description":"The ship-to postal code is not valid"},"invalidShipToCountry":{"description":"The ship-to country is not valid"},"itemNotAuthorized":{"description":"The buyer is not authorised to purchase this item"},"itemRecall":{"description":"The item is subject to a recall and cannot be supplied"},"itemSetupIssue":{"description":"The item is not fully set up in the supplier's system"},"mainlandOnly":{"description":"The item ships only to destinations on the contiguous mainland"},"missingLineItemId":{"description":"The order line carries no line item identifier"},"missingOrderId":{"description":"The order carries no order identifier"},"missingShipId":{"description":"The order carries no shipment identifier"},"naturalDisaster":{"description":"A natural disaster prevents the item being supplied"},"outOfStock":{"description":"The item is out of stock"},"seasonalOrEndOfLife":{"description":"The item is seasonal or at end of life and is no longer available"},"shippingInFull":{"description":"The line is being shipped complete, with no balance outstanding","orderful_x12_notes":["Applies only to an accepted line, which carries no reason code — this value is unreachable today and no 855 spec has been found that sources it. Do not route a partner code here without confirming the meaning."]},"systemIssue":{"description":"A system or processing error prevented the order being accepted"},"taxNexusIssue":{"description":"The supplier has no tax nexus for the destination and cannot supply it"},"transportationIssuePrepaid":{"description":"Prepaid transportation could not be arranged"},"transportationIssueCollect":{"description":"Collect transportation could not be arranged"},"undeliverableAddress":{"description":"The address cannot be delivered to — e.g. a PO box where the carrier requires a street address"},"weather":{"description":"Weather conditions prevent the item being supplied"}}},"statusNote":{"description":"Free-text explanation of the backorder — optional context alongside statusReasonCode, or the reason itself when the partner defines no reason-code list.","orderful_x12_notes":["Prose is never coerced into a partner code list: when the guideline requires a coded reason and only this note was supplied, raise it rather than inferring a code. Source varies by guideline — commonly N9-MSG/MTX, sometimes REF03."],"type":"object","properties":{"description":{"description":"Brief description or title of the note","type":"string"},"text":{"description":"Array of text lines for the note content","type":"array","items":{"type":"string"}}},"additionalProperties":false},"quantity":{"description":"Quantity being backordered","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.quantity"],"orderful_x12_notes":["ACK02/ACK03 — quantity and unit of measure"],"orderful_edifact_codes":["12","21"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.quantity.*.quantityDetails_composite | quantityTypeCodeQualifier=12,21"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false},"scheduledShipDate":{"description":"Scheduled date for shipment of backordered items","orderful_x12_codes":["068","010","080","083","086"],"orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.* | dateTimeQualifier=068,010,080,083,086","855:PO1_loop.*.ACK_loop.*.dateTimeReference.* | dateTimeQualifier=068,010,080,083,086"],"orderful_edifact_codes":["10","11"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=10,11"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]},"estimatedDeliveryDate":{"description":"Estimated delivery date for backordered items","orderful_x12_codes":["067","017"],"orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.* | dateTimeQualifier=067,017","855:PO1_loop.*.ACK_loop.*.dateTimeReference.* | dateTimeQualifier=067,017","855:PO1_loop.*.dateTimeReference.* | dateTimeQualifier=067,017"],"orderful_edifact_codes":["2","17","67"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.dateTimePeriod.*.dateTimePeriod_composite | dateOrTimeOrPeriodFunctionCodeQualifier=2,17,67"],"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$","description":"Date only (YYYY-MM-DD)"},{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), with that location's UTC offset in effect on that date (YYYY-MM-DDTHH:MM:SS±HH:MM)"},{"type":"string","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?$","description":"Date and local time at the location the date applies to (for example, ship-from for ship and pickup dates, ship-to for delivery dates), UTC offset not stated (YYYY-MM-DDTHH:MM:SS)"}],"orderful_x12_notes":["Time codes: no DTM04 and LT are local time, sent without an offset, unless the guideline defines a missing time code otherwise (for example, as UTC). UT and GM are Z. Fixed-offset codes carry their offset. Daylight-saving zone codes (ET, CT, MT, PT and similar) take the offset in effect on that date.","Emitting X12: when the guideline takes local time (no time code, or LT), emit the clock time as given and drop the offset. When it requires UTC or a named zone, convert from the offset; report a value with no offset rather than guess one."]}},"required":["status"],"additionalProperties":false},{"type":"object","properties":{"status":{"type":"string","const":"onHold","description":"Indicates the item is on hold with no confirmed availability date","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.lineItemStatusCode"],"orderful_x12_codes":["IH"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.lineItem.actionCode"],"orderful_edifact_codes":["6"],"orderful_edifact_notes":["No clean 1229 analog for on-hold. Best-effort: 6 (accepted with amendment); the absence of a confirmed availability date (no scheduled-delivery DTM) distinguishes on-hold from backordered. The action-code value needs validation against a real ORDRSP guideline."]},"statusReasonCode":{"description":"Coded reason the item is on hold. Sufficient on its own — an accompanying statusNote is optional.","orderful_x12_notes":["The coded reason is the primary carrier and is complete by itself: when the partner guideline requires a free-text note and no statusNote was supplied, render this code's description into the note element. Source varies by guideline — commonly REF02 with REF01=TD, sometimes N902."],"type":"string","enum":["discontinued","invalidAddress","invalidBillToCode","invalidItemNumber","invalidPrice","invalidItemQuantity","belowMinimumQuantity","invalidQuantityMultiple","itemNotSplittable","invalidShipFrom","invalidShipMethod","invalidShipToName","invalidShipToAddress1","invalidShipToAddress2","invalidShipToCity","invalidShipToStateOrProvince","invalidShipToPostalCode","invalidShipToCountry","itemNotAuthorized","itemRecall","itemSetupIssue","mainlandOnly","missingLineItemId","missingOrderId","missingShipId","naturalDisaster","outOfStock","seasonalOrEndOfLife","shippingInFull","systemIssue","taxNexusIssue","transportationIssuePrepaid","transportationIssueCollect","undeliverableAddress","weather"],"orderful_enum_meta":{"discontinued":{"description":"Item has been discontinued"},"invalidAddress":{"description":"An address on the order is not valid"},"invalidBillToCode":{"description":"The bill-to party code is not recognised"},"invalidItemNumber":{"description":"The item number is not recognised"},"invalidPrice":{"description":"The price on the order does not match the agreed price"},"invalidItemQuantity":{"description":"The quantity ordered is not valid for this item"},"belowMinimumQuantity":{"description":"The quantity ordered is below the minimum the supplier will sell for this item"},"invalidQuantityMultiple":{"description":"The quantity ordered is not a valid multiple of the item's order increment"},"itemNotSplittable":{"description":"The item must be ordered in whole cases and cannot be split"},"invalidShipFrom":{"description":"The ship-from location is not recognised"},"invalidShipMethod":{"description":"The requested carrier, service level or ship method cannot be used"},"invalidShipToName":{"description":"The ship-to name is not valid"},"invalidShipToAddress1":{"description":"The first line of the ship-to address is not valid"},"invalidShipToAddress2":{"description":"The second line of the ship-to address is not valid"},"invalidShipToCity":{"description":"The ship-to city is not valid"},"invalidShipToStateOrProvince":{"description":"The ship-to state or province is not valid"},"invalidShipToPostalCode":{"description":"The ship-to postal code is not valid"},"invalidShipToCountry":{"description":"The ship-to country is not valid"},"itemNotAuthorized":{"description":"The buyer is not authorised to purchase this item"},"itemRecall":{"description":"The item is subject to a recall and cannot be supplied"},"itemSetupIssue":{"description":"The item is not fully set up in the supplier's system"},"mainlandOnly":{"description":"The item ships only to destinations on the contiguous mainland"},"missingLineItemId":{"description":"The order line carries no line item identifier"},"missingOrderId":{"description":"The order carries no order identifier"},"missingShipId":{"description":"The order carries no shipment identifier"},"naturalDisaster":{"description":"A natural disaster prevents the item being supplied"},"outOfStock":{"description":"The item is out of stock"},"seasonalOrEndOfLife":{"description":"The item is seasonal or at end of life and is no longer available"},"shippingInFull":{"description":"The line is being shipped complete, with no balance outstanding","orderful_x12_notes":["Applies only to an accepted line, which carries no reason code — this value is unreachable today and no 855 spec has been found that sources it. Do not route a partner code here without confirming the meaning."]},"systemIssue":{"description":"A system or processing error prevented the order being accepted"},"taxNexusIssue":{"description":"The supplier has no tax nexus for the destination and cannot supply it"},"transportationIssuePrepaid":{"description":"Prepaid transportation could not be arranged"},"transportationIssueCollect":{"description":"Collect transportation could not be arranged"},"undeliverableAddress":{"description":"The address cannot be delivered to — e.g. a PO box where the carrier requires a street address"},"weather":{"description":"Weather conditions prevent the item being supplied"}}},"statusNote":{"description":"Free-text explanation of the hold","orderful_x12_notes":["Source varies by guideline — commonly N9-MSG/MTX, sometimes REF03."],"type":"object","properties":{"description":{"description":"Brief description or title of the note","type":"string"},"text":{"description":"Array of text lines for the note content","type":"array","items":{"type":"string"}}},"additionalProperties":false},"quantity":{"description":"Quantity on hold","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*.lineItemAcknowledgment.*.quantity"],"orderful_x12_notes":["ACK02/ACK03 — quantity and unit of measure"],"orderful_edifact_codes":["12","21"],"orderful_edifact_paths":["ORDRSP:lineItem_group.*.quantity.*.quantityDetails_composite | quantityTypeCodeQualifier=12,21"],"type":"object","properties":{"value":{"type":"string","description":"Numeric quantity value"},"unitOfMeasure":{"description":"Unit of measure for the quantity","type":"string","enum":["assembly","assortment","bag","bale","ball","bar","barrel","belt","bin","block","boardFeet","bolt","book","bottle","box","bulk","bundle","bushel","cake","can","card","carton","cartridge","case","cassette","celsius","cell","centigram","centiliter","centimeter","coil","combo","cone","container","count","cover","display","dozen","drum","each","flakeTon","foot","gallon","gram","gramsPerLiter","hundredweight","inch","innerPackage","jar","kilogram","keg","kit","knots","linearFoot","liter","meter","milliliter","monetaryValue","ocularInsertSystem","order","ounce","packPAK","package","pad","pail","pair","pairInches","palletLift","palletUnitLoad","person","piece","pint","pound","poundEquivalent","poundGross","quart","reel","roll","section","set","sheet","sixPack","sleeve","squareFoot","syringe","thousand","threePack","tin","tote","tube","unit","vial"],"orderful_x12_path":["810:IT1_loop.*.baselineItemDataInvoice.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.baselineItemData.*.unitOrBasisForMeasurementCode","850:PO1_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode","856:HL_loop.*.itemDetailShipment.*.unitOrBasisForMeasurementCode1","856:HL_loop.*.sublineItemDetail.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode","860:POC_loop.*.lineItemChange.*.unitOrBasisForMeasurementCode1","860:POC_loop.*.destinationQuantity.*.unitOrBasisForMeasurementCode"],"orderful_enum_meta":{"assembly":{"description":"Assembly — set of manufactured components combined into a functional unit","orderful_x12_codes":["AY"]},"assortment":{"description":"Assortment or prepack — unit containing a mixed selection of SKUs, sizes or colours, ordered as a single unit","orderful_x12_codes":["AS","JP"]},"bag":{"description":"Bag — flexible container; used for produce, grains, or loose items","orderful_x12_codes":["BG"]},"bale":{"description":"Bale — compressed bundle; used for textiles, paper, or agricultural products","orderful_x12_codes":["BA"]},"ball":{"description":"Ball — spherical wound unit; used for yarn, twine, or wire","orderful_x12_codes":["AA"]},"bar":{"description":"Bar — rigid elongated unit; used for metal stock, soap, or food products","orderful_x12_codes":["BI"]},"barrel":{"description":"Barrel — cylindrical container; standard 42-gallon oil barrel or general dry goods","orderful_x12_codes":["BR"]},"belt":{"description":"Belt — long continuous flat strip sold by unit; used for conveyor or drive belts","orderful_x12_codes":["BT"]},"bin":{"description":"Bin — open-top storage container for bulk loose items","orderful_x12_codes":["2W"]},"block":{"description":"Block — solid rectangular unit; used for cheese, ice, or masonry materials","orderful_x12_codes":["BL"]},"boardFeet":{"description":"Board feet — lumber volume unit; 1 ft × 1 ft × 1 in thick","orderful_x12_codes":["BF"]},"bolt":{"description":"Bolt — roll of fabric measured in linear yards","orderful_x12_codes":["BM"]},"book":{"description":"Book — bound or tabbed unit; used for matches, stamps, or checks","orderful_x12_codes":["BK"]},"bottle":{"description":"Bottle — rigid container with a narrow neck; used for liquids","orderful_x12_codes":["BO"]},"box":{"description":"Box — rigid rectangular container; standard retail or shipping unit","orderful_x12_codes":["BX"]},"bulk":{"description":"Bulk — unpackaged loose quantity; no individual container or wrapping","orderful_x12_codes":["BN"]},"bundle":{"description":"Bundle — group of items tied or strapped together; used for rebar, pipes, lumber","orderful_x12_codes":["BD"]},"bushel":{"description":"Bushel — dry volume; 64 US pints; used for grain and produce","orderful_x12_codes":["BU"]},"cake":{"description":"Cake — compressed solid block; used for yeast, soap, or wax","orderful_x12_codes":["KA"]},"can":{"description":"Can — metal sealed cylindrical container","orderful_x12_codes":["CN"]},"card":{"description":"Card — flat backing card; used for hanging retail blister packs","orderful_x12_codes":["CG"]},"carton":{"description":"Carton — paperboard box; typical inner or outer shipping container","orderful_x12_codes":["CT"]},"cartridge":{"description":"Cartridge — self-contained replaceable unit; used for ink, filters, or ammunition","orderful_x12_codes":["CQ"]},"case":{"description":"Case — outer shipping container holding multiple inner units; most common shipper UOM","orderful_x12_codes":["CA"]},"cassette":{"description":"Cassette — enclosed tape or cartridge format; used for media, ribbon, or film","orderful_x12_codes":["CS"]},"celsius":{"description":"Celsius — temperature unit; used when a quantity represents a temperature value","orderful_x12_codes":["CE"]},"cell":{"description":"Cell — individual battery cell or biological sample unit","orderful_x12_codes":["C6"]},"centigram":{"description":"Centigram — 0.01 gram; unit of mass for small precise quantities","orderful_x12_codes":["AF"]},"centiliter":{"description":"Centiliter — 0.01 liter; unit of liquid volume for small quantities","orderful_x12_codes":["C3"]},"centimeter":{"description":"Centimeter — 0.01 meter; unit of length","orderful_x12_codes":["CM"]},"coil":{"description":"Coil — wound continuous material; used for wire, steel strip, hose, or tubing","orderful_x12_codes":["CX"]},"combo":{"description":"Combo — bundled multi-component set sold as a single unit","orderful_x12_codes":["CZ"]},"cone":{"description":"Cone — conical spindle or spool; used for thread or yarn","orderful_x12_codes":["CJ"]},"container":{"description":"Container — generic shipping container; use when no more specific form applies","orderful_x12_codes":["CH"]},"count":{"description":"Count — generic numerical count of individual items; prefer each (EA) when count equals 1","orderful_x12_codes":["1N"]},"cover":{"description":"Cover — individual lid or covering unit","orderful_x12_codes":["CV"]},"display":{"description":"Display — shelf-ready PDQ or floor display holding multiple retail units","orderful_x12_codes":["DS"]},"dozen":{"description":"Dozen — 12 units; standard quantity for eggs, bottles, and similar items","orderful_x12_codes":["DZ"]},"drum":{"description":"Drum — large cylindrical container; typically 55 gallons; used for chemicals and liquids","orderful_x12_codes":["DR"]},"each":{"description":"Each — single individual unit; default UOM when no other code applies","orderful_x12_codes":["EA"]},"flakeTon":{"description":"Flake ton — ton measured in flake form; used for flaked or pelletized bulk material","orderful_x12_codes":["FL"]},"foot":{"description":"Foot — imperial length; 12 inches; used for lumber, pipe, and fabric","orderful_x12_codes":["FT"]},"gallon":{"description":"Gallon — US liquid volume; 128 fluid ounces; used for paint, chemicals, and beverages","orderful_x12_codes":["GA"]},"gram":{"description":"Gram — metric unit of mass; used for small weight quantities in food and pharma","orderful_x12_codes":["GR"]},"gramsPerLiter":{"description":"Grams per liter — solution concentration unit; used in chemical and food industries","orderful_x12_codes":["GL"]},"hundredweight":{"description":"Hundredweight (CWT) — 100 pounds; billing UOM for bulk and freight-rated goods","orderful_x12_codes":["CW"]},"inch":{"description":"Inch — imperial length; 1/12 foot; used for dimensions and hardware","orderful_x12_codes":["IN"]},"innerPackage":{"description":"Inner package — the inner packaging layer within a case or outer container","orderful_x12_codes":["IG"]},"jar":{"description":"Jar — wide-mouth rigid container; used for food, cosmetics, or chemicals","orderful_x12_codes":["JR"]},"kilogram":{"description":"Kilogram — 1,000 grams; standard metric weight UOM in international trade","orderful_x12_codes":["KG"]},"keg":{"description":"Keg — large cylindrical container; used for beverages, chemicals, or bulk liquids sold by the keg","orderful_x12_codes":["KE"]},"kit":{"description":"Kit — predefined set of parts packaged together for assembly or installation","orderful_x12_codes":["KT"]},"knots":{"description":"Knots — nautical speed (nm/hr); used in marine shipping contexts","orderful_x12_codes":["EH"]},"linearFoot":{"description":"Linear foot — length in feet regardless of width; used for trim, cable, and fabric","orderful_x12_codes":["LF"]},"liter":{"description":"Liter — metric liquid volume; ~1.057 US quarts; standard international liquid UOM","orderful_x12_codes":["LT"]},"meter":{"description":"Meter — base metric unit of length; ~39.37 inches","orderful_x12_codes":["MR"]},"milliliter":{"description":"Milliliter — 0.001 liter; used for small liquid quantities in pharma and beverages","orderful_x12_codes":["ML"]},"monetaryValue":{"description":"Monetary value — quantity expressed as a currency amount","orderful_x12_codes":["M4"]},"ocularInsertSystem":{"description":"Ocular insert system — pharmaceutical ophthalmic delivery unit placed in the eye","orderful_x12_codes":["AU"]},"order":{"description":"Order — entire purchase order treated as a single billable unit","orderful_x12_codes":["ET"]},"ounce":{"description":"Ounce — imperial weight; 1/16 pound; common in US food and retail","orderful_x12_codes":["OZ"]},"packPAK":{"description":"Pack (PAK) — sealed multi-unit retail pack; use instead of package (PK) when the pack form is specifically a PAK","orderful_x12_codes":["PH"]},"package":{"description":"Package — general-purpose shipping or retail package; use when the pack type is unspecified","orderful_x12_codes":["PK"]},"pad":{"description":"Pad — flat stacked unit; used for paper notepads or sticker sheets","orderful_x12_codes":["PD"]},"pail":{"description":"Pail or bucket — open-top rigid container with a handle, typically 1–5 gallons","orderful_x12_codes":["PA","BC"]},"pair":{"description":"Pair — two matching items sold together (shoes, gloves, socks)","orderful_x12_codes":["PR"]},"pairInches":{"description":"Pair inches — pipe fitting measurement; a pair measured in inches","orderful_x12_codes":["PB"]},"palletLift":{"description":"Pallet lift (PF) — individual pallet; use when counting or billing by pallet. Distinct from palletUnitLoad (PL) which is the complete loaded pallet","orderful_x12_codes":["PF"]},"palletUnitLoad":{"description":"Pallet unit load (PL) — complete loaded pallet as shipped, including goods and pallet. Distinct from palletLift (PF) which counts the pallet itself","orderful_x12_codes":["PL"]},"person":{"description":"Person — individual person; used for labor, staffing, or capacity billing","orderful_x12_codes":["IE"]},"piece":{"description":"Piece — individual item not in a standard retail package; used for industrial and bulk parts","orderful_x12_codes":["PC"]},"pint":{"description":"Pint — liquid volume; 16 US fluid ounces","orderful_x12_codes":["PT"]},"pound":{"description":"Pound — imperial weight; most common weight UOM in US grocery and distribution","orderful_x12_codes":["LB","01","PN"]},"poundEquivalent":{"description":"Pound equivalent — standardized weight comparison unit; used in apparel and textile industries","orderful_x12_codes":["PE"]},"poundGross":{"description":"Pound gross — total weight including all packaging and the container itself","orderful_x12_codes":["PG"]},"quart":{"description":"Quart — US liquid volume unit; 0.946 liters; used for paint, motor oil, and liquids sold in quart containers","orderful_x12_codes":["QT"]},"reel":{"description":"Reel — cylindrical spool unit; used for wire, cable, film, or tape wound on a hub","orderful_x12_codes":["RE"]},"roll":{"description":"Roll — cylindrical wrapped unit; used for paper, fabric, or flexible material rolled without a rigid hub. Distinct from reel (RE) which has a hub","orderful_x12_codes":["RL"]},"section":{"description":"Section — subdivision of a larger structure sold as a distinct piece; used in furniture, shelving, or land measurement","orderful_x12_codes":["SE"]},"set":{"description":"Set — defined collection of matched or functionally related items sold together; use when items are inseparable as a set","orderful_x12_codes":["ST"]},"sheet":{"description":"Sheet — single flat panel unit; used for glass, metal, plywood, drywall, or paper sold in flat cut pieces","orderful_x12_codes":["SH"]},"sixPack":{"description":"Six-pack (6P) — fixed retail grouping of exactly 6 units; use for beverages or consumer goods sold as a pre-packaged six. Distinct from threePack (P3)","orderful_x12_codes":["P6"]},"sleeve":{"description":"Sleeve — tubular wrapper holding a small fixed set of items (e.g. golf balls, cups, cans)","orderful_x12_codes":["SL"]},"squareFoot":{"description":"Square foot — area unit; 144 square inches; used for flooring, roofing, fabric, and surface-area pricing","orderful_x12_codes":["SF"]},"syringe":{"description":"Syringe — pre-filled or unit-dose injectable pharmaceutical unit","orderful_x12_codes":["SZ"]},"thousand":{"description":"Thousand (M) — quantity multiplier; used when pricing or ordering in increments of 1,000 (e.g., fasteners, bricks, sheets). Distinct from each (EA)","orderful_x12_codes":["TH"]},"threePack":{"description":"Three-pack (P3) — fixed retail grouping of exactly 3 units; use for consumer goods sold as a pre-packaged triple. Distinct from sixPack (6P)","orderful_x12_codes":["P3"]},"tin":{"description":"Tin — metal container, often rectangular or reclosable; used for food, tea, or specialty products","orderful_x12_codes":["JT"]},"tote":{"description":"Tote — large reusable open-top container or bin; used in warehouse and bulk distribution settings","orderful_x12_codes":["TE"]},"tube":{"description":"Tube — cylindrical dispensing container; used for adhesives, ointments, toothpaste, or caulk sold in squeezable tubes","orderful_x12_codes":["TB"]},"unit":{"description":"Unit (UN) — generic count when no specific UOM code applies; use as a last resort when the item type does not match any other code","orderful_x12_codes":["UN"]},"vial":{"description":"Vial — small sealed glass or plastic container; used for injectable drugs, reagents, or laboratory specimens","orderful_x12_codes":["VI"]}}}},"required":["value"],"additionalProperties":false}},"required":["status"],"additionalProperties":false}]},"description":"Disposition of this line — accepted, rejected, backordered, or on hold, each with its own quantity. A line splits into several entries when its quantity partitions across dispositions.","orderful_x12_path":["855:PO1_loop.*.ACK_loop.*"],"orderful_x12_notes":["Multiple actions partition the line's quantity (e.g. 10 accepted + 5 backordered for an order of 15). In multi-action lines, per-action quantities are partitions, not change indicators — quantity-change derivation only applies when a line has a single accepted action. Each action is evaluated against the guideline's allowed ACK01 codes independently. On a replenishment order (BAK02=AP) there is nothing to acknowledge per line: most guidelines omit the ACK loop entirely, and those that declare it expect a single IA (Item Accepted) carrying the line quantity. Emit one accepted action per line with the PO1 quantity and let the guideline decide whether an ACK segment is written."],"orderful_edifact_paths":["ORDRSP:lineItem_group.*"],"orderful_edifact_notes":["EDIFACT ORDRSP has no ACK loop — each lineItem_group instance carries one acknowledgment (LIN actionCode + confirmed QTY + scheduling DTM). A line that partitions across multiple statuses (e.g. part accepted + part backordered) repeats as multiple lineItem_group instances with the same lineItemId, rather than nested action loops."]}},"required":["productIds","actions"],"additionalProperties":false}},"monetaryAmounts":{"description":"Monetary amounts for the acknowledged order","orderful_x12_path":["855:CTT_loop.*.monetaryAmountInformation"],"type":"object","properties":{"gross":{"description":"Gross monetary amount for the acknowledged order — the total transaction amount, including tax and charges.","orderful_x12_path":["855:CTT_loop.*.monetaryAmountInformation.* | amountQualifierCode=TT,GV,1"],"orderful_x12_codes":["TT","GV","1"],"orderful_x12_notes":["855: AMT02 in the CTT_loop AMT segment. AMT01=TT (Total Transaction Amount) is the dominant summary total; GV (Gross Value) and 1 (Line Item Total) also carry the order total for some partners. Mirrors the 850's monetaryAmounts.gross so an acknowledgment's total reads the same as the purchase order it answers. When lineItems are present and this is omitted, the writer computes it as the sum of accepted line quantities × unit prices adjusted for header/line allowances and charges."],"type":"string"}},"additionalProperties":false}},"required":["purchaseOrderNumber","status"],"additionalProperties":false}