Inscription des utilisateurs via l'API
Créez votre propre flux d'inscription des utilisateurs à l'aide des API de Stripe.
Avec l’API Onboarding, vous utilisez l’API Accounts pour créer un flux d’inscription, une fonctionnalité de reporting et des canaux de communication pour vos utilisateurs. Stripe peut être totalement invisible pour le titulaire du compte. Cependant, votre plateforme est responsable de toutes les interactions avec vos comptes et de la collecte de toutes les informations nécessaires à leur vérification.
Responsabilités supplémentaires
Avec l’inscription via l’API, votre flux personnalisé doit répondre à toutes les exigences légales et réglementaires en vigueur dans les régions où vous exercez vos activités. Vous devez également consacrer des ressources au suivi des modifications apportées à ces exigences et recueillir des informations mises à jour de manière continue, au moins une fois tous les six mois. Si vous souhaitez mettre en place un flux d’inscription personnalisé, Stripe vous conseille vivement d’utiliser l’inscription intégrée.
Définir des exigences
Les facteurs suivants affectent les exigences d’inscription pour vos comptes connectés :
- Pays d’origine des comptes connectés
- Le type de contrat de service applicable aux comptes connectés
- Fonctionnalités demandées pour les comptes connectés
- Le business_type (par exemple, particulier ou entreprise) et la structure de l’entreprise (par exemple,
public_
oucorporation private_
)partnership
Utilisez le formulaire interactif pour voir comment la modification de ces facteurs affecte les exigences.
Formulaire d'exigences
Créer des formulaires pour collecter des informationsCôté client
Il est recommandé d’organiser les paramètres requis en groupes logiques ou en formulaires dans votre flux d’inscription. Vous pouvez coder un mappage entre les paramètres Stripe et les regroupements logiques. Les regroupements logiques suggérés pour les paramètres sont indiqués dans la première colonne de l’exemple de tableau des exigences.
Après avoir encodé les paramètres requis au sein de votre application, générez des interfaces utilisateur pour les paramètres correspondant à ces exigences. Pour chaque paramètre, créez un formulaire d’interface utilisateur qui comprend :
- Libellé de paramètre, localisé dans chaque pays et langue pris en charge
- Description des paramètres, localisée dans chaque pays et langue pris en charge
- Champs de saisie des paramètres avec logique de validation des données et chargement de documents au besoin
Il est important de structurer votre logique d’application pour prendre en compte la possibilité d’ajouter des paramètres ultérieurement. Par exemple, Stripe peut introduire de nouveaux paramètres, de nouvelles vérifications ou de nouveaux seuils que vous devez intégrer dans vos flux d’inscription au fil du temps.
Si vous modifiez l’un des facteurs qui déterminent les exigences de vos comptes connectés, vous devez également adapter vos formulaires de collecte pour tenir compte des nouvelles exigences. Le pays et le type de contrat de service sont non mutables, tandis que les fonctionnalités et le type d’entreprise sont mutables.
- Pour modifier un champ non mutable, créez un nouveau compte connecté avec les nouvelles valeurs pour remplacer le compte existant.
- Pour modifier un champ mutable, mettez à jour le compte connecté.
Inclure les Conditions d’utilisation du service Stripe
Vos comptes connectés doivent accepter les Conditions d’utilisation du service Stripe avant de pouvoir être activés. Vous pouvez inclure les Conditions d’utilisation du service Stripe aux vôtres.
Créer un compte connectéCôté serveur
Créez un compte dans lequel votre plateforme est responsable des soldes négatifs, dans lequel Stripe perçoit des frais sur votre compte de plateforme et dans lequel vos comptes connectés n’ont pas accès à un Dashboard hébergé par Stripe. Demandez toutes les fonctionnalités dont vos comptes connectés ont besoin. Préremplissez le type d’entreprise et toute autre information disponible correspondant à vos besoins.
Vous pouvez également créer un compte connecté dont le type
est défini sur custom
, avec les fonctionnalités de votre souhait.
Si vous ne spécifiez pas le pays ni le contrat de type de service, les valeurs par défaut suivantes leur sont attribuées :
- Le
country
par défaut est le même pays que celui de votre plateforme. - Le contrat de type de service (
tos_
) est défini suracceptance. service_ agreement full
par défaut.
Remarque
Pour se conformer à la réglementation DSP2 française, les plateformes françaises doivent utiliser des tokens de compte. Les tokens présente un autre avantage : ils évitent à la plateforme de stocker des éléments d’identification, qui sont transférés du compte connecté directement à Stripe. Nous recommandons également aux plateformes situées dans d’autres pays d’utiliser des tokens de compte, mais ce n’est pas obligatoire.
Déterminer les informations à collecterCôté serveur
En tant que plateforme, vous devez décider entre collecter toutes les informations requises auprès de vos comptes connectés au début du processus (inscription complète), ou les recueillir progressivement (inscription progressive). L’inscription complète collecte les exigences eventually_
pour le compte, tandis que l’inscription progressive collecte uniquement les exigences currently_
.
Type d’inscription | Avantages |
---|---|
**En amont ** |
|
Progressive |
|
Pour déterminer si vous devez utiliser l’inscription complète ou progressive, consultez les exigences relatives aux emplacements et aux fonctionnalités de vos comptes connectés. Stripe s’efforce de minimiser son impact sur les comptes connectés, cependant, les exigences sont susceptibles d’évoluer.
Dans le cas des comptes connectés pour lesquels vous êtes responsable de la collecte des exigences, vous pouvez personnaliser le comportement des exigences futures à l’aide du paramètre collection_
. Pour collecter les futurs besoins du compte, définissez collection_
sur include
.
Pour mettre en œuvre votre stratégie d’inscription, inspectez le hachage des exigences du compte connecté que vous avez créé. Le hachage requirements fournit une liste complète des informations que vous devez collecter pour activer le compte connecté.
- Pour l’inscription progressive, examinez le hachage
currently_
dans le hachage des exigences et créez un flux d’inscription qui collecte uniquement ces exigences.due - Pour l’inscription complète, vérifiez les hachages
currently_
etdue eventually_
dans le hachage des exigences et créez un flux d’inscription qui collecte ces exigences.due
{ ... "requirements": { "alternatives": [], "current_deadline": null, "currently_due": [ "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "tos_acceptance.date", "tos_acceptance.ip" ], "disabled_reason": "requirements.past_due", "errors": [], "eventually_due": [ "business_profile.product_description", "business_profile.support_phone", "business_profile.url", "external_account", "tos_acceptance.date", "tos_acceptance.ip" ], "past_due": [], "pending_verification": [] }, ... }
Gérer les exigences en matière de preuves d'existence
An account can have one or more Person objects with a proof_
requirement. A proof_
requirement might require collection of an electronic ID credential such as MyInfo in Singapore, or by using Stripe Identity to collect a document or selfie. We recommend using Stripe-hosted or embedded onboarding to satisfy all variations of the proof_
requirement.
Mettre à jour le compte connectéCôté serveur
Mettez à jour l’objet Account avec de nouvelles informations à chaque étape du flux d’inscription de votre compte connecté. Cela permet à Stripe de valider les informations dès qu’elles sont ajoutées. Une fois que Stripe a confirmé son acceptation de nos conditions d’utilisation du service, toute modification apportée à l’objet Account
déclenche une revérification. Par exemple, si vous modifiez le nom et le numéro d’identification du compte connecté, Stripe relance les vérifications.
Lors de la mise à jour d’un compte connecté, vous devez gérer les erreurs de vérification ou les codes d’erreur HTTP.
Gérer les erreurs de vérificationCôté serveur
Lorsque les données du compte connecté sont soumises, Stripe les vérifie. Ce processus peut prendre quelques minutes ou quelques heures, selon la nature de la vérification. Au cours de ce processus, les fonctionnalités que vous avez demandées ont pour status
pending
.
État de la vérification
Vous pouvez récupérer l’état des fonctionnalités de votre compte connecté des manières suivantes :
- Examen du hash des fonctionnalités de l’objet Account pour la fonctionnalité concernée.
- Demandez des fonctionnalités directement à partir de l’API Capabilities et examinez l’état de la fonctionnalité concernée.
- Écoutez les événements
account.
dans votre endpoint de webhook et inspectez le hashupdated capabilities
pour la fonctionnalité correspondante.
Une fois les vérifications terminées, une fonctionnalité devient active
et disponible pour le compte connecté. Les vérifications de compte s’exécutent en permanence, et si une vérification ultérieure échoue, une fonctionnalité peut ne plus être active
. Écoutez les événements account.
pour détecter les changements d’état des fonctionnalités.
Confirmez que votre intégration Connect est conforme et opérationnelle en vérifiant que les paramètres charges_
et payouts_
du compte sont tous deux définis sur « true ». Vous pouvez utiliser l’API ou écouter les événements account.
. Pour plus d’informations sur les autres champs pertinents, vérifiez le hash des exigences du compte. Vous ne pouvez pas confirmer l’intégration sur la base d’une seule valeur, car les états peuvent varier selon l’application et les politiques associées.
- charges_enabled confirme que votre chemin de paiement complet (paiement et transfert) fonctionne correctement et détermine si les fonctions
card_
etpayments transfers
sont actives. - payouts_enabled détermine si votre compte connecté peut effectuer des virements vers un compte externe. En fonction de vos politiques en matière de risques, vous pouvez autoriser votre compte connecté à commencer à effectuer des transactions sans avoir activé les virements. À terme, vous devrez activer les virements pour verser des fonds sur vos comptes connectés.
Vous pouvez partir de la logique suivante pour définir un état récapitulatif à afficher pour votre compte connecté.
Remarque
Vous ne pouvez pas utiliser l’API pour répondre aux vérifications des risques de Stripe. Vous pouvez autoriser vos comptes connectés à répondre à l’aide de composants intégrés, d’une procédure d’inscription hébergée par Stripe ou de liens de rectification. Vous avez également la possibilité d’utiliser le Dashboard pour répondre à des vérifications des risques au nom de vos comptes connectés.
Écoutez l’événement account.updated. Si le compte contient des champs currently_
à l’arrivée de la date current_
, la fonctionnalité correspondante est désactivée et ces champs sont ajoutés à past_
.
Créez un formulaire donnant des instructions claires que le compte pourra utiliser pour corriger ses informations. Informez le compte, puis soumettez les informations corrigées à l’aide de l’API Accounts.
Si vous prévoyez de créer des flux personnalisés pour gérer l’ensemble de vos erreurs de vérification :
- Consultez les informations concernant toutes les erreurs de vérification possibles et comment les gérer.
- Tester les états de vérification.