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
À propos des paiements Stripe
Mettre votre intégration à niveau
Analyses des paiements
Paiements en ligne
PrésentationTrouver votre cas d'usageManaged Payments
Utiliser Payment Links
Créer une page de paiement
Développer une intégration avancée
Développer une intégration dans l'application
Moyens de paiement
Ajouter des moyens de paiement
Gérer les moyens de paiement
Paiement accéléré avec Link
Interfaces de paiement
Payment Links
Checkout
Web Elements
Elements intégrés à l'application
Scénarios de paiement
Tunnels de paiement personnalisés
Acquisition flexible
Orchestration
Paiements par TPE
Terminal
Autres produits Stripe
Financial Connections
    Présentation
    Démarrer
    Cas d'usage
    Principes de base
    Tests
    Établissements pris en charge
    Collecter des comptes pour obtenir des données
    Paiements par prélèvement automatique ACH
    Virements Connect
    Autres produits reposant sur les données
    Accéder aux données des comptes
    Soldes
    Propriété
    Transactions
    Gérer les comptes
    Déconnexions
    Webhooks
Cryptomonnaies
Climate
AccueilPaiementsFinancial Connections

Accéder aux transactions d'un compte Financial Connections

Accéder aux transactions d'un compte avec l'autorisation de votre utilisateur.

Copier la page

L’API Financial Connections vous permet de récupérer des transactions d’un compte Financial Connections. Utilisez les données de transaction pour créer divers produits et solutions, notamment :

  • Accélérez le processus d’évaluation des risques et améliorez l’accès de vos utilisateurs au crédit et à d’autres services financiers.
  • Réduire la fraude et le risque lié à l’inscription de nouveaux utilisateurs en évaluant leur historique de transactions, et comprendre les flux entrants et sortants de leurs comptes financiers.
  • Aidez vos utilisateurs à suivre leurs dépenses et à gérer leurs factures et leurs finances.

Avant de commencer

You must have a completed Financial Connections registration to access transactions in live mode. Visit your Dashboard settings to check the state of your registration or begin the registration process. Financial Connections test data is always available.

Créer un client
Recommended
Server-side

Nous vous recommandons de créer un objet Customer contenant une adresse e-mail, qui représentera votre utilisateur et que vous pourrez ensuite associer à votre paiement. L’association d’un objet Customer vous permettra par la suite de répertorier les comptes précédemment associés. En renseignant une adresse e-mail dans l’objet Customer, vous permettez à Financial Connections d’améliorer le flux d’authentification en simplifiant l’inscription ou la connexion de votre utilisateur, selon qu’il s’agit d’un nouvel utilisateur de Link ou d’un utilisateur existant.

Command Line
cURL
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d email={{CUSTOMER_EMAIL}}

Demander l'accès aux transactions d'un compte
Côté serveur

Vous devez d’abord collecter un compte avant de pouvoir accéder à ses données de transaction. Pour découvrir comment collecter les informations d’un compte Financial Connections, consultez le guide d’intégration correspondant le mieux à votre cas d’usage : accepter des paiements, faciliter des virements Connect ou créer d’autres produits reposant sur les données.

Lorsque vous collectez les données d’un compte, vous devez spécifier les données auxquelles vous avez besoin d’accéder à l’aide du paramètre autorisations. L’utilisateur peut consulter l’ensemble des autorisations d’accès aux données demandées dans le flux d’authentification. Les comptes Financial Connections peuvent être collectés via différents chemins d’intégration, et la façon de spécifier le paramètre varie légèrement en fonction de l’API.

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d amount=20000 \ -d currency=usd \ -d customer=
{{CUSTOMER_ID}}
\ -d "payment_method_types[]"=us_bank_account \ -d "payment_method_options[us_bank_account][financial_connections][permissions][]"=transactions \ -d "payment_method_options[us_bank_account][financial_connections][permissions][]"=payment_method

Si vous utilisez des moyens de paiement dynamiques pour certaines API de paiement, vous pouvez également configurer les autorisations demandées dans le Dashboard. Découvrez comment accéder aux données supplémentaires sur les comptes Financial Connections.

S'abonner aux données de transaction
Côté serveur

Lorsque vous vous abonnez aux données de transaction d’un compte, Stripe récupère automatiquement en arrière-plan les nouvelles transactions chaque jour et vous informe dès qu’elles sont disponibles. L’abonnement aux mises à jour quotidiennes est le moyen le plus simple de maintenir les données de transaction du compte à jour.

Pour obtenir l’ID du compte Financial Connections dont vous souhaitez vous abonner aux transactions, consultez la documentation relative à nos intégrations de paiement ou le guide sur les sessions Financial Connections.

Abonnez-vous aux données de transaction en appelant l’API d’abonnement :

Command Line
cURL
curl https://api.stripe.com/v1/financial_connections/accounts/
{{ACCOUNT_ID}}
/subscribe
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "features[]"=transactions

Remarque

Les abonnements ne sont pas autorisés sur les comptes inactifs.

En plus d’activer un abonnement aux données de transactions futures, cet appel à l’API lance automatiquement une actualisation des transactions :

{ "id": "fca_1LDYuMGxLVUXRs6HW0lrat9T", "object": "financial_connections.account", "display_name": "Savings", "institution_name": "Test Bank", "status": "active", "permissions": ["transactions"], "subscriptions": ["transactions"], "transaction_refresh": { "id": "fctxnref_1aaaxqEitUZY8Svm4QdcWZKt", "last_attempted_at": 1706742786, "next_refresh_available_at": null, "status": "pending" } // ... }

Tant que vous restez abonné aux données de transaction, Stripe lance une nouvelle actualisation chaque jour.

Attendre la fin de l’actualisation

Toutes les actualisations de données Financial Connections sont asynchrones. Après avoir initié une actualisation des transactions, attendez qu’elle se termine, puis récupérez les résultats.

Le champ transaction_refresh d’un compte Financial Connections représente l’état d’actualisation des transactions. Ce champ reste null jusqu’à ce que vous demandiez l’autorisation transactions et initiez une actualisation. Après avoir lancé une actualisation des transactions, l’état passe pending. Une fois terminée, il bascule sur succeeded ou failed. Nous envoyons l’événement financial_connections.account.refreshed_transactions lorsque l’actualisation des transactions a été effectuée. Pour déterminer si l’actualisation a abouti, vérifiez le champ transaction_refresh.status lors du traitement du webhook.

Récupérer les transactions
Côté serveur

Une fois que Stripe a actualisé les transactions du compte, vous pouvez les récupérer à l’aide de l’API Transactions List :

Command Line
cURL
curl -G https://api.stripe.com/v1/financial_connections/transactions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account=
{{ACCOUNT_ID}}

Stripe renvoie une liste paginée comprenant jusqu’à 180 jours d’historique des transactions sur un compte, en fonction de l’institution financière du compte.

{ "object": "list", "data": [ { "id": "fctxn_1LXp9RGxLVUXRs6HtTSVfxse", "object": "financial_connections.transaction", "account": "fca_1LDYuMGxLVUXRs6HW0lrat9T", "amount": -1000, "currency": "usd", "description": "Rocket Rides", "livemode": true, "status": "posted", "status_transitions": { "posted_at": 1651784999, "void_at": null }, "transacted_at": 1651784999, "transaction_refresh": "fctxnref_1LXp8WGxLVUXRs6Hkc5PNUXf", "updated": 1651784999 }, {...}, {...} ], "has_more": false, "url": "/v1/financial_connections/transactions" }

Une transaction peut être à l’état pending (en attente), posted (comptabilisée), ou void (annulée). Les informations incluses dans le champ description varient, mais peuvent inclure des métadonnées telles que le nom de l’entreprise.

Récupérer les transactions depuis la dernière actualisation

Vous pouvez choisir de récupérer uniquement les données de transaction apparues depuis votre dernier pull de données. Par exemple, certains utilisateurs enregistrent les données de transaction précédemment récupérées dans leur base de données, puis fusionnent les données nouvelles ou mises à jour dès qu’elles sont disponibles.

Pour récupérer uniquement les données de transaction nouvelles ou mises à jour depuis votre dernière actualisation, transmettez à l’API List l’identifiant transaction_refresh fourni par votre dernier objet d’événement webhook financial_connections.account.refreshed_transactions observé :

Command Line
cURL
curl -G https://api.stripe.com/v1/financial_connections/transactions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account=
{{ACCOUNT_ID}}
\ -d "transaction_refresh[after]"=fctxnref_1LXp8WGxLVUXRs6Hkc5PNUXf

Voici un exemple d’intégration de webhook qui récupère et enregistre uniquement les données de transaction nouvelles ou mises à jour :

Python
import stripe from flask import Flask app = Flask(__name__) @app.route('/stripe_webhooks', methods=['POST']) def webhook(): event = None try: event = stripe.Event.construct_from(json.loads(request.data), stripe.api_key) except ValueError as e: # Invalid payload raise e if event.type == "financial_connections.account.refreshed_transactions": account = event.data.object sync_transactions(account["id"], account["transaction_refresh"]["id"]) return jsonify(success=True) def sync_transactions(account_id, current_refresh): # Fetches the last transaction_refresh observed for this account from internal database last_observed_transaction_refresh = get_previous_transaction_refresh(key=account_id) # Get transactions since the last seen transaction_refresh response = stripe.financial_connections.Transaction.list( account=account_id, transaction_refresh={"after": last_observed_transaction_refresh}, ) # We know every transaction is either new or updated because of the `transaction_refresh` filter in the list endpoint for transaction in response.data: record_transaction(transaction) # Saves the transaction to the DB # Updates the last observed transaction_refresh for this account to the current refresh set_previous_transaction_refresh(key=account_id, value=current_refresh)

FacultatifSe désabonner des données de transaction

FacultatifActualisation des transactions à la demande

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