Stripe へのアカウントの移行
支払いを中断せずに、Stripe でのアカウントの処理を開始します。
You can migrate an existing multiparty payments business to Stripe, including historical payment and customer data. Depending on the nature of your business, you can set up a marketplace or a SaaS platform. To migrate to a Connect integration and configure connected accounts representing your client businesses, follow this process:
- Create a migration plan and timeline
- Update your integration for connected accounts
- Create and onboard accounts
- Handle outstanding and ongoing requirements
- Migrate payment and customer data to Stripe
Create a migration plan
A successful migration to Stripe includes a migration plan, a timeline, and KYC information for connected accounts, as well as payment and customer data.
Connected accounts must onboard to Stripe, which requires sending Stripe Know Your Customer (KYC) data for each account. Stripe can also require collecting information from your accounts. Perform an analysis to understand what data you collected with your previous provider and what data Stripe requires. Stripe verifies KYC data before activating connected accounts. Monitor account verification status using the account.updated event or the Retrieve Account API. Accounts that fail to verify require action before they’re activated.
Include a hard cutover date for payment data after onboarding accounts to Stripe. Payment and customer data requires a PAN import as part of the cutover. We recommend that you import accounts in batches.
Update your integration
Your application can require changes as part of the integration updates to migrate to Stripe. For example, consider any changes to your connected accounts’ usage of your platform, such as pricing updates. Stripe recommends communicating any changes to your accounts ahead of time.
Stripe terms of service agreement
Your connected accounts must accept the Stripe terms of service before they’re activated.
For accounts where Stripe is responsible for collecting updated information when requirements are due or change (including Standard and Express accounts), the account accepts Stripe’s terms of service as part of the onboarding flow.
If your platform is responsible for collecting updated information from a connected account (including Custom accounts) when requirements change, you can wrap Stripe’s terms of service in your own terms of service. We recommend placing terms of service acceptance at the end of the onboarding flow, but you can also have it at the start if that makes more sense for your business. When creating or updating connected accounts, record acceptance of the updated Terms of Service information to send to Stripe, and communicate that to the accounts.
Onboard connected accounts to Stripe
Stripe offers different levels of onboarding support for your connected accounts. Build an onboarding flow for your connected accounts using any of the following methods:
| 方法 | 長所 | 短所 |
|---|---|---|
| Stripe のホスティング登録 |
|
|
| 埋め込みアカウント登録 |
|
|
| API ベースのアカウント登録 |
|
|
Create and onboard accounts
The following is an overview of the process:
Establish account requirements
以下の要因は、連結アカウントの登録要件に影響します。
- 連結アカウントの所在国
- 連結アカウントに適用される利用規約タイプ
- 連結アカウントでリクエストされるケイパビリティ
- business_type (個人または会社など) および company.structure (
public_またはcorporation private_など)partnership
必須情報確認ツールを使用して、これらの要素の変更が連結アカウントのアカウント登録要件にどのように影響するかを確認します。
Create the connected account
For each account to be migrated to Stripe, create an associated Account.
Create a connected account that specifies any desired account preferences. You can prefill any information, but you must specify the controller properties. The country of the account defaults to the same country as your platform, and the account confirms the selection during onboarding.
メモ
This example includes only some of the properties you can set when creating an account. For a full list of the properties you can set, such as address and URL information, see Create Account.
連結アカウントの情報をすでに収集している場合は、Account オブジェクトにその情報を事前入力できます。個人情報や事業情報、外部のアカウント情報など、あらゆるアカウント情報を事前に入力できます。
After creating the Account, create a Person to represent the person responsible for opening the account, with relationship. set to true and any account information you want to prefill (for example, their first and last name).
Connect アカウント登録で、事前入力された情報が要求されることはありません。ただし、アカウント所有者は Connect 利用規約に同意する前に、事前入力された情報を確認するよう求められます。
実装内容をテストする場合、テストデータを使用してアカウント情報を事前入力します。
Store the ID of the created Account so you can reference it later.
After updating Stripe with all existing data, look for any outstanding requirements. Any outstanding requirements are listed in the currently_ array. All currently_ requirements need to be collected from the account for Stripe to verify the account and activate the account’s capabilities.
{ ... "requirements": { "alternatives": [], "current_deadline": null, "currently_due": [ "business_profile.url", "external_account", "individual.first_name", "individual.last_name", "tos_acceptance.date", "tos_acceptance.ip" ], "disabled_reason": "requirements.past_due", "errors": [],
After providing all existing data on an account, direct the account to a Stripe UI to set up Stripe credentials, confirm the information, and accept the Stripe terms of service.
Take new accounts through an onboarding flow
In addition to migrating existing accounts, build a flow for new accounts to onboard to Stripe. You can also use this onboarding flow to collect missing data for accounts being migrated.
Review onboarding options to create your onboarding flow.
Store the ID of the created Account so you can reference it later.
Handle outstanding and ongoing requirements
連結アカウントのデータが送信されると、Stripe はそれを確認します。このプロセスには、確認の性質に応じて数分または数時間かかる場合があります。このプロセスの進行中、リクエストしたケイパビリティの status は pending になります。
ステータスを確認する
連結アカウントのケイパビリティのステータスは、以下によって取得できます。
- Account オブジェクトの capabilities ハッシュで、関連するケイパビリティを確認します。
- Capabilities API から直接ケイパビリティをリクエストし、関連するケイパビリティのステータスを確認します。
- Webhook エンドポイントで
account.イベントをリッスンし、関連するケイパビリティのupdated capabilitiesハッシュを確認します。
確認が完了すると、ケイパビリティが active になり、連結アカウントで利用できるようになります。アカウントの確認は継続的に実行され、それ以降に確認が失敗すると、ケイパビリティは active から移行します。account. イベントをリッスンして、ケイパビリティの状態の変化を検出します。
構築済みの Connect の実装内容が法令を遵守し、稼働中であることを確認するには、アカウントの charges_ と payouts_ が両方とも true であることを確認します。API を使用するか、account. イベントをリッスンすることができます。その他の関連フィールドについて、詳細はアカウントの requirements (要件) ハッシュを確認してください。アプリケーションおよび関連ポリシーに応じてステータスが変化する可能性があるため、単一の値に基づいて実装を確認することはできません。
- charges_enabled は、支払いと送金を含む全体的な支払いパスが正しく機能することを確認し、
card_とpayments transfersケイパビリティのどちらがアクティブになっているかを評価します。 - payouts_enabled は連結アカウントが外部口座に入金できるかを評価します。リスクポリシーによっては、連結アカウントが入金を有効にせずに取引を開始することを許可できます。連結アカウントに支払うには、最終的には入金を有効にする必要があります。
以下のロジックは、連結アカウントに表示するサマリーのステータスを定義するための開始ポイントとして使用できます。
確認エラーを処理する
アカウント登録フローに応じて、確認失敗に対する対処方法を変えます。
メモ
API を使用して Stripe のリスク審査に対応することはできません。埋め込みコンポーネント、Stripe のホスティング登録、または修復リンクを使用して、連結アカウントが対応できるように設定できます。ダッシュボードを使用して、連結アカウントの代わりにリスク審査に対応することもできます。
Migrate payment and customer data to Stripe
After you create your connected accounts on Stripe, request a PAN data import, which migrates your payment and customer data to them.