Common Use Cases for Acknowledge Purchase Order

Here's the common use cases for Acknowledge Purchase Order.

Common Use Cases

Description

Accept a Purchase Order

  • All lines of the order must be acknowledged.

  • The acknowledgment code values specified in the payload must be a value that's in the orderAccept acknowledgment code list.

Reject a Purchase Order

  • All lines of the order must be acknowledged.

  • The acknowledgment code value specified in the acknowledgment header must be a value that's in the orderReject acknowledgment code list.

  • The value specified for each line must be in the lineReject or ScheduleReject code list.

Acknowledge a Purchase Order, Accept, or Reject Each Line with No Changes

  • In a partially accepted purchase order, some lines are accepted and some are rejected.

  • The acknowledgment code value provided at the header level in the payload must be a value that's in the orderAccept acknowledgment code list.

  • Each accepted line must have an acknowledgment with an acknowledgment code that's in the lineAccept or scheduleAccept code lists.

  • Each rejected line must have an acknowledgment with an acknowledgment code that's in the lineReject or scheduleReject code lists.

Acknowledge a Purchase Order with Changes

  • The acknowledgment code value provided at the header level in the payload must be a value in the orderChange or orderAccept acknowledgment code list.

  • There must at least be one line with an acknowledgment having an acknowledgment code value that's a change, which is an acknowledgment code value in the lineChange, linePriceChange, lineItemChange, lineHoldChange, scheduleQuantityChange, scheduleBackOrderChange, scheduleRescheduleChange or schedulePartialBackOrder code lists.

  • An acknowledgment may communicate multiple changes. For example, a price change and a quantity change. Thus, each line can have multiple acknowledgments.

  • The change acknowledgment code values in the payload must exist in the lineChange, linePriceChange, lineItemChange, lineHoldChange, scheduleQuantityChange, scheduleBackOrderChange, scheduleRescheduleChange, schedulePartialBackOrder acknowledgment code lists.

Sample Payload

Here's a sample payload for accepting or rejecting a purchase order:

<n1:Lines>
   <n1:LineNumber>1</n1:LineNumber>
   <n1:SupplierItemNumber>594-379</n1:SupplierItemNumber>
   <n1:CustomerItemNumber>544-589</n1:CustomerItemNumber>
   <n1:OrderQuantity>10</n1:OrderQuantity>
   <n1:UnitOfMeasureCode>EA</n1:UnitOfMeasureCode>
   <n1:UnitPriceAmount>7</n1:UnitPriceAmount>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>ACCEPT</n1:AcknowledgmentCode>
   </n1:Acknowledgments>
</n1:Lines>
<n1:Lines>
   <n1:LineNumber>1</n1:LineNumber>
   <n1:SupplierItemNumber>594-379</n1:SupplierItemNumber>
   <n1:CustomerItemNumber>544-589</n1:CustomerItemNumber>
   <n1:OrderQuantity>10</n1:OrderQuantity>
   <n1:UnitOfMeasureCode>EA</n1:UnitOfMeasureCode>
   <n1:UnitPriceAmount>7</n1:UnitPriceAmount>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>REJECT</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Reject Reason</n1:AcknowledgmentReason>
   </n1:Acknowledgments>
</n1:Lines>
   

Line Change

You can use an acknowledgment with an acknowledgment code value in the lineChange code list to communicate a price change, part number correction, UOM change, quantity change or date change.

You must provide one of these values in the payload when the acknowledgment code value is in the lineChange code list, else the message is skipped:

  • UnitPriceAmount - If a non-negative numeric value is provided in the payload for a line change, the purchase order is updated.

  • SupplierItemNumber - When a SupplierItemNumber is provided in the payload for a line change, the flexfield (b2bAckReviewRequired) on the purchase order header is set to One or more lines have acknowledgment comments and SupplierItemNumber provided is mapped to the flexfield (b2bPartNumberCorrection) on the purchase order line.

  • UnitOfMeasureCode - When a UnitOfMeasure is provided in the payload for a line change, the flexfield (b2bAckReviewRequired) on the PO header is set to One or more lines have acknowledgment comments and the UnitOfMeasureCode provided in the payload is mapped to the flexfield (b2bUOMChange) on the PO line.

  • OrderQuantity - The purchase order is updated when positive decimal numbers are provided.

  • PromisedDate, PromisedShipDate, or PromisedDeliveryDate - The PromisedShipDate or PromisedDeliveryDate is updated when a date change is provided in the payload.

Note: The SupplierItemNumber and the UnitOfMeasureCode values don't update the purchase order. The data is mapped to flexfields as outlined below to make you aware of the requests.