Checkout web o app: sesión de cobro y webhook firmado

Checkout web o app: sesión de cobro y webhook firmado A sequence diagram generated by Archify. POST /sesiones · monto, referencia, webhookUrl X-API-Key nunca al navegador 201 sesionId + token + urlPago sesionId + token (15 min) GET /sesiones/{id} · Bearer → medios[] + campos POST /medio · riel + campos intención + intento C2P · transferencia · despacho al terminal aprobado GET /estado · cada 2 s APROBADA + recibo → returnUrl webhook · X-Finora-Signature t=,v1=,v0= HMAC-SHA256 · reintentos Sesión Pago Veredicto Backend del comercio · X-API-Key · Sequence participant Backend del comercio X-API-Key Web o app · @finora/checkout · página alojada · Sequence participant Web o app @finora/checkout · página alojada Checkout API · /api/v1/checkout/sesiones · Sequence participant Checkout API /api/v1/checkout/sesiones Merchant · orquestación · rieles · Sequence participant Merchant orquestación · rieles Banco o terminal · autorizador · AuroraPOS · Sequence participant Banco o terminal autorizador · AuroraPOS Legend request return security async trace default message

Tres formas de integrar

  • • <finora-checkout sesion token> en la web del comercio
  • • Página alojada pago.finoracore.com/s/{id}?t=
  • • Solo API: la app nativa consulta y avanza la sesión

Seguridad

  • • La clave de API vive en el backend; el token de 32 bytes solo sirve para esa sesión
  • • CORS abierto solo en /sesiones/{id}/* con token
  • • El PAN nunca pasa por el SDK: tarjeta = terminal físico

Webhook firmado

  • • Firma en cada envío con t= y HMAC(secreto, t.cuerpo)
  • • Tolerancia 5 min; v0 se conserva una versión
  • • Estados: APROBADA · RECHAZADA · EN_DUDA · CANCELADA · EXPIRADA