Rétablir l'accès aux données d'un compte Financial Connections avec l'autorisation de votre utilisateurVersion bêta publique
Découvrez comment rétablir l'accès aux données sur les comptes inactifs avec l'autorisation de votre utilisateur.
Le compte Financial Connections précédemment associé de votre utilisateur final peut devenir inactive pour diverses raisons, notamment :
- Le token OAuth fourni à Stripe par sa banque expire au bout d’une certaine période ou pour cause d’inactivité.
- La banque a modifié ses exigences en matière d’authentification à plusieurs facteurs.
- Le compte est bloqué par sa banque en raison d’une activité suspecte.
- L’utilisateur a clôturé son compte auprès de sa banque.
- L’utilisateur a modifié son nom d’utilisateur ou son mot de passe.
- L’utilisateur a révoqué l’accès au partage de données avec votre plateforme ou Stripe.
Les données des nouveaux comptes ne sont pas accessibles sur les comptes inactifs. Dans de rares cas, les données des nouveaux comptes sont définitivement inaccessibles, par exemple lorsque l’utilisateur final clôture le compte auprès de sa banque. Dans tous les autres cas, il doit se réauthentifier pour accepter de partager les données du nouveau compte avec votre plateforme.
L’API Financial Connections vous permet de rétablir la connexion de données de comptes Financial Connections précédemment associés (avec l’autorisation de votre utilisateur) à l’aide d’un flux d’authentification simplifié, qui redirige directement les utilisateurs vers la banque de leur compte précédemment associé.
Pour savoir quand un utilisateur doit réassocier un compte, vous devez utiliser une version d’API en aperçu, telle que 2026-01-28., dans l’ensemble de vos requêtes et endpoints de webhook, comme indiqué dans les extraits de code ci-dessous.
Savoir quand un compte devient inactifCôté serveur
Lorsqu’un compte Financial Connections précédemment associé devient inactif, vous recevez une notification grâce au webhook financial_. Si l’autorisation du compte est inactive, le sous-hachage inactive sur le hachage status_ de l’objet Authorization affiche une action relink_ s’il est possible de réassocier une autorisation inactive. Par exemple, vous pouvez disposer d’un gestionnaire de webhook comme celui ci-dessous pour traiter les événements de webhook.
En outre, vous pouvez récupérer l’état d’un compte en récupérant le compte à l’aide de l’ID du compte.
curl https://api.stripe.com/v1/financial_connections/accounts/:id \ -u: \ -X "GET" \ -H "Stripe-Version: 2026-01-28.preview"sk_test_BQokikJOvBiI2HlWgH4olfQ2
{ "id": "fca_1LDYuMGxLVUXRs6HW0lrat9T", "object": "financial_connections.account", //..., "authorization": "fcauth_1LDYuMGxLVUXRs6HW0lrat9T", "status": "inactive" }
Vous pouvez ensuite récupérer l’autorisation du compte à l’aide de l’ID autorisation.
curl https://api.stripe.com/v1/financial_connections/authorizations/:id \ -u: \ -X "GET" \ -H "Stripe-Version: 2026-01-28.preview"sk_test_BQokikJOvBiI2HlWgH4olfQ2
{ "id": "fcauth_1LDYuMGxLVUXRs6HW0lrat9T", "object": "financial_connections.authorization", //..., "status": "inactive", "status_details": { "inactive": { "action": "relink_required" } } }
Le paramètre authorization. est défini sur none lorsqu’un compte inactif ne peut pas être réassocié pour accéder aux données. Dans ce cas, redirigez l’utilisateur final vers le flux d’authentification habituel afin de sélectionner une banque et d’associer le compte comme s’il n’avait jamais été associé.
{ "id": "fcauth_1LDYuMGxLVUXRs6HW0lrat9T", "object": "financial_connections.authorization", //..., "status": "inactive", "status_details": { "inactive": { "action": "none" } } }
Dans certains cas, l’autorisation d’un compte peut être active, alors que le compte lui-même est inactif. Cela peut arriver si le compte est clôturé dans l’établissement. Dans ce cas, le compte inactif ne peut pas être réassocié pour accéder aux données. Vous devez alors rediriger l’utilisateur final vers le flux d’authentification habituel pour sélectionner une institution et associer le compte comme s’il n’avait jamais été associé.
Récupérer l'autorisation de reconnexion d'un compte Financial Connections inactifCôté serveur
Pour rétablir l’accès aux données sur un compte inactif, récupérez l’ID de l’autorisation du compte dans l’objet Account.
{ "id": "fca_1LDYuMGxLVUXRs6HW0lrat9T", "object": "financial_connections.account", //..., "authorization": "fcauth_1LDYuMGxLVUXRs6HW0lrat9T", "status": "inactive" }
Pour rétablir l’accès aux données d’un compte Financial Connections, deux options s’offrent à vous, selon que vous souhaitez rétablir l’accès aux données d’un compte précédemment associé pour accepter les paiements par prélèvement automatique ACH avec Stripe, ou à d’autres fins.
Pour pouvoir à nouveau accéder aux données bancaires d’un utilisateur avec Financial Connections, celui-ci doit réauthentifier son compte à l’aide du flux d’authentification. Il démarre le flux d’authentification lorsqu’il souhaite réassocier son compte à votre site ou application. Intégrez un bouton ou un lien sur votre site ou dans votre application afin que vos utilisateurs puissent réassocier leur compte. Ce bouton peut par exemple indiquer « Réassocier mon compte bancaire ».
Lorsque le flux d’authentification s’affiche, votre utilisateur final est invité à authentifier l’accès à son compte auprès de la banque concernée. Contrairement au flux d’authentification permettant d’associer un nouveau compte, l’utilisateur final n’a pas besoin de choisir son établissement financier dans le sélecteur de banque.
FacultatifRétablir l'accès aux données d'un compte Financial Connections pour accepter les paiements par prélèvement automatique ACH
Créer une session Financial Connections
Créez une session Financial Connections et indiquez les éléments suivants :
- Définissez
account_sur l’holder[customer] iddu client. - Définissez le paramètre de données
permissionspour inclurepayment_et toutes les données que vous souhaitez récupérer sur le compte. Le paramètre permissions est un tableau contenant des valeurs, notammentmethod [payment_. Pour protéger la confidentialité des données de votre utilisateur, seules les données de compte que vous avez spécifiées dans le paramètremethod, balances, ownership, transactions] permissionssont accessibles. Définissez les données requises pour répondre à votre cas d’usage et demandez l’autorisation d’accéder uniquement aux données dont vous avez besoin. À l’issue du flux d’authentification, votre utilisateur voit s’afficher les données que vous avez spécifiées à partir du paramètre permissions, et consent à partager ces données. L’exemple de code suivant montre comment collecter les valeursbalancesetpayment_.method - Définissez
relink_sur l’ID d’autorisation pour cibler l’autorisation du compte dont vous souhaitez rétablir l’accès aux données.options[authorization] - Définissez
filters[account_sursubcategories] checking,savings. - Définissez
limits[accounts]sur1.
Pour accepter les paiements par prélèvement automatique ACH avec Stripe, vous ne pouvez ajouter qu’un seul compte débitable.
La requête renvoie une réponse semblable à ce qui suit :
{ "id": "fcsess_abcd", "object": "financial_connections.session", "livemode": true, "account_holder": { "customer": "cus_NfjonN9919dELB", "type": "customer" }, "accounts": [], "client_secret": "fcsess_client_secret_UsESkKYzeiRcivgDJZfxZRFh", "filters": { "account_subcategories": ["checking", "savings"] }, "limits": { "accounts": 1 }, "permissions": [ "payment_method", "balances" ], "relink_options": { "authorization": "fcauth_1LDYuMGxLVUXRs6HW0lrat9T" } }
Associer à nouveau un compte Financial Connections
Utilisez la client_ renvoyée avec Stripe.js pour permettre à l’utilisateur de réassocier ses comptes. Un client_ permet aux SDK Stripe côté client d’apporter des changements à la session Financial Connections. Ne la sauvegardez pas, ne l’enregistrez pas, ne l’intégrez pas aux URL et ne la dévoilez pas à d’autres personnes que votre client final. Assurez-vous d’avoir activé TLS sur toutes les pages qui comprennent la clé secrète du client.
Utilisez stripe. pour collecter un compte.
// Fetch existing accounts on the authorization to determine whether the linked account is new. const existing_account_ids = await fetch_existing_accounts(); const financialConnectionsSessionResult = await stripe.collectFinancialConnectionsAccounts({ clientSecret: "fcsess_client_secret_UsESkKYzeiRcivgDJZfxZRFh" });
Stripe.js charge le flux d’authentification, c’est-à-dire l’interface utilisateur de Stripe.js côté client, qui permet à vos utilisateurs d’afficher et de consentir à partager les données auxquelles vous avez demandé l’accès à partir du paramètre permissions, et de réassocier leur compte bancaire à votre plateforme et à Stripe.
Le flux d’authentification peut se présenter comme suit :

La valeur renvoyée par stripe. est une « Promise ». Au moment où l’utilisateur termine le flux d’authentification, la Promise est résolue avec un objet qui contient la liste des comptes connectés :
stripe.collectFinancialConnectionsAccounts(clientSecret) .then(({financialConnectionsSession, error}) => { if (error) { // The session failed for some reason. console.error(error.message); } else if (financialConnectionsSession.accounts.length > 0) { // User has authorized some account on the authorization. const is_new = !existing_account_ids.includes(financialConnectionsSession.accounts[0].id); // The user has connected a new account on the authorization. if (is_new) { // You must surface the mandate for new accounts to process ACH payments. return surface_mandate(); } else { // User has reauthorized an existing payment account. reload_account(financialConnectionsSession.accounts[0].id); return display_success(); } } else if (accounts.length == 0) { // The session failed to connect an account. } });
Si votre utilisateur a associé un compte pour le partage de données, la longueur des accounts est > 0.
Dans les flux OAuth de la banque de vos utilisateurs finaux, ces derniers peuvent sélectionner un compte différent de celui initialement associé. Le champ is_ inclura le nouvel ID de compte si votre utilisateur a associé un compte différent de celui initialement associé. Effectuez les étapes permettant de convertir le nouveau compte Financial Connections en moyen de paiement.
Si l’utilisateur n’a pas de compte débitable, la longueur des accounts est de 0.
Relier des comptes débitables à des numéros de compte tokenisés
Étant donné que certaines banques utilisent des numéros de compte tokenisés (TAN) au lieu de numéros de compte bruts, relier un compte met à jour les données du moyen de paiement associé. Si votre utilisateur associe à nouveau un compte Chase ou PNC, le numéro de compte du moyen de paiement sous-jacent est automatiquement mis à jour.
FacultatifRéparer l'accès aux données sur un compte Financial Connections pour tous les autres cas d'usage
Créer une session
Créez une session Financial Connections et indiquez les éléments suivants :
- Définissez
account_sur l’holder[customer] iddu client. - Définissez le paramètre de données
permissionspour inclurepayment_et toutes les données que vous souhaitez récupérer sur le compte. Le paramètre permissions est un tableau contenant des valeurs, notammentmethod [payment_. Pour protéger la confidentialité des données de votre utilisateur, seules les données de compte que vous avez spécifiées dans le paramètremethod, balances, ownership, transactions] permissionssont accessibles. Définissez les données requises pour répondre à votre cas d’usage et demandez l’autorisation d’accéder uniquement aux données dont vous avez besoin. À l’issue du flux d’authentification, votre utilisateur voit s’afficher les données que vous avez spécifiées à partir du paramètre permissions, et consent à partager ces données. L’exemple de code suivant montre comment collecter les valeursbalancesetpayment_.method - Définissez
relink_sur l’ID d’autorisation pour cibler l’autorisation du compte dont vous souhaitez rétablir l’accès aux données.options[authorization]
La requête renvoie une réponse semblable à ce qui suit :
{ "id": "fcsess_abcd", "object": "financial_connections.session", "livemode": true, "account_holder": { "customer": "cus_NfjonN9919dELB", "type": "customer" }, "accounts": [], "client_secret": "fcsess_client_secret_UsESkKYzeiRcivgDJZfxZRFh", "permissions": [ "payment_method", "balances" ], "relink_options": { "authorization": "fcauth_1LDYuMGxLVUXRs6HW0lrat9T" } }
Associer à nouveau un compte Financial Connections
Utilisez la client_ renvoyée avec Stripe.js pour permettre à l’utilisateur de réassocier ses comptes. Un client_ permet aux SDK Stripe côté client d’apporter des changements à la session Financial Connections. Ne la sauvegardez pas, ne l’enregistrez pas, ne l’intégrez pas aux URL et ne la dévoilez pas à d’autres personnes que votre client final. Assurez-vous d’avoir activé TLS sur toutes les pages qui comprennent la clé secrète du client.
Utilisez stripe. pour collecter un compte.
// Fetch existing accounts on the authorization to determine whether the linked account is new. const existing_account_ids = await fetch_existing_accounts(); const financialConnectionsSessionResult = await stripe.collectFinancialConnectionsAccounts({ clientSecret: "fcsess_client_secret_UsESkKYzeiRcivgDJZfxZRFh" });
La valeur renvoyée par stripe. est une « Promise ». Au moment où l’utilisateur termine le flux d’authentification, la Promise est résolue avec un objet qui contient la liste des comptes connectés :
stripe.collectFinancialConnectionsAccounts(client_secret).then(({session, error}) => { if (error) { // The session failed for some reason. console.error(error.message); } else if (session.accounts.length > 0) { // User has reauthorized existing Financial Connections accounts. reload_accounts(session.accounts); } else if (accounts.length == 0) { // The session failed to connect an account. } });
Si votre utilisateur a associé un compte pour le partage de données, la longueur des accounts est > 0.
Dans les flux OAuth de la banque de vos utilisateurs finaux, ces derniers peuvent sélectionner un compte différent de celui initialement associé.
Récupérer les données d'un compte Financial ConnectionsCôté serveur
Une fois que votre utilisateur s’est soumis au flux d’authentification, mettez à jour ou accédez aux données du compte que vous avez précisé dans le paramètre permissions de la session Financial Connections.
Pour protéger la confidentialité des données de votre utilisateur, vous avez uniquement accès aux données indiquées dans le paramètre permissions.
Suivez les instructions des guides consacrés aux soldes, à la propriété et aux transactions pour commencer à récupérer les données d’un compte.