Beacon

Quickstart de extremo a extremo

Ver como Markdown

Quickstart de extremo a extremo

Configura Beacon con Stripe y valida el flujo completo en menos de 20 minutos.

tutorial • updated 2026-03-17

Antes de empezar

RequisitoPor qué es necesario
Cuenta Stripe existenteOAuth read-only e ingestión de pagos visibles
Sesión Beacon autenticada como OWNER o ADMINoperaciones API autenticadas con contexto real de organización
URL pública HTTPS para webhooksingesta segura de eventos
Entorno de test aisladovalidación sin impacto en live

Mapa del flujo end-to-end

  1. Conectar Stripe.
  2. Registrar y validar webhooks.
  3. Crear checkout de suscripción.
  4. Confirmar estado final en dashboard.
  5. Validar señales fiscales y de observabilidad.

Paso a paso

  1. 11) Conectar Stripe existente

    Completa OAuth read-only y valida la ingestión visible en el dashboard.
  2. 22) Configurar webhooks

    Registra los endpoints Beacon en Stripe, guarda los secrets por entorno y valida la firma.
  3. 33) Crear checkout

    Llama al endpoint real de checkout y redirige al usuario a redirectUrl.
  4. 44) Confirmar resultado

    Tras el retorno del checkout, confirma la suscripción con sessionId o con el checkout pendiente.
  5. 55) Validar operación

    Comprueba estado final en dashboard, procesamiento del webhook y señales fiscales/operativas.

Ejemplo API

bash
curl -X POST "https://test.beacon.pt/api/billing/subscription/checkout?org=acme&mode=test" \
  -H "Authorization: Bearer <beacon_session_token>" \
  -H "Content-Type: application/json" \
  -d '{"plan":"plus","billingCycle":"monthly"}'

Validación final

  • Checkout devuelve checkoutSessionId y redirectUrl.
  • POST /api/billing/subscription/confirm devuelve subscription para la organización correcta.
  • El procesamiento del webhook guarda webhookEventId sin duplicados inesperados.
  • Estado de dashboard coherente con la línea temporal operativa.
  • Sin alertas críticas en observabilidad.

Troubleshooting rápido

SíntomaDiagnóstico probableAcción inmediata
checkout creado pero estado no cambiafalta confirmación post-retornollamar POST /api/billing/subscription/confirm y validar eventos
webhook rechazadofirma inválidarevisar secret y desfase de reloj
conflicto 409checkout pendiente, suscripción activa o bloqueo de dominioinspeccionar el estado actual antes de reintentar