Utilisation des SetupIntents, PaymentMethods et BankAccounts
Configurez des mouvements de fonds avec Financial Accounts pour les plateformes.
Vous pouvez utiliser des objets PaymentMethod afin d’enregistrer les identifiants d’un compte bancaire états-unien pour une réutilisation ultérieure. Une fois que vous avez créé le PaymentMethod, vous pouvez utiliser le même objet plusieurs fois pour transférer des fonds vers et depuis un compte financier. Vous pouvez associer le PaymentMethod à un objet Customer ou au compte Stripe, en fonction de votre cas d’usage.
- Si vous prévoyez d’utiliser le moyen de paiement dans le cadre d’un paiement sortant à un tiers, associez l’objet
PaymentMethodà un objetCustomer. - Si vous prévoyez d’utiliser le moyen de paiement dans le cadre d’un paiement vers ou depuis un compte externe appartenant à la même entreprise que le compte Stripe, associez l’objet
PaymentMethodà un compte connecté ou un compte de la plateforme.
Remarque
L’objet Customer définit une entité tierce qui représente le propriétaire d’un compte bancaire externe.
Si vous avez déjà collecté les informations de paiement du client sur Stripe à l’aide de l’objet BankAccounts, vous pouvez remplacer BankAccount par PaymentMethod dans ces requêtes. Pour InboundTransfers, la valeur status de BankAccount doit être définie sur verified. Nous vous recommandons, dans la mesure du possible, d’utiliser PaymentMethods pour tirer pleinement parti de ces fonctionnalités.
Dans certains cas, les banques qui reçoivent les mouvements de fonds ACH informent Stripe que les informations relatives au compte (telles que le numéro de compte ou le numéro de routage) ont changé. Si nous recevons une notification pour un compte associé à un objet PaymentMethod ou BankAccount, nous mettons automatiquement à jour l’objet. Pour en savoir plus, consultez la section Gestion des NOC pour l’ACH et des codes SEC.
Créer un SetupIntent pour enregistrer les informations du us_bank_account
Les SetupIntents vous permettent de configurer un moyen de paiement que vous pouvez utiliser avec les endpoints de transferts de fonds de l’API Stripe. Utilisez des SetupIntents pour enregistrer les identifiants du client ou du compte comme moyen de paiement et les optimiser pour les objets avec lesquels vous comptez les utiliser. Par exemple, lors de la configuration d’un compte bancaire américain, il convient de vérifier le compte externe avant de le débiter en vue d’un transfert entrant. Stripe met à jour l’objet SetupIntent tout au long du processus de configuration.
L’exemple suivant illustre l’utilisation d’un SetupIntent avec un compte bancaire acceptant les transferts de fonds bidirectionnels. Pour en savoir plus sur la configuration d’un moyen de paiement afin de créer des paiements et instaurer un processus de vérification du compte bancaire, consultez le guide relatif à l’enregistrement des informations pour les futurs paiements par prélèvement automatique ACH. Lorsque vous configurez des moyens de paiement pour gérer les fonds d’un compte financier avec des SetupIntents, voici les champs les plus pertinents :
- flow_directions : ce tableau définit la directionnalité des flux d’un moyen de paiement. Les valeurs possibles,
inboundetoutbound, déterminent la capacité du moyen de paiement à transférer des fonds vers et/ou depuis un compte financier. Vous pouvez également configurer un moyen de paiement existant pour le rendre bidirectionnel. - attach_to_self : flag booléen qui indique si le moyen de paiement doit être associé à l’objet
Accounten contexte. Définissez cette valeur sur true pour créer un moyen de paiement associé au compte dédié à la gestion des flux de transfert de fonds propres à ce compte, tels que des transferts entrants et sortants. - customer : ID de l’objet
Customerauquel le moyen de paiement doit être associé à l’issue de la configuration. Vous pouvez utiliser les moyens de paiement associés à l’objetCustomeravec des paiements sortants afin de transférer des fonds à des tiers et des clients. Vous pouvez également les utiliser avec lesPaymentIntentsde Stripe Payments afin de recevoir des fonds. Vous devez définir l’attributattach_sur false ou le laisser vide lorsque vous créez un moyen de paiement associé au client.to_ self
Autorisations
Pour utiliser un moyen de paiement pour les redirections de flux entrants (comme les InboundTransfers), vous devez obtenir l’autorisation du titulaire du compte. Le fait d’obtenir cet accord (représenté par l’objet Mandate) au départ et de l’associer au moyen de paiement vous permettra par la suite de débiter le moyen de paiement enregistré.
Sur votre application ou votre site, précisez les conditions dans lesquelles vous prélèverez des fonds de comptes externes et inviterez vos comptes connectés à adhérer à ces dispositions. Vos conditions doivent au minimum comporter les éléments suivants :
- Vous devez demander à votre compte connecté l’autorisation de déclencher un prélèvement ou une série de prélèvements en son nom
- D’informer sur la fréquence prévue des prélèvements (paiement ponctuel ou paiements récurrents)
- D’expliciter la façon dont vous déterminez le montant du prélèvement
Si vous devez obtenir un mandat pour débiter un compte bancaire externe aux États-Unis avec des transferts entrants, vous n’en avez pas besoin pour virer des fonds sur un compte bancaire via des transferts ou des paiements sortants.
Créer un SetupIntent
Pour créer un SetupIntent, vous devez soit utiliser un moyen de paiement existant avec le paramètre payment_, soit fournir de nouveaux identifiants à l’aide du paramètre de type inline payment_.
Utilisez POST /v1/setup_ pour créer un SetupIntent.
Sauf échec de l’opération, la réponse renvoie le nouvel objet SetupIntent.
Le SetupIntent présente l’un des états suivants :
| ÉTAT | DESCRIPTION | ÉTAPES SUIVANTES |
|---|---|---|
succeeded | Le compte bancaire a été vérifié instantanément ou la vérification n’était pas nécessaire. | Aucune action requise. |
requires_ | Une action supplémentaire est requise pour mener à bien la vérification du compte bancaire. | Voir next_ pour les étapes de configuration supplémentaires. |
Une fois la SetupIntent confirmée, Stripe envoie par e-mail une confirmation du mandat ainsi que les informations collectées sur le compte bancaire à votre compte connecté. L’e-mail par défaut renvoie à Stripe Payments ; si vous utilisez Financial Accounts pour les plateformes sans Stripe Payments, vous pouvez désactiver les e-mails de Stripe et envoyer des messages personnalisés à la place.