Partial Backorder

A supplier may not be able to deliver the ordered quantity on a purchase order line on the date requested and may deliver the quantity across different dates. In such cases, the order line acknowledgment indicates a partial backorder.

There are different ways in which a partial backorder is communicated in a purchase order acknowledgment.

  • If there is only a single acknowledgment for the line, then the acknowledgment code value in the acknowledgment may be a partial backorder code or a backorder code.

    • Option 1: A partial backorder code is used to communicate a partial backorder. The partially backordered quantity is the difference between the line quantity and the quantity in the acknowledgment. The quantity in the acknowledgment is processed as the accepted quantity.

    • Option 2: A backorder code is used to communicate a partial backorder. The quantity in the acknowledgment is the partially backordered quantity. The accepted quantity is the difference between the line quantity and the quantity in the acknowledgment.

    • Option 3: A partial backorder can be communicated using two acknowledgments for a line. While one acknowledgment indicates the partially backordered quantity (with a backorder code), the other acknowledgment indicates the accepted quantity (with an accept code).

    • Option 4: A partial backorder can be communicated using two acknowledgments for a line. While one acknowledgment indicates the partially backordered quantity (with a backorder code), the other acknowledgment indicates the accepted quantity (with a partial backorder code).

Single Acknowledgment with a Partial Backorder Code

A single acknowledgment for the line with an acknowledgment code value is present in the schedulePartialBackOrder code list. The acknowledgment must also contain the OrderQuantity and one of the date fields (PromisedDate, PromisedShipDate, PromisedDeliveryDate).

The data for a single acknowledgment with a partial backorder code option is mapped in this table.

changePurchaseOrder

ORACLE_1.0_B2B_PURCHASE_ORDER_ACKNOWLEDGMENT_IN

OrderNumber

B2BPurchaseOrderAcknowledgment/OrderNumber

SoldToLegalEntityId

Note: This is populated during processing.

B2BPurchaseOrderAcknowledgment/AcknowledgmentCode

Note: This value needs to be in the orderAccept or orderChange code list, it's used for processing.

ChangeOrderDescription

Note: If the AcknowledgmentReason isn't provided in the payload, then it will be set to Change to the Order.

B2BPurchaseOrderAcknowledgment/AcknowledgmentReason

SupplierOrderNumber

B2BPurchaseOrderAcknowledgment/SupplierOrderNumber

ChangeOrderInitiatingParty

Note: Set to Supplier.

N/A

PurchaseOrderEntryLine

LineNumber

B2BPurchaseOrderAcknowledgment/Lines/LineNumber

ChangeReason

Note: If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the schedulePartialBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/PurchaseOrderEntrySchedule

Note: A schedule is created.

N/A

ScheduleNumber

Note: This is autogenerated.

N/A

Quantity

Note: The value for order quantity provided in the payload must be equal to the quantity specified on the purchase order line.

B2BPurchaseOrderAcknowledgment/Lines/OrderQuantity

ChangeReason

Note: If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the schedulePartialBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/LineFlexfield

b2bBackOrderStatusFlexfield

Note: This flexfield is set to PARTIAL BACKORDER when the acknowledgment code value is in the schedulePartialBackOrder code.

N/A

b2bPartialBackOrderQuantity

Note: This flexfield is calculated by subtracting the OrderQuantity on the acknowledgment from the OrderQuantity on the purchase order line.

N/A

b2bAcceptOrderQuantity

Note: This is a flexfield.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/OrderQuantity

b2bBackOrderDate

Note: This flexfield will be populated if PromisedDeliveryDate, PromisedShipDate, or PromisedDate is provided, else this field is set to No Date Provided.

One of these must be provided in the payload:

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDeliveryDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedShipDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDate

HeaderFlexfield

b2bAckReviewRequired

Note: If the acknowledgment code value is in the schedulePartialBackOrder code list, then this flexfield is set to One or more lines have acknowledgment comments.

N/A

Here's a sample payload for this option:

<n1:Lines>
   <n1:LineNumber>1</n1:LineNumber>
   <n1:SupplierItemNumber>2D72PT65X</n1:SupplierItemNumber>
   <n1:CustomerItemNumber>1087162</n1:CustomerItemNumber>
   <n1:OrderQuantity>5.0</n1:OrderQuantity>
   <n1:UnitOfMeasureCode>BX</n1:UnitOfMeasureCode>
   <n1:UnitPriceAmount>69.75</n1:UnitPriceAmount>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>PARTIALBACKORDER</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Line 1-Partial Backorder</n1:AcknowledgmentReason><!--This value will be populated in the Change Reason field-->
      <n1:OrderQuantity>1.0</n1:OrderQuantity><!--This quantity is mapped to the B2B Accepted Qty DFF. The remnant is the backorder quantity-->
      <n1:PromisedDate>2026-11-17T09:30:47Z</n1:PromisedDate><!--This value will be populated in the Promised Delivery/Ship Date field under the Schedules and in the B2B Backorder Date DFF-->
   </n1:Acknowledgments>
</n1:Lines>

Single Acknowledgment with a Backorder Code

A single acknowledgment for the line with an acknowledgment code value is present in the scheduleBackOrderChange code list. The acknowledgment must also contain the OrderQuantity and one of the date fields (PromisedDate, PromisedShipDate, PromisedDeliveryDate).

The data for a single acknowledgment with a backorder code option is mapped in this table.

changePurchaseOrder

ORACLE_1.0_B2B_PURCHASE_ORDER_ACKNOWLEDGMENT_IN

OrderNumber

B2BPurchaseOrderAcknowledgment/OrderNumber

SoldToLegalEntityId

Note: This is populated during processing.

N/A

B2BPurchaseOrderAcknowledgment/AcknowledgmentCode

Note: This value needs to be in the orderAccept or orderChange code list. It's used for processing.

ChangeOrderDescription

Note: If the AcknowledgmentReason isn't provided in the payload, then it will be set to Change to the Order.

B2BPurchaseOrderAcknowledgment/AcknowledgmentReason

SupplierOrderNumber

B2BPurchaseOrderAcknowledgment/SupplierOrderNumber

ChangeOrderInitiatingParty

Note: Set to SUPPLIER.

N/A

PurchaseOrderEntryLine

LineNumber

B2BPurchaseOrderAcknowledgment/Lines/LineNumber

ChangeReason

Note: If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the scheduleBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/PurchaseOrderEntrySchedule

Note: A schedule is autocreated.

N/A

ScheduleNumber

Note: This is autogenerated.

N/A

Quantity

Note: The value must be equal to the quantity of the purchase order for the given line.

B2BPurchaseOrderAcknowledgment/Lines/OrderQuantity

ChangeReason

Note: If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the scheduleBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/LineFlexfield

b2bBackOrderStatus

Note: This flexfield is set to PARTIAL BACKORDER when the acknowledgment code value is in the scheduleBackOrder code list.

N/A

b2bPartialBackOrderQuantity

Note: The OrderQuantity value provided is mapped to this flexfield when the acknowledgment code value is in the scheduleBackOrder code list.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/OrderQuantity

b2bAcceptOrderQuantity

Note: This flexfield is the calculated result of the OrderQuantity on the purchase order line less the OrderQuantity on the purchase order acknowledgment.

N/A

b2bBackOrderDate

Note: This flexfield will be populated if PromisedDeliveryDate, PromisedShipDate, or PromisedDate is provided, else this field is set to No Date provided.

One of these values may be passed in the payload:

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDeliveryDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedShipDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDate

HeaderFlexfield

b2bAckReviewRequired

Note: If the acknowledgment code value is in the scheduleBackOrder code list, then this flexfield is set to One or more lines have acknowledgment comments.

N/A

Here's a sample payload for this option:

<n1:Lines>
   <n1:LineNumber>1</n1:LineNumber>
   <n1:SupplierItemNumber>594-379</n1:SupplierItemNumber>
   <n1:CustomerItemNumber>544-589</n1:CustomerItemNumber>
   <n1:OrderQuantity>5</n1:OrderQuantity>
   <n1:UnitOfMeasureCode>EA</n1:UnitOfMeasureCode>
   <n1:UnitPriceAmount>7</n1:UnitPriceAmount>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>BACKORDER</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Line 1-Partial Backorder</n1:AcknowledgmentReason><!--This value will be populated in the Change Reason field-->
      <n1:OrderQuantity>2</n1:OrderQuantity><!--This value will be populated in the B2B Partial Backorder Quantity DFF. The remnant is the accepted quantity-->
      <n1:PromisedDate></n1:PromisedDate><!--"No Date provided." will be populated in the B2B Backorder Date DFF since no date is passed here-->
   </n1:Acknowledgments>
</n1:Lines>

One Acknowledgment with a Backorder Code and Another Acknowledgment with an Accept Code

There are two acknowledgments present for the line, one with an acknowledgment code value in the scheduleBackOrderChange code list and the other with an acknowledgment code value in the lineAccept or scheduleAccept code lists. The OrderQuantity on the purchase order line is computed by adding the OrderQuantities from the two acknowledgments.

The data for an acknowledgment with a backorder Code and another acknowledgment with an accept code option is mapped in this table.

changePurchaseOrder

ORACLE_1.0_B2B_PURCHASE_ORDER_ACKNOWLEDGMENT_IN

OrderNumber

B2BPurchaseOrderAcknowledgment/OrderNumber

SoldToLegalEntityId

Note: This is populated during processing.

B2BPurchaseOrderAcknowledgment/AcknowledgmentCode

Note: This value needs to be in the orderAccept or orderChange code list, it's used for processing

ChangeOrderDescription

Note: If the AcknowledgmentReason isn't provided in the payload, then it will be set to Change to the Order.

B2BPurchaseOrderAcknowledgment/AcknowledgmentReason

SupplierOrderNumber

B2BPurchaseOrderAcknowledgment/SupplierOrderNumber

ChangeOrderInitiatingParty

Note: Set to SUPPLIER.

N/A

PurchaseOrderEntryLine

LineNumber

B2BPurchaseOrderAcknowledgment/Lines/LineNumber

ChangeReason

Note: If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the scheduleBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/PurchaseOrderEntrySchedule

Note: A schedule is autogenerated.

N/A

ScheduleNumber

Note: Autogenerated.

N/A

Quantity

Note: This value is calculated as the sum of the OrderQuantity in the acknowledgment with the acknowledgment code in the scheduleBackOrder code list and the OrderQuantity in the acknowledgment with the acknowledgment code in the lineAccept or scheduleAccept code lists.

N/A

ChangeReason

Note: If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the scheduleBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/LineFlexfield

b2bBackOrderStatus

Note: This flexfield is set to PARTIAL BACKORDER when the acknowledgment code value is in the scheduleBackOrder code list.

N/A

b2bPartialBackOrderQuantity

Note: This flexfield is populated with the OrderQuantity value provided in the acknowledgment with the AcknowledgmentCode value in the scheduleBackOrder code list.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments[1]/OrderQuantity

b2bAcceptOrderQuantity

Note: This flexfield is populated with the OrderQuantity value provided in the acknowledgment with the AcknowledgmentCode value in the lineAccept or scheduleAccept code lists.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments[2]/OrderQuantity

b2bBackOrderDate

Note: This flexfield will be populated if PromisedDeliveryDate, or PromisedShipDate, or PromisedDate is provided, otherwise if no the value is provided, this field is set to No Date provided.

One of these values may be passed in the payload:

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDeliveryDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedShipDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDate

HeaderFlexfield

b2bAckReviewRequired

Note: If the acknowledgment code value is in the schedulePartialBackOrder code list, then this flexfield is set to One or more lines have acknowledgment comments.

N/A

Here's a sample payload for this option:

<n1:Lines>
   <n1:LineNumber>1</n1:LineNumber>
   <n1:SupplierItemNumber>M1528-3</n1:SupplierItemNumber>
   <n1:CustomerItemNumber>1003243</n1:CustomerItemNumber>
   <n1:OrderQuantity>7.0</n1:OrderQuantity>
   <n1:UnitOfMeasureCode>RL</n1:UnitOfMeasureCode>
   <n1:UnitPriceAmount>2.92</n1:UnitPriceAmount>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>BACKORDER</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Line 1-PartialBackorder Quantity and Date</n1:AcknowledgmentReason><!--This value will be populated in the Change Reason field-->
      <n1:OrderQuantity>2.0</n1:OrderQuantity><!--This OrderQuantity and the OrderQuantity under ACCEPT should be equal to the PO line quantity. This value will be populated in the B2B Partial Backorder Quantity DFF-->
      <n1:PromisedDate>2025-11-17T09:30:47Z</n1:PromisedDate><!--This value will be populated in the B2B Backorder Date DFF-->
   </n1:Acknowledgments>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>ACCEPT</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Line 1-Accepted Quantity</n1:AcknowledgmentReason><!--This value will be populated in the Change Reason field-->
      <n1:OrderQuantity>3.0</n1:OrderQuantity><!--This value will be populated in the B2B Accepted Quantity DFF-->
   </n1:Acknowledgments>
</n1:Lines>

One Acknowledgment with a Backorder Code and Another Acknowledgment with a Partial Backorder Code

There are two acknowledgments present for the line, one with a backorder code and another with a partial backorder code.

The data for an acknowledgment with a backorder code and another acknowledgment with an partial backorder code option is mapped in this table.

changePurchaseOrder

ORACLE_1.0_B2B_PURCHASE_ORDER_ACKNOWLEDGMENT_IN

OrderNumber

B2BPurchaseOrderAcknowledgment/OrderNumber

SoldToLegalEntityId

Note: This is populated during processing.

B2BPurchaseOrderAcknowledgment/AcknowledgmentCode

Note: This value needs to be in the orderAccept or orderChange code list, it's used for processing

ChangeOrderDescription

Note: If the AcknowledgmentReason isn't provided in the payload, then it will be set to Change to the Order.

B2BPurchaseOrderAcknowledgment/AcknowledgmentReason

SupplierOrderNumber

B2BPurchaseOrderAcknowledgment/SupplierOrderNumber

ChangeOrderInitiatingParty

Note: Set to SUPPLIER.

N/A

PurchaseOrderEntryLine

LineNumber

B2BPurchaseOrderAcknowledgment/Lines/LineNumber

ChangeReason

Note: This field displays the concatenation of the AcknowledgmentReason in the acknowledgment with the acknowledgment code in the scheduleBackOrder code list, and the AcknowledgmentReason in the acknowledgment with the acknowledgment code in the schedulePartialBackOrder code list.If the AcknowledgmentReason in either scheduleBackOrder or schedulePartialBackOrder is not provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the scheduleBackOrder and the schedulePartialBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/PurchaseOrderEntrySchedule

Note: A schedule is autogenerated.

N/A

ScheduleNumber

Note: Autogenerated.

N/A

Quantity

Note: This value is calculated as the sum of the OrderQuantity in the acknowledgment with the acknowledgment code in the scheduleBackOrder code list and the OrderQuantity in the acknowledgment with the acknowledgment code in the schedulePartialBackOrder code list.

N/A

ChangeReason

Note: This field displays the AcknowledgmentReason in the acknowledgment with the acknowledgment code in the schedulePartialBackOrder code list. If AcknowledgmentReason isn't provided in the payload, then this is set to Not Provided.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentReason

Action

Note: When the AcknowledgmentCode is in the scheduleBackOrder and the schedulePartialBackOrder code list, this is set to CHANGE.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/AcknowledgmentCode

PurchaseOrderEntryLine/LineFlexfield

b2bBackOrderStatus

Note: This flexfield is set to PARTIAL BACKORDER when the acknowledgment code value is in the scheduleBackOrder code list.

N/A

b2bPartialBackOrderQuantity

Note: This flexfield is populated with the OrderQuantity value provided in the acknowledgment with the AcknowledgmentCode value in the scheduleBackOrder code list.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments[1]/OrderQuantity

b2bAcceptOrderQuantity

Note: This flexfield is populated with the OrderQuantity value provided in the acknowledgment with the AcknowledgmentCode value in the schedulePartialBackOrder code list.

B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments[2]/OrderQuantity

b2bBackOrderDate

Note: This flexfield is populated if PromisedDeliveryDate, or PromisedShipDate, or PromisedDate is provided in the acknowledgment with the AcknowledgmentCode value in the scheduleBackOrder code list.When no value is provided, this flexfield is populated if PromisedDeliveryDate, or PromisedShipDate, or PromisedDate is provided in the acknowledgment with the AcknowledgmentCode value in the schedulePartialBackOrder code list. If no value is provided, then the value in the scheduleBackOrder or schedulePartialBackOrder is used and this field is set to No Date Provided.

One of these values may be passed in the payload:

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDeliveryDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedShipDate

  • B2BPurchaseOrderAcknowledgment/Lines/Acknowledgments/PromisedDate

HeaderFlexfield

b2bAckReviewRequired

Note: If the acknowledgment code value is in the schedulePartialBackOrder code list, then this flexfield is set to One or more lines have acknowledgment comments.

N/A

Here's a sample payload for this option:

<n1:Lines>
   <n1:LineNumber>1</n1:LineNumber>
   <n1:SupplierItemNumber>M1528-3</n1:SupplierItemNumber>
   <n1:CustomerItemNumber>1003243</n1:CustomerItemNumber>
   <n1:OrderQuantity>7.0</n1:OrderQuantity>
   <n1:UnitOfMeasureCode>RL</n1:UnitOfMeasureCode>
   <n1:UnitPriceAmount>2.92</n1:UnitPriceAmount>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>BACKORDER</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Line 1-PartialBackorder Quantity and Date</n1:AcknowledgmentReason><!--This value will be populated in the Change Reason field-->
      <n1:OrderQuantity>2.0</n1:OrderQuantity><!--This OrderQuantity and the OrderQuantity under PARTIAL BACKORDER should be equal to the PO line quantity. This value will be populated in the B2B Partial Backorder Quantity DFF-->
      <n1:PromisedDate>2025-11-17T09:30:47Z</n1:PromisedDate><!--This value will be populated in the B2B Backorder Date DFF-->
   </n1:Acknowledgments>
   <n1:Acknowledgments>
      <n1:AcknowledgmentCode>ACCEPT</n1:AcknowledgmentCode>
      <n1:AcknowledgmentReason>Line 1-Accepted Quantity</n1:AcknowledgmentReason><!--This value will be populated in the Change Reason field-->
      <n1:OrderQuantity>3.0</n1:OrderQuantity><!--This value will be populated in the B2B Accepted Quantity DFF-->
      <n1:PromisedDate>2022-11-17T09:30:47Z</n1:PromisedDate>
   </n1:Acknowledgments>
</n1:Lines>