Exportar stock BETA
Pueden cambiar de contrato, comportamiento o ser retirados antes de su release definitivo.
Listar depósitos
Devuelve los depósitos de las sucursales habilitadas para
tu integración, para que descubras los depositoId válidos antes de exportar stock. Cada
depósito ya viene asociado a su sucursal.
Si tu integración todavía no tiene sucursales habilitadas, el endpoint devuelve los depósitos
configurados en tu canal (lo mismo que
GET /integraciones/terceros/config/depositos),
así el flujo de pedidos y stock sigue funcionando. Eso no habilita a exportar stock de esos
depósitos: exportar/stock sigue exigiendo que su sucursal esté habilitada.
Si en cambio necesitás únicamente los depósitos asociados a esta integración, usá
GET /integraciones/terceros/config/depositos.
/integraciones/terceros/depositosRespuesta
export interface Deposito {
depositoId: number;
nombre: string;
direccion: string;
eliminado: boolean;
sucursalId?: number;
sucursalNombre?: string;
}
Rate limiting
Comparte el rate limit de los endpoints de parámetros de terceros: 60 segundos en
producción (10 segundos en test). 403 Forbidden si se llama antes de que expire la
ventana.
Ejemplo
curl --request GET \
--url 'https://api.test-ninox.com.ar/integraciones/terceros/depositos' \
--header 'X-NX-TOKEN: {TU_TOKEN}'
Exportar stock
Exporta el snapshot de stock de un depósito. Útil para sincronizar inventario hacia un sistema externo (BI, e-commerce, WMS).
El filtro es siempre por depósito: el integrador no necesita conocer la sucursal, que el
ERP resuelve internamente a partir del depositoId. Obtené los depósitos válidos con
GET /integraciones/terceros/depositos.
/integraciones/terceros/exportar/stockQuery parameters
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
depositoId | number | Sí | ID del depósito a exportar (la sucursal se deriva automáticamente). Su sucursal debe estar habilitada; si no, responde 403 |
tipoArticulo | number | No | Filtro por tipo de artículo |
web | boolean | No | Si es true, solo artículos publicados en web. No es lo mismo que "permite venta": un artículo puede estar habilitado para venta y no publicado en web |
uso | string | No | venta, compra o todos (default). Filtra por los tildes "permite venta" / "permite compra" del artículo, igual que el filtro Venta / Compra / Todos de "Ver Stock" en el ERP |
web o uso con un valor inválido responden 400 Bad Request con el detalle.
Sin uso, el export no filtra por venta ni por compra: incluye también la mercadería que
todavía está solo como "permite compra" (por ejemplo, recibida y aún no habilitada para la
venta). Equivale al filtro Todos de "Ver Stock". Si tus totales coinciden con el filtro
Venta del ERP, revisá si estás enviando web=true.
sucursalIdEl endpoint acepta un sucursalId legacy, pero conviene omitirlo: la sucursal se deriva
del depositoId. Si lo enviás, tiene que estar habilitado y coincidir con la sucursal del
depósito, o el request responde 403.
Respuesta
export interface StockPage {
registros: number;
cantidad: number;
reservado: number;
total: number;
stock: StockItem[];
}
export interface StockItem {
articuloId: number;
codigo: string;
descripcion: string;
sucursalId?: number;
sucursal: string;
depositoId?: number;
deposito: string;
colorId?: number;
colorNombre?: string;
talleId?: number;
talleNombre?: string;
cantidad: number;
reservado: number;
total: number;
fechaModificacion?: string;
permiteVenta: boolean; // tilde "permite venta" del artículo
permiteCompra: boolean; // tilde "permite compra" del artículo
}
Con permiteVenta y permiteCompra podés separar en una sola llamada el stock disponible para
la venta del que todavía es solo de compra, sin pedir el export dos veces (el rate limit no lo
permitiría dentro de la misma ventana).
La respuesta real del servidor incluye campos adicionales internos del ERP. Solo los campos listados forman parte del contrato estable; el resto puede cambiar sin aviso.
Rate limiting
Bucket compartido de exportaciones: 10 minutos en producción (3 minutos en test). Además, este endpoint requiere plan empresa o superior; si el tenant no cumple, responde con un error de validación.
Ejemplos
# Snapshot completo del stock de un depósito
curl --request GET \
--url 'https://api.test-ninox.com.ar/integraciones/terceros/exportar/stock?depositoId=4' \
--header 'X-NX-TOKEN: {TU_TOKEN}'
# Stock de un depósito, solo artículos publicados en web
curl --request GET \
--url 'https://api.test-ninox.com.ar/integraciones/terceros/exportar/stock?depositoId=4&web=true' \
--header 'X-NX-TOKEN: {TU_TOKEN}'
# Stock de un depósito, solo artículos habilitados para la venta
curl --request GET \
--url 'https://api.test-ninox.com.ar/integraciones/terceros/exportar/stock?depositoId=4&uso=venta' \
--header 'X-NX-TOKEN: {TU_TOKEN}'
Ver también
- Movimiento de stock — registrar ajustes de stock en el ERP.
- Esquema de datos — contratos completos.