DataShift Logo
POACanonical document

Purchase Order Acknowledgement

Root model
PurchaseOrderAcknowledgement
Schema version
1.3.0
Sections
4 contract parts

Overview

Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.

Endpoints

Use the schema endpoint for machine validation and the document page for implementation guidance.

GET

Download Purchase Order Acknowledgement schema

application/schema+jsonapplication/json
/schemas/v1/purchase-order-acknowledgement.schema.json

Purchase Order Acknowledgement JSON Schema

GET

Purchase Order Acknowledgement

text/html
/schemas/purchase-order-acknowledgement

Purchase Order Acknowledgement documentation page

Payload Structure

The contract is shown in reading order. The envelope identifies the document, metadata captures source context, and data contains the business payload and nested line structures.

Envelope

PurchaseOrderAcknowledgement
5 fields5 required

Public canonical Purchase Order Acknowledgement contract used by suppliers to accept, reject, backorder, or qualify purchase order lines.

docType
Required
object

Canonical document type. For purchase order acknowledgements this value is POA.

correlationId
Required
string (uuid)

Stable UUID used to trace this acknowledgement against the purchase order lifecycle.

timestamp
Required
string (date-time)

UTC timestamp indicating when DataShift created the canonical acknowledgement.

metadata
Required
PurchaseOrderAcknowledgementMetadata
data
Required
PurchaseOrderAcknowledgementData

Metadata

PurchaseOrderAcknowledgementMetadata
2 fields2 required

Public source metadata retained for integration troubleshooting.

sourceLanguage
Required
enum
jsoncxml
sourceVersion
Required
string

Data

PurchaseOrderAcknowledgementData
20 fields4 required

Business payload for the acknowledgement.

poaNumber
Required
string

Supplier-assigned acknowledgement identifier used for duplicate detection and support references.

confirmationType
enum

Order-level acknowledgement outcome calculated from line-level status and tolerance validation.

acceptrejectexceptdetailbackorderedallDetailreplace
operation
enum

Whether this is a new confirmation or an update to a previous one

newupdate
noticeDate
Required
string (date-time)

Date and time the supplier created the acknowledgement.

poNumber
Required
string

Purchase order number being acknowledged.

poVersion
string

Purchase order version being acknowledged.

orderReference
object

Reference to the original purchase order document

documentReference
object

Reference to previous confirmation (required for operation=update)

deliveryDate
string (date-time)

Expected delivery date

dropship
boolean

Indicates if this is a direct ship/dropship order

invoiceId
string

Optional supplier-generated invoice ID associated with this confirmation

shipping
object

Shipping cost and carrier details

tax
object

Tax adjustments from original order

total
object

Order total adjustments

contacts
object[]

Contact information for various roles

billTo
object

Billing address

shipTo
object

Shipping address

comments
string

Human-readable notes about this confirmation

lineItems
Required
PurchaseOrderAcknowledgementLineItem[]

Acknowledgement lines. Each line should correlate to the original PO line using uniqueLineKey where available.

extrinsics
object

Partner-specific extension fields that are not part of the canonical core contract.

Line Responses

PurchaseOrderAcknowledgementLineItem
22 fields1 required
lineNumber
Required
integer

Line number from the original purchase order.

uniqueLineKey
string

Stable DataShift line key from the original purchase order. This must reference the original line's uniqueLineKey found in the PurchaseOrder document for proper correlation. If the original document did not provide a uniqueLineKey, an exception will be raised during processing, forcing the user to manually correlate the line or update the acknowledgement with the correct uniqueLineKey.

statusType
enum

System-calculated status based on tolerance validation. Not mappable by sender — use supplierLineStatus for sender intent.

acceptrejectbackorderedunknowndetailallDetail
supplierLineStatus
enum

Supplier-provided line acknowledgement intent.

acceptrejectbackorderedunknown
supplierItemId
string

Supplier's part/item number

buyerItemId
string

Buyer's part/item number

gtin
string

Global Trade Item Number (GTIN-8, GTIN-12, GTIN-13, or GTIN-14)

description
string

Item description

originalQuantity
number

Quantity originally ordered

confirmedQuantity
number

Quantity the supplier confirms for this line.

quantityBackordered
number

Quantity backordered by the supplier

unitOfMeasure
object

See public DataShift EDI documentation for allowed values.

unitPrice
number

Confirmed unit price (if different from order)

currency
object

See public DataShift EDI documentation for allowed values.

unitPriceUom
string

Unit of measure for price basis (e.g., price per 100)

classificationDomain
string

Product classification domain

classificationCode
string

Product classification code

shipmentDate
string (date-time)

Expected or actual shipment date for this line

deliveryDate
string (date-time)

Expected delivery date for this line

rejectionReason
string

Reason for rejection or backorder

substitution
object

Substitute item details if supplier is offering an alternative

comments
string

Line-level comments