Pick POST
URI
https://{DATACENTER}.brightpearlconnect.com/public-api/{ACCOUNT}
/warehouse-service/order/{ORDER_ID}/goods-note/goods-out/{GOODS_OUT_NOTE_ID}/pick
Refer to our documentation on URI syntax for more information on how to construct URIs.
Description
A pick message updates a single goods-out note at a time though the changes it makes may have a knock-on effect on other goods-out and reservation notes in the same warehouse.
When you make a pick it's entirely possible that the items you take were already reserved for another order. When this happens we will update the other notes while obeying the following principles:
- An existing reservation note allocation will be reallocated within the same warehouse.
- An existing goods-out note allocation will be reallocated within the same location.
Another important point to note is that items from different goods-in batches can have different cost prices and that changing the items allocated to an order can therefore alter the cost price of that order.
A single pick message is made up of several pick items, each of which describes what has been picked broken down by product, location and batch. It is not necessary to submit enough pick items to cover the entire requirements of the goods-out, the remaining items for the note will be reallocated by FIFO. Please note that a pick message will completely overwrite any picks already made for that goods-out note so if you visit 2 locations and submit 2 messages the 2nd message MUST contain BOTH the the pick items otherwise the changes from the 1st message will be lost.
A pick message is processed atomically, i.e. if any of the pick items are invalid or unable to be processed, no changes are made.
Message fields:
Field | Data type | Description | Required | Notes |
---|---|---|---|---|
items | object array | A pick message can contain any number of pick items, each one describes what quantity of what product was taken from what location | Yes | Cannot be empty |
salesOrderRowId | integer | Sales order row for which we are picking items | Yes | Must belong to the goods-out note |
productId | integer | Product picked | Yes | Must match the goods-out note |
locationId | integer | Location picked from | Yes | Must be in the warehouse to which the goods-out note belongs |
batchId | integer | Goods-in batch picked from. If not supplied we use FIFO to determine which batch was picked. | No | Do not submit a batch ID unless you are certain about it and you have been keeping track of all outgoing batches for this product. |
quantity | integer | Quantity picked | Yes | Cannot exceed requirements of the goods-out-note |
Additional restrictions:
- You cannot pick for a goods-out note which has already been shipped.
Example 1
Request URI
/order/6/goods-note/goods-out/7/pick
Request body
{
"items": [
{
"salesOrderRowId": 9,
"productId": 1012,
"locationId": 8,
"quantity": 5
}
]
}
Response
{
}
Example 2
Request URI
/order/6/goods-note/goods-out/7/pick
Request body
{
"items": [
{
"salesOrderRowId": 9,
"productId": 1012,
"locationId": 8,
"batchId": 11,
"quantity": 5
},
{
"salesOrderRowId": 9,
"productId": 1012,
"locationId": 8,
"batchId": 12,
"quantity": 5
}
]
}
Response
{
}