Update Active Inventory
Regardless of the method used to identify the location, the following input is valid:
Category | Name | Type | Required | Description |
---|---|---|---|---|
options | item_barcode | String | C | Item identifier. |
options | item_code | String | C | Item identifier. |
options | item_alternate_code | String | C | Item identifier. |
options | adjustment_qty | Numeric | C | Non-zero adjustment quantity. |
options | actual_qty | Numeric | C | Non-negative final quantity. |
options | batch_nbr | String | N | Batch tied to target inventory. |
options | expiry_date | Date | N | Expiration date tied to target inventory. |
options | invn_attr_X | String | N | Attributes A-O tied to the inventory. |
options | reason_code | String | Y | Recorded on inventory history. |
options | transaction_ref_nbr | String | N | Recorded on inventory history. |
options | locn_capacity_check_flg | Boolean | N | Validate locations max units and volume? |
options | company_id | Integer | N | Item’s company. |
options | company_code | String | N | Item’s company’s code. |
- Only one of `item_barcode`, `item_code`, or `item_alternate_code` is allowed.
- Only one of `actual_qty` or `adjustment_qty` is allowed.
- If positive change in quantity:
- The provided `batch_nbr` will be created if it does not exist.
- Only one of `company_id` or `company_code` is allowed.
- Although not required by the API, the company context may be necessary if there is ambiguity when identifying the item to adjust. This is common in 3PL scenarios where the same identifying information may be present for different items across companies for which the user is eligible.
Location Lookup by ID
POST .../entity/location/{id}/update_active_inventory/
The caller knows the unique `id` value of the active location, which is added to the request URL. No additional `parameters` data is required from the request body.
Location Lookup by Filters
POST .../entity/location/update_active_inventory/
Category | Name | Type | Required | Description |
---|---|---|---|---|
parameters | barcode | String | Y | Location’s barcode. |
parameters | facility_id | Integer | N | Location’s facility. |
- Only a single location may be updated per request.
- The `__in` lookup is not supported for `barcode`.
- `facility_id` supports string lookup by `code` using the double-underscore
notation:
- facility_id__code
{
"parameters": {
"facility_id__code": "FAC-1",
"barcode": "LOCN1"
},
"options": {
"item_barcode": "ITEM1234",
"adjustment_qty": -10,
"batch_nbr": "BATCH1234",
"expiry_date": "2020-01-02",
"invn_attr_a": "A",
"invn_attr_b": "B",
"reason_code": "RC",
"transaction_ref_nbr": "TX123457890",
"company_code": "COM-1"
}
}
Serial Number Tracked Items
This API also accepts serial numbers to cater to serial number tracked items or SKUs.
For positive adjustments, the serial numbers sent can be:
- New serial numbers (or)
- Serial numbers existing in the warehouse that are delinked and not associated with any other inventory
For negative adjustments, the serial numbers sent should be the ones that are already present in the location where inventory is being updated.
The following is an example request for serial number adjustments:
{
"parameters": {
"facility_id code": "FAC-1", "barcode":
"LOCN1"
},
"options":
{
"item_barcode": "ITEM1234", "adjustment_qty": -3, "batch_nbr": "BATCH1234",
"invn_attr_a": "A",
"invn_attr_b": "B",
"reason_code": "RC", "transaction_ref_nbr": "TX123457890", "serial_nbr_list":
[
"SrlNbr1", "SrlNbr2",
"SrlNbr3"
]
}
}
Track User Activity
If you have purchased WFM (Oracle Workforce Management), you can also send user activity data using the following parameters in the Update Active Inventory API
- Screen_name: Name of the application or screen in the external system that was used by the user to update inventory.
- Begin_ts: Time at which the user started update inventory.
- End_ts: Time at which the user completed update inventory.
If all the three parameters are sent in the API, and if WFM is enabled, user activity is written to the WMS Activity view and subsequently interfaced to WFM, enabling you to analyze user productivity through productivity reports in WFM.
- All three parameters must be sent for WMS Activity to be written.
- If WFM is not enabled, WMS Activity is not written even if the three parameters are sent.
- In order for WMS Activity data to interface successfully to WFM, screen_name that is sent in the API has to be configured as a screen in WMS using an RF module and mapped to a work area activity in WFM.
- Screen_name sent on the API is also written on the corresponding IHTs that are written with this API.
- If only screen_name is sent without begin_ts and end_ts, the screen_name is written on the IHT, even if WFM is not enabled.
- Begin_ts and End_ts cannot be greater than the current timestamp of the facility in the API.
Request Body with User Activity Data
{
"parameters": {
"facility_id": 950,
"barcode": "RNA070204"
},
"options”: {
"adjustment_qty": 6,
"reason_code": "DR",
"item_barcode": "GDEAN13000003",
"transaction_ref_nbr": "TX11384-Issue1",
"company_code": "QATSTPC"
"begin_ts": "2024-05-27T18:30:00",
"end_ts": "2024-05-27T18:45:00",
"screen_name": "Update Active Inventory Screen"
}
}