API REST
Todos los endpoints requieren autenticación JWT: incluye Authorization: Bearer <token> en cada petición. La base es https://api.odecis.com.
Productos
| Método | Ruta | Qué hace |
|---|---|---|
GET | /products | Lista todos los productos de tu organización |
GET | /products/:id | Detalle de un producto |
POST | /products | Crea un producto |
PATCH | /products/:id | Actualiza un producto existente |
DELETE | /products/:id | Elimina un producto (borrado lógico) |
Parámetros de GET /products: ?page=1&limit=20&search=texto&categoryId=uuid
Ejemplo — crear un producto:
curl -X POST https://api.odecis.com/products \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Laptop HP ProBook",
"sku": "LAP-HP-001",
"price": 2499.90,
"cost": 1800.00,
"categoryId": "uuid-categoria",
"trackStock": true
}'
Inventario
| Método | Ruta | Qué hace |
|---|---|---|
GET | /stock | Stock actual de todos los productos |
GET | /stock/:productId | Stock de un producto en todas sus ubicaciones |
POST | /adjustments | Crea un ajuste de inventario (entrada o salida) |
GET | /adjustments | Lista los ajustes de inventario |
GET | /transfers | Lista las transferencias entre ubicaciones |
POST | /transfers | Crea una transferencia entre ubicaciones |
Parámetros de GET /stock: ?locationId=uuid&lowStock=true
El locationId es la ubicación, no el almacén completo: si no sabes cuál es la diferencia, está explicada en Ubicación vs Layout.
Ventas
| Método | Ruta | Qué hace |
|---|---|---|
GET | /sales-orders | Lista las órdenes de venta |
GET | /sales-orders/:id | Detalle de una orden |
POST | /sales-orders | Crea una orden de venta |
PATCH | /sales-orders/:id/status | Actualiza el estado de una orden |
Parámetros de GET /sales-orders: ?status=pending&from=2025-01-01&to=2025-12-31
Clientes
| Método | Ruta | Qué hace |
|---|---|---|
GET | /customers | Lista todos los clientes |
GET | /customers/:id | Detalle de un cliente |
POST | /customers | Crea un cliente |
PATCH | /customers/:id | Actualiza un cliente |
Parámetros de GET /customers: ?search=nombre&type=natural|juridica
Facturación electrónica
| Método | Ruta | Qué hace |
|---|---|---|
GET | /facturacion/comprobantes | Lista los comprobantes emitidos |
GET | /facturacion/comprobantes/:id | Detalle de un comprobante, con su XML y su PDF |
POST | /facturacion/emitir | Emite un comprobante electrónico |
Parámetros de GET /facturacion/comprobantes: ?tipo=01|03|07&from=2025-01-01
Los códigos de tipo son los del catálogo de SUNAT: están en Tipos de comprobante.