# Warehouse Transfers

`GET /inventory/warehouse-transfers`

Group: Inventory › Warehouse Transfers · Operation ID: `warehouseTransfers`

Returns a list of warehouse transfers. To filter by item, use POST inventory/warehouse-transfers/search.

The warehouse transfer collection, headers only. It returns lineCount in place of the lines, which a collection field cannot contain. Every other field matches GET inventory/warehouse-transfers/:id. To filter by item, use POST inventory/warehouse-transfers/search, where itemId lives. transferType and billingStatus are both filterable, so committed intercompany transfers that are not yet billed are one query.

[Open in the interactive reference](https://docs.api.lensing.ai/?op=warehouseTransfers)

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `Api-Version` | header | `"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, like
- `documentNumber` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `documentStatus` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `documentDate` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `transferType` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `entityId` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `toEntityId` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `locationId` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `targetLocationId` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `billingStatus` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- `lastModifiedDate` — filter by eq, ne, gt, gte, lt, lte, in, notIn, between, like
- 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, destinationAmount, notes, lineCount, createdDate, lastModifiedDate

## Response

`200` Success

Under `data`, an array of warehouseTransfersRow:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | no | The unique identifier for the transfer. |
| `documentNumber` | string or null | no | The transfer's number, for example 'WTR-2291'. |
| `documentStatus` | string | no | The status of the transfer. Possible values: 'DRAFT', 'COMMITTED', 'CANCELLED'. |
| `documentDate` | string (date) or null | no | The date the transfer is dated. Format YYYY-MM-DD. |
| `referenceNumber` | string or null | no | Your own reference on the transfer. |
| `transferType` | string or null | no | The type of transfer. Possible values: 'NORMAL', 'INTERCOMPANY', 'INTERCOMPANY_RETURN'. An intercompany transfer sells the goods to another legal entity and can be billed. |
| `entityId` | string or null | no | The legal entity the goods leave. See id on GET base/entities. |
| `entityName` | string or null | no | The name of that legal entity. |
| `toEntityId` | string or null | no | The legal entity receiving the goods, on an intercompany transfer. See id on GET base/entities. |
| `toEntityName` | string or null | no | The name of that legal entity. |
| `locationId` | string or null | no | The warehouse the goods leave. See id on GET inventory/warehouses/:id. |
| `locationCode` | string or null | no | The code of that warehouse. |
| `locationName` | string or null | no | The name of that warehouse. |
| `targetLocationId` | string or null | no | The warehouse the goods go to. See id on GET inventory/warehouses/:id. |
| `targetLocationCode` | string or null | no | The code of that warehouse. |
| `targetLocationName` | string or null | no | The name of that warehouse. |
| `billingStatus` | string or null | 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 or null | no | The identifier of the intercompany bill this transfer created, as the platform's own number. GET accounting/vendor-bills/:id takes a UUID, so this number cannot fetch that bill. |
| `contractualCurrency` | string or null | 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 or null | no | The currency the amounts on the transfer are stated in, the source entity's functional currency. Format ISO 4217, for example 'EUR'. |
| `sourceAmount` | string (decimal) or null | no | What the goods were worth leaving the source entity, in the transfer's currency. Written by the commit. |
| `destinationAmount` | string (decimal) or null | no | What the goods were worth arriving at the destination entity, in the transfer's currency. On an intercompany transfer it differs from sourceAmount, and the difference is the margin. |
| `notes` | string or null | no | Free text on the document. |
| `lineCount` | number or null | no | The number of lines on the transfer. |
| `createdDate` | string (date-time) or null | no | The date and time the transfer was created, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. |
| `lastModifiedDate` | string (date-time) or null | no | The date and time the transfer record last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. |

## Statuses

- `400` — Invalid request or business failure
- `401` — Missing or invalid access token
- `403` — Not authorized
- `404` — Not found
- `429` — Too many requests
- `500` — Internal server error
