Cada situación, qué hace la caja
| Situación | Qué hace la caja |
|---|---|
| La API no responde a tiempo | Cobra igual y reintenta acreditar los puntos más tarde, con la misma referencia. Nunca hace esperar al cliente en la fila. |
| Hay que reenviar un pedido | Usa la misma clave de idempotencia, generada una única vez del lado de la caja: reenviar el mismo pedido nunca lo ejecuta dos veces. |
| La caja estuvo sin conexión | Registra las ventas después, indicando la fecha real en que ocurrieron, hasta 30 días hacia atrás. |
| El cliente paga con puntos | Espera la confirmación de Bonuxo antes de aplicar el descuento. |
La venta nunca se frena
Acreditar puntos es algo que puede pasar un rato después de la venta. Si la API no responde a tiempo, la caja cobra con normalidad y reintenta más tarde con la misma referencia. El ticket es la clave de idempotencia: reintentar no duplica los puntos.
El canje es la excepción
A diferencia de una venta, un canje de puntos sí necesita confirmación de Bonuxo antes de aplicar el descuento en la caja: no hay forma segura de "prometer" un canje sin esa confirmación.
Un canje sin confirmar se anula solo. Por defecto el canje queda pendiente hasta que la caja lo confirma con el ticket de la venta. Si nadie lo confirma en 30 minutos, se anula y el cliente recupera sus puntos.
Ventas atrasadas y saldos de otro sistema
Para lo que no entra por la caja en el momento, existen las cargas por archivo CSV (lotes): ventas atrasadas de hasta 2 años y el saldo de apertura migrado de otro sistema (una sola vez por cliente). Pasan por el mismo motor e idempotencia que la API.
Hoy los lotes los sube el equipo de Bonuxo; el comercio ve el resultado y descarga las filas con error en Integraciones › API › Cargas por lote.
Siguientes pasos
Seguí con la integración
También te puede servir
WebhooksPlus
Tu sistema recibe un aviso firmado cada vez que pasa algo en el programa.
El catálogo que tu caja puede canjear por API.
¿Ya tenés cuenta? Hacelo ahora en Configuración → Integraciones → API.
Abrir en tu panel: Configuración → Integraciones → API