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
Revenus
Plateformes et places de marché
Gestion de fonds
Ressources pour les développeurs
API et SDKAide
Aperçu
Démarrer avec Connect
Principes de base de l'intégration
Exemples d'intégration
    Conception d'intégration avancée
    Créer une marketplace
    Créer une plateforme SaaS
    Facturer des frais SaaS aux comptes connectés
    Développez une intégration Connect complète
Gestion de compte
Inscrire des comptes
Configurer les dashboards des comptes
Utiliser les types de comptes connectés
Traitement des paiements
Accepter des paiements
Effectuer des virements vers des comptes
Administration de plateforme
Gérer votre plateforme Connect
Formulaires fiscaux pour votre plateforme Connect
États-Unis
Français (France)
AccueilPlateformes et places de marchéExample integrations

Encaisser les paiements, puis effectuer les virements sur votre marketplace

Encaissez les paiements des clients et versez-les aux marchands ou prestataires de services de votre marketplace.

Ce guide vous explique comment accepter les paiements et transférer des fonds vers les comptes bancaires de vos prestataires de services ou marchands. À des fins d’illustration, nous allons créer une place de marché de location immobilière qui met en relation des propriétaires et des locataires potentiels. Nous vous montrerons comment accepter les paiements des locataires (clients) et régler les propriétaires (utilisateurs de votre plateforme).

Prérequis

  1. Inscrire votre plateforme.
  2. Ajoutez des informations sur l’entreprise pour activer votre compte.
  3. Complétez votre profil de plateforme.
  4. Personnalisez vos paramètres de marque. Connect Onboarding nécessite l’ajout d’un nom d’entreprise, d’une icône et d’une couleur de marque.

Configurer Stripe
Côté serveur

Installez les bibliothèques officielles de Stripe pour accéder à l’API depuis votre application :

Créer un compte connecté

Lorsqu’un marchand ou un fournisseur de services s’inscrit sur votre plateforme, créez uncompte connecté les représentant. Le compte connecté vous permet de collecter leurs informations d’identification, d’accepter des paiements pour eux et de transférer des fonds sur leur compte bancaire. Dans notre exemple de location de logement, le compte connecté représente le propriétaire.

Créez un compte connecté avec des informations pré-remplies

Utilisez l’API /v2/core/accounts pour créer un compte connecté en spécifiant ledashboard et les responsabilités du compte connecté.

Si vous avez déjà collecté des informations pour vos comptes connectés, vous pouvez préremplir ces informations dans l’objet Account. Vous pouvez préremplir n’importe quelle information de compte, y compris des informations personnelles et professionnelles, des informations de compte externe, etc.

Connect Onboarding ne demande pas les informations préremplies. Cependant, il demande au titulaire du compte de confirmer les informations préremplies avant d’accepter le contrat d’utilisation du service Connect.

Lorsque vous testez votre intégration, préremplissez les informations du compte à l’aide des données de test.

Créer un lien de compte

Vous pouvez créer un lien de compte lien en appelant l’API Liens de compte v2 avec les paramètres suivants :

  • account
  • refresh_url
  • return_url
  • type = account_onboarding
  • configurations =destinataire etmarchand

Rediriger votre utilisateur vers l’URL du lien de compte

La réponse Créer un lien de compte inclut une valeur url. Après avoir authentifié l’utilisateur dans votre application, redirigez-le vers cette URL pour l’envoyer dans le flux. Les URL de lien de compte sont temporaires et à usage unique uniquement, car elles permettent d’accéder aux informations personnelles de l’utilisateur du compte connecté. Si vous souhaitez préremplir les informations, vous devez le faire avant de générer le lien de compte. Une fois que vous avez créé le lien de compte, vous ne pouvez pas lire ou écrire les informations du compte connecté.

Conseil en matière de sécurité

N’envoyez pas d’URL de lien de compte par e-mail, SMS ou autre moyen de paiement en dehors de l’application de votre plateforme. Fournissez-les plutôt au titulaire du compte authentifié dans votre application.

Gérer la redirection de l’utilisateur vers votre plateforme

Connect Onboarding exige de transmettre à la fois une return_url et une refresh_url pour gérer tous les cas où le compte utilisateur est redirigé vers votre plateforme.

Remarque

Vous pouvez utiliser HTTP pour votre return_url et refresh_url lorsque vous êtes dans un environnement de test (par exemple, pour tester avec localhost), mais le mode production n’accepte que HTTPS. Assurez-vous d’échanger les URL de test contre des URL HTTPS avant la mise en production.

return_url

Stripe émet une redirection vers cette URL lorsque l’utilisateur du compte connecté termine le flux d’inscription des utilisateurs. Cela ne signifie pas que tous les renseignements ont été recueillis ou qu’il n’y a pas d’exigences en attente sur le compte. Cela signifie simplement que le flux a été entré et sorti correctement.

Aucun état n’est transmis via cette URL. Une fois qu’un utilisateur est redirigé vers votrereturn_url, vérifiez l’état des exigences sur leur compte en procédant de l’une des manières suivantes :

  • Écoutez les webhooksv2.core.account[exigences].updated.
  • Appelez l’API Comptes v2 et inspectez l’objet renvoyé.

refresh_url

Stripe redirige votre utilisateur vers la refresh_url dans les cas suivants :

  • Le lien a expiré (quelques minutes se sont écoulées depuis la création du lien).
  • L’utilisateur a déjà utilisé l’URL (il a actualisé la page ou cliqué sur le bouton Précédent ou Suivant de son navigateur).
  • Votre plateforme n’est plus en mesure d’accéder au compte.
  • Le compte a été rejeté.

Configurez votre page actualiser_url pour déclencher une méthode sur votre serveur afin d’appeler les Liens de compte v2 à nouveau avec les mêmes paramètres, et rediriger l’utilisateur vers le nouveau lien.

Gérer les utilisateurs dont l’inscription n’est pas terminée

Un utilisateur qui est redirigé vers votrereturn_url n’a peut-être pas terminé le processus d’inscription. Utilisez l’endpoint /v2/core/accounts pour récupérer les comptes de l’utilisateur et vérifier si configuration.recipient.capabilities.stripe_balance.stripe_transfers.status est actif. Si l’état n’est pasactif et configuration.recipient.capabilities.stripe_balance.stripe_transfers.status_details.code est requirements_past_due, fournissez ides invites d’interface utilisateur pour permettre à l’utilisateur de continuer son inscription à travers un nouveau lien de compte. Pour les autres codes, traitez-les selon les besoins.

Activer des moyens de paiement

Accédez aux paramètres des moyens de paiement de votre Dashboard et activez ceux que vous souhaitez prendre en charge. Les paiements par carte bancaire, Google Pay et Apple Pay sont activés par défaut, mais vous pouvez activer et désactiver les moyens de paiement de votre choix selon vos besoins.

Avant que le formulaire de paiement ne s’affiche, Stripe évalue la devise, les restrictions relatives aux moyens de paiement ainsi que d’autres paramètres pour dresser la liste des moyens de paiement pris en charge. Ceux qui augmentent le taux de conversion et qui sont les plus pertinents selon la devise et le lieu de résidence du client sont automatiquement présentés en priorité. Les moyens de paiement de moindre priorité ne sont visibles qu’au sein d’un menu de débordement.

Accepter un paiement

Utilisez Stripe Checkout pour accepter des paiements. Checkout prend en charge de nombreux moyens de paiement et affiche automatiquement les plus pertinents pour votre client. Vous pouvez accepter des paiements avec Checkout à l’aide d’une page hébergée par Stripe ou ajouter un formulaire de paiement intégré préconfiguré directement sur votre site Web. Vous pouvez également créer un flux personnalisé (à l’aide du Payment Element) pour accepter plusieurs moyens de paiement avec une seule intégration front-end.

Créer une session Checkout Client and Server

Une session Checkout détermine ce que votre client voit sur la page de paiement hébergée par Stripe, tel que les postes de la facture, le montant et la devise de la commande, ainsi que les moyens de paiement acceptés.

Ajoutez à votre site Web un bouton de paiement qui appelle un endpoint côté serveur afin de créer une session Checkout.

Sur votre serveur, effectuez l’appel suivant à l’API Stripe. Après avoir créé une session Checkout, redirigez votre client vers l’URL renvoyée dans la réponse.

  • line_items : cet argument spécifie les articles achetés par votre client. Ces articles sont affichés dans l’interface utilisateur hébergée par Stripe.
  • success_url : cet argument assure la redirection de l’utilisateur une fois le paiement effectué.
  • cancel_url : cet argument assure la redirection de l’utilisateur dès lors qu’il annule l’opération.
  • payment_intent_data[application_fee_amount] : cet argument précise le montant que votre plateforme prévoit de prélever sur la transaction. Une fois le paiement capturé, le montant total du paiement est immédiatement transféré depuis la plateforme vers le compte connecté spécifié par le paramètre transfer_data[destination]. Ensuite, le montant application_fee_amount est à nouveau transféré vers la plateforme, et les frais Stripe sont déduits de ce montant.
  • payment_intent_data[transfer_data][destination] : cet argument indique qu’il s’agit d’un paiement indirect. Un paiement indirect désigne un paiement traité sur la plateforme et pour lequel les fonds sont ensuite immédiatement et automatiquement transférés vers le solde en attente du compte connecté. Dans le cadre de notre exemple de location immobilière, nous voulons créer les conditions permettant au client de payer via la plateforme, et au propriétaire d’être payé par la plateforme.

Checkout utilise les paramètres de marque du compte de votre plateforme pour les paiements indirects. Pour en savoir plus, consultez Personnaliser l’image de marque.

Cette session crée un paiement indirect. Si vous souhaitez choisir à quel moment les transferts ont lieu ou transférer des fonds vers plusieurs bénéficiaires, utilisez plutôt des paiements et transferts distincts. Pour utiliser des paiements distincts, consultez Permettre à d’autres entreprises d’accepter directement des paiements.

Gérer les événements post-paiement Côté serveur

Stripe envoie un événement checkout.session.completed à l’issue du paiement. Utilisez un webhook pour recevoir ces événements et exécuter des actions en conséquence, comme l’envoi d’un e-mail de confirmation de commande à votre client, l’enregistrement de la vente dans une base de données ou le lancement d’un flux de livraison.

Nous vous conseillons d’écouter ces événements plutôt que d’attendre un rappel du client. Côté client, il arrive en effet que l’utilisateur ferme la fenêtre de son navigateur ou quitte l’application avant l’exécution du rappel. Avec certains moyens de paiement, la confirmation du paiement peut par ailleurs prendre entre 2 et 14 jours. Configurer votre intégration de manière à ce qu’elle écoute les événements asynchrones vous permettra d’accepter plusieurs moyens de paiement avec une seule intégration.

En plus de gérer l’événement checkout.session.completed, nous vous recommandons de gérer deux autres événements lorsque vous encaissez des paiements avec Checkout :

ÉvénementDescriptionÉtapes suivantes
checkout.session.completedLe client a autorisé le paiement en envoyant le formulaire Checkout.Attendez que le paiement aboutisse ou échoue.
checkout.session.async_payment_succeededLe paiement du client a abouti.Traitez la commande de biens ou de services de votre client.
checkout.session.async_payment_failedLe paiement a été refusé, ou il a échoué pour une autre raison.Contactez votre client par e-mail et demandez-lui de passer une nouvelle commande.

Ces événements incluent tous l’objet Checkout Session. Une fois le paiement effectué, l’état sous-jacent du PaymentIntent passe de processing à succeeded.

Test

Testez votre flux de création de comptes en créant des comptes et en utilisant OAuth.

Consultez la section consacrée aux tests pour obtenir des informations supplémentaires sur la manière de tester votre intégration.

Litiges

Votre plateforme étant l’entité de règlement pour les paiements, elle est à ce titre responsable des litiges. Assurez-vous de prendre connaissance des bonnes pratiques en matière de résolution de litiges.

Virements

Par défaut, les fonds que vous transférez vers un compte connecté s’ajoutent au solde Stripe de ce compte et sont versés chaque jour. Vous pouvez modifier la fréquence de virement depuis la page d’informations du compte connecté, en cliquant sur le bouton tout à droite de la section Solde et en sélectionnant Modifier la fréquence des virements.

Remboursements

Pour émettre des remboursements, accédez à la page Paiements. Sélectionnez les paiements pour lesquels un remboursement doit être effectué en cochant la case à leur gauche. Après avoir sélectionné un paiement, Stripe affiche un bouton Rembourser dans le coin supérieur droit de la page. Cliquez sur le bouton Rembourser pour émettre un remboursement aux clients pour tous les paiements que vous venez de sélectionner.

Remarque

Par défaut, les comptes connectés ne peuvent pas initier de remboursements pour les paiements à partir du Dashboard Express. Si vos comptes connectés utilisent le Dashboard Express, vous pouvez soit traiter des remboursements pour eux, soit leur permettre de traiter des remboursements en personnalisant les fonctionnalités du Dashboard Express.

Voir aussi

  • Gérer des comptes connectés dans le Dashboard
  • Émettre des remboursements
  • Personnaliser les libellés de relevé bancaire
  • Gérer plusieurs devises
  • Dashboard Express
Cette page vous a-t-elle été utile ?
OuiNon
  • Besoin d'aide ? Contactez le service Support.
  • Consultez notre log des modifications.
  • Des questions ? Contactez l'équipe commerciale.
  • LLM ? Lire llms.txt.
  • Propulsé par Markdoc