---
title: "Transfer Order - Create"
method: POST
path: "/transfer_order/create"
tags: ["transfer_order"]
---

# Transfer Order - Create

`POST /transfer_order/create`

Create a new transfer order to move inventory between warehouses.

## Request body

- object
  - `number` number, nullable — Transfer order number (auto-generated if null)
  - `items` object[], required — Items to include in the transfer order
    - `item_id` string, required — Catalog item ID
    - `source_location_id` string — Source location ID
    - `destination_location_id` string — Destination location ID
    - `quantity` number, required — Quantity to transfer
  - `source_warehouse_id` string, required — Source warehouse ID
  - `destination_warehouse_id` string, required — Destination warehouse ID
  - `notes` string, nullable — Transfer order notes

## Response `200`

Transfer order created

- object
  - `success` boolean, required — Whether the operation succeeded
  - `_id` string, required — ID of the created resource

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden. Insufficient permissions.
- `429` — Too many requests. Rate limit exceeded.
- `500` — Internal server error.

## Changes

> 13 revisions in range; 1 could not be searched.

- **2026-03-02** `fa53dd949b8e` — 5 breaking, 12 info
  - added the new required request property `items/items/item_id`
  - added the new required request property `items/items/quantity`
  - the request property `destination_warehouse_id` became required
  - the request property `items` became required
  - …13 more
- **2024-04-22** `08cd9cfa14dd` — 1 breaking, 5 warning, 2 info
  - added required request body
  - deleted the `query` request parameter `destination_warehouse_id`
  - deleted the `query` request parameter `items`
  - deleted the `query` request parameter `notes`
  - …4 more
- **2024-04-19** `46ceda528000` — 2 breaking, 11 info
  - removed the request body
  - removed the media type `application/json` for the response with the status `200`
  - api operation id `post_transfer_order_create` removed and replaced with ``
  - added the new optional `query` request parameter `destination_warehouse_id`
  - …9 more

[Change history](https://skmtc.dev/skulabs/apis/skulabs-api/changes/transfer_order/create/post.md)

---

[API](https://skmtc.dev/skulabs/apis/skulabs-api.md) · [All operations](https://skmtc.dev/skulabs/apis/skulabs-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/skulabs/skulabs-api/revisions/4b5ec0ed78a6/schema)
