Saltar al contenido principal

Stock

Consultar stock por variante

GET /api/v1/inventory/stock?variant_id=:id

Retorna el stock en todas las bodegas para una variante.

Respuesta 200:

{
"data": [
{
"variant_id": "uuid",
"warehouse_id": "uuid",
"warehouse_name": "Almacén Central",
"available": 150,
"reserved": 5,
"committed": 10
}
]
}

Listar todo el stock

GET /api/v1/inventory/stock/all

Parámetros:

NombreTipoDescripción
cursorstringCursor de paginación
limitintItems por página (default 50)

Ajustar stock

POST /api/v1/inventory/stock/adjust

{
"variant_id": "uuid",
"warehouse_id": "uuid",
"mode": "delta",
"quantity": -10,
"reason": "damage",
"note": "Productos dañados en tránsito"
}
CampoRequeridoTipoDescripción
variant_iduuidID de la variante
warehouse_iduuidID de la bodega
modestringset (absoluto) o delta (relativo +/-)
quantityintCantidad (negativa para restar en modo delta)
reasonstringrecount, damage, return, correction, other
notenostringNota descriptiva

Historial de movimientos

GET /api/v1/inventory/stock/movements?variant_id=:id

Parámetros:

NombreTipoDescripción
variant_iduuidID de la variante
pageintPágina (paginación offset)

Respuesta 200:

{
"data": [
{
"id": "uuid",
"variant_id": "uuid",
"warehouse_id": "uuid",
"delta": -10,
"reason": "damage",
"note": "Productos dañados en tránsito",
"changed_by": "[email protected]",
"created_at": "2026-04-08T12:00:00Z"
}
]
}

Reservar / Liberar / Confirmar stock

Estos endpoints se usan internamente durante el flujo de checkout:

AcciónMétodoEndpoint
ReservarPOST/api/v1/inventory/stock/reserve
LiberarPOST/api/v1/inventory/stock/release
ConfirmarPOST/api/v1/inventory/stock/commit
{
"variant_id": "uuid",
"warehouse_id": "uuid",
"quantity": 2,
"reference_id": "uuid-de-orden"
}