Receive a goods in receipt
curl --request POST \
--url https://clarus-api.com/api/goods_in_receipts/{id}/receive \
--header 'Authorization: Bearer <token>' \
--header 'X-Clarus-Subdomain: <api-key>'import requests
url = "https://clarus-api.com/api/goods_in_receipts/{id}/receive"
headers = {
"Authorization": "Bearer <token>",
"X-Clarus-Subdomain": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'X-Clarus-Subdomain': '<api-key>'}
};
fetch('https://clarus-api.com/api/goods_in_receipts/{id}/receive', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"id": 1,
"type": "goods_in_receipts",
"attributes": {
"account_id": 1,
"warehouse_id": 1,
"reference": "PO-2024-001",
"status": "received"
}
}
}{
"error": "<string>"
}{
"errors": [
{
"code": 123,
"symbol": "<string>",
"details": "<string>",
"source": "<string>",
"context": {}
}
]
}{
"errors": [
{
"code": 123,
"symbol": "<string>",
"details": "<string>",
"source": "<string>",
"context": {}
}
]
}Goods In: Receipts
Receive a goods in receipt
Trigger the receiving process for a goods in receipt. The receipt must be in PENDING status with at least one line item. This changes the receipt status to RCV and creates receive tasks for each line item. Stock records are not created until individual receive tasks are completed.
POST
/
api
/
goods_in_receipts
/
{id}
/
receive
Receive a goods in receipt
curl --request POST \
--url https://clarus-api.com/api/goods_in_receipts/{id}/receive \
--header 'Authorization: Bearer <token>' \
--header 'X-Clarus-Subdomain: <api-key>'import requests
url = "https://clarus-api.com/api/goods_in_receipts/{id}/receive"
headers = {
"Authorization": "Bearer <token>",
"X-Clarus-Subdomain": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'X-Clarus-Subdomain': '<api-key>'}
};
fetch('https://clarus-api.com/api/goods_in_receipts/{id}/receive', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"id": 1,
"type": "goods_in_receipts",
"attributes": {
"account_id": 1,
"warehouse_id": 1,
"reference": "PO-2024-001",
"status": "received"
}
}
}{
"error": "<string>"
}{
"errors": [
{
"code": 123,
"symbol": "<string>",
"details": "<string>",
"source": "<string>",
"context": {}
}
]
}{
"errors": [
{
"code": 123,
"symbol": "<string>",
"details": "<string>",
"source": "<string>",
"context": {}
}
]
}Behavior
- Receipt must be in PENDING status
- Receipt must have at least one line item
- Changes receipt status from PENDING to RCV
- Creates AVAILABLE receive tasks for each line item (one per line for loose items, one per storage unit for containerised items)
- Stock records are NOT created at this stage — they are created when individual receive tasks are completed via the receive tasks endpoint
- Returns the updated receipt with RCV status
No Request Body Required
The receipt ID is provided in the URL path. No request body is needed.Authorizations
OAuth 2.0 authentication. Use the client credentials or authorization code flow to obtain an access token.
FlowAuthorization Code
- Authorization URL
- https://clarus-api.com/oauth/authorize
- Token URL
- https://clarus-api.com/oauth/token
FlowClient Credentials
- Token URL
- https://clarus-api.com/oauth/token
The subdomain/tenant name identifying which tenant's data to access. Required for all API requests.
Path Parameters
The unique identifier of the goods in receipt to receive
Response
Receipt received successfully
Show child attributes
Show child attributes

