
| Property Name | Type | Description |
|---|---|---|
| Version | number | Version (common.json) |
| Id | string |
A String value
where
length <=
50
Description : Document ID
|
| Timestamp | string |
A String value
Description : Date/time stamp for this document
|
| POHeader | object | POHeader (purchase_order.json) |
| PODetail | object | PODetail (purchase_order.json) |
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://standards.namm.org/schema/2020.1/purchase_order.json",
"type": "object",
"title": "NAMM PO",
"description": "This is a json-schema version of NAMM PO XSD",
"additionalProperties": false,
"properties": {
"Version": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/Version"
},
"Id": {
"type": "string",
"description": "Document ID",
"maxLength": 50
},
"Timestamp": {
"type": "string",
"description": "Date/time stamp for this document",
"format": "date-time"
},
"POHeader": {
"type": "object",
"additionalProperties": {
"not": {}
},
"properties": {
"SoldTo": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/Party"
},
"BillTo": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/Party"
},
"BuyerOrderId": {
"type": "string",
"description": "Buyer purchase order number/ID",
"maxLength": 25
},
"Supplier": {
"$ref": "common.json#/definitions/Party"
},
"TermsCode": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/TermsCode"
},
"TermsDays": {
"type": "integer",
"description": "Number of days for payment"
},
"TermsDate": {
"type": "string",
"description": "Date payment is due",
"format": "date"
},
"TermsPercent": {
"type": "number",
"description": "Percentage terms"
},
"TermsPercentDays": {
"type": "integer",
"description": "Number of days for percentage terms"
},
"ShipInstructions": {
"type": "string",
"maxLength": 250
},
"ShipTo": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/Party"
},
"TranspCode": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/TranspCode"
},
"TranspDesc": {
"type": "string",
"maxLength": 50
},
"TranspCarrier": {
"type": "string",
"description": "Transport carrier name",
"maxLength": 15
},
"TranspTime": {
"type": "integer",
"description": "Expected transport time"
},
"TranspTerms": {
"type": "string",
"description": "Transport terms"
},
"IncoTermsCode": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/IncoTermsCode"
},
"IncoTermsDesc": {
"type": "string",
"maxLength": 35
},
"DateOrdered": {
"type": "string",
"description": "Order date",
"format": "date"
},
"DateBeginShip": {
"type": "string",
"description": "Date to end shipment",
"format": "date"
},
"DateEndShip": {
"type": "string",
"description": "Date to end shipment",
"format": "date-time"
},
"DateCancel": {
"type": "string",
"description": "Date to cancel order if not shipped",
"format": "date-time"
},
"Backorder": {
"type": "string",
"description": "Allow backorder",
"enum": [
"Y",
"N"
]
},
"BuyerName": {
"type": "string",
"description": "Individual buyer name",
"maxLength": 35
},
"PORevisionNumber": {
"type": "integer",
"description": "Purchase Order revision number"
},
"POStatusIndicator": {
"type": "string",
"description": "New or Updated PO",
"enum": [
"N",
"U"
]
},
"ASNRequirement": {
"type": "string",
"description": "Require ASN",
"enum": [
"Y",
"N"
]
},
"POFileType": {
"type": "string",
"description": "Pre-accepted or Accepted PO",
"enum": [
"P",
"A"
]
}
},
"required": [
"SoldTo",
"BillTo",
"BuyerOrderId",
"Supplier",
"TermsCode",
"TranspCode",
"DateOrdered",
"Backorder",
"PORevisionNumber",
"POStatusIndicator",
"ASNRequirement",
"POFileType"
]
},
"PODetail": {
"type": "object",
"additionalProperties": false,
"properties": {
"Items": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": {
"not": {}
},
"properties": {
"POLineNbr": {
"type": "integer",
"description": "Purchase Order line number",
"minimum": 1
},
"BuyerItemId": {
"type": "string",
"description": "Buyer item ID",
"maxLength": 25
},
"BuyerItemDesc": {
"type": "string",
"description": "Buyer item description",
"maxLength": 50
},
"Qty": {
"type": "number"
},
"QtyUOM": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/QtyUOM"
},
"UCValue": {
"type": "number",
"description": "Unit cost value"
},
"UCCurrencyCode": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/CurrencyCode"
},
"RetailValue": {
"type": "number",
"description": "Retail value"
},
"RetailCurrencyCode": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/CurrencyCode"
},
"ICQtyPerUOM": {
"type": "number",
"description": "Inner Carton quantity per Unit of Measure"
},
"ICUOM": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/QtyUOM"
},
"MCQtyPerUOM": {
"type": "number",
"description": "Master Carton quantity per Unit of Measure"
},
"MCUOM": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/QtyUOM"
},
"SupplierItemId": {
"type": "string",
"description": "Supplier item ID",
"maxLength": 25
},
"BarCodeId": {
"type": "string",
"description": "Digital barcode representation",
"maxLength": 14
},
"BarCodeType": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/BarCodeType"
},
"DateBeginShip": {
"type": "string",
"description": "Item beginning shiping date",
"format": "date-time"
},
"DateEndShip": {
"type": "string",
"description": "Item end shipping date",
"format": "date-time"
},
"DateCancel": {
"type": "string",
"description": "Item cancel date",
"format": "date-time"
},
"TranspCode": {
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/TranspCode"
},
"ShipTo": {
"oneOf": [
{
"$ref": "https://standards.namm.org/schema/2020.1/common.json#/definitions/Party"
},
{
"type": "object",
"properties": {
"Name": {
"type": "string",
"maxLength": 35
},
"Address": {
"#ref": "https://standards.namm.org/schema/common.json#Address"
}
},
"required": [
"Address",
"Name"
]
}
]
}
},
"required": [
"POLineNbr",
"BuyerItemId",
"Qty",
"QtyUOM",
"UCValue",
"UCCurrencyCode",
"SupplierItemId",
"BarCodeId",
"BarCodeType"
]
}
}
}
}
},
"required": []
}