Skip to main content

Acknowledgements

REST Endpoints

POST /order/:orderId/acknowledge

Behavior by Order Type

Standard orders (STANDARD, HOLD_FOR_RELEASE):

  • The order must be in OPEN state.
  • MAJOR-only fields (area, designationType, isLot, productCategory, sellerMetadata) are not allowed and will return an error if provided.

Major orders (MAJOR):

  • The order must be in OPEN state.
  • MAJOR-only fields (area, designationType, isLot, productCategory, sellerMetadata) are allowed.

Error Cases

ScenarioError Code
Invalid acknowledgement items dataINTEGRATION_API_CREATE_ORDER_ACKNOWLEDGEMENT_INVALID_ACKNOWLEDGEMENT_ITEMS
Order not foundINTEGRATION_API_ORDER_NOT_FOUND
MAJOR order not in OPEN stateINTEGRATION_API_CREATE_ORDER_ACKNOWLEDGEMENT_INVALID_ORDER_STATE
MAJOR-only fields used on non-MAJOR orderINTEGRATION_API_CREATE_ORDER_ACKNOWLEDGEMENT_MAJOR_ONLY_FIELDS

Parameters

NameTypeDescriptionExample
orderId (in url)IDThe ID of the order to which the acknowledgement corresponds"ckmnpybisiy5x08abky4g2d1f"
acknowledgementItemsAcknowledgementItem[]An array of acknowledgementItems to be applied to the order's line itemsSee schema definition below

Acknowledgement Items

Each item on the acknowledgement should have the structure below.

NameTypeDescriptionExample
backorderLeadTimestring?If an item is backordered, the expected lead time2 days
backorderQuantityinteger?If an item is backordered, the quantity backordered5
descriptionstring?A description of the item12 gauge black THHN
expectedDeliveryTimestring?The expected item delivery date20251220
extPriceFloatfloat?The subtotal of the item4.50
itemIdID?The item's kojo idcl70xmen80002oodabq9syjlq
lineNumberinteger?The item's purchase order line number1
manufacturerstring?The manufacturer name for the item"Acme Corp"
manufacturerPartNumberstring?The manufacturer part number for the item"MPN-456"
quantityinteger?The quantity of the item3
unitPriceECMstring?Multiplier used to calculate the extended price from the unit price. Must be either E, C, or M. Defaults to E."E"
unitPriceFloatfloat?The unit price of the item1.50
unitsOfMeasurestringThe item's unit of measureFT
universalProductCodestring?The items UPCFT
vendorPartNumberstring?Your company's SKU for the itemFT
areastring?⚠️ Major orders only The area or zone for the item"Zone A"
designationTypestring?⚠️ Major orders only The designation type for the item"Electrical"
isLotboolean?⚠️ Major orders only Whether this item is a lot item. Defaults to false.true
productCategorystring?⚠️ Major orders only The product category for the item"Wire & Cable"
sellerMetadataobject?⚠️ Major orders only Optional metadata object for seller-side item tracking. See Seller Metadata.{"itemId": "S-100"}

Seller Metadata

The sellerMetadata object can contain arbitrary key-value pairs. The following properties have special meaning for establishing parent/child item relationships on MAJOR orders:

NameTypeDescription
itemIdstring?A seller-side identifier for this item. Other items can reference this value via parentItemId to create a parent/child hierarchy.
parentItemIdstring?References another item's sellerMetadata.itemId within the same acknowledgement, indicating that this item is a child of that parent item.

When both itemId and parentItemId are provided across acknowledgement items, the system will automatically set the parentItemId on the corresponding order items after they are created. Self-references (where itemId equals parentItemId) are ignored.

Response

The created Acknowledgement object with the following fields:

NameTypeDescription
idIDThe acknowledgement ID
buyerIdIDThe buyer organization ID
createdAtstringISO 8601 timestamp of creation
orderIdIDThe associated order ID
acknowledgementItemsAcknowledgementItem[]The created acknowledgement items

Each acknowledgement item in the response includes an itemId field. For MAJOR orders (where items are auto-applied), this will be the ID of the newly created order item. For other orders, this reflects the itemId provided in the request, or null if none was provided.

Example Request

POST https://api.kojo.tech/seller/order/cl5vad0wh0315m5lgqvsimj3k/acknowledge
{
"acknowledgementItems": [
{
"itemId": "cl70xmen80002oodabq9syjlq",
"lineNumber": 1,
"unitPriceFloat": 100.05,
"quantity": 2,
"expectedDeliveryTime": "20260120",
"extPriceFloat": 200.10,
"description": "6 Strand Copper Wire Soft Drawn 315'",
"manufacturer": "Southwire",
"unitsOfMeasure": "FT",
"sellerMetadata": {
"itemId": "S-100"
}
},
{
"itemId": "cl70xmen80003ooda4hv3my6j",
"lineNumber": 2,
"unitPriceFloat": 43.33,
"quantity": 1,
"extPriceFloat": 44.33,
"description": "8 AWG THHN Stranded Copper, Green, 500'",
"manufacturer": "Cerrowire",
"unitsOfMeasure": "FT",
"sellerMetadata": {
"itemId": "S-200",
"parentItemId": "S-100"
}
}
]
}

Example Response

{
"id": "cl5vad0wh0315m5lgqvsimj3k",
"buyerId": "cl5vad0wh0315m5lgqvsimj37",
"createdAt": "2024-05-03T16:22:32.869Z",
"orderId": "clvphf6dz022c4wu4l15giyw3",
"acknowledgementItems": [
{
"itemId": "cl70xmen80002oodabq9syjlq",
"lineNumber": 1,
"unitPriceFloat": 100.05,
"quantity": 2,
"expectedDeliveryTime": "2026-01-20T00:00:00.000Z",
"extPriceFloat": 200.10,
"description": "6 Strand Copper Wire Soft Drawn 315'",
"unitsOfMeasure": "FT"
},
{
"itemId": "cl70xmen80003ooda4hv3my6j",
"lineNumber": 2,
"unitPriceFloat": 43.33,
"quantity": 1,
"expectedDeliveryTime": null,
"extPriceFloat": 44.33,
"description": "8 AWG THHN Stranded Copper, Green, 500'",
"unitsOfMeasure": "FT"
}
]
}