Conectar Stripe existente
Conectar una cuenta Stripe existente por OAuth read-only y entender los límites reales de visibilidad.
howto • updated 2026-03-18
Antes de empezar
- La app Stripe de Beacon debe estar registrada como Extension.
STRIPE_EXTENSION_ENABLED=trueen el entorno.- La cuenta Stripe ya existe y debe ser autorizada por un
OWNERoADMINen Beacon. - Usa el runtime correcto:
https://test.beacon.ptparamode=testyhttps://app.beacon.ptparamode=live.
Flujo recomendado
11) Iniciar OAuth
En el Dashboard Beacon, abreIntegracionesy lanzaPOST /api/stripe/oauth/start?org=<slug>&mode=<mode>.22) Autorizar cuenta existente
Stripe muestra el consentimiento OAuth para la cuenta existente. Beacon no crea cuentas nuevas.33) Validar callback
Stripe vuelve aGET /api/stripe/oauth/callback?code=...&state=.... Beacon validastate, intercambia elcodepor token y confirma que el scope devuelto incluyeread_only.44) Confirmar ingestión
La conexión quedaACTIVEy Beacon empieza a ingerir solo los pagos y movimientos visibles en esa cuenta Stripe.
Qué implica este modelo
- Beacon no controla pagos y no crea cuentas Stripe.
- Beacon solo ingiere lo que es visible en la cuenta conectada.
- Si el cargo original permanece en la cuenta de una plataforma third-party, la visibilidad puede ser parcial.
- En esos casos, la
Salefiscal completa solo aparece cuando llega Beacon Connect o datos equivalentes.
Después de conectar
- Confirmar que el dashboard muestra la cuenta como Stripe existente conectada por OAuth.
- Verificar ingestión de
charge.succeeded, refunds, disputes y, cuando aplique,transfer/payout. - Validar que los casos
destination chargequedan parciales hasta recibir enriquecimiento suficiente.
Errores frecuentes
| Señal | Causa probable | Acción |
|---|---|---|
| OAuth bloqueado al inicio | STRIPE_EXTENSION_ENABLED=false | activar la flag y confirmar que la app Stripe está registrada como Extension |
| Callback falla con error operativo | Stripe no devolvió read_only | corregir la configuración Extension en Stripe; Beacon no trata read_write como fallback funcional |
Pago ingerido sin Sale completa | visibilidad parcial en la cuenta conectada | enviar Beacon Connect con buyer, seller y líneas fiscales |
transfer / payout sin charge visible | destination charge o flujo controlado por plataforma | tratarlo como parcial y enriquecer por Beacon Connect |
Beacon Connect en el mismo flujo
POST /api/platform-connect/verify-mappingPOST /api/platform-connect/paymentsPOST /api/platform-connect/refundsPOST /api/platform-connect/disputes
Cada plataforma usa su propio secreto y un mapping externalOrgRef -> organizationId gestionado en la consola admin de Beacon.