List warehouse transfers
Operation ID: warehouseTransfers
Group: Inventory › Warehouse Transfers
Open in the interactive reference
GET /inventory/warehouse-transfers
Read-only: Reads and returns; changes nothing.
Lists warehouse transfers. Each transfer comes back without its lines, with lineCount instead. Every other field matches GET inventory/warehouse-transfers/:id.
To find intercompany transfers that are committed but not billed, filter on transferType 'INTERCOMPANY', documentStatus 'COMMITTED' and billingStatus 'NOT_BILLED'.
To filter by item, use POST inventory/warehouse-transfers/search.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
Api-Version |
header | string · v1 | yes | The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1. |
Query surface
id— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likedocumentNumber— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likedocumentStatus— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likedocumentDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweentransferType— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likeentityId— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, liketoEntityId— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likelocationId— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, liketargetLocationId— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likebillingStatus— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likelastModifiedDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, between- Orderable: id, documentNumber, documentDate, documentStatus, transferType, createdDate, lastModifiedDate
- Selectable: id, documentNumber, documentStatus, documentDate, referenceNumber, transferType, entityId, entityName, toEntityId, toEntityName, locationId, locationCode, locationName, targetLocationId, targetLocationCode, targetLocationName, billingStatus, intercompanyBillId, contractualCurrency, currency, sourceAmount, destinationCurrency, destinationAmount, notes, lineCount, createdDate, lastModifiedDate
page[size]— Page sizepage[cursor]— Opaque continuation cursor
Response
200 Success
Under data, an array of warehouseTransfersRow:
| Field | Type | Required | Filter | Sort | Description |
|---|---|---|---|---|---|
id |
string | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The unique identifier for the transfer. Example: "c41f9a08-6b23-4e57-90d8-2f7a5c31e0b6". |
documentNumber |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The transfer's number, for example 'WTR-2291'. Example: "WTR-2291". |
documentStatus |
string | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The status of the transfer. Possible values: 'DRAFT', 'COMMITTED', 'CANCELLED'. Example: "DRAFT". |
documentDate |
date | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The date the transfer is dated. Format YYYY-MM-DD. Example: "2026-08-18". |
referenceNumber |
string | null | no | no | no | Your own reference on the transfer. |
transferType |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The type of transfer. Possible values: 'NORMAL', 'INTERCOMPANY', 'INTERCOMPANY_RETURN'. An intercompany transfer sells the goods to another legal entity and can be billed. Example: "NORMAL". |
entityId |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
no | The legal entity the goods leave. See id on GET base/entities. Example: "1a9c4e70-38b5-4d26-9f01-7c2e5b8a6d43". |
entityName |
string | null | no | no | no | The name of that legal entity. Example: "Acme Netherlands B.V.". |
toEntityId |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
no | The legal entity receiving the goods, on an intercompany transfer. See id on GET base/entities. |
toEntityName |
string | null | no | no | no | The name of that legal entity. |
locationId |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
no | The warehouse the goods leave. See id on GET inventory/warehouses/:id. Example: "b6f0d2a4-77c1-4e39-8a52-0c4e1f9b73d5". |
locationCode |
string | null | no | no | no | The code of that warehouse. Example: "WH-CENTRAL". |
locationName |
string | null | no | no | no | The name of that warehouse. Example: "Central warehouse". |
targetLocationId |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
no | The warehouse the goods go to. See id on GET inventory/warehouses/:id. Example: "e94a17c3-5b28-4d60-91f7-3a8c2e05b6d1". |
targetLocationCode |
string | null | no | no | no | The code of that warehouse. Example: "WH-NORTH". |
targetLocationName |
string | null | no | no | no | The name of that warehouse. Example: "Northern depot". |
billingStatus |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
no | The billing status of the transfer. Possible values: 'NOT_BILLED', 'BILLED'. Only an intercompany transfer is billed, through POST inventory/warehouse-transfers/:id/bill. |
intercompanyBillId |
string | null | no | no | no | The numeric id of the intercompany bill this transfer created, not a UUID. It does not match id on GET accounting/intercompany-bills/:id. |
contractualCurrency |
string | null | no | no | no | The currency an intercompany transfer is contracted in. Format ISO 4217, for example 'EUR'. Each line's unitTransferValue is stated in it. |
currency |
string | null | no | no | no | The currency sourceAmount is stated in, the source entity's functional currency. Format ISO 4217, for example 'EUR'. Example: "EUR". |
sourceAmount |
decimal | null | no | no | no | What the goods were worth leaving the source entity, in currency. Written by the commit. |
destinationCurrency |
string | null | no | no | no | The currency destinationAmount is stated in, the destination entity's functional currency. Format ISO 4217, for example 'GBP'. Differs from currency on an intercompany transfer between entities with different functional currencies. |
destinationAmount |
decimal | null | no | no | no | What the goods were worth arriving at the destination entity, in destinationCurrency. Written by the commit. On an intercompany transfer it differs from sourceAmount; when both share a currency, the difference is the margin. |
notes |
string | null | no | no | no | Free text on the document. |
lineCount |
number | null | no | no | no | The number of lines on the transfer. Example: 1. |
createdDate |
date-time | null | no | no | yes | The date and time the transfer was created, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. Example: "2026-08-18T09:14:22.104Z". |
lastModifiedDate |
date-time | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The date and time the transfer record last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. Example: "2026-08-18T09:14:22.517Z". |
{
"data": [
{
"id": "c41f9a08-6b23-4e57-90d8-2f7a5c31e0b6",
"documentNumber": "WTR-2291",
"documentStatus": "DRAFT",
"documentDate": "2026-08-18",
"referenceNumber": "<referenceNumber>",
"transferType": "NORMAL",
"entityId": "1a9c4e70-38b5-4d26-9f01-7c2e5b8a6d43",
"entityName": "Acme Netherlands B.V.",
"toEntityId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"toEntityName": "<toEntityName>",
"locationId": "b6f0d2a4-77c1-4e39-8a52-0c4e1f9b73d5",
"locationCode": "WH-CENTRAL",
"locationName": "Central warehouse",
"targetLocationId": "e94a17c3-5b28-4d60-91f7-3a8c2e05b6d1",
"targetLocationCode": "WH-NORTH",
"targetLocationName": "Northern depot",
"billingStatus": "<billingStatus>",
"intercompanyBillId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"contractualCurrency": "<contractualCurrency>",
"currency": "EUR",
"sourceAmount": "19.99",
"destinationCurrency": "<destinationCurrency>",
"destinationAmount": "19.99",
"notes": "<notes>",
"lineCount": 1,
"createdDate": "2026-08-18T09:14:22.104Z",
"lastModifiedDate": "2026-08-18T09:14:22.517Z"
}
],
"pagination": {
"hasMore": true,
"nextCursor": "<nextCursor>"
}
}
Statuses
400— Invalid request or business failure401— The request carries no valid access token.403— Not authorized404— Not found429— Too many requests from this client address. The response has no body and noRetry-Afterheader.500— Internal server error