Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Automatisation des opérations financières
Plateformes et places de marché
Gestion de fonds
Outils de développement
Démarrer
Paiements
Automatisation des opérations financières
Démarrer
Paiements
Automatisation des opérations financières
Plateformes et places de marché
Gestion de fonds
Aperçu
Gestion des versions
Journal des modifications
Mettre à niveau votre version de l'API
Actualiser votre version du SDK
Outils de développement
SDK
API
Tests
Workbench
Destinations d'événements
Workflows
CLI Stripe
Shell Stripe
Dashboard des développeurs
Boîte à outils des agents
Intégrer des LLMStripe pour Visual Studio CodeAlertes d'intégrité de StripeChargements de fichiers
Sécurité et confidentialité
Sécurité
Confidentialité
Extensions Stripe
Stripe Apps
    Présentation
    Démarrer
    Créer une application
    Fonctionnement de Stripe Apps
    Exemples d'application
    Créer une application
    Enregistrer des clés secrètes
    Méthodes d'authentification de l'API
    Flux d'autorisation
    Logique côté serveur
    Écouter les événements
    Gérer différents modes
    Activer la prise en charge de l'environnement de test
    Page des paramètres d'application
    Concevoir une interface utilisateur
    Inscription des utilisateurs
    Distribuer votre application
    Options de distribution
    Charger votre application
    Versions
    Tester votre application
    Publier votre application
    Faire la promotion de votre application
    Ajouter des liens profonds
    Créer des liens d'installation
    Assigner des rôles dans les extensions d'interface utilisateur
    Actions post-installation
    Analyses de l'application
    Composants intégrés pour les applications
    Intégrer des applications tierces conçues pour Stripe
    Migrer vers Stripe Apps
    Migrer ou développer une extension
    Migrer un plugin vers Stripe Apps ou Stripe Connect
    Référence
    Manifeste de l'application
    Interface de ligne de commande
    SDK d'extension
    Autorisations
    Fenêtres d'affichage
    Modèles de conception
    Composants
Connecteurs Stripe
Partenaires
Partner ecosystem
Certification des partenaires
AccueilOutils de développementStripe Apps

Utiliser des liens d'installationVersion bêta publique

Autorisez les utilisateurs à installer votre application hors du Stripe App Marketplace.

Copier la page

Les liens d’installation permettent aux utilisateurs d’installer des applications publiques en dehors du Stripe App Marketplace. Avec un flux intégré, vous pouvez transmettre l’état de votre application, terminer l’installation de l’application Stripe et effectuer une redirection vers votre application ou votre site.

La page du lien d'installation affichant des autorisations d'accès

La page du lien d’installation

Présentation

En suivant les étapes suivantes, un utilisateur peut installer une application à l’aide d’un lien d’installation :

  1. Sur votre site, l’utilisateur clique sur un lien qui le redirige vers Stripe, en transmettant l’app_id.
  2. Sur Stripe, l’utilisateur sélectionne le compte approprié et accepte les autorisations pour l’installation de votre application.
  3. Après l’installation, l’utilisateur est redirigé vers votre site, avec le compte Stripe de l’utilisateur indiqué.
  4. Votre application peut désormais effectuer des requêtes de comptes authentifiés.

Créer un lien d'installation

Définissez votre allowed_redirect_uris dans votre manifeste d’application. Ce sont les URL vers lesquelles les utilisateurs sont redirigés après avoir installé votre application. Vous devez spécifier toutes les URL de redirection dans les paramètres de votre application.

Après avoir défini allowed_redirect_uris, chargez une nouvelle version de votre application.

stripe-app.json
{ "id": "com.invoicing.[YOUR_APP]", "version": "1.2.3", "name": "[YOUR APP] Shipment Invoicing", "icon": "./[YOUR_APP]_icon_32.png", "permissions": [], "app_backend": {}, "ui_extension": {}, "allowed_redirect_uris": [ "https://example.com/callback/stripe" ] }

Tester votre lien d'installation

Pour vérifier que le lien d’installation fonctionne avant de l’envoyer pour examen, vous pouvez utiliser le test externe en appliquant la procédure suivante :

  1. Créez un test externe pour votre application en utilisant la version avec le allowed_redirect_uris définie dans le manifeste de l’application. Si un test existe déjà, vous pouvez mettre à jour la version de test vers celle souhaitée.
  2. L’onglet Test externe présente un lien d’installation de test et affiche les redirections autorisées dans un tableau.
  3. Lorsque vous êtes prêt à publier, assurez-vous de charger une nouvelle version dont les URL et les valeurs de test ont été remplacés par les valeurs que vous comptez utiliser en mode production.
Onglet Test externe affichant les liens d'installation

Utilisation d'un lien d'installation

Lorsque vous avez terminé les tests, vous pouvez le rendre disponible pour tous les utilisateurs en suivant les étapes ci-après :

  1. Publiez une nouvelle version de votre application qui définit allowed_redirect_uris.
  2. Cliquez sur l’onglet Paramètres. Vous pouvez copier le lien d’installation affiché. Il prend la forme suivante : https://marketplace.stripe.com/apps/install/link/{id}?redirect_uri=https://example.com.
  3. Recommended Afin d’éviter toute attaque CSRF, vous pouvez ajouter et transmettre le paramètre recommandé state avec pour valeur un token unique. Nous inclurons la valeur state fournie lors de la redirection de l’utilisateur vers votre site. Ce dernier peut confirmer que le paramètre state n’a pas été modifié.
  4. Une fois qu’un utilisateur a cliqué sur le lien d’installation, Stripe ouvre la page suivante sur laquelle il peut sélectionner un compte, consulter les informations relatives à l’application et procéder à l’installation.
Sélection d'un compte pour installer l'application sur

Sélection du compte pour le lien d’installation

Redirection vers votre site

Une fois que l’utilisateur a installé votre application, il est redirigé vers l’URL définie dans le paramètre redirect_uri, qui correspond à une redirection définie dans allowed_redirect_uris dans le manifeste de votre application.

Installation réussie

Pour que les installations fonctionnent, l’URL doit inclure :

  • La valeur user_id. L’ID de l’utilisateur Stripe qui a lancé l’installation.
  • La valeur account_id. L’ID du compte Stripe qui a installé votre application.
  • La valeur state, le cas échéant
  • La valeur install_signature. Il s’agit d’un hachage des valeurs ci-dessus qui est généré à l’aide de la clé secrète de signature de votre application.
  • Si l’application est installée en mode test ou dans un environnement de test, une valeur livemode=false est ajoutée à l’URL de redirection.

Exemple de redirection en mode production :

https://example.com/callback/stripe?user_id={USER_ID}&account_id={CONNECTED_ACCOUNT_ID}&state={STATE}&install_signature={INSTALL_SIGNATURE}

Exemple de redirection vers le mode test et un environnement de test :

https://example.com/callback/stripe?user_id={USER_ID}&account_id={CONNECTED_ACCOUNT_ID}&state={STATE}&install_signature={INSTALL_SIGNATURE}&livemode=false

Échec de l’installation

Si l’utilisateur annule l’installation, il sera quand même redirigé vers votre site, mais cette fois l’URL comprendra une erreur :

https://example.com/callback/stripe?error=access_denied&error_description=The%20user%20denied%20your%20request

L’utilisateur est désormais connecté à votre application. Conservez le paramètre stripe_user_id dans votre base de données. Il s’agit de l’ID du compte Stripe de l’utilisateur. Vous utiliserez cette valeur pour l’authentification en tant que compte connecté en l’intégrant dans les requêtes dans l’en-tête Stripe-Account.

Vérifiez les installations d’applications avec install_signature Recommended

Il est important de vérifier que l’utilisateur de votre application est autorisé à installer l’application pour le compte indiqué dans l’URL de redirection. C’est pour cette raison qu’une install_signature est incluse. Cette signature est générée à partir de la clé secrète de signature de votre application et des paramètres user_id et account_id ayant effectué l’installation. La signature inclut également le paramètre state transmis, le cas échéant. La signature ne peut pas être répliquée sans accès à la clé secrète de signature, qui est uniquement disponible en interne pour Stripe et pour le back-end de votre application. Les personnes malveillantes ne peuvent donc pas reproduire le hachage s’ils tentent d’usurper l’URL de redirection. Vérifier la signature de l’application permet de garantir que le compte est associé à l’utilisateur de votre application.

Pour vérifier la signature, suivez ces étapes :

  1. Si vous ne l’avez pas encore fait, créez la clé secrète de signature de votre application.
  2. Configurez un back-end d’application pour vérifier la valeur install_signature.

Exemple de back-end vérifiant l’installation :

L’ordre et le nom des champs de la charge utile ont une incidence sur la vérification de la signature… Le state précède le user_id, qui précède le account_id. L’objet résultant doit être { state, user_id, account_id }.

Ruby
require 'stripe' require 'sinatra' require 'json' Stripe.api_key = 'API_KEY' get '/' do 'Install Links verification example' end get '/verify' do user_id = params[:user_id] account_id = params[:account_id] state = params[:state] install_signature = params[:install_signature] payload = JSON.dump({ state: state, user_id: user_id, account_id: account_id }) begin Stripe::Webhook::Signature.verify_header( payload, install_signature, 'STRIPE_APP_SECRET' ) rescue Stripe::SignatureVerificationError => e return e.message, 400 end { success: true }.to_json end set :port, 3000

Après vérification, vous pouvez effectuer des appels à l’API au nom du compte installé.

Effectuer des requêtes authentifiées

Pour les appels à l’API côté serveur, vous pouvez effectuer des requêtes en tant que comptes connectés à l’aide de l’en-tête spécial Stripe-Account et de l’identifiant de compte Stripe (qui commence par le préfixe acct_) de l’utilisateur de votre plateforme. Voici un exemple qui montre comment créer un PaymentIntent avec la clé API secrète de votre plateforme et l’identifiant du compte de votre utilisateur.

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d amount=1000 \ -d currency=usd \ -d "payment_method_types[]"=card

L’approche d’en-tête Stripe-Account est implicite dans toute requête API qui inclut l’ID du compte Stripe dans l’URL. Voici un exemple qui montre comment récupérer un compte avec l’identifiant du compte de votre utilisateur dans l’URL.

Command Line
cURL
curl https://api.stripe.com/v1/accounts/
{{CONNECTED_ACCOUNT_ID}}
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Découvrez plus d’exemples de requêtes authentifiées ici.

Personnaliser les liens avec des paramètres d’URL

Vous pouvez modifier le comportement de l’installation d’applications en incluant des paramètres d’URL supplémentaires dans le lien d’installation.

Paramètres d’URL pris en charge

ParamètreDescription
redirect_uriL’URL vers laquelle les utilisateurs sont redirigés après avoir installé votre application. Si elle est fournie, elle doit correspondre exactement à l’une des valeurs redirect_uris séparées par une virgule de votre manifeste d’application. Pour vous protéger contre certaines attaques d’intercepteurs, la redirect_uri du mode production doit utiliser une connexion HTTPS sécurisée.
stateRecommandéUne valeur d’une chaîne arbitraire qui vous sera renvoyée. Elle est recommandée pour la protection contre les attaques CSRF.

Prévenir les attaques CSRF à l’aide du paramètre d’état

Vous pouvez utiliser le paramètre state pour prévenir les attaques de type CSRF (Cross-Site Request Forgery). Celui-ci accepte n’importe quelle valeur de chaîne et la renvoie telle quelle lors de la redirection de l’outil d’installation vers votre application ou votre plateforme. Pour utiliser ce paramètre, transmettez une valeur unique difficile à deviner au lancement d’une installation à partir d’un lien d’installation. Enregistrez cette valeur afin de l’utiliser à des fins de vérification par la suite.

Une fois que l’utilisateur a effectué l’installation et a été redirigé vers votre application, vérifiez que la valeur du paramètre d’état fourni correspond à la valeur présente dans le lien d’installation initial. Ce processus de vérification permet de confirmer avec un niveau de confiance élevé que l’ID de stripe_user_id renvoyé appartient bien à l’utilisateur qui a lancé l’installation. Vous pouvez ainsi vous prémunir contre d’éventuelles falsifications.

Révocation de l’accès

Un événement account.application.deauthorized se produit lorsqu’un utilisateur déconnecte votre application de son compte. Vous pouvez effectuer le nettoyage nécessaire sur vos serveurs en surveillant cet événement via des webhooks.

Voir aussi

  • Fonctionnement de Stripe Apps
  • Documentation complète relative à l’API
Cette page vous a-t-elle été utile ?
OuiNon
Besoin d'aide ? Contactez le service Support.
Rejoignez notre programme d'accès anticipé.
Consultez notre log des modifications.
Des questions ? Contactez l'équipe commerciale.
LLM ? Lire llms.txt.
Propulsé par Markdoc