
# Inventory Transfer

Represents the transfer of a quantity of product inventory at a
particular time from one location to another.

## Structure

`InventoryTransfer`

## Fields

| Name | Type | Tags | Description |
|  --- | --- | --- | --- |
| `id` | `string \| undefined` | Optional | A unique ID generated by Square for the<br>`InventoryTransfer`.<br>**Constraints**: *Maximum Length*: `100` |
| `referenceId` | `string \| null \| undefined` | Optional | An optional ID provided by the application to tie the<br>`InventoryTransfer` to an external system.<br>**Constraints**: *Maximum Length*: `255` |
| `state` | [`string \| undefined`](../../doc/models/inventory-state.md) | Optional | Indicates the state of a tracked item quantity in the lifecycle of goods. |
| `fromLocationId` | `string \| null \| undefined` | Optional | The Square-generated ID of the [Location](entity:Location) where the related<br>quantity of items was tracked before the transfer.<br>**Constraints**: *Maximum Length*: `100` |
| `toLocationId` | `string \| null \| undefined` | Optional | The Square-generated ID of the [Location](entity:Location) where the related<br>quantity of items was tracked after the transfer.<br>**Constraints**: *Maximum Length*: `100` |
| `catalogObjectId` | `string \| null \| undefined` | Optional | The Square-generated ID of the<br>[CatalogObject](entity:CatalogObject) being tracked.<br>**Constraints**: *Maximum Length*: `100` |
| `catalogObjectType` | `string \| null \| undefined` | Optional | The [type](entity:CatalogObjectType) of the [CatalogObject](entity:CatalogObject) being tracked.<br><br>The Inventory API supports setting and reading the `"catalog_object_type": "ITEM_VARIATION"` field value.<br>In addition, it can also read the `"catalog_object_type": "ITEM"` field value that is set by the Square Restaurants app.<br>**Constraints**: *Maximum Length*: `14` |
| `quantity` | `string \| null \| undefined` | Optional | The number of items affected by the transfer as a decimal string.<br>Can support up to 5 digits after the decimal point.<br>**Constraints**: *Maximum Length*: `26` |
| `occurredAt` | `string \| null \| undefined` | Optional | A client-generated RFC 3339-formatted timestamp that indicates when<br>the transfer took place. For write actions, the `occurred_at` timestamp<br>cannot be older than 24 hours or in the future relative to the time of the<br>request.<br>**Constraints**: *Maximum Length*: `34` |
| `createdAt` | `string \| undefined` | Optional | An RFC 3339-formatted timestamp that indicates when Square<br>received the transfer request.<br>**Constraints**: *Maximum Length*: `34` |
| `source` | [`SourceApplication \| undefined`](../../doc/models/source-application.md) | Optional | Represents information about the application used to generate a change. |
| `employeeId` | `string \| null \| undefined` | Optional | The Square-generated ID of the [Employee](entity:Employee) responsible for the<br>inventory transfer.<br>**Constraints**: *Maximum Length*: `100` |
| `teamMemberId` | `string \| null \| undefined` | Optional | The Square-generated ID of the [Team Member](entity:TeamMember) responsible for the<br>inventory transfer.<br>**Constraints**: *Maximum Length*: `100` |

## Example (as JSON)

```json
{
  "id": "id8",
  "reference_id": "reference_id4",
  "state": "ORDERED_FROM_VENDOR",
  "from_location_id": "from_location_id0",
  "to_location_id": "to_location_id0"
}
```

