Extensions patrimonialesObsolète
Stripe Apps remplace les extensions
Vous ne pouvez plus créer de nouvelles extensions Stripe. Stripe Apps remplace les extensions pour le développement sur Stripe. Toutefois, les extensions existantes continueront de fonctionner jusqu’en 2024. Si vous avez déjà une extension, nous vous recommandons de la migrer vers Stripe Apps.
Remarques
Vous pouvez désormais envoyer automatiquement vos données et rapports Stripe vers Snowflake ou Amazon Redshift en quelques clics avec Stripe Data Pipeline. En savoir plus.
Les produits et fonctionnalités de Stripe permettent aux entreprises d’accepter les paiements en ligne, mais offrent également d’autres raisons de les intégrer. Des entreprises comme Baremetrics et Segment s’appuient sur Stripe pour fournir leurs services aux comptes Stripe avec un tableau de bord Standard.
Pour créer une extension sur Stripe, vous devez :
- Configurer OAuth et indiquer une URL de redirection.
- Configurer les paramètres de marque.
- Créer un lien OAuth pour vos utilisateurs.
- Utiliser l’API au nom de comptes connectés.
Pour activer votre compte, vous devez également ajouter des informations sur l’entreprise, si vous ne l’avez pas déjà fait.
Pour commencer, rendez-vous sur la page des extensions, accessible à partir de l’onglet Développeurs de votre Dashboard Stripe.
Configurer OAuth et indiquer une URL de redirection
Vous pouvez configurer ce paramètre dans la section Intégration de la page Paramètres des extensions
Pour commencer votre intégration, activez l’inscription des comptes Standard avec OAuth. Vous ne devez pas utiliser OAuth avec des comptes Express pour vos extensions.
Stripe vous fournit un identifiant unique pour votre extension, dénommé client_id
. Vous définissez le paramètre redirect_uri
, qui désigne la page vers laquelle les utilisateurs sont redirigés après avoir connecté leurs comptes. Vous devez indiquer toutes vos URI de redirection dans les paramètres de votre extension. Les versions de développement et de production de ces deux valeurs facilitent les tests. Notez ces valeurs afin de pouvoir réaliser la troisième étape, qui consiste à créer un lien OAuth.
Configurer les paramètres de votre marque
Vous pouvez personnaliser l’apparence de votre entreprise pour vos utilisateurs dans la section Image de marque de la page Paramètres des extensions
Votre logo s’affiche lorsque les utilisateurs associent leurs comptes Stripe à votre application. Une fois que les comptes sont associés, votre icône s’affiche dans la liste de leurs applications connectées.
Créer un lien OAuth pour vos utilisateurs
Stripe fournit un flux OAuth 2.0 standard pour se connecter aux comptes Stripe. À l’aide des valeurs client_id
et redirect_uri
définies à la première étape, vous pouvez créer un lien OAuth permettant à vos utilisateurs de s’inscrire. Nous vous recommandons d’afficher ce lien en utilisant un bouton Connectez vous avec Stripe, qui renvoie les utilisateurs vers le point de terminaison authorize_url
:
https://connect.stripe.com/oauth/authorize?response_type=code&client_id=ca_FkyHCg7X8mlvCUdMDao4mMxagUfhIwXb&scope=read_only
Voici comment vous pouvez présenter le lien ci-dessus à votre utilisateur, ainsi que le bouton Connexion à Stripe :
Connexion àUne fois que l’utilisateur a cliqué sur le lien de votre site, il est redirigé vers une page sur laquelle il peut autoriser ou refuser la connexion à votre extension. Il est ensuite invité à se connecter avec un compte existant ou à en créer un nouveau.
Une fois que l’utilisateur a connecté son nouveau compte ou son compte existant à votre extension, il est redirigé vers l’URL que vous avez définie comme valeur redirect_uri
.
À l’issue du flux OAuth, vous recevrez des identifiants d’autorisation pour le compte de l’utilisateur :
{ ... "stripe_user_id": "acct_0123456789", ... }
Vous devez enregistrer le stripe_user_id
afin de pouvoir identifier les comptes d’utilisateur.
Utiliser l'API au nom de comptes connectés
Une fois que vos utilisateurs ont associé leurs comptes Stripe à votre application, vous pouvez effectuer des requêtes à l’API en leur nom. Pour ce faire, vous avez besoin de la clé secrète du compte de votre extension, et d’un en-tête Stripe-Account
qui identifie le compte pour lequel vous effectuez la requête. Toutes les bibliothèques Stripe prennent en charge ce mode d’authentification par requête.
Récupération des données enregistrées
Les données enregistrées incluent notamment des informations sur les paiements et la clientèle. Avec l’accès en lecture seule (read_only
), vous pouvez effectuer la plupart des requêtes GET
dans l’API de Stripe. Vous pouvez extraire un objet précis (par exemple, extraire un PaymentIntent) ou une liste d’objets (par exemple, la liste de tous les PaymentIntents).
Si l’API est conçue pour être performante, les recherches répétées de grands ensembles de données diminuent la réactivité de votre application. Nous vous recommandons d’enregistrer les données extraites localement à des fins d’analyse et de création de rapports.
Écoute des données en temps réel
Outre les données stockées, vous pouvez accéder à des données en temps réel par le biais des webhooks. Une fois que vous avez défini un point de terminaison de webhook d’extension dans votre compte, Stripe envoie des notifications d’événements à votre point de terminaison pour chaque compte connecté. La propriété account
de l’objet Event identifie le compte sur lequel s’est déroulé l’événement.
Par exemple, l’événement ci-dessous montre qu’un client a été créé sur le compte acct_0123456789
. Une fois encore, nous vous recommandons d’enregistrer ces données localement à des fins d’analyse et de création de rapports. Si votre application peut prendre connaissance des événements au moment où ils surviennent, elle pourra répondre plus rapidement et vous aurez besoin de lancer moins d’appels à l’API.
{ "id": "evt_l7JUJ6P3MslvNg", "livemode": true, "object": "event", "type": "customer.created", "account": "acct_0123456789", "pending_webhooks": 2, "created": 1349654313, "data": {...} }
Traiter des paiements pour votre application
Le compte Stripe de votre extension peut traiter ses propres paiements, vous pouvez donc toujours traiter des paiements pour votre application avec un accès read_only
. Lorsque vos clients auront connecté leurs comptes Stripe, demandez-leur leurs informations de paiement puis créez-leur un abonnement sur votre compte Stripe. Prenez soin d’enregistrer l’ID de client créé avec l’ID de compte Stripe correspondant, afin de pouvoir vérifier quels utilisateurs ont payés et sont actifs.
Si vous créez des abonnements, vous pouvez également spécifier un pourcentage de frais facturés pour l’utilisation de votre application par le biais de la valeur application_fee_percent
. Ces frais seront prélevés en sus des frais Stripe. Pour en savoir plus, veuillez consulter notre documentation consacrée aux abonnements.
Comptes déconnectés
Les utilisateurs peuvent à tout moment déconnecter leurs comptes de votre intégration. Le cas échéant, Stripe envoie un webhook account.application.deauthorized
. Vous pouvez utiliser cette notification pour déclencher le nettoyage des données de votre côté, par exemple en désactivant le compte de l’utilisateur concerné sur votre site ou en supprimant ses données.
Vous pouvez également déconnecter des comptes de votre intégration en envoyant une requête au point de terminaison d’annulation d’autorisation OAuth.