Saltar al contenido principal

POS (Point of Sale)

Sistema de punto de venta para ventas presenciales. Gestiona sesiones de caja, ventas y hardware (impresora térmica, cajón de dinero).

Sesiones

Abrir sesión

POST /api/v1/pos/sessions
{
"staff_id": "uuid-del-staff",
"cash_opening": 50000
}
CampoTipoRequeridoDescripción
staff_iduuidID del staff que abre la sesión
cash_openingint64NoMonto de apertura de caja en céntimos

Cerrar sesión

POST /api/v1/pos/sessions/:id/close

Obtener sesión

GET /api/v1/pos/sessions/:id

Listar ventas por sesión

GET /api/v1/pos/sessions/:id/sales

Sincronizar ventas offline

POST /api/v1/pos/sessions/:id/sync

Ventas

Crear venta

POST /api/v1/pos/sales

Agregar item

POST /api/v1/pos/sales/:id/items

Aplicar descuento

POST /api/v1/pos/sales/:id/discount

Completar venta

POST /api/v1/pos/sales/:id/complete

Cancelar venta

POST /api/v1/pos/sales/:id/cancel

Obtener venta

GET /api/v1/pos/sales/:id

Imprimir recibo

POST /api/v1/pos/sales/:id/print

Productos

Buscar producto

GET /api/v1/pos/products?q=codigo-o-nombre

Impresora

Configurar impresora

POST /api/v1/pos/printers

Listar impresoras

GET /api/v1/pos/printers

Cajón de dinero

Abrir cajón

POST /api/v1/pos/drawer/open

Estados de sesión

EstadoDescripción
openSesión activa, aceptando ventas
closedSesión cerrada, cierre de caja completado

Estados de venta

EstadoDescripción
draftVenta en progreso
completedVenta completada y cobrada
cancelledVenta cancelada