ODECISDocumentacion
Ir al Sistema

API REST

Endpoints disponibles para integracion con ODECIS

Todos los endpoints requieren autenticacion JWT. Incluye el header Authorization: Bearer <token> en cada peticion.

Base URL: https://api.odecis.com

Productos

GET/products

Lista todos los productos de tu organizacion

Params: ?page=1&limit=20&search=texto&categoryId=uuid

GET/products/:id

Obtiene el detalle de un producto especifico

POST/products

Crea un nuevo producto

PATCH/products/:id

Actualiza un producto existente

DELETE/products/:id

Elimina un producto (soft delete)

Ejemplo: Crear 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

GET/stock

Lista el stock actual de todos los productos

Params: ?locationId=uuid&lowStock=true

GET/stock/:productId

Stock de un producto en todas las ubicaciones

POST/adjustments

Crea un ajuste de inventario (entrada/salida)

GET/adjustments

Lista ajustes de inventario

GET/transfers

Lista transferencias entre ubicaciones

POST/transfers

Crea una transferencia entre ubicaciones

Ventas

GET/sales-orders

Lista ordenes de venta

Params: ?status=pending&from=2025-01-01&to=2025-12-31

GET/sales-orders/:id

Detalle de una orden de venta

POST/sales-orders

Crea una nueva orden de venta

PATCH/sales-orders/:id/status

Actualiza el estado de una orden

Clientes

GET/customers

Lista todos los clientes

Params: ?search=nombre&type=natural|juridica

GET/customers/:id

Detalle de un cliente

POST/customers

Crea un nuevo cliente

PATCH/customers/:id

Actualiza un cliente

Facturacion Electronica

GET/facturacion/comprobantes

Lista comprobantes electronicos emitidos

Params: ?tipo=01|03|07&from=2025-01-01

GET/facturacion/comprobantes/:id

Detalle de un comprobante con XML/PDF

POST/facturacion/emitir

Emite un nuevo comprobante electronico

Formato de respuesta

Todas las respuestas siguen este formato:

// Exito (200, 201)
{
  "id": "uuid",
  "name": "...",
  // ... datos del recurso
}

// Lista con paginacion
{
  "data": [...],
  "meta": {
    "total": 150,
    "page": 1,
    "limit": 20,
    "totalPages": 8
  }
}

// Error (400, 401, 403, 404, 500)
{
  "statusCode": 400,
  "message": "Descripcion del error",
  "error": "Bad Request"
}