Sondear o esperar un aviso
Confirmar un pago SPEI tiene dos caminos. El primero es sondear: tu sistema pregunta cada cierto tiempo si el pago ya se liquidó, con una llamada a la API de validación. El segundo es esperar un aviso: un webhook, una notificación que el servicio envía a tu propia URL en cuanto hay veredicto.
Sondear es más simple de programar, pero cuesta llamadas y tarda lo que tarde el intervalo que elijas. Un webhook llega en cuanto hay novedad, pero exige que tu servidor esté listo para recibirlo y responder.
Cuando el aviso no llega
Un webhook puede no llegar: tu servidor estuvo caído, la red falló, o tu firewall lo bloqueó sin que te dieras cuenta. El patrón estándar es que quien envía el aviso reintente varias veces, espaciando cada intento, y que quien lo recibe confirme con una respuesta HTTP exitosa en cuanto lo procesó.
Si tu servidor tarda en responder, el remitente puede interpretar eso como una falla y reintentar de más. Procesa rápido y confirma la recepción antes de hacer trabajo pesado con el evento.
ImportanteSi tu servidor no puede recibir avisos por ahora (está detrás de un firewall, o no tienes una URL pública todavía), sondear sigue siendo una opción válida: es más lento, pero no depende de que alguien más te encuentre.
En VerikoLos webhooks reintentan con intervalos crecientes cuando tu servidor no responde, y puedes enviarte un evento de prueba antes de ir a producción, sin esperar a un pago real.
No proceses el pago dos veces
Si sondeas y además recibes un webhook, o si un webhook se reintenta, tu sistema puede ver el mismo pago más de una vez. Sin una forma de reconocer «esto ya lo procesé», el riesgo es duplicar un cobro o una entrega.
El mecanismo estándar es una cabecera de idempotencia: un identificador único que tú generas por operación, y que el servicio usa para reconocer una solicitud repetida y devolver el mismo resultado sin repetir el efecto.
NotaEl identificador de idempotencia lo generas tú, no el servicio: usa uno por operación de negocio (un pedido, un cobro), no uno por cada intento de red.
Cómo lo hace Veriko
Veriko ofrece los dos caminos: puedes consultar una validación por su identificador cuando quieras, o suscribir un webhook que avisa en cuanto Banxico responde. Los dos entregan el mismo veredicto.
Los webhooks van firmados, para que puedas confirmar que el aviso es nuestro y no de alguien más; si tu servidor no responde, reintentan solos; y cada solicitud acepta una cabecera de idempotencia, así que reenviar la misma operación por error no la procesa dos veces.
| Qué necesitas | A mano, sin estos patrones | Con Veriko |
|---|---|---|
| Datos | Sondeo manual, escrito y mantenido por ti | Consulta por API o webhook, a elegir |
| Horario | Depende de cuándo corra tu sondeo | A cualquier hora, con reintentos automáticos |
| Volumen | Un pago a la vez, si lo escribes tú | Cientos de pagos por webhook o por lote |
| Resultado | El código que tú definas para leer la respuesta | Veredicto estructurado, firmado, con reintentos e idempotencia |
| Registro | El que tú construyas | Historial de entregas de cada webhook, exportable |
Si integras estos patrones tú mismo, hay un plan gratis que no caduca para probarlos antes de decidir. La página de precios compara los planes.
Preguntas frecuentes
¿Qué es un webhook, en una frase?
Una notificación que un servicio envía a tu servidor cuando algo cambia, en vez de que tú preguntes tú mismo.
¿Es mejor sondear o usar un webhook?
Depende de tu volumen. Con pocos pagos, sondear es más simple de programar; con muchos, un webhook ahorra llamadas y tiempo.
¿Qué pasa si mi servidor no responde a un webhook?
El remitente lo interpreta como una falla y reintenta más tarde. Si tu servidor tarda mucho en levantarse, puedes perder avisos entre reintento y reintento.
¿Cuántas veces reintenta un webhook antes de rendirse?
Depende de cada servicio; el patrón común es varios intentos con espacios cada vez más largos, y luego dejarlo. Revisa el historial de entregas para saber si un aviso se perdió.
¿Qué es la idempotencia y por qué importa en pagos?
Es la garantía de que repetir la misma operación no repite su efecto. En pagos importa porque un reintento de red no debe convertirse en un cobro duplicado.
¿Cómo sé que un webhook es auténtico?
Un webhook serio va firmado: el remitente incluye una firma calculada con una clave secreta que sólo tú y él conocen, y tu servidor la verifica antes de confiar en el contenido.
¿Puedo usar sólo sondeo, sin webhooks?
Sí. Sondear siempre funciona y no exige tener un servidor con URL pública; sólo cuesta más llamadas y responde con el retraso de tu propio intervalo.