Skip to main content
Para probar webhooks localmente, expone tu servidor con un tunnel HTTPS. En produccion SimplePay rechaza endpoints locales, privados o sin HTTPS.

1. Levanta tu handler

terminal
Ejemplo Express con raw body:
server.ts

2. Abre un tunnel HTTPS

Usa un tunnel HTTPS de desarrollo o tu herramienta equivalente:
terminal
Registra la URL publica:
terminal

3. Crea un evento real

Para Hosted Checkout:
  1. Crea una Checkout Session.
  2. Completa el pago en sandbox.
  3. Observa el POST al tunnel.
Para Bookable Payments:
  1. Crea setup y booking checkout.
  2. Completa o simula el resultado de pago.
  3. Espera booking.confirmed, booking.expired o booking.cancelled.

4. Reintenta con replay

terminal

Casos que debes probar

1

Firma valida

Tu handler acepta payload firmado con timestamp reciente.
2

Firma invalida

Tu handler rechaza payload alterado o secret equivocado.
3

Timestamp viejo

Tu handler rechaza replay externo fuera de tolerancia.
4

Evento duplicado

Tu handler responde 2xx y no repite side effects.
5

Falla temporal

Tu handler puede fallar y luego procesar por replay sin romper consistencia.

Simular firma en tests

sign-test-payload.ts
Guarda fixtures de payloads reales de sandbox despues de remover datos sensibles. Son oro para tests de regresion.
Last modified on June 21, 2026