Eventos de pago
Las cargas de eventos de pago usan esta envoltura:tokenize: true), data.token la trae como { "id": "vt_...", "expirationDate": "...", "tokenCreationReference": "..." }, el mismo objeto que la respuesta del purchase. Una tarjeta en un pago asíncrono (el proveedor respondió pending) se guarda cuando el pago se resuelve. Si eso ocurre después de enviar el webhook, data.token no viene y recibes un evento token.created.
Los nombres de los eventos de webhook usan
refused donde el campo status de la respuesta síncrona de la API usa declined, y payment.<status> para estados terminales como expired. Coincide con la cadena event, no con un análisis de subcadena.Eventos de suscripción
Las cargas de eventos de suscripción usan una envoltura ligeramente diferente —subscription_id es un campo de nivel superior y data lleva el detalle específico del evento:
Eventos de tarjetas guardadas
Los eventos de tarjetas guardadas te avisan cuando se crea un token para un pago asíncrono y cuando un token que almacenaste deja de poder usarse. Consulta el ciclo de vida del token para ver las reglas de retención.Eventos de enlace de pago
Un enlace de pago envía sus propios eventos además de los eventos de pago anteriores. Un pago hecho en un enlace sigue enviando sus eventospayment.* habituales; los eventos payment_link.* describen lo que le pasó al enlace en sí. Usa data.payment_link_id para identificar el enlace, y data.payment_id o data.order_code para identificar el pago.
Los eventos de enlace de pago usan el mismo sobre que los eventos de pago:
Los eventos de enlace y los eventos de pago del mismo pago son entregas separadas y pueden llegar en cualquier orden. Relaciónalos por
data.order_code o data.payment_id, no por orden de llegada.
