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
Démarrer une intégration
    Application test
    Présentation du processus d'inscription
    Guides d'intégration
      Services financiers intégrés
      Paiements B2B
      Parc
Produits
Global Payouts
Capital
Émission de cartes
Treasury
Gérer vos fonds
AccueilGestion de fondsStart an integrationIntegration guides

Guide d'intégration des services financiers intégrés

Développez une intégration de services financiers intégrée avec Issuing et Treasury.

Copier la page

Vous ne connaissez pas les services bancaires ?

Consultez notre guide d’introduction à l’utilisation de services bancaires pour les plateformes SaaS.

Développez une offre de services financiers intégrés aux États-Unis à l’aide de Stripe Issuing et Treasury. Utilisez Issuing pour créer des cartes et Treasury pour gérer les soldes et financer les dépenses effectuées par carte.

À la fin de ce guide, vous saurez comment :

  • Créer des comptes connectés vérifiés représentant vos entreprises clientes avec les fonctionnalités Issuing et Treasury voulues
  • Créer des comptes financiers qui serviront de portefeuilles pour vos clients et y ajouter des fonds depuis un compte bancaire externe
  • Créer des cartes virtuelles pour vos clients et les utiliser pour dépenser des fonds depuis un portefeuille

Avant de commencer

  1. Créez un Compte Stripe.
  2. Activer Issuing et Treasury dans un environnement de test du Dashboard. Pour en savoir plus, consultez la page expliquant comment accéder aux API Issuing et Treasury.
  3. Configurez les paramètres de marque de la plateforme Connect de votre entreprise et ajoutez une icône.

Créer des comptes connectés

Créer un compte connecté

Créez un compte connecté pour représenter une entreprise cliente de votre plateforme. Par exemple, si votre produit est une plateforme SaaS à destination de restaurants, chaque restaurant est représenté par un compte connecté.

Types de comptes Connect

Issuing prend uniquement en charge les comptes connectés qui n’utilisent pas de Dashboard hébergé par Stripe, et dont votre plateforme est responsable de la collecte des exigences et des pertes, c’est-à-dire les comptes connectés Custom. Découvrez comment créer des comptes connectés qui fonctionnent avec Issuing. Si vos comptes existants ne correspondent pas à cette configuration, vous devez les recréer.

La requête suivante crée un compte connecté établi aux États-Unis avec la bonne configuration et demande les fonctionnalités requises :

Command Line
cURL
curl https://api.stripe.com/v1/accounts \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d country=US \ -d "controller[stripe_dashboard][type]"=none \ -d "controller[fees][payer]"=application \ -d "controller[losses][payments]"=application \ -d "controller[requirement_collection]"=application \ -d "capabilities[transfers][requested]"=true \ -d "capabilities[card_issuing][requested]"=true \ -d "capabilities[treasury][requested]"=true \ -d "capabilities[us_bank_account_ach_payments][requested]"=true

Les informations du compte de l’utilisateur apparaissent dans la réponse :

{ ... "id": "{{CONNECTED_ACCOUNT_ID}}", "controller": { "stripe_dashboard": { "type": "none" }, "fees": { "payer": "application" }, "losses": { "payments": "application" }, "is_controller": true, "type": "application", "requirement_collection": "application" }, ... }

Notez l’id du compte connecté. Vous le transmettrez dans les requêtes de l’en-tête Stripe-Account pour vous authentifier sous ce compte.

Si un compte connecté existe déjà, vous pouvez ajouter les fonctionnalités requises en spécifiant son id dans la requête :

Command Line
cURL
curl https://api.stripe.com/v1/accounts/
{{CONNECTED_ACCOUNT_ID}}
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "controller[stripe_dashboard][type]"=none \ -d "controller[fees][payer]"=application \ -d "controller[losses][payments]"=application \ -d "controller[requirement_collection]"=application \ -d country=US \ --data-urlencode email="jenny.rosen@example.com" \ -d "capabilities[transfers][requested]"=true \ -d "capabilities[treasury][requested]"=true \ -d "capabilities[card_issuing][requested]"=true

Vérifier le compte connecté

Choisissez l’une des options d’inscription des utilisateurs suivantes :

L’inscription hébergée par Stripe est un formulaire Web hébergé par Stripe qui affiche le nom, la couleur et l’icône de votre marque. L’inscription hébergée par Stripe utilise l’API Accounts pour lire les exigences et générer un formulaire d’inscription hébergée avec une validation robuste des données. Elle est localisée pour tous les pays dans lesquels Stripe est disponible.

Pour utiliser Connect Onboarding, vous devez indiquer le nom, la couleur et l’icône de votre marque dans la section Adaptation à votre marque de vos paramètres Connect.

Vous pouvez utiliser l’inscription hébergée pour permettre aux comptes connectés de lier un external_account (requis pour les virements) en l’activant via vos paramètres Connect Onboarding.

Pour créer un lien d’inscription pour un compte connecté, utilisez l’API Account Links.

Command Line
cURL
curl https://api.stripe.com/v1/account_links \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account={{CONNECTED_ACCOUNT_ID}} \ --data-urlencode refresh_url="https://example.com/reauth" \ --data-urlencode return_url="https://example.com/return" \ -d type=account_onboarding

Mise en garde

Pour des raisons de sécurité, n’envoyez pas directement d’URL de lien de compte à votre compte connecté par e-mail, SMS ou autre. Nous vous recommandons de distribuer l’URL du lien de compte depuis l’application de votre plateforme, là où le compte de l’utilisateur est authentifié.

La réponse reçue inclut un paramètre url, dont vous pouvez fournir le lien à votre compté connecté lors de son inscription sur votre plateforme.

{ "object": "account_link", "created": 1612927106, "expires_at": 1612927406, "url": "https://connect.stripe.com/setup/s/…" }

À ce stade, Stripe a créé et vérifié le compte connecté, qui est doté des fonctionnalités active pertinentes pour l’utilisation de Issuing et Treasury.

Pour en savoir plus, consultez les pages suivantes :

  • Configurer une intégration Issuing et Connect
  • Inscription hébergée par Stripe pour les comptes connectés
  • Créer et utiliser des comptes connectés
  • Vérification d’identité pour les comptes connectés

Créer des comptes financiers et ajouter des fonds

Après avoir activé Treasury sur votre plateforme, vous pouvez ajouter des objets FinancialAccount à l’architecture de votre plateforme afin de garantir l’efficacité de la réception, de l’envoi et du stockage des fonds. Après l’activation, Stripe associe un compte financier au compte de votre plateforme, et vous pouvez dès lors alimenter un compte financier pour chaque compte connecté admissible de votre plateforme.

Dans l’API Stripe, les objets FinancialAccount servent de source et de destination aux requêtes API de mouvement de fonds. Vous pouvez demander via l’API d’affecter des Features aux FinancialAccounts afin de fournir des fonctionnalités supplémentaires aux comptes financiers de votre plateforme.

Un compte financier possède son propre solde de fonds, distinct du solde des paiements du compte connecté auquel il est associé. Par exemple, le propriétaire d’un compte connecté de votre plateforme peut disposer de 100 USD sur son solde de compte connecté et de 200 USD sur son solde de compte financier. Dans ce cas, son solde total s’élève à 300 USD, soit la somme des soldes de son compte financier et de son compte connecté. Ces deux soldes sont distincts, mais l’API offre la possibilité de transférer des fonds depuis le solde du compte connecté vers le solde du compte financier.

Créer un compte financier

Une fois que Stripe a ajouté la fonctionnalité treasury à un compte et qu’elle est marquée active, vous pouvez créer un objet FinancialAccount pour le compte connecté. Pour ce faire, appelez FinancialAccounts et demandez les Features (fonctionnalités) que vous souhaitez fournir :

Command Line
cURL
curl https://api.stripe.com/v1/treasury/financial_accounts \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "supported_currencies[]"=usd \ -d "features[card_issuing][requested]"=true \ -d "features[deposit_insurance][requested]"=true \ -d "features[financial_addresses][aba][requested]"=true \ -d "features[inbound_transfers][ach][requested]"=true \ -d "features[intra_stripe_flows][requested]"=true \ -d "features[outbound_payments][ach][requested]"=true \ -d "features[outbound_payments][us_domestic_wire][requested]"=true \ -d "features[outbound_transfers][ach][requested]"=true \ -d "features[outbound_transfers][us_domestic_wire][requested]"=true

Lorsque vous demandez des fonctionnalités lors de la création du compte financier, la réponse indique leur état dans les paramètres active_features, pending_features et restricted_features :

{ "object": "treasury.financial_account", "created": 1612927106, "id": "fa_123", "country": "US", "supported_currencies": ["usd"], "active_features": ["card_issuing"], "pending_features": ["financial_addresses.aba"], "restricted_features": [], // No FinancialAddress added as the financial_addresses.aba feature is not yet active "financial_addresses": [], "livemode": true, "status": "open", ... }

L’activation de certaines fonctionnalités peut être instantanée (par exemple pour card_issuing). Cependant, d’autres fonctionnalités telles que financial_addresses.aba, activées de manière asynchrone, peuvent rester à l’état pending jusqu’à 30 minutes, le temps que Stripe communique avec les systèmes externes. Une fois que toutes les fonctionnalités voulues sont actives, vous recevez une confirmation sur l’écouteur du webhook treasury.financial_account.features_status_updated. Consultez la section sur les fonctionnalités disponibles pour en savoir plus sur les fonctionnalités des comptes financiers.

Associer un compte bancaire

Pour permettre à vos clients de transférer de l’argent vers et depuis un compte externe, créez un SetupIntent avec les paramètres requis, et indiquez que votre client est titulaire du compte externe en le rattachant à self :

Command Line
cURL
curl https://api.stripe.com/v1/setup_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d attach_to_self=true \ -d "flow_directions[]"=inbound \ -d "flow_directions[]"=outbound \ -d "payment_method_types[]"=us_bank_account \ -d "payment_method_data[type]"=us_bank_account \ -d "payment_method_data[us_bank_account][routing_number]"=110000000 \ -d "payment_method_data[us_bank_account][account_number]"=000123456789 \ -d "payment_method_data[us_bank_account][account_holder_type]"=company \ -d "payment_method_data[billing_details][name]"="Company Corp" \ -d confirm=true \ -d "mandate_data[customer_acceptance][type]"=online \ -d "mandate_data[customer_acceptance][online][ip_address]"="123.123.123.123"

La réponse de l’API inclut un identifiant de payment_method unique, qui sert à référencer ce compte bancaire lors des virements ACH :

{ "id": "{{SETUP_INTENT_ID}}", "object": "setup_intent", "next_action": { "type": "verify_with_microdeposits", "verify_with_microdeposits": { "arrival_date": 1642579200, "hosted_verification_url": "https://payments.stripe.com/microdeposit/sacs_test_xxx", "microdeposit_type": "amounts" } }, ... "payment_method": "{{PAYMENT_METHOD_ID}}", "payment_method_types": [ "us_bank_account" ] }

Pour utiliser un compte bancaire, vous devez d’abord le vérifier à l’aide de microversements (option sur laquelle nous nous concentrons ici) ou de connexions financières (option la plus rapide). La réponse SetupIntent de l’étape précédente inclut une URL hosted_verification_url que vous devez présenter à votre client pour qu’il puisse saisir le code de libellé associé au microversement. Utilisez la valeur SM11AA pour vérifier le compte bancaire ou testez d’autres cas de figure à l’aide des numéros de comptes de test fournis par Stripe.

Vérification à l'aide de microversements

Vérification à l’aide de microversements

Ajouter des fonds au compte financier

À l’aide du composant de compte financier intégré à votre application, vous pouvez autoriser vos comptes connectés à transférer des fonds vers le compte financier.

Create an Account Session

Lors de la création d’une session de compte, activez le composant de compte financier en spécifiant financial_account dans le paramètre components. Vous pouvez activer ou désactiver des fonctionnalités du composant de compte financier en spécifiant le paramètre features sous financial_account.

Command Line
cURL
curl https://api.stripe.com/v1/account_sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account=
{{CONNECTED_ACCOUNT_ID}}
\ -d "components[financial_account][enabled]"=true \ -d "components[financial_account][features][send_money]"=true \ -d "components[financial_account][features][transfer_balance]"=true \ -d "components[financial_account][features][external_account_collection]"=true

Après avoir créé la session de compte et initialisé ConnectJS, vous pouvez afficher le composant du compte financier dans le front-end :

financial-account.js
JavaScript
// Include this element in your HTML const financialAccount = stripeConnectInstance.create('financial-account'); financialAccount.setFinancialAccount('{{FINANCIAL_ACCOUNT_ID') container.appendChild(financialAccount);

Les utilisateurs peuvent initier un transfert en cliquant sur Transférer des fonds.

À ce stade, le compte connecté dispose d’un FinancialAccount crédité des fonds d’un InboundTransfer. Vous pouvez les dépenser avec des cartes ou des OutboundPayments, comme les virements bancaires ou ACH.

Pour en savoir plus, consultez les pages suivantes :

  • Obtention des autorisations pour les InboundTransfers
  • Utilisation des comptes financiers Treasury
  • Transférer des fonds à l’aide de Treasury
  • Demander des fonctionnalités sur un compte financier
  • Utilisation des objets SetupIntents, PaymentMethods et BankAccounts
  • Transférer des fonds avec Treasury à l’aide d’objets InboundTransfer
  • Transférer des fonds avec Treasury à l’aide d’objets ReceivedCredit

Créer des cartes et des titulaires de carte

Le titulaire de la carte est la personne (employé ou sous-traitant) autorisée par votre client à utiliser les fonds de la carte à partir du solde associé. L’objet Cardholder inclut des informations concernant ce titulaire, notamment le nom à afficher sur la carte et une adresse de facturation, qui est généralement le siège social du compte connecté ou de votre plateforme.

Utilisez le composant Issuing Cards List intégré pour permettre à vos comptes connectés de créer un objet Card pour un objet Cardholder et de l’associer a l’objet Financial Account.

Lors de la création d’une session de compte, activez le composant Issuing Cards List en spécifiant issuing_cards_list dans le paramètre components. Vous pouvez activer ou désactiver des fonctionnalités du composant Issuing Cards List en spécifiant le paramètre features sous issuing_cards_list.

Command Line
cURL
curl https://api.stripe.com/v1/account_sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account=
{{CONNECTED_ACCOUNT_ID}}
\ -d "components[issuing_cards_list][enabled]"=true \ -d "components[issuing_cards_list][features][card_management]"=true \ -d "components[issuing_cards_list][features][cardholder_management]"=true \ -d "components[issuing_cards_list][features][card_spend_dispute_management]"=true \ -d "components[issuing_cards_list][features][spend_control_management]"=true

Après avoir créé la session du compte et initialisé ConnectJS, vous pouvez afficher le composant Issuing Cards List dans le front-end :

issuing-cards-list.js
JavaScript
// Include this element in your HTML const issuingCardsList = stripeConnectInstance.create('issuing-cards-list'); issuingCardsList.setShowSpendControls(true); container.appendChild(issuingCardsList);

En cliquant sur Créer une carte, l’utilisateur peut créer un nouveau titulaire de carte et une nouvelle carte. Il peut également choisir d’activer la carte lors de sa création ou plus tard.

À ce stade, une carte bancaire active est rattachée à un titulaire de carte et à un compte financier. Consultez la page Issuing du compte connecté pour voir les informations relatives à la carte et à son titulaire.

Pour en savoir plus, consultez les pages suivantes :

  • Cartes virtuelles avec Issuing
  • Cartes physiques
  • Use the Dashboard for Issuing with Connect
  • Create cards with the API

Utiliser la carte

Créer une autorisation

Pour observer l’impact des activités de carte sur le solde associé, générez une autorisation test. Vous pouvez le faire sur la page Issuing du Dashboard du compte connecté ou en effectuant l’appel suivant à l’API Authorization :

Command Line
cURL
curl https://api.stripe.com/v1/test_helpers/issuing/authorizations \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d card=
{{CARD_ID}}
\ -d amount=1000 \ -d authorization_method=chip \ -d "merchant_data[category]"=taxicabs_limousines \ -d "merchant_data[city]"="San Francisco" \ -d "merchant_data[country]"=US \ -d "merchant_data[name]"="Rocket Rides" \ -d "merchant_data[network_id]"=1234567890 \ -d "merchant_data[postal_code]"=94107 \ -d "merchant_data[state]"=CA

Après approbation, Stripe crée une Authorization à l’état pending en attendant la capture. Notez l’id d’autorisation que vous utiliserez pour capturer les fonds :

{ "id": "iauth_1NvPyY2SSJdH5vn2xZQE8C7k", "object": "issuing.authorization", "amount": 1000, ... "status": "pending", "transactions": [], }

Vous pouvez récupérer les détails du solde du compte financier et consulter l’effet de l’autorisation :

Command Line
cURL
curl https://api.stripe.com/v1/treasury/financial_accounts/
{{FINANCIAL_ACCOUNT_ID}}
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"

La réponse de l’API est un objet FinancialAccount avec un hachage balance (solde) détaillant les fonds et leur disponibilité :

{ "object": "treasury.financial_account", "id": "{{FINANCIAL_ACCOUNT_ID}}", ... "balance": { "cash": {"usd": 19000}, "inbound_pending": {"usd": 0}, "outbound_pending": {"usd": 1000} } }

La réponse indique que 190 USD sont actuellement disponibles, ainsi que 10 USD supplémentaires placés dans outbound_pending à partir de l’autorisation pending. Vous pouvez désormais simuler la capture de l’autorisation avec l’API.

Capturer les fonds

Capturez les fonds à l’aide du code suivant :

Command Line
cURL
curl -X POST https://api.stripe.com/v1/test_helpers/issuing/authorizations/
{{AUTHORIZATION_ID}}
/capture
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Une fois l’autorisation capturée, Stripe crée une transaction Issuing. L’attribut status de l’autorisation reçoit la valeur closed et un webhook ReceivedDebit est créé à partir de ces informations. La récupération des informations du solde du compte financier montre que la valeur outbound_pending est désormais de 0 USD alors que le solde disponible reste de 190 USD :

{ "object": "treasury.financial_account", "id": "{{FINANCIAL_ACCOUNT_ID}}", ... "balance": { "cash": {"usd": 19000}, "inbound_pending": {"usd": 0}, "outbound_pending": {"usd": 0} } }

Voir aussi

  • Gestion des webhooks d’autorisation en temps réel
  • Contrôles de dépenses
  • Autorisations Issuing
  • Transactions Issuing
  • Tester Issuing
  • Utilisation des cartes Stripe Issuing et de Treasury
  • Gérer les transactions frauduleuses
  • Envoyer des communications réglementaires aux clients
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