Catálogo de eventos
IDPOS envía un POST con JSON a su URL cada vez que ocurre uno de estos eventos. Usted recibe únicamente los eventos que IDBI registró en su suscripción. Cada evento tiene un nombre de negocio, como Pago completo, y un identificador técnico, como order.paid_in_full, que es el valor que llega en event_type.
Eventos disponibles
Sección titulada «Eventos disponibles»| Evento | Identificador (event_type) | Qué significa | Cuándo llega |
|---|---|---|---|
| Orden aceptada | order.accepted | Hay una orden aceptada, con todo su detalle. | Cuando una orden pasa al estado «aceptada». |
| Pago completo | order.paid_in_full | Una orden ya está totalmente pagada. | Cuando una orden queda totalmente pagada. |
| Orden entregada | order.delivered | Una orden fue entregada. | Cuando una orden pasa al estado «entregada». |
| Comprobante emitido | voucher.issued | Se emitió una boleta, una factura o una nota de crédito. | Cuando se emite el comprobante. |
| Cierre de turno | shift.closed | Una caja cerró su turno, con el resumen de lo cobrado. | Cuando se cierra el turno de una caja. |
| Stock actualizado | stock.updated | Cambió el stock de un ítem en un almacén, con el stock total que quedó. | Cada vez que cambia el stock de un ítem en un almacén vinculado a un canal de venta externo. |
| Transferencia aceptada | transfer_request.accepted | Se aceptó una orden de transferencia entre almacenes, con todo su detalle. | Cuando una orden de transferencia pasa al estado «aceptada». |
| Documento de compra aceptado | purchase_document.accepted | Se aceptó una orden de compra o de servicio, con su proveedor y sus ítems. | Cuando un documento de compra pasa al estado «aceptada». |
Estructura común de todos los eventos
Sección titulada «Estructura común de todos los eventos»En la configuración estándar, todos los eventos usan el mismo sobre. event_type indica de qué evento se trata y data contiene el contenido específico. Una suscripción puede acordar con IDBI un formato de contenido distinto; esta documentación describe el formato estándar.
| Campo | Descripción |
|---|---|
event_idstring | Identificador único del evento. Es igual a la cabecera X-Webhook-Id. |
event_typestring | Tipo de evento, por ejemplo order.accepted. |
timestampstring | Fecha y hora del envío (UTC). Para verificar la firma use la cabecera X-Webhook-Timestamp, no este campo. |
api_versionstring | Versión de la API. La versión vigente es v1. |
dataobjeto | Contenido del evento. Su estructura depende de event_type. |
{ "event_id": "01J9ZK3Q7V4N8X2M5T6R1B0C9D", "event_type": "order.accepted", "timestamp": "2026-10-12T14:30:00Z", "api_version": "v1", "data": {}}En el ejemplo, data se muestra vacío para destacar el sobre. En un envío real contiene los campos descritos en la página de cada evento.
Qué hacer con cada campo del sobre
Sección titulada «Qué hacer con cada campo del sobre»| Campo | Uso recomendado |
|---|---|
event_id | Clave para descartar duplicados. No cambia entre reintentos. No asuma un formato concreto. |
event_type | Elija el procesamiento según este valor. Ignore los tipos que no reconozca, pero responda 2xx. |
timestamp | Fecha y hora del envío (UTC). Para el momento del hecho de negocio, use los campos de fecha de data. |
api_version | Verifique que sea una versión que su integración soporta. Consulte Compatibilidad y versionado. |
Cómo leer las tablas de campos
Sección titulada «Cómo leer las tablas de campos»Cada página de evento sigue el mismo orden: En pocas palabras, Cuándo llega, Para qué le sirve, Qué hacer al recibirlo, Ejemplo y Campos.
| Convención | Significado |
|---|---|
objeto.campo | Campo anidado dentro de un objeto. |
lista[].campo | Campo de cada elemento de una lista. |
| Tipo bajo el nombre | El tipo del campo, por ejemplo string (UUID) o entero. |
nulo | El campo puede venir con valor null. Si no aparece, siempre trae valor. |
string (2 dec) | Importe enviado como texto con 2 decimales, por ejemplo "54.00". |
string (5 dec) | Importe enviado como texto con 5 decimales, por ejemplo "45.76271". |
string (3 dec) | Costo enviado como texto con 3 decimales, por ejemplo "1.850". |
string (10 dec) | Cantidad o costo enviado como texto con 10 decimales, por ejemplo "2.0000000000". |
string (fecha) | Fecha o fecha y hora en formato de texto. |
Siguiente paso
Sección titulada «Siguiente paso»Empiece por Orden aceptada o revise cómo verificar la firma de cada envío.