Extensiones heredadasObsoleto
Stripe Apps sustituye a las extensiones
Ya no puedes crear nuevas extensiones de Stripe. Stripe Apps sustituye las extensiones para desarrollar en Stripe. No obstante, las extensiones existentes seguirán funcionando hasta 2024. Si ya tienes una extensión, te recomendamos que hagas la migración a Stripe Apps.
Nota
Ahora puedes enviar automáticamente tus datos e informes de Stripe a Snowflake o Amazon Redshift con unos pocos clics con Stripe Data Pipeline. Más información.
Los productos y funciones de Stripe permiten a las empresas aceptar pagos en línea, pero también ofrecen otras razones para integrarse. Algunas empresas, como Baremetrics y Segment, se basan en Stripe para proporcionar sus servicios a las cuentas de Stripe con un Dashboard Standard.
En Stripe, la creación de una extensión se realiza en cuatro pasos:
- Configura OAuth y especifica la URI de redireccionamiento.
- Configura los parámetros de la imagen de marca.
- Crea un enlace de OAuth para tus usuarios.
- Usa la API en nombre de las cuentas conectadas.
Para activar tu cuenta, también deberás añadir datos de la empresa si aún no lo has hecho.
Para empezar, visita la página Extensiones que se encuentra en la pestaña Desarrolladores del Dashboard de Stripe.
Configura OAuth y especifica la URI de redireccionamiento
Puedes realizar esta configuración en la sección Integración de la página Configuración de extensiones.
Comienza tu integración alternando el botón para permitir la activación de las cuentas Standard con OAuth. Las extensiones no deberían usar OAuth con las cuentas Express.
Stripe proporciona a tu extensión un identificador único llamado client_id
. Tú defines redirect_uri
y se redirige a los usuarios a esa página después de que conecten sus cuentas. Debes especificar todas las URI de redireccionamiento en la configuración de tu extensión. Las versiones de estos dos valores para desarrollo y producción facilitan las pruebas. Toma nota de estos valores para poder crear un enlace de OAuth en el tercer paso.
Configura los parámetros de la imagen de marca
Puedes personalizar cómo se muestra tu empresa a los usuarios en la sección Imagen de marca de la página Configuración de extensiones.
Los usuarios verán tu logotipo cuando vinculen sus cuentas de Stripe a tu plataforma. Una vez realizada la vinculación, tu icono aparecerá en su lista de plataformas conectadas.
Crea un enlace de Oauth para tus usuarios
Stripe ofrece un flujo de OAuth 2.0 estándar para conectarse a cuentas de Stripe. Usando los valores client_id
y redirect_uri
del primer paso, puedes crear un enlace de OAuth para que tus usuarios lo incorporen. Te recomendamos mostrar este enlace con un botón Conectar con Stripe que envía a los usuarios al punto de conexión authorize_url
:
https://connect.stripe.com/oauth/authorize?response_type=code&client_id=ca_FkyHCg7X8mlvCUdMDao4mMxagUfhIwXb&scope=read_only
A continuación se muestra un ejemplo de cómo puedes mostrar el enlace anterior a tu usuario, junto con el botón Conéctate con Stripe:
Conectar conCuando el usuario hace clic en el enlace en tu sitio, lo redirigimos a una página para permitir o denegar la conexión con tu extensión. El flujo de autorización de Stripe les pide que elijan una cuenta existente para conectar con tu extensión o que creen una nueva.
Una vez que el usuario conecta a tu extensión su cuenta existente o la que acabe de crear, le redirigiremos de nuevo a la URL que estableciste como redirect_uri
de tu extensión.
Al finalizar el flujo de trabajo de OAuth, recibirás las credenciales de autorización para la cuenta del usuario:
{ ... "stripe_user_id": "acct_0123456789", ... }
Debes guardar el valor de stripe_user_id
para poder identificar las cuentas de usuario.
Usa la API en nombre de las cuentas conectadas
Después de que los usuarios vinculen su cuenta de Stripe a tu plataforma, podrás realizar solicitudes de API en su nombre. Para realizar solicitudes de API, necesitas la clave secreta de la cuenta de tu extensión y un encabezado Stripe-Account
que identifique la cuenta para la que estás realizando la solicitud. Todas las bibliotecas de Stripe admiten este tipo de autenticación para cada solicitud.
Cómo acceder a los datos almacenados
Los datos almacenados incluyen información como cargos y datos del cliente. Con un acceso read_only
, puedes efectuar la mayoría de las solicitudes GET
en la API de Stripe. Puedes recuperar un solo objeto (por ejemplo, recuperar un Payment Intent) o una lista de objetos (por ejemplo, la lista de todos los Payment Intents).
Aunque el nivel de rendimiento de la API es alto, la capacidad de respuesta de la aplicación se ralentiza cuando se recuperan grandes conjuntos de datos de forma reiterada. Para realizar análisis y elaborar informes, te recomendamos que almacenes los datos recuperados en tu lado.
Cómo escuchar los datos en tiempo real
Además de los datos almacenados, puedes acceder a datos en tiempo real a través de webhooks. Tras definir un punto de conexión de webhooks de la extensión en tu cuenta, Stripe enviará notificaciones de eventos a tu punto de conexión por cada cuenta conectada. La propiedad account
del objeto event identifica la cuenta en la que se produjo el evento.
Por ejemplo, el siguiente evento muestra que se creó un cliente en la cuenta acct_0123456789
. Para realizar análisis y elaborar informes, te recomendamos de nuevo que almacenes en tu lado estos datos. Al poder observar los eventos a medida que suceden, tu aplicación puede responder más rápido y no tendrás que realizar tantas llamadas a la API.
{ "id": "evt_vVCKvskimq7YKl", "livemode": true, "object": "event", "type": "customer.created", "account": "acct_0123456789", "pending_webhooks": 2, "created": 1349654313, "data": {...} }
Cómo cobrar por tu aplicación
La cuenta de Stripe de tu extensión puede procesar sus propios cargos, de modo que puedes cobrar por tu aplicación con acceso read_only
. Después de que los clientes hayan conectado sus cuentas de Stripe, pídeles los datos del pago y crea una suscripción para cada uno de ellos en tu cuenta de Stripe. Asegúrate de almacenar el ID de cliente creado con el ID de la cuenta de Stripe asociada para poder rastrear cuáles son los usuarios que han pagado y están activos, y cuáles no.
Si creas suscripciones, también puedes especificar un valor de application_fee_percent
como comisión por tu aplicación. Este porcentaje se cobra además de las comisiones de Stripe. Para obtener más información, consulta la documentación sobre Suscripciones.
Cuentas desconectadas
Los usuarios pueden desconectar sus cuentas de tu integración en cualquier momento. Cuando esto sucede, Stripe envía un account.application.deauthorized
webhook. Puedes usar esta notificación para activar la depuración desde tu lado, por ejemplo, para desactivar la cuenta del usuario en tu sitio o eliminar sus datos.
También puedes desconectar cuentas desde tu integración haciendo una solicitud al punto de conexión de desautorización de OAuth.