Outward Sales Posting API (For ERP Systems) (Beta)
Sales Order Posting
Outbound | POST | {Client’s URL}
Description
This API will share the Outward Order data with the ERP system with the details of sales orders which are completed in Increff Omni.
The API calls will be sent at a certain frequency from Increff system to the ERP system.
ERP system is advised to implement idempotency on messageId
and shipmentCode
fields.
One order can have multiple shipments. Once a shipment is invoiced, it will appear in all subsequent posting
Hence it should be ensured to capture the unique
shipmentCode
for idempotency at shipment level.
Postings can be triggered on below event types:
OUTWARD_ORDER_CREATE
OUTWARD_ORDER_CANCEL
OUTWARD_ORDER_PARTIAL_CANCEL
OUTWARD_ORDER_COMPLETE
OUTWARD_ORDER_SHIPMENT_DISPATCH
OUTWARD_ORDER_SHIPMENT_DELIVER
Request
{
"partnerCode": "1100013090",
"partnerLocationCode": "9",
"locationCode": "IN132",
"orderCode": "order1",
"parentOrderCode": "flipkart1221",
"isPriority": false,
"channelName": "channel",
"orderTime": "2020-10-16T20:22:28.000+00:00",
"orderType": "SO/STO/RTV",
"messageId": 1100,
"paymentMethod": "COD",
"eventType": "OUTWARD_ORDER_COMPLETE",
"eventTime": "2020-10-16T20:22:28.000+00:00",
"omsOrderId": 1234,
"turnAroundTime": "2020-10-16T20:22:28.000+00:00",
"virtualSkuDefinitions": [
{
"virtualParentChannelSkuId": "abc1",
"virtualParentBarcode": "bar1",
"virtualParentClientSkuCode": "abc",
"childSkus": [
{
"channelSkuCode": "xyz",
"qty": 2,
"barcode": "bar23",
"clientSkuCode": "clientSku123"
},
{
"channelSkuCode": "xyz1",
"qty": 1,
"barcode": "bar34",
"clientSkuCode": "clientSku234"
}
]
}
],
"bundledSkuDefinitions": [
{
"bundledParentBarcode": "string",
"bundledParentChannelSkuId": "string",
"bundledParentClientSkuCode": "string",
"childSkus": [
{
"barcode": "string",
"channelSkuCode": "string",
"qty": 0,
"clientSkuCode": "string"
}
]
}
],
"isSplitRequired": "false",
"shippingCharges": 20,
"channelType": "ERP",
"orderItems": [
{
"orderItemCode": "item123",
"channelSkuCode": "1000889888",
"orderedQuantity": 2,
"cancelledQuantity": 1,
"customerCancelledQty": 0,
"sellerCancelledQty": 0,
"sellerRejectQty": 0,
"channelDiscount": 50,
"sellingPricePerUnit": 500,
"giftChargePerUnit": 10,
"sellerDiscount": 5,
"shippingCharge": 0,
"omsItemId": 123,
"barcode": "barcode1",
"clientSkuCode": "clientSku1",
"orderItemCustomAttributes": {
"attribute1": "Value1",
"attribute2": "Value2",
"attribute3": "Value3",
"attribute4": "Value4",
"attribute5": "Value5",
"attribute6": "Value6",
"attribute7": "Value7",
"attribute8": "Value8",
"attribute9": "Value9",
"channelMetadata": {
"totalCashOnDeliveryFee": 0,
"department": "HR",
"paymentMethod": "ccavenue",
"status": "processing"
},
"attribute10": "Value10",
"channelMetadataMap": {
"key1": "value1",
"key2": "value2"
}
}
}
],
"shipments": [
{
"shipmentCode": "UIfd897",
"omsShipmentId": "121",
"locationCode": "loc1",
"generatedInvoiceId": "AR105044395",
"generatedInvoiceDate": "2020-10-16T20:22:28.000+00:00",
"externalInvoiceId": "FK56556GH45",
"externalInvoiceDate": "2020-10-16T20:22:28.000+00:00",
"invoiceDocumentUrl": "https://mybrand.com/invoice123.pdf",
"shippingLabelDocumentUrl": "https://mybrand.com/sldoc.pdf",
"irn": "a429746e55b844c9d2cb2a6f68997d1c2af29987cc834f3b52da45d1b0bc97c9",
"qrCode": "eyJhbGciPiJSUzI1NiIsImtpZCI6IkI4RDYzRUNCMThFQTVFNkY0QUKDM0Q1MjQ1NDNCMjI0NjY2OUIwRjgiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJ1TlkteTFqcVhtOUtyRDFTUlVPeUpHWnBzUGcifQ.eyJkYXRhIjoie1wiU2VsbGVyR3N0aW5cIjpcIjI5QUFPQ001MzI2SjFaWVwiLFwiQnV5ZXJHc3RpblwiOlwiMjlBQUJDUjE3MThFMVpMXCIsXCJEb2NOb1wiOlwiTUVhajIyLTIzLzUwNTlcIixcIkRvY1R5cFwiOlwiSU5WXCIsXCJEb2NEdFwiOlwiMTMvMTAvMjAyMlwiLFwiVG90SW52VmFsXCI6MTgxNy4wNCxcIkl0ZW1DbnRcIjoxLFwiTWFpbkhzbkNvZGVcIjpcIjYyMTE0MjkwXCIsXCJJcm5cIjpcImE0Mjk3NDZlMzRkODQ0YzlkMmNiMmE2ZjY4OTk3ZDFjMmFmMjM5ODdjYzgzNGYzYjUyZGE0NWQxYjBiYzk3YzlcIixcIklybkR0XCI6XCIyMDIyLTEwLTEzIDEyOjAxOjAwXCJ9IiwiaXNzIjoiTklDIn0.wvB7b15AnpdQdX_d0VZEyj9dL1qWDaOFPLRPrlV0V2XIu3cE3aQ3YtsWLnTnyrmtUlokpbkkE4folBQNhfzkCPlnODNxRPfpO-Kz9eyNpqcIEp-8TqvcDKXZ3PrBRqmNmner00AG_fVmmqT1HLiyKB2sqOnhqtCfQaQF-PGnqIOhal3PDxIMVt0WAtaQOIwwDA75dsjjnFHaZFPl9tFPR8A6Wrw4NhQH-7xhABKW3Z961a_rGmO6M3XP7jPHyYPW-QWMfTqwNXwxNdFgFePL5FloPiUipt2-g4FIplgm-YcN1xMvEQ2irAfzQwbnxi7UKz-jwOgM0Zy2BbburYgDvQ",
"shipmentStatus": "DELIVERED",
"awbNumber": "118208310191",
"transporter": "BLUEDART",
"packageSku": "P-123",
"deliveredAt": "2020-10-16T20:22:28.000+00:00",
"packedAt": "2020-10-16T20:22:28.000+00:00",
"shipmentItems": [
{
"channelSkuCode": "100000789702",
"orderItemCode": "item123",
"netTaxAmountPerUnit": 60,
"netTaxAmountTotal": 120,
"baseSellingPricePerUnit": 500,
"baseSellingPriceTotal": 1000,
"sellingPricePerUnit": 560,
"sellingPriceTotal": 1120,
"quantity": 2,
"shippingChargePerUnit": 36,
"channelDiscount": 30,
"taxItems": [
{
"type": "SGST",
"rate": 6,
"taxPerUnit": 30,
"taxTotal": 60
},
{
"type": "CGST",
"rate": 6,
"taxPerUnit": 30,
"taxTotal": 60
}
],
"barcode": "barcode1",
"clientSkuCode": "csku1"
},
{
"channelSkuCode": "100000734701",
"orderItemCode": "item124",
"netTaxAmountPerUnit": 60,
"netTaxAmountTotal": 120,
"baseSellingPricePerUnit": 500,
"baseSellingPriceTotal": 1000,
"sellingPricePerUnit": 560,
"sellingPriceTotal": 1120,
"quantity": 2,
"shippingChargePerUnit": 36,
"channelDiscount": 30,
"taxItems": [
{
"type": "SGST",
"rate": 6,
"taxPerUnit": 30,
"taxTotal": 60
},
{
"type": "CGST",
"rate": 6,
"taxPerUnit": 30,
"taxTotal": 60
}
],
"barcode": "barcode2",
"clientSkuCode": "csku2"
}
],
"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",
"volWeight": "0.0",
"boxSkuId": "boxSku1",
"boxCode": "box1",
"skuQuantityDataList": [
{
"globalSkuId": 987,
"clientSkuId": "SKU001",
"count": 10
},
{
"globalSkuId": 876,
"clientSkuId": "SKU002",
"count": 15
}
]
}
]
}
}
],
"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": "abc@gmail.com",
"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": "abc@gmail.com",
"phone": "9999999999"
},
"orderCustomAttributes": {
"attribute1": "Value1",
"attribute2": "Value2",
"attribute3": "Value3",
"attribute4": "Value4",
"attribute5": "Value5",
"attribute6": "Value6",
"attribute7": "Value7",
"attribute8": "Value8",
"attribute9": "Value9",
"attribute10": "Value10",
"channelMetadata": {
"totalCashOnDeliveryFee": 0,
"department": "HR",
"paymentMethod": "ccavenue",
"status": "processing"
},
"channelMetadataMap": {
"key1": "value1",
"key2": "value2"
},
"currency": "INR"
}
}
Field Name | Data Type | Description | Mandatory |
| String | This represents the partner to which order was shipped to.
For Marketplaces orders, this field will be having the ERP channel name which is mapped in Increff OMS | Yes |
| String | This represents the partner’s location to which order was shipped to.
| Yes |
| Boolean | Flag to identify if an order is of priority type or not | Yes |
| String | Warehouse location from which order was fulfilled | Yes
|
| String | Unique code used by the channel to identify order | Yes |
| String | Parent order code which can be null or empty or some duplicate value across orders. | No |
| String | Channel name of the marketplace. | Yes |
| String | Time at which order was placed at the channel in UNIX (UTC) | Yes |
| String | This represents the order type Possible values →
| Yes |
| Long | Unique Identifier of a notification (for De-duplication) | Yes |
| String | Possible values → | Yes |
| Long | Internal order identifier of Increff OMS | No |
| ZonedDateTime | Cut off time defined as SLA in Increff OMS to process the order | No |
| boolean | Flat to identify if the order splitting will be done by Increff system or not | Yes |
| Object | List of virtual SKU definitions | No |
| String | SKU code of virtual SKU | No |
| String | Barcode of parent SKU | No |
| String | Unique identifier for a virtual parent sku at client’s end | No |
| Object[] | List of child SKUs | No |
| String | SKU code of child SKU | No |
| Integer | Quantity of child SKU | No |
| String | Barcode of child SKU | No |
| String | SKU identifier defined by user in system | No |
| Object[] | List of bundled SKU definitions | Yes |
| String | Barcode of parent SKU | No |
| String | Channel SKU identifier of Parent SKU in a bundle | Yes |
| String | Client SKU identifier of Parent SKU in a bundle | No |
| Object[] | List of child SKUs | Yes |
| String | Unique barcode for child SKU of a bundle | No |
| String | Unique identifier for child sku defined at marketplace/channel level | Yes |
| Integer | Quantity of child product of a bundle | No |
| String | Unique identifier of child sku for client | No |
| Object[] | List of order items | Yes |
| String | This is provided by the channel to uniquely identify each order item. | Yes |
| String | SKU code of order item | Yes |
| Integer | Ordered Quantity of order | Yes |
| Integer | Cancelled Quantity in order | Yes |
| Integer | Cancelled Quantity by Seller | No |
| Integer | Cancelled Quantity by Customer | No |
| Integer | Seller rejected Quantity | No |
| double | Selling Price Per Unit of a product | Yes |
| Double | Gift Price Per Unit of a product | No |
| Double | Discount provided by channel per unit | No |
| Double | Discount provided by seller per unit | No |
| Long | Internal item identifier of OMS | No |
| String | Barcode to identify a product | Yes |
| String | unique identifier of item for client | No |
| Object | Custom attributes for order items | No |
| String | Custom attribute 1 | No |
| String | Custom attribute 2 | No |
| String | Custom attribute 3 | No |
| String | Custom attribute 4 | No |
| String | Custom attribute 5 | No |
| String | Custom attribute 6 | No |
| String | Custom attribute 7 | No |
| String | Custom attribute 8 | No |
| String | Custom attribute 9 | No |
| String | Custom attribute 10 | No |
| Object | These are additonal fields which can be sent to Increff system and can be used in subsequent Posting workflows | No |
| Map<String,String> | These are additonal fields which can be sent to Increff system and can be used in subsequent Posting workflows | No |
| Object | Custom attributes for an order | No |
| Objecg | These are additonal fields which can be sent to Increff system and can be used in subsequent Posting workflows | No |
| String | Currency | No |
| String | Custom attribute 1 | No |
| String | Custom attribute 2 | No |
| String | Custom attribute 3 | No |
| String | Custom attribute 4 | No |
| String | Custom attribute 5 | No |
| String | Custom attribute 6 | No |
| String | Custom attribute 7 | No |
| String | Custom attribute 8 | No |
| String | Custom attribute 9 | No |
| String | Custom attribute 10 | No |
| Object | These are additonal fields which can be sent to Increff system and can be used in subsequent Posting workflows | No |
| Map<String,String> | These are additonal fields which can be sent as key value pairs to Increff system and can be used in subsequent Posting workflows | No |
| Long | Increff OMS shipment id | no |
| String | QR code of the product scanned | No |
| String | Status of the shipment | No |
| String | AWB number of shipment | No |
| String | Transporter partner name | No |
| String | SKU code for the package used in packing the shipment | No |
| ZoneDateTime | Delivery time of the order to customer | No |
| ZoneDateTime | Packing time for the shipment in warehouse | No |
| Object[] | Items belonging to this shipment | Yes |
| String | SKU code of order item | yes |
| String | Fulfillment Location | Yes |
| String | This is provided by the channel to uniquely identify each order item. | Yes |
| Double | Per unit tax applicable for the SKU. | Yes |
| Double | Total tax applicable for the SKU | Yes |
| Double | Per unit base selling price of the SKU Discounts are not subtracted from base selling price | Yes |
| Double | Total base selling price of SKU | Yes |
| Double | Per unit selling price of the SKU including tax Discounts are not subtracted from base selling price | Yes |
| Double | Total selling price of the SKU | Yes |
| Integer | Quantity of the sku in the shipment item. | Yes |
| Double | Shipping charge per unit for a shipment item | No |
| Double | Channel discount of item | No |
| String | Unique identifier for barcode of an item of shipment | No |
| String | Unique identifier for SKU of an item of shipment | No |
| Object | Distribution of tax with tax type | Yes |
| Object | Shipment details | No |
| Double | Length of the shipment | No |
| Double | Breadth of the shipment | No |
| Double | Height of the shipment | No |
| Double |