This API will call the POS system with sales order details after the order completion.
Postings can be sent on below events
SUBORDER_CREATESUBORDER_CANCELSUBORDER_COMPLETESUBORDER_PARTIAL_CANCELSUBORDER_PROPERTIES_UPDATE{
"locationCode": "IN132",
"messageId": 12345,
"orderCode": "flipkart1234",
"omsSubOrderId": 19011046,
"parentOrderCode": "flipkart1221",
"orderTime": "2020-10-16T20:22:28.000+00:00",
"orderType": "SO/STO/RTV",
"paymentMethod": "COD",
"turnAroundTime": "2024-06-28T08:30:00.000+00:00",
"shipments": [
{
"shipmentCode": "7982354179",
"locationCode": "DLLJPT06",
"shipmentStatus": "DISPATCHED",
"generatedInvoiceId": "17531870",
"generatedInvoiceDate": "2024-06-26T08:22:53.000+00:00",
"omsShipmentId": null,
"invoiceDocumentUrl": "<https://mybrand.com/invoice123.pdf>",
"irn": null,
"qrCode": null,
"shippingLabelDocumentUrl": "<https://mybrand.com/sldoc.pdf>",
"externalInvoiceId": "I0725ZP000000647",
"externalInvoiceDate": "2024-06-26T08:22:41.000+00:00",
"awbNumber": "awb1",
"transporter": "Myntra Logistics",
"packageSku": "packageSku1",
"shipmentItems": [
{
"orderItemCode": "9982333122",
"channelSkuCode": "35255XXL",
"netTaxAmountPerUnit": 353.46,
"netTaxAmountTotal": 353.46,
"baseSellingPricePerUnit": 2945.54,
"baseSellingPriceTotal": 2945.54,
"sellingPricePerUnit": 3299,
"sellingPriceTotal": 3299,
"quantity": 1,
"shippingChargePerUnit": 10,
"taxItems": [
{
"type": "IGST",
"rate": 12,
"taxPerUnit": 353.46,
"taxTotal": 353.46
}
],
"barcode": "35255XXL",
"clientSkuCode": "ClientSku1",
"batchDetails": [
{
"batchId": 567,
"batchCode": "EXT-BATCH-001",
"manufacturingDate": "2026-01-01",
"expiryDate": "2027-01-01",
"mrp": 299.99,
"quantity": 30,
"supplierCode": "SUPPLIER001"
},
{
"batchId": 67,
"batchCode": "EXT-BATCH-002",
"manufacturingDate": "2026-01-15",
"expiryDate": "2027-01-15",
"mrp": 319.99,
"quantity": 20,
"supplierCode": "SUPPLIER001"
}
]
}
],
"shipmentDetails": {
"length": 30,
"breadth": 20,
"height": 10,
"weight": 5,
"shipmentId": 12345,
"totalItemQuantity": 50,
"packboxDetailsList": [
{
"length": 15,
"breadth": 10,
"height": 8,
"weight": 2,
"boxId": 1,
"awbNumber": "AWB123",
"packBoxRemarks": "Fragile items",
"skuQuantityDataList": [
{
"globalSkuId": 987,
"clientSkuId": "SKU001",
"count": 10
},
{
"globalSkuId": 876,
"clientSkuId": "SKU002",
"count": 15
}
]
}
]
},
"deliveredAt": null
}
],
"isPriority": false,
"channelName": "flipkart",
"channelType": "ERP/MARKETPLACE",
"eventType": "SUBORDER_COMPLETE",
"eventTime": "2020-10-16T20:22:28.000+00:00",
"shippingCharges": 20,
"orderCustomAttributes": {
"attribute1": "test_4e10f67e0585",
"attribute10": "test_e3af29b52cda",
"attribute2": "test_df7f45161dbf",
"attribute3": "test_511554245071",
"attribute4": "test_285ab90a9a26",
"attribute5": "test_c9902353bd62",
"attribute6": "test_29bf877ad20e",
"attribute7": "test_f05c5ee7bda0",
"attribute9": "test_913b35f805f0",
"channelMetadata": {
"MetaDataTestExample1": "test_13669a9d0d24",
"MetaDataTestExample2": "test_13669a9d0d25"
},
"currency": "test_ad35da54ae2f"
},
"virtualSkuDefinitions": [
{
"virtualParentChannelSkuId": "abc1",
"virtualParentBarcode": "barcode1",
"virtualParentClientSkuCode": "VPClientSku1",
"childSkus": [
{
"channelSkuCode": "xyz",
"qty": 2,
"barcode": "bar1",
"clientSkuCode": "ClientSku1"
},
{
"channelSkuCode": "xyz1",
"qty": 1,
"barcode": "bar2",
"clientSkuCode": null
}
]
}
],
"bundledSkuDefinitions": [
{
"bundledParentBarcode": "string",
"bundledParentChannelSkuId": "string",
"bundledParentClientSkuCode": "BPClientSku1",
"childSkus": [
{
"barcode": "string",
"clientSkuCode": "ClientSku1",
"channelSkuCode": "string",
"qty": 0
}
]
}
],
"orderItems": [
{
"orderItemCodes": [
"item123"
],
"channelSkuCode": "1000889888",
"orderedQuantity": 2,
"cancelledQuantity": 1,
"customerCancelledQty": 0,
"sellerCancelledQty": 0,
"sellerRejectQty": 0,
"fulfilledQuantity": 1,
"hoppedQuantity": 0,
"barcode": "35255XXL",
"clientSkuCode": "ClientSku1",
"channelDiscount": 50,
"sellingPricePerUnit": 500,
"giftChargePerUnit": 10,
"sellerDiscount": 5,
"shippingCharge": 0,
"externalItemCodes": [
"externalCode1"
],
"orderItemCustomAttributes": {
"attribute1": "test_9500ccd4855f",
"attribute10": "test_1e7511fe9fc8",
"attribute2": "test_957207fbdbb0",
"attribute3": "test_e9c4494fc055",
"attribute4": "test_2c6670838f48",
"attribute5": "test_09156554f500",
"attribute6": "test_20ab8d00c447",
"attribute7": "test_f0c3e77287ae",
"attribute9": "test_691c1f899bb8",
"channelMetadata": {
"MetaDataTestExample1": "test_13669a9d0d24",
"MetaDataTestExample2": "test_13669a9d0d25"
}
}
}
],
"subOrderItems": [
{
"orderItemCodes": [
"item123"
],
"channelSkuCode": "1000889888",
"orderedQuantity": 2,
"cancelledQuantity": 1,
"customerCancelledQty": 0,
"sellerCancelledQty": 0,
"sellerRejectQty": 0,
"fulfilledQuantity": 1,
"hoppedQuantity": 0,
"barcode": "35255XXL",
"clientSkuCode": "ClientSku1",
"channelDiscount": 50,
"sellingPricePerUnit": 500,
"giftChargePerUnit": 10,
"sellerDiscount": 5,
"shippingCharge": 0,
"externalItemCodes": [
"externalCode1"
],
"orderItemCustomAttributes": {
"attribute1": "test_9500ccd4855f",
"attribute10": "test_1e7511fe9fc8",
"attribute2": "test_957207fbdbb0",
"attribute3": "test_e9c4494fc055",
"attribute4": "test_2c6670838f48",
"attribute5": "test_09156554f500",
"attribute6": "test_20ab8d00c447",
"attribute7": "test_f0c3e77287ae",
"attribute9": "test_691c1f899bb8",
"channelMetadata": {
"MetaDataTestExample1": "test_13669a9d0d24",
"MetaDataTestExample2": "test_13669a9d0d25"
}
}
}
],
"shippingAddress": {
"name": "Customer's Name",
"line1": "Line Address 1",
"line2": "Line Address 2",
"line3": "Line Address 3",
"city": "city",
"state": "state",
"zip": "zip",
"country": "country",
"email": "[email protected]",
"phone": "9999999999"
},
"billingAddress": {
"name": "customer",
"line1": "address line 1",
"line2": "address line 2",
"line3": "address line 3",
"city": "Bengaluru",
"state": "Karnataka",
"zip": "560076",
"country": "INDIA",
"email": "[email protected]",
"phone": "9999999999"
}
}
Note : subOrderItems has the same structure as orderItems
| Column | Column | Column | Column |
|---|---|---|---|
| Parameter Name | Data Type | Description | Mandatory |
locationCode |
String | Location from which order was fulfilled | Yes |
orderCode |
String | Unique code used by the channel to identify order | yes |
omsSubOrderId |
Long | Internal sub order id of OMS | No |
parentOrderCode |
String | Parent order code which can be null or empty or some duplicate value across orders. | no |
channelName |
String | Channel name of the marketplace. | yes |
channelType |
String | Type of the channel.Possible values: ERP/MARKETPLACE | yes |
orderTime |
String | Time at which order was placed at the channel in UNIX (UTC) | yes |
orderType |
String | Can be - SO(Sales Order)/STO(Stock Transfer Order)/RTV(Return To Vendor), RPO(Replacement) | yes |
messageId |
Long | Unique Identifier of a notification(for De-duplication) | Yes |
paymentMethod |
String | Possible values - COD, NCOD | yes |
turnAroundTime |
ZonedDateTime | Turnaround time | NO |
shipments |
Object[] | shipmets belonging to this posting | YES |
shipments.irn |
String | Irn generated on Govt. portal while e-invoicing | No |
shipments.qrCode |
String | QrCode generated on Govt. portal while e-invoicing | No |
shipments.shipmentStatus |
String | Possible values: {OPEN,CLOSED, INVOICED, MANIFESTED, DISPATCHED, CANCELLED, DELIVERED} | No |
shipments.shipmentItems |
Object[] | Items belonging to this shipment | Yes |
shipmentItems.channelSkuCode |
String | SKU code of order item | Yes |
shipmentItems.orderItemCode |
String | This is provided by the channel to uniquely identify each order item. | Yes |
shipmentItems.netTaxAmountPerUnit |
Double | Per unit tax applicable for the SKU. | Yes |
shipmentItems.barcode |
String | Scannable code to identify an sku | no |
shipmentItems.clientSkuCode |
String | Unique identifier for an sku at client end | no |
shipmentItems.netTaxAmountTotal |
Double | Total tax applicable for the SKU | Yes |
shipmentItems.baseSellingPricePerUnit |
Double | Per unit base selling price of the SKU | Yes |
shipmentItems.baseSellingPriceTotal |
Double | Total base selling price of SKU | Yes |
shipmentItems.sellingPricePerUnit |
Double | Per unit selling price of the SKU including tax | Yes |
shipmentItems.sellingPriceTotal |
Double | Total selling price of the SKU | Yes |
shipmentItems.quantity |
Integer | Quantity of the sku in the shipment item. | Yes |
shipmentItems.shippingChargePerUnit |
Double | Shipping charge per unit for a shipment item | No |
shipmentItems.taxItems |
Object | Distribution of tax with tax type | Yes |
shipmentItems.batchDetails |
Object[] | Container object holding batch-level information and QC quantity breakdowns | No, Batch details will only be returned when client configuration flag enableBatchDetailsInInventoryAPI is enabled. |
batchDetails array will be empty for SKUs without batch tracking |
| batchDetails.batchId | Integer | Internal unique code/identifier for the batch | Yes (if batchDetails present) |
| batchDetails.batchCode | String | Batch identifier as provided by an external system (supplier, ERP, WMS, etc.) | Yes (if batchDetails present) |
| batchDetails.supplierCode | String | Unique code/identifier of the supplier associated with the batch. | Yes (if batchDetails present) |
| batchDetails.manufacturingDate | String | Date when the batch was manufactured | No |
| batchDetails.expiryDate | String | Date when the batch expires and should no longer be used/sold | No |
| batchDetails.mrp | Decimal | Maximum Retail Price for items in the batch | No |
| batchDetails.quantity | Integer | Quantity of SKU in the batch | Yes (if batchDetails present) |
| shipments.shipmentDetails | Object | Shipment details | No |
| shipmentDetails.length | Double | Length of the shipment | No |
| shipmentDetails.breadth | Double | Breadth of the shipment | No |
| shipmentDetails.height | Double | Height of the shipment | No |
| shipmentDetails.weight | Double | Weight of the shipment | No |
| shipmentDetails.shipmentId | Long | Id to uniquely identify a shipment | No |
| shipmentDetails.totalItemQuantity | Integer | Count of all the items in the shipment | No |
| shipmentDetails.packboxDetailsList | Object[] | Details of pack boxes | No |
| packboxDetailsList.length | Double | Length of the pack box in consideration | No |
| packboxDetailsList.breadth | Double | Breadth of the pack box in consideration | No |
| packboxDetailsList.height | Double | Height of the pack box in consideration | No |
| packboxDetailsList.weight | Double | Weight of the pack box in consideration | No |
| packboxDetailsList.boxId | Long | Id to uniquely identify a box | No |
| packboxDetailsList.awbNumber | String | AWB number of the box | No |
| | | | |
| packboxDetailsList.packBoxRemarks | String | Remarks for the pack box | No |
| packboxDetailsList.skuQuantityDataList | Object[] | Details of skus in a box | No |
| skuQuantityDataList.globalSkuId | Long | Id to uniquely identify a sku in increff’s system | No |
| skuQuantityDataList.clientSkuId | String | Id to uniquely identify a sku on client’s end | No |
| skuQuantityDataList.count | Integer | Count of a particular sku in a box | No |
| taxItems.type | String | Type of tax applicable | Yes |
| taxItems.rate | Double | Tax rate for this tax type | Yes |
| taxItems.taxPerUnit | Double | Tax applicable for this type of tax per unit | Yes |
| taxItems.taxTotal | Double | Total tax applicable for this type of tax | Yes |
| | | | |
| isPriority | Boolean | This flag is true in case order is HIGH priority than normal orders. | yes |
| orderCustomAttributes | Object | Custom attributes of order | no |
| orderCustomAttributes.attribute1 | String | Custom attribute 1 | no |
| orderCustomAttributes.attribute2 | String | Custom attribute 2 | no |
| orderCustomAttributes.attribute3 | String | Custom attribute 3 | no |
| orderCustomAttributes.attribute4 | String | Custom attribute 4 | no |
| orderCustomAttributes.attribute5 | String | Custom attribute 5 | no |
| orderCustomAttributes.attribute6 | String | Custom attribute 6 | no |
| orderCustomAttributes.attribute7 | String | Custom attribute 7 | no |
| orderCustomAttributes.attribute8 | String | Custom attribute 8 | no |
| orderCustomAttributes.attribute9 | String | Custom attribute 9 | no |
| orderCustomAttributes.attribute10 | String | Custom attribute 10 | no |
| orderCustomAttributes.currency | String | Currency | no |
| orderCustomAttributes.channelMetaData | Object | meta data fields as an object which is to be parsed at the channel’s end | no |
| virtualSkuDefinitions | Object | List of virtual SKU definitions | no |
| virtualSkuDefinitions.virtualParentChannelSkuId | String | SKU code of virtual SKU | no |
| virtualSkuDefinitions.virtualParentBarcode | String | Barcode of parent SKU | no |
| virtualSkuDefinitions.virtualParentClientSkuCode | String | Unique identifier for a virtual parent sku at client’s end | no |
| virtualSkuDefinitions.childSkus | Object[] | List of child SKUs | no |
| childSkus.channelSkuCode | String | SKU code of child SKU | no |
| childSkus.qty | Integer | Quantity of child SKU | no |
| childSkus.barcode | String | Barcode of child SKU | no |
| bundledSkuDefinitions | Object[] | List of bundled sku definitions | yes |
| bundledSkuDefinitions.bundledParentBarcode | String | Unique barcode of bundled Sku | no |
| bundledSkuDefinitions.bundledParentClientSkuCode | String | Unique identifier for a bundled parent sku at client’s end | no |
| bundledSkuDefinitions.bundledParentChannelSkuId | String | Unique identifier of bundled Sku at channel | yes |
| bundledSkuDefinitions.childSkus | Object[] | List of child SKUs | yes |
| childSkus.barcode | String | Unique barcode of child sku | no |
| childSkus.channelSkuCode | String | Unique identifier of child sku at channel | no |
| childSkus.qty | Integer | child sku quantity | no |
| orderItems | Object[] | List of order items | yes |
| orderItems.orderItemCodes | String[] | This is provided by the channel to uniquely identify each order item. | yes |
| orderItems.channelskuCode | String | SKU code of order item | yes |
| orderItems.barCode | String | Scannable code to identify an sku | no |
| orderItems.clientSkuCode | String | Unique identifier for an sku at client’s end | no |
| orderItems.orderedQuantity | int | Ordered Quantity | yes |
{
"hasError": false,
"errorMessage":"message"
}