# Crear transferencia

**POST** /v1/inventory/transfers

Mueve stock de una ubicación a otra. Se descuenta inmediatamente del origen y el estado pasa a in_transit; el destino recibe el stock al confirmar PUT /v1/inventory/transfers/:id/receive. Para mover un lote concreto, indica batch_id; se verifica que tenga stock suficiente en origen.

| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| from_location_id | integer | Sí | Ubicación de origen. |
| to_location_id | integer | Sí | Destino, distinto del origen. |
| listing_id | integer | Sí | Anuncio que se transferirá. |
| quantity | integer | Sí | Cantidad que se moverá. |
| batch_id | integer | No | Lote concreto; valida sus existencias en origen. |
| note | string | No | Nota de transferencia. |
| expected_at | timestamp | No | Fecha estimada de llegada. |

Respuesta transfer: objeto creado.
