アカウントタイプの代わりにコントローラープロパティを使用するように Connect の実装を移行する
アカウントタイプを指定する代わりに、アカウントコントローラープロパティを使用する方法をご紹介します。
You can configure connected accounts using account controller properties instead of defining accounts as Standard, Express, or Custom. These controller properties let you specify discrete account behaviors, such as access to a Stripe-hosted Dashboard and whether Stripe collects fees from the account or the platform. This modularity allows for more flexible configuration options.
アカウントコントローラープロパティを使用するために、API バージョンを更新する必要はありません。**コントローラープロパティを使用するための既存のシステムの移行は任意です。**使用している連結アカウントが 1 つのタイプのみで、新しい設定の使用を希望しない場合、構築済みのシステムを更新する必要はありません。
既存のシステムを更新して、モジュール方式の向上と利用可能な新しい設定のメリットを活用することをお勧めします。新しいプロパティは完全な下位互換性があるため、アカウントタイプを引き続き処理しながら、段階的にシステムを移行できます。
各アカウントタイプは、一連のコントローラープロパティにマッピングされます。既存の連結アカウントと、今後のアカウントタイプで作成するすべてのアカウントに、これらのプロパティが自動的に設定されます。構築済みのシステムを更新してコントローラープロパティを処理する際に、連結アカウントを更新する必要はありません。
注
このガイドに記載されている変更を行わずに、埋め込みコンポーネントなどの機能の使用を開始できます。
はじめに
- コントローラープロパティの仕組みと、既存の連結アカウントへのマッピング方法をご紹介します。
- 新しいアカウント設定のうち、どれが既存のシステムに適しているかを判断します。
組み込みのアップグレードでは以下の作業を行います。
- 既存のシステムでアカウントタイプを参照するコードを特定し、代わりに対応するコントローラープロパティを参照するようにそのコードを更新します。
type
の代わりにコントローラープロパティを指定するようにアカウント作成プロセスを更新します。type
の指定は必須ではなくなりました。
アカウントコントローラープロパティ
Accounts API を使用して連結アカウントを作成する際に、コントローラープロパティの値を指定できます。指定していないプロパティは、導入要件の複雑さが最も低いデフォルト値に設定されます。
新しい Stripe システムを構築している場合は、Connectプラットフォームのアカウント登録を完了すると、設定の推奨事項を受け取ることができます。
プロパティ | デフォルト値 | 説明 |
---|---|---|
controller.losses.payments | stripe | 使用可能な値:
|
| 使用可能な値:
アカウントを作成する際には、
Stripe 手数料の支払いモデルに関する総合的な説明については、手数料の動作に関するドキュメントをご覧ください。 | |
| 使用可能な値:
値が | |
controller.stripe_dashboard.type | full | 使用可能な値:
|
説明を見る | 使用可能な値:
|
アカウントタイプをコントローラーパラメーターにマッピングする
3 つのアカウントタイプはそれぞれ、そのタイプの動作と一致する v1/accounts
の controller
ハッシュの値にマッピングされます。
Standard
コントローラープロパティを指定せずにアカウントを作成した場合、デフォルト値は Standard アカウントの動作と一致します。また、Standard アカウントの動作にマッピングされる値を指定して、Standard アカウントに相当するアカウントを作成することもできます。
これらの値は、Standard アカウントの動作にマッピングされます。
losses.
:payments stripe
fees.
:payer account
requirement_
:collection stripe
stripe_
:dashboard. type full
Express
これらの値は、Express アカウントの動作にマッピングされます。
losses.
:payments application
fees.
:payer application
(メモ参照)requirement_
:collection stripe
stripe_
:dashboard. type express
注
type
を使用して Express アカウントを作成し、controller.
プロパティを、application
ではなく application_
に設定します。この違いは、プラットフォームでダイレクト支払いが使用されている場合における Stripe の手数料請求機能の違いを表します。
Custom
これらの値は、Custom アカウントの動作にマッピングされます。
losses.
:payments application
fees.
:payer application
(メモ参照)requirement_
:collection application
stripe_
:dashboard. type none
また、Custom アカウントを作成する際はアカウントの国を指定し、card_
ケイパビリティと transfers
ケイパビリティをリクエストする必要もあります。
注
type
を使用して Custom アカウントを作成し、controller.
プロパティを、application
ではなく application_
に設定します。この違いは、プラットフォームでダイレクト支払いが使用されている場合における Stripe の手数料請求機能の違いを表します。
コードを移行してコントローラープロパティを使用する
コントローラープロパティを使用するようにアカウント作成プロセスを更新するだけでなく、コードを見直してアカウントタイプへの参照を探し、既存のシステムを更新します。
アカウントタイプへの参照ごとに、関連するコントローラープロパティを特定し、それに応じてコードを更新します。
たとえば、マイナスの残高に責任を負うプラットフォームに関連するため、Express と Custom のアカウントに適用される条件付きの声明文をコードに含めるとします。そのロジックを if type == express
または if type == custom
から if controller.
に更新します。
アカウントタイプと一致しない連結アカウントを作成する場合は、コードを更新する際に、そのコントローラープロパティも考慮してください。これらのアカウントを処理するロジックは、アカウントタイプに基づく既存のロジックとは異なることがあります。
この表を使用して、各アカウントタイプに関連付けられているコントローラープロパティを識別できます。
アカウントタイプ | losses.payments | fees.payer | requirement_collection | stripe_dashboard.type |
---|---|---|---|---|
Custom | application | application_ | application | none |
Express | application | application_ | stripe | express |
Standard | stripe | account | stripe | full |
注
Express アカウントと Custom アカウントでは、コントローラープロパティを使用して作成された同等のアカウントとは fees.
の値が異なることに注意してください。手数料の徴収に関連するコードを更新するときは、この動作の違いを考慮する必要があります。
サポート対象外の設定
コントローラープロパティを指定してアカウントを作成する際、以下の組み合わせはサポートされません。
controller.
= application
は、次のいずれの値とも互換性がありません。
controller.
=losses. payments stripe
controller.
=fees. payer account
controller.
=stripe_ dashboard. type express
controller.
=stripe_ dashboard. type full
controller.
= express
は、次のいずれの値とも互換性がありません。
controller.
=losses. payments stripe
controller.
=fees. payer account
controller.
=requirement_ collection application
controller.
= full
は、次のいずれの値とも互換性がありません。
controller.
=losses. payments application
controller.
=fees. payer application
controller.
=requirement_ collection application
controller.
= none
は、次の両方の値が設定されている場合はサポートされません (いずれか 1 つのみが設定されている場合はサポートされます)。
controller.
=requirement_ collection stripe
controller.
=losses. payments application