Purchase Order Acknowledgement Releases
POA · purchase-order-acknowledgement.schema.json · Versioned JSON Schema artifacts for this document. The latest version is expanded by default; older versions stay collapsed for quick inspection and download.
Back to Purchase Order Acknowledgement
1.0.13Latest/edi/contracts/releases/1.0.13/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.13/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.13",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.13",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"oneOf": [
{
"format": "date"
},
{
"format": "date-time"
}
],
"description": "Business order date (calendar day only, no time component). Transitionally also accepts the legacy date-time shape during rollout — see docs/adr/0001-timezone-policy.md.",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"oneOf": [
{
"format": "date"
},
{
"format": "date-time"
}
],
"description": "Expected delivery business date (calendar day only, no time component). Transitionally also accepts the legacy date-time shape during rollout — see docs/adr/0001-timezone-policy.md.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"subtotal": {
"type": "object",
"description": "Sum of confirmed line totals plus shipping, before tax",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 15
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 16
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 18
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 19
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 17
},
"lineTotalInclTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"oneOf": [
{
"format": "date"
},
{
"format": "date-time"
}
],
"description": "Expected or actual shipment date for this line (calendar day only, no time component). Transitionally also accepts the legacy date-time shape during rollout — see docs/adr/0001-timezone-policy.md.",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"oneOf": [
{
"format": "date"
},
{
"format": "date-time"
}
],
"description": "Expected delivery date for this line (calendar day only, no time component). Transitionally also accepts the legacy date-time shape during rollout — see docs/adr/0001-timezone-policy.md.",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 20
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 21
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.13",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"shipping": {
"amount": 10000,
"currency": "AUD"
},
"subtotal": {
"amount": 160000,
"currency": "AUD"
},
"tax": {
"amount": 16000,
"currency": "AUD"
},
"total": {
"amount": 176000,
"currency": "AUD"
},
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 10,
"confirmedQuantity": 10,
"unitOfMeasure": "EA",
"unitPrice": 1500000,
"currency": "AUD",
"lineTotalExTax": 150000,
"lineTotalInclTax": 165000
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.12/edi/contracts/releases/1.0.12/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.12/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.12",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.12",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"subtotal": {
"type": "object",
"description": "Sum of confirmed line totals plus shipping, before tax",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 15
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 16
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 18
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 19
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 17
},
"lineTotalInclTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 20
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 21
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.12",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"shipping": {
"amount": 10000,
"currency": "AUD"
},
"subtotal": {
"amount": 160000,
"currency": "AUD"
},
"tax": {
"amount": 16000,
"currency": "AUD"
},
"total": {
"amount": 176000,
"currency": "AUD"
},
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 10,
"confirmedQuantity": 10,
"unitOfMeasure": "EA",
"unitPrice": 1500000,
"currency": "AUD",
"lineTotalExTax": 150000,
"lineTotalInclTax": 165000
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.11/edi/contracts/releases/1.0.11/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.11/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.11",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.11",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"subtotal": {
"type": "object",
"description": "Sum of confirmed line totals plus shipping, before tax",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 15
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 16
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 18
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 19
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 17
},
"lineTotalInclTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 20
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 21
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.11",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 10,
"confirmedQuantity": 10,
"unitOfMeasure": "EA",
"unitPrice": 1500000,
"currency": "AUD",
"lineTotalExTax": 150000,
"lineTotalInclTax": 165000
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.9/edi/contracts/releases/1.0.9/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.9/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.9",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.9",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 17
},
"lineTotalInclTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.9",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 10,
"confirmedQuantity": 10,
"unitOfMeasure": "EA",
"unitPrice": 1500000,
"currency": "AUD",
"lineTotalExTax": 150000,
"lineTotalInclTax": 165000
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.8/edi/contracts/releases/1.0.8/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.8/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.8",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.8",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 17
},
"lineTotalInclTax": {
"description": "Integer amount in ISO 4217 minor units (e.g. AUD in cents, exponent 2: 561.02 -> 56102). Negative for credits or adjustments.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"description": "Integer unit price at ISO 4217 minor-unit scale + 2 (e.g. AUD, exponent 2 -> 1/10000: 5.2185 -> 52185). Carries sub-minor precision; not rounded to minor units.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.8",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 250000,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.7/edi/contracts/releases/1.0.7/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.7/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.7",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.7",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"description": "Settled monetary amount as an integer in ISO 4217 minor units. The minor-unit exponent is resolved from the in-scope `currency` via the DataShift currency registry (e.g. AUD has exponent 2 -> cents: 561.02 is encoded 56102; JPY exponent 0; KWD exponent 3). Negative values represent adjustments or credits. Never a fractional/decimal value.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"description": "Settled monetary amount as an integer in ISO 4217 minor units. The minor-unit exponent is resolved from the in-scope `currency` via the DataShift currency registry (e.g. AUD has exponent 2 -> cents: 561.02 is encoded 56102; JPY exponent 0; KWD exponent 3). Negative values represent adjustments or credits. Never a fractional/decimal value.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"description": "Settled monetary amount as an integer in ISO 4217 minor units. The minor-unit exponent is resolved from the in-scope `currency` via the DataShift currency registry (e.g. AUD has exponent 2 -> cents: 561.02 is encoded 56102; JPY exponent 0; KWD exponent 3). Negative values represent adjustments or credits. Never a fractional/decimal value.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"description": "Confirmed unit price (if different from order)",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"description": "Settled monetary amount as an integer in ISO 4217 minor units. The minor-unit exponent is resolved from the in-scope `currency` via the DataShift currency registry (e.g. AUD has exponent 2 -> cents: 561.02 is encoded 56102; JPY exponent 0; KWD exponent 3). Negative values represent adjustments or credits. Never a fractional/decimal value.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 17
},
"lineTotalInclTax": {
"description": "Settled monetary amount as an integer in ISO 4217 minor units. The minor-unit exponent is resolved from the in-scope `currency` via the DataShift currency registry (e.g. AUD has exponent 2 -> cents: 561.02 is encoded 56102; JPY exponent 0; KWD exponent 3). Negative values represent adjustments or credits. Never a fractional/decimal value.",
"type": "integer",
"x-datashift-money": "minor",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"description": "Unit price as an integer at the currency rate scale (minorUnitExponent + 2; e.g. AUD -> 1/10000: 5.2185 is encoded 52185). The scale is resolved from the in-scope `currency` via the DataShift currency registry. Unit prices legitimately carry sub-minor-unit precision and MUST NOT be rounded to minor units. Never a fractional/decimal value.",
"type": "integer",
"x-datashift-money": "rate",
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.7",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 250000,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.6/edi/contracts/releases/1.0.6/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.6/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.6",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"const": "1.0.6",
"description": "Canonical schema version used to create this document",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"const": "DataShift Edge v1",
"description": "DataShift Edge version that generated the canonical document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"description": "Confirmed unit price (if different from order)",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"type": "number",
"x-order": 17
},
"lineTotalInclTax": {
"type": "number",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.0.6",
"payloadId": "poa-example-10001",
"userAgent": "DataShift Edge v1"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 25,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.5/edi/contracts/releases/1.0.5/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.5/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.5",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"type": "string",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"type": "string",
"description": "System that generated the document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "DataShift-managed order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"default": "unknown",
"description": "Supplier-provided line acknowledgement intent. Defaults to unknown when omitted or blank.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"description": "Confirmed unit price (if different from order)",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"type": "number",
"x-order": 17
},
"lineTotalInclTax": {
"type": "number",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.2.067",
"payloadId": "poa-example-10001",
"userAgent": "Example Supplier Gateway"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 25,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.4/edi/contracts/releases/1.0.4/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.4/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.4",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"type": "string",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"type": "string",
"description": "System that generated the document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber",
"confirmationType"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "Order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"anyOf": [
{
"format": "email"
},
{
"const": ""
}
],
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"addressee",
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"addressee",
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber",
"supplierLineStatus"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"description": "Supplier-provided line acknowledgement intent.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"description": "Confirmed unit price (if different from order)",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"type": "number",
"x-order": 17
},
"lineTotalInclTax": {
"type": "number",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.2.067",
"payloadId": "poa-example-10001",
"userAgent": "Example Supplier Gateway"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 25,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.3/edi/contracts/releases/1.0.3/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.3/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.3",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"const": "POA",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"type": "string",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"type": "string",
"description": "System that generated the document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber",
"confirmationType"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"description": "Order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update",
"delete"
],
"default": "new",
"description": "Whether this creates, updates, or deletes a confirmation",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update/delete)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery business date-time. Valid ISO offsets are allowed.",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Commercial freight charges and instructions.",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 4
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 5
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 6
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 7
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"format": "email",
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"addressee",
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"title": "Address Definition",
"description": "Standard address structure for DataShift canonical documents",
"type": "object",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"addressee": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"type": "string",
"enum": [
"AU"
],
"x-order": 8
}
},
"required": [
"addressee",
"street1",
"city",
"state",
"postalCode",
"country"
],
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 1,
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"items": {
"type": "object",
"required": [
"lineNumber",
"supplierLineStatus"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender; use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"description": "Supplier-provided line acknowledgement intent.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"supplierItemAuxiliaryId": {
"type": "string",
"description": "Supplier's alternate/auxiliary part ID",
"x-order": 6
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 7
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 8
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 9
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 10
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 11
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 12
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 13
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"description": "Confirmed unit price (if different from order)",
"x-order": 14
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 15
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 16
},
"lineTotalExTax": {
"type": "number",
"x-order": 17
},
"lineTotalInclTax": {
"type": "number",
"x-order": 18
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 19
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 20
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 21
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 22
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 23
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 24
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 25
}
},
"additionalProperties": false
},
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.2.067",
"payloadId": "poa-example-10001",
"userAgent": "Example Supplier Gateway"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 25,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.2/edi/contracts/releases/1.0.2/schemas/purchase-order-acknowledgement.schema.json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.datashift.com.au/edi/contracts/releases/1.0.2/schemas/purchase-order-acknowledgement.schema.json",
"title": "Purchase Order Acknowledgement (POA) Canonical Schema",
"description": "Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.",
"version": "1.0.2",
"type": "object",
"required": [
"docType",
"correlationId",
"timestamp",
"metadata",
"data"
],
"properties": {
"docType": {
"type": "string",
"const": "POA",
"description": "Canonical document type. For purchase order acknowledgements this value is POA.",
"x-order": 1
},
"correlationId": {
"type": "string",
"format": "uuid",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Stable UUID used to trace this acknowledgement against the purchase order lifecycle.",
"x-order": 2
},
"timestamp": {
"type": "string",
"format": "date-time",
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "UTC timestamp indicating when DataShift created the canonical acknowledgement.",
"x-order": 3
},
"metadata": {
"type": "object",
"description": "Public source metadata retained for integration troubleshooting.",
"required": [
"sourceLanguage",
"sourceVersion",
"userAgent"
],
"properties": {
"sourceLanguage": {
"type": "string",
"enum": [
"json",
"cxml"
],
"x-order": 1
},
"sourceVersion": {
"type": "string",
"x-order": 2
},
"payloadId": {
"type": "string",
"description": "Original cXML payload ID",
"x-order": 3
},
"userAgent": {
"type": "string",
"description": "System that generated the document",
"x-order": 4
}
},
"additionalProperties": false,
"x-order": 4
},
"data": {
"type": "object",
"required": [
"poNumber",
"noticeDate",
"lineItems",
"poaNumber"
],
"properties": {
"poaNumber": {
"type": "string",
"description": "Supplier-assigned acknowledgement identifier used for duplicate detection and support references.",
"x-order": 1
},
"confirmationType": {
"type": "string",
"enum": [
"accept",
"reject",
"except",
"detail",
"backordered",
"allDetail",
"replace"
],
"x-datashift-managed": true,
"x-datashift-system": true,
"description": "Order-level acknowledgement outcome calculated from line-level status and tolerance validation.",
"x-enum-descriptions": {
"accept": "The order is accepted without exceptions.",
"reject": "The order is rejected.",
"except": "The order is accepted with exceptions.",
"detail": "The response contains line-level detail updates.",
"backordered": "The order or line is backordered.",
"allDetail": "Every line is acknowledged with detail.",
"replace": "This acknowledgement replaces an earlier acknowledgement."
},
"x-order": 2
},
"operation": {
"type": "string",
"enum": [
"new",
"update"
],
"default": "new",
"description": "Whether this is a new confirmation or an update to a previous one",
"x-order": 3
},
"noticeDate": {
"type": "string",
"format": "date-time",
"description": "Date and time the supplier created the acknowledgement.",
"x-order": 4
},
"poNumber": {
"type": "string",
"description": "Purchase order number being acknowledged.",
"x-order": 5
},
"poVersion": {
"type": "string",
"description": "Purchase order version being acknowledged.",
"x-order": 6
},
"orderReference": {
"type": "object",
"description": "Reference to the original purchase order document",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
},
"orderDate": {
"type": "string",
"format": "date-time",
"x-order": 3
}
},
"additionalProperties": false,
"x-order": 7
},
"documentReference": {
"type": "object",
"description": "Reference to previous confirmation (required for operation=update)",
"properties": {
"documentId": {
"type": "string",
"x-order": 1
},
"payloadId": {
"type": "string",
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 8
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date",
"x-order": 9
},
"dropship": {
"type": "boolean",
"description": "Indicates if this is a direct ship/dropship order",
"x-order": 10
},
"invoiceId": {
"type": "string",
"description": "Optional supplier-generated invoice ID associated with this confirmation",
"x-order": 11
},
"shipping": {
"type": "object",
"description": "Shipping cost and carrier details",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
},
"carrier": {
"type": "string",
"description": "Carrier name",
"x-order": 3
},
"charges": {
"type": "number",
"description": "Shipping charges",
"x-order": 4
},
"buyerAcctNumber": {
"type": "string",
"description": "Buyer's shipping account number",
"x-order": 5
},
"route": {
"type": "string",
"description": "Shipping route method",
"x-order": 6
},
"shippingInstructions": {
"type": "string",
"description": "Detailed shipping instructions",
"x-order": 7
},
"incoTerms": {
"type": "string",
"enum": [
"cfr",
"cif",
"cip",
"cpt",
"daf",
"dap",
"ddp",
"ddu",
"dpu",
"deq",
"des",
"exw",
"fas",
"fca",
"fob"
],
"description": "International Commercial Terms",
"x-order": 8
}
},
"additionalProperties": false,
"x-order": 12
},
"tax": {
"type": "object",
"description": "Tax adjustments from original order",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 13
},
"total": {
"type": "object",
"description": "Order total adjustments",
"properties": {
"amount": {
"type": "number",
"multipleOf": 0.01,
"x-order": 1
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 2
}
},
"additionalProperties": false,
"x-order": 14
},
"contacts": {
"type": "array",
"description": "Contact information for various roles",
"items": {
"type": "object",
"required": [
"role"
],
"properties": {
"role": {
"type": "string",
"enum": [
"shipFrom",
"shipTo",
"billTo",
"technicalSupport",
"customerService",
"sales",
"buyer"
],
"x-order": 1
},
"name": {
"type": "string",
"x-order": 2
},
"email": {
"type": "string",
"format": "email",
"x-order": 3
},
"phone": {
"type": "string",
"x-order": 4
}
},
"additionalProperties": false
},
"x-order": 15
},
"billTo": {
"type": "object",
"description": "Billing address",
"properties": {
"address": {
"type": "string",
"x-order": 1
},
"street1": {
"type": "string",
"x-order": 2
},
"street2": {
"type": "string",
"x-order": 3
},
"city": {
"type": "string",
"x-order": 4
},
"state": {
"type": "string",
"x-order": 5
},
"postalCode": {
"type": "string",
"x-order": 6
},
"country": {
"title": "Country Codes Enumeration",
"description": "ISO 3166-1 alpha-2 country codes supported by DataShift canonical documents",
"type": "string",
"enum": [
"AU"
],
"x-order": 7
},
"phone": {
"type": "string",
"x-order": 8
},
"email": {
"type": "string",
"x-order": 9
}
},
"additionalProperties": false,
"x-order": 16
},
"shipTo": {
"type": "object",
"description": "Shipping address",
"properties": {
"addressId": {
"type": "string",
"x-order": 1
},
"address": {
"type": "string",
"x-order": 2
},
"street1": {
"type": "string",
"x-order": 3
},
"street2": {
"type": "string",
"x-order": 4
},
"city": {
"type": "string",
"x-order": 5
},
"state": {
"type": "string",
"x-order": 6
},
"postalCode": {
"type": "string",
"x-order": 7
},
"country": {
"title": "Country Codes Enumeration",
"description": "ISO 3166-1 alpha-2 country codes supported by DataShift canonical documents",
"type": "string",
"enum": [
"AU"
],
"x-order": 8
},
"phone": {
"type": "string",
"x-order": 9
},
"email": {
"type": "string",
"x-order": 10
}
},
"additionalProperties": false,
"x-order": 17
},
"comments": {
"type": "string",
"maxLength": 2000,
"description": "Human-readable notes about this confirmation",
"x-order": 18
},
"lineItems": {
"type": "array",
"minItems": 0,
"items": {
"type": "object",
"required": [
"lineNumber"
],
"properties": {
"lineNumber": {
"type": "integer",
"description": "Line number from the original purchase order.",
"x-order": 1
},
"uniqueLineKey": {
"type": "string",
"description": "DataShift-managed stable line key from the original purchase order, used by internal connectors for cross-document correlation.",
"x-datashift-managed": true,
"x-order": 2
},
"statusType": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown",
"detail",
"allDetail"
],
"description": "System-calculated status based on tolerance validation. Not mappable by sender — use supplierLineStatus for sender intent.",
"x-datashift-managed": true,
"x-datashift-system": true,
"x-order": 3
},
"supplierLineStatus": {
"type": "string",
"enum": [
"accept",
"reject",
"backordered",
"unknown"
],
"description": "Supplier-provided line acknowledgement intent.",
"x-enum-descriptions": {
"accept": "The line is accepted.",
"reject": "The line is rejected.",
"backordered": "The line is backordered.",
"unknown": "The supplier cannot confirm the line status."
},
"x-order": 4
},
"supplierItemId": {
"type": "string",
"description": "Supplier's part/item number",
"x-order": 5
},
"buyerItemId": {
"type": "string",
"description": "Buyer's part/item number",
"x-order": 6
},
"gtin": {
"type": "string",
"pattern": "^[0-9]{8,14}$",
"description": "Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)",
"x-order": 7
},
"description": {
"type": "string",
"description": "Item description",
"x-order": 8
},
"originalQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity originally ordered",
"x-order": 9
},
"confirmedQuantity": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity the supplier confirms for this line.",
"x-order": 10
},
"quantityBackordered": {
"type": "number",
"multipleOf": 0.01,
"description": "Quantity backordered by the supplier",
"x-order": 11
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 12
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"description": "Confirmed unit price (if different from order)",
"x-order": 13
},
"currency": {
"title": "Currency Enumeration",
"description": "ISO 4217 currency codes supported by DataShift canonical schemas",
"type": "string",
"enum": [
"AUD"
],
"x-order": 14
},
"unitPriceUom": {
"type": "string",
"description": "Unit of measure for price basis (e.g., price per 100)",
"x-order": 15
},
"classificationDomain": {
"type": "string",
"description": "Product classification domain",
"x-order": 16
},
"classificationCode": {
"type": "string",
"description": "Product classification code",
"x-order": 17
},
"shipmentDate": {
"type": "string",
"format": "date-time",
"description": "Expected or actual shipment date for this line",
"x-order": 18
},
"deliveryDate": {
"type": "string",
"format": "date-time",
"description": "Expected delivery date for this line",
"x-order": 19
},
"rejectionReason": {
"type": "string",
"description": "Reason for rejection or backorder",
"x-order": 20
},
"substitution": {
"type": "object",
"description": "Substitute item details if supplier is offering an alternative",
"properties": {
"supplierItemId": {
"type": "string",
"x-order": 1
},
"buyerItemId": {
"type": "string",
"x-order": 2
},
"description": {
"type": "string",
"x-order": 3
},
"quantity": {
"type": "number",
"multipleOf": 0.01,
"x-order": 4
},
"unitOfMeasure": {
"title": "REC20 Unit of Measure Codes",
"description": "UN/ECE Recommendation 20 unit of measure codes for DataShift canonical documents",
"type": "string",
"enum": [
"AY",
"BG",
"BL",
"BR",
"BLL",
"E2",
"BO",
"BX",
"BJ",
"BE",
"KA",
"CA",
"CG",
"CT",
"CQ",
"CS",
"CMT",
"CL",
"CH",
"MTQ",
"CY",
"DAY",
"DC",
"DZN",
"DR",
"EA",
"FOT",
"GRM",
"HUR",
"CEN",
"INH",
"JR",
"KGM",
"KMT",
"KT",
"LN",
"LK",
"LTR",
"MTR",
"TNE",
"MLT",
"MMT",
"MON",
"PK",
"PD",
"PL",
"PR",
"D97",
"C62",
"PG",
"LBR",
"RL",
"RO",
"SA",
"SE",
"SET",
"ST",
"SO",
"MTK",
"U3",
"MIL",
"TU",
"WEE"
],
"x-order": 5
},
"unitPrice": {
"type": "number",
"multipleOf": 0.01,
"x-order": 6
}
},
"additionalProperties": false,
"x-order": 21
},
"comments": {
"type": "string",
"maxLength": 500,
"description": "Line-level comments",
"x-order": 22
}
},
"additionalProperties": false
},
"description": "Acknowledgement lines. DataShift manages uniqueLineKey correlation where needed.",
"x-order": 19
},
"extrinsics": {
"type": "object",
"description": "Partner-specific extension fields that are not part of the canonical core contract.",
"additionalProperties": {
"x-additionalPropertiesName": "extensionField",
"description": "Partner-specific extension value."
},
"x-order": 20
}
},
"additionalProperties": false,
"description": "Business payload for the acknowledgement.",
"x-order": 5
}
},
"additionalProperties": false,
"examples": [
{
"docType": "POA",
"correlationId": "347ed126-1456-4f0e-84f4-b16f018f6e61",
"timestamp": "2026-05-16T01:00:00Z",
"metadata": {
"sourceLanguage": "cxml",
"sourceVersion": "1.2.067",
"payloadId": "poa-example-10001",
"userAgent": "Example Supplier Gateway"
},
"data": {
"poaNumber": "POA-10001",
"confirmationType": "accept",
"noticeDate": "2026-05-16T01:00:00Z",
"poNumber": "PO-10001",
"poVersion": "1",
"deliveryDate": "2026-05-23T00:00:00Z",
"lineItems": [
{
"lineNumber": 1,
"uniqueLineKey": "PO-10001-1",
"supplierLineStatus": "accept",
"supplierItemId": "SUP-001",
"buyerItemId": "BUY-001",
"originalQuantity": 12,
"confirmedQuantity": 12,
"unitOfMeasure": "EA",
"unitPrice": 25,
"currency": "AUD"
}
],
"extrinsics": {
"supplierPortalReference": "ACK-7788"
}
}
}
]
}1.0.0/edi/contracts/releases/1.0.0/schemas/purchase-order-acknowledgement.schema.json
This historical schema is listed in the channel manifest, but its preview could not be loaded.