Inventory Catalogue Workflow Interface Contracts
Changed on:
23 Aug 2023
Detailed Description
The below Interface Contracts document the interaction points with the Catalogue . These allow you to ensure that any integration made into the will enable the to work correctly.
UpdateInventoryQty Event
This is used anytime an external (anything from outside this ) creation of quantities is triggered.
Request Payload
Property | Description | Type | Required? |
items | The list of items whose positions to be updated | List | Required |
Item Definition
Property | Description | Type | Required? | Notes |
fulfilmentId | The fulfilment ID against which the quantities are to be created/updated | String | Required | |
skuRef | The SKU reference of the position | String | Required | |
locationRef | The SKU reference of the position | String | Required | |
reservedQty | The count of RESERVED quantities | Int | Required | Only required when |
correctionQty | The count of CORRECTED quantities | Int | Required | Only required when confirm a fulfilment |
saleQty | The count of SALE quantities | Int | Required | Only required when confirm a fulfilment |
cancelQty | The count of CANCELLED quantities | Int | Required | Only required when cancel a fulfilment |
Event Request Example
1{
2 "name": "UpdateInventoryQty",
3 "retailerId": "<retailerId>",
4 "entityRef": "<IC_ref>",
5 "entityType": "INVENTORY_CATALOGUE",
6 "entitySubtype": "<IC_type>",
7 "rootEntityType": "INVENTORY_CATALOGUE",
8 "rootEntityRef": "<IC_ref>",
9 "attributes": {
10 "items": [
11 {
12 "skuRef": "<skuRef>",
13 "locationRef": "<locationRef>",
14 "fulfilmentId": "100",
15 "quantity": 0,
16 "reserveQty": "-5",
17 "correctionQty": 0,
18 "saleQty": 0
19 }
20 ]
21 }
22}
`
`
InventoryChanged Event
This is generated by the Batch API.
Warning
Any need to an InventoryChanged update should only be done via the Batch API.
Request Payload
Property | Description | Type | Required? |
inventoryPosition | The position that has changed | Object | Required |
inventoryPosition Definition
Property | Description | Type | Required? | Notes |
ref | The position that has changed | String | Required | The format is |
locationRef | The reference associated to the position | String | Required | |
productRef | The product reference associated to the position | String | Required | |
qty | The quantity associated to the position | Int | Required | Only required when |
correctionQty | The corrected quantity associated to the position | Int | Optional | Not used by the catalogue |
reservedQty | The reserved quantity associated to the position | Int | Optional | Same as above |
Event Request Example
1{
2 "name": "InventoryChanged",
3 "accountId": "<accountId>",
4 "retailerId": "<retailerId>",
5 "entityRef": "<IC_ref>",
6 "entityType": "INVENTORY_CATALOGUE",
7 "entitySubtype": "<IC_type>",
8 "rootEntityType": "INVENTORY_CATALOGUE",
9 "rootEntityRef": "<IC_ref>",
10 "attributes": {
11 "inventoryPosition": {
12 "productRef": "<productRef>",
13 "locationRef": "<locationRef>",
14 "ref": "<inventoryPositionRef>",
15 "qty": 0
16 }
17 }
18}