This API is used to create new outward orders in bulk in Increff system.
The Outward Order Create & Modification API allows external systems to create new outward orders or modify existing orders in bulk before the packing stage.
Using this API, clients can:
To cancel an order completely or partially, use the following API: Customer Cancellation API
<aside> 📌
Note: Order modification is allowed only until the order reaches the packing stage.
</aside>
<aside> ℹ️ The number of order items in an order should not be more than 2500.
</aside>
<aside> 🗒️ Note: Please note that the Custom Order or Order Item attribute key must be added in the OMS UI using screen Custom order/line Item Attribute, else it can result into failure of order creation in Increff OMS system.
In cases where the Custom order attribute key is not defined and custom order or order item attributes are part of the Inward/Outward order creation payloads then the order would move to FAILED status in CIMS.
</aside>
{
"outwardOrderClientFormList": [
{
"parentOrderCode": "PARENT-ORD-789",
"locationCode": "WAREHOUSE-001",
"inventoryPoolId": "CommonInventory234",
"orderCode": "ORD-123456",
"orderTime": "2024-02-13T09:45:00Z",
"orderType": "PO",
"onHold": false,
"isPriority": true,
"gift": true,
"qcStatus": "PASS",
"dispatchByTime": "2024-02-15T14:30:00Z",
"startProcessingTime": "2024-02-13T10:00:00Z",
"paymentMethod": "COD",
"shippingAddress": {
"name": "Jane Smith",
"line1": "456 Oak Street",
"line2": "Suite 789",
"line3": "Tower D",
"phone": "+1-555-987-6543",
"email": "[email protected]",
"city": "Gotham",
"state": "NY",
"zip": "10001",
"country": "United States"
},
"billingAddress": {
"name": "John Doe",
"line1": "123 Main Street",
"line2": "Apt 456",
"line3": "Building C",
"phone": "+1-555-123-4567",
"email": "[email protected]",
"city": "Metropolis",
"state": "CA",
"zip": "90001",
"country": "United States"
},
"orderItems": [
{
"channelSkuCode": "SKU-001",
"orderItemCode": "ITEM-001",
"quantity": 2,
"sellerDiscountPerUnit": 3.00,
"channelDiscountPerUnit": 5.00,
"sellingPricePerUnit": 20.00,
"shippingChargePerUnit": 8.00,
"giftOptions": {
"giftwrapRequired": true,
"giftMessage": "Happy Birthday!",
"giftChargePerUnit": 2.50,
"giftDocument": "gift_document.pdf",
"giftDocumentFormat": "PDF"
},
"minExpiry": "2025-01-01",
"expectedBatchId": null,
"expectedBatchCode": null,
"supplierPartnerId": null,
"orderItemCustomAttributes": {
"attribute1": "value1",
"attribute2": "value2",
"attribute3": "value3",
"attribute4": "value4",
"attribute5": "value5",
"attribute6": "value6",
"attribute7": "value7",
"attribute8": "value8",
"attribute9": "value9",
"attribute10": "value10",
"channelMetadata": {
"key": "value"
}
}
}
],
"taxBreakupForms": [
{
"channelSkuId": "SKU-001",
"baseSellingPricePerUnit": 25.00,
"taxItemForms": [
{
"type": "VAT",
"rate": 8.5,
"taxPerUnit": 2.13
}
]
}
],
"packType": "PIECE",
"isSplitRequired": true,
"orderCustomAttributes": {
"attribute1": "value1",
"attribute2": "value2",
"attribute3": "value3",
"attribute4": "value4",
"attribute5": "value5",
"attribute6": "value6",
"attribute7": "value7",
"attribute8": "value8",
"attribute9": "value9",
"attribute10": "value10",
"channelMetadata": {},
"currency": "USD"
}
},
{
"parentOrderCode": "PARENT-ORD-790",
"locationCode": "WAREHOUSE-001",
"inventoryPoolId": "CommonInventory234",
"orderCode": "ORD-123457",
"orderTime": "2024-02-13T09:45:00Z",
"orderType": "PO",
"onHold": false,
"isPriority": true,
"gift": true,
"qcStatus": "PASS",
"dispatchByTime": "2024-02-15T14:30:00Z",
"startProcessingTime": "2024-02-13T10:00:00Z",
"paymentMethod": "COD",
"shippingAddress": {
"name": "Jane Smith",
"line1": "456 Oak Street",
"line2": "Suite 789",
"line3": "Tower D",
"phone": "+1-555-987-6543",
"email": "[email protected]",
"city": "Gotham",
"state": "NY",
"zip": "10001",
"country": "United States"
},
"billingAddress": {
"name": "John Doe",
"line1": "123 Main Street",
"line2": "Apt 456",
"line3": "Building C",
"phone": "+1-555-123-4567",
"email": "[email protected]",
"city": "Metropolis",
"state": "CA",
"zip": "90001",
"country": "United States"
},
"orderItems": [
{
"channelSkuCode": "SKU-001",
"orderItemCode": "ITEM-001",
"quantity": 2,
"sellerDiscountPerUnit": 3.00,
"channelDiscountPerUnit": 5.00,
"sellingPricePerUnit": 20.00,
"shippingChargePerUnit": 8.00,
"giftOptions": {
"giftwrapRequired": true,
"giftMessage": "Happy Birthday!",
"giftChargePerUnit": 2.50,
"giftDocument": "gift_document.pdf",
"giftDocumentFormat": "PDF"
},
"minExpiry": "2025-01-01",
"expectedBatchId": null,
"expectedBatchCode": null,
"supplierPartnerId": null,
"orderItemCustomAttributes": {
"attribute1": "value1",
"attribute2": "value2",
"attribute3": "value3",
"attribute4": "value4",
"attribute5": "value5",
"attribute6": "value6",
"attribute7": "value7",
"attribute8": "value8",
"attribute9": "value9",
"attribute10": "value10",
"channelMetadata": {
"key": "value"
}
}
}
],
"taxBreakupForms": [
{
"channelSkuId": "SKU-001",
"baseSellingPricePerUnit": 25.00,
"taxItemForms": [
{
"type": "VAT",
"rate": 8.5,
"taxPerUnit": 2.13
}
]
}
],
"packType": "PIECE",
"isSplitRequired": true,
"orderCustomAttributes": {
"attribute1": "value1",
"attribute2": "value2",
"attribute3": "value3",
"attribute4": "value4",
"attribute5": "value5",
"attribute6": "value6",
"attribute7": "value7",
"attribute8": "value8",
"attribute9": "value9",
"attribute10": "value10",
"channelMetadata": {},
"currency": "USD"
}
}
]
}
| Parameter Name | Data Type | Description | Mandatory |
|---|---|---|---|
outwardOrderClientFormList |
Object | List of order forms | Yes |
outwardOrderClientFormList.parentOrderCode |
String | Represents code of parent order of the order | No |
outwardOrderClientFormList.locationCode |
String | Location code of warehouse from where this order will get fulfilledNote: Location code must be provided in case the isSplitRequired field is false | No |
outwardOrderClientFormList.inventoryPoolId |
String | Identifier for OMS Inventory pool where the outward order should be created for. | No |
outwardOrderClientFormList.orderCode |
String | Unique code used by channel to identify the order | Yes |
outwardOrderClientFormList.orderTime |
String | Time at which order got placed by customer | Yes |
outwardOrderClientFormList.orderType |
String | Possible values → | |
PO: Purchase Order |
|||
STO: Stock transfer Order |
|||
SO: Sales Order |
|||
RTV: Return to vendor |
|||
RO: Return Order |
|||
OPEN_PO/OPEN_RO: Open Purchase/Return Order |
|||
CRD: Crossdock |
Yes | ||
outwardOrderClientFormList.isPriority |
Boolean | This flag is true in case order is having High priority than normal orders. | No |
outwardOrderClientFormList.gift |
Boolean | This flag is true in case order is a gift and needs to be gift wrapped. | No |
outwardOrderClientFormList.onHold |
Boolean | This flag is true in case order has to be kept on hold. Processing starts only after call is made to unhold the order | Yes |
outwardOrderClientFormList.dispatchByTime |
String | Time by which the order is expected to get dispatched | Yes |
outwardOrderClientFormList.startProcessingTime |
String | Time by which the order processing is expected to get started | Yes |
outwardOrderClientFormList.paymentMethod |
String | Possible values → COD/NCOD | Yes |
outwardOrderClientFormList.isSplitRequired |
Boolean | This flag is true when WMS has to split the order.If this variable is TRUE then LocationCode ******should be send as NULL |
No |
outwardOrderClientFormList.taxBreakupForms |
Object[ ] | Tax break up for the items | |
| (if this is sent, all the fields of the object should be sent) | No | ||
outwardOrderClientFormList.taxBreakupForms.channelSkuId |
String | Unique code to identify SKU on channel | Yes |
outwardOrderClientFormList.taxBreakupForms.baseSellingPricePerUnit |
Double | Base selling price per unit of the SKU | Yes |
outwardOrderClientFormList.taxBreakupForms.taxItemForms |
Object[ ] | Distribution of tax with tax type | No |
outwardOrderClientFormList.taxItemForms.type |
String | Type of tax applicable | Yes |
outwardOrderClientFormList.taxItemForms.rate |
Double | Tax rate for this tax type | Yes |
outwardOrderClientFormList.taxItemForms.taxPerUnit |
Double | Tax applicable for this type of tax per unit | Yes |
outwardOrderClientFormList.packType |
String | Possible values → PIECE/BULK | No |
outwardOrderClientFormList.qcStatus |
String | Possible values → PASS, FAIL |
|
| By default value will be PASS | Yes | ||
outwardOrderClientFormList.shippingAddress |
Object | Shipping address of the customer | Yes |
outwardOrderClientFormList.shippingAddress.name |
String | Name of customer | No |
outwardOrderClientFormList.shippingAddress.line1 |
String | 1st line of customer’s address | No |
outwardOrderClientFormList.shippingAddress.line2 |
String | 2nd line of customer’s address | No |
outwardOrderClientFormList.shippingAddress.line3 |
String | 3rd line of customer’s address | No |
outwardOrderClientFormList.shippingAddress.city |
String | City of customer | No |
outwardOrderClientFormList.shippingAddress.state |
String | State of customer | No |
outwardOrderClientFormList.shippingAddress.zip |
String | ZIP/Pin code of customer | Yes |
outwardOrderClientFormList.shippingAddress.country |
String | Country of customer | Yes |
outwardOrderClientFormList.shippingAddress.email |
String | Email of customer | No |
outwardOrderClientFormList.shippingAddress.phone |
String | Phone Number of customer | No |
outwardOrderClientFormList.billingAddress |
Object | Billing address of the customer | Yes |
outwardOrderClientFormList.billingAddress.name |
String | Name of customer | No |
outwardOrderClientFormList.billingAddress.line1 |
String | 1st line of customer’s address | No |
outwardOrderClientFormList.billingAddress.line2 |
String | 2nd line of customer’s address | No |
outwardOrderClientFormList.billingAddress.line3 |
String | 3rd line of customer’s address | No |
outwardOrderClientFormList.billingAddress.city |
String | City of customer | No |
outwardOrderClientFormList.billingAddress.state |
String | State of customer | No |
outwardOrderClientFormList.billingAddress.zip |
String | ZIP/Pin code of customer | Yes |
outwardOrderClientFormList.billingAddress.country |
String | Country of customer | Yes |
outwardOrderClientFormList.billingAddress.email |
String | Email of customer | No |
outwardOrderClientFormList.billingAddress.phone |
String | Phone Number of customer | No |
outwardOrderClientFormList.orderItems |
Object[] | List of items for which order is being placed | Yes |
outwardOrderClientFormList.orderItems.channelSkuCode |
String | SKU code of order item on channel | Yes |
outwardOrderClientFormList.orderItems.orderItemCode |
String | This is provided by the channel to uniquely identify each order item. | |
| This should be unique in an order | Yes | ||
outwardOrderClientFormList.orderItems.quantity |
Integer | Quantity of SKU in the order placed | Yes |
outwardOrderClientFormList.orderItems.sellerDiscountPerUnit |
Double | Discount given by seller on SKU per unit | No |
outwardOrderClientFormList.orderItems.channelDiscountPerUnit |
Double | Discount given by channel on SKU per unit | No |
outwardOrderClientFormList.orderItems.sellingPricePerUnit |
Double | Unit price of SKU including tax | Yes |
outwardOrderClientFormList.orderItems.shippingChargePerUnit |
Double | Shipping charge on item per unit | No |
outwardOrderClientFormList.orderItems.minExpiry |
String | Minimum expiry date for the item to be shipped | |
| Format: YYYY-MM-DD | No. But if minExpiry is present. Then, below-mentioned 3 fields should be null: expectedBatchId expectedBatchCode supplierPartnerId |
||
outwardOrderClientFormList.orderItems.expectedBatchId |
Integer | It represents the Increff generated batch Id for the item to be shipped. | No. But if expectedBatchId is present. Then, below-mentioned fields should be null:minExpiry expectedBatchCode supplierPartnerId |
outwardOrderClientFormList.orderItems.expectedBatchCode |
String | It represents the External batch code for the item to be shipped. | No. But if expectedBatchCode is present. Then supplierPartnerId must also be present and below-mentioned fields should be null:minExpiry expectedBatchId |
outwardOrderClientFormList.orderItems.supplierPartnerId |
Long | It represents the Supplier partner Id for the item to be shipped. | No. But if supplierPartnerId is present. Then expectedBatchCode must also be present and below-mentioned fields should be null:minExpiry expectedBatchId |
outwardOrderClientFormList.orderItems.giftOptions |
Object | Contains gift details of the item | No |
outwardOrderClientFormList.giftOptions.giftwrapRequired |
Boolean | To specify if gift wrap is required | Yes |
outwardOrderClientFormList.giftOptions.giftMessage |
String | Gift message | No |
outwardOrderClientFormList.giftOptions.giftChargePerUnit |
Double | Gift charge on item per unit | No |
outwardOrderClientFormList.giftOptions.giftDocument |
String | Base64 encoded string | No |
outwardOrderClientFormList.giftOptions.giftDocumentFormat |
String | Possible values → | |
| PDF/ ZPL / PNG. | |||
| (To be populated if document is present) | No | ||
outwardOrderClientFormList.orderItems.orderItemCustomAttributes |
Object | Custom attributes for an order Item | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute1 |
String | Custom attribute 1 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute2 |
String | Custom attribute 2 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute3 |
String | Custom attribute 3 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute4 |
String | Custom attribute 4 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute5 |
String | Custom attribute 5 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute6 |
String | Custom attribute 6 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute7 |
String | Custom attribute 7 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute8 |
String | Custom attribute 8 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute9 |
String | Custom attribute 9 | No |
outwardOrderClientFormList.orderItemCustomAttributes.attribute10 |
String | Custom attribute 10 | No |