すべてが埋め込まれた Connect プラットフォームの連携
自社のウェブサイトを通じて Connect の機能を連結アカウントに提供します。
Connect の埋め込みコンポーネントを使用すると、連結アカウントに提供するカスタムインターフェイスに、Stripe が管理する機能を追加できます。 Stripe ダッシュボードを使用することなく、ここで支払い関連のアクティビティーを実行できます。完全に埋め込む組み込みでは、以下のようになります。
- 連結アカウントは、プラットフォームのアプリケーションに埋め込まれたコンポーネントを使用して、Stripe に関連するデータ、フォーム、通知にアクセスします。連結アカウントには、Stripe ダッシュボードへのアクセス権がありません。
- Stripe は連結アカウントのクレジットリスクと不正利用リスクを管理します。リスクやコンプライアンスに関する対応については、Stripe が連結アカウントと直接やり取りし、連結アカウントは埋め込みコンポーネントを操作して対応します。
- Stripe のメール通知により、連結アカウントは、情報を確認したり、必要なアクションを行ったりするために、ユーザーのウェブサイトの埋め込みコンポーネントに誘導されます。ユーザーはこれらのコンポーネントの URL を Stripe に提供する必要があります。
デモのサイトを見る
Stripe では、架空ビジネス Furever のデモサイトを構築しました。Furever は、ペットトリマーが支払いを回収できるようにするソフトウェアを提供するプラットフォームです。このデモでは、アカウント登録やアカウント管理など、多くの埋め込みコンポーネントを操作できます。
はじめに
埋め込み型の組み込みを構築する前に、次の前提条件をすべて満たす必要があります。
- Register your platform.
- ビジネスの詳細を追加して、本番環境利用の申請を行います。
- プラットフォームプロフィールを完成させます。
- ブランド設定をカスタマイズします。ビジネス名、アイコン、ブランドカラーを追加します。
プラットフォームが独自の料金体系を提供するかどうかを決定する必要もあります。そのようにする場合、 Stripe はプラットフォームから決済手数料を徴収し、お客様は連結アカウントに請求します。そのようにしない場合は、 Stripe が独自の料金体系を提供し、連結アカウントから直接、決済手数料を徴収します。
連結アカウントを作成する
次の例では、 Stripe がリスクを管理し、料金体系を管理し、アカウント登録に関する要件の責任を引き受けるアカウントを作成します。プラットフォームは埋め込みコンポーネントを使用し、マイナス残高に対する責任を負いません。連結アカウントは、Stripe がオンラインで提供するダッシュボードにアクセスできません。
注
この例では Stripe が料金体系を管理するので、書類の埋め込みコンポーネントを組み込む必要があります。さらに、 Stripe は、タックス請求書または 1099 申告書のダウンロードが可能になると、連結アカウントにメールで通知します。プラットフォームで料金体系が管理されるアカウントを作成する場合、書類コンポーネントは必要ありません。また、Stripe は連結アカウントにタックス請求書または 1099 申告書に関する通知を送信しません。
アカウント登録後に、特定の支払い方法などの追加ケイパビリティをリクエストできます。
以下のパラメーターで /v1/accounts を呼び出します。
- アカウントの
country
controller.
=stripe_ dashboard. type none
card_
ケイパビリティとpayments transfers
ケイパビリティをリクエストする
{ "id":
, "object": "account", "controller": { "type": "application", "is_controller": true, "losses": {"payments": "stripe"}, "fees": {"payer": "account"}, "requirement_collection": "stripe", "stripe_dashboard": { "type": "none", }, }, "type": "none", ... }"{{CONNECTED_ACCOUNT_ID}}"
埋め込みコンポーネントを設定する
連結アカウントは、アカウントや主要な支払い機能にプラットフォームで直接アクセスします。Stripe がオンラインで提供するダッシュボードにはアクセスできないため、お客様はサイトを介してアクセスを提供する必要があります。
組み込みには、以下の埋め込みコンポーネントを含める必要があります。
- アカウント登録コンポーネント
- アカウント管理コンポーネント
- 通知バナーコンポーネント
- 書類コンポーネント (Stripe が Stripe 手数料を連結アカウントから直接回収する場合)
その他のオプションコンポーネントについては、Stripe の埋め込みコンポーネントを使用することも、独自の UI を構築することもできます。
連結アカウントを登録する前に、必ず、埋め込みコンポーネントを設定してください。
連結アカウントのアカウント登録
Stripe は、Account Session を使用して、連結アカウントに埋め込みコンポーネントアクセスを提供する意図を表します。Account Session を使用すると、埋め込みアカウント登録コンポーネントは、リクエストされたケイパビリティに基づきすべての必要な情報を収集します。
アカウントを事前入力する
埋め込みアカウント登録コンポーネントは、リクエストされたケイパビリティに基づきすべての必要な情報を収集します。
Account Session を作成する前に、既知の情報をアカウントフィールドに事前入力することで、ユーザーのアカウント登録フローを効率化できます。以下のステップに従って、会社、個人、外部アカウントの情報を含む、できるだけ多くのアカウント情報を事前入力しておきます。
- 要件に影響する連結アカウントの国とケイパビリティの組み合わせについて、詳細は必要な確認情報のドキュメントをご覧ください。
- Stripe が連結アカウントから必要とする情報を判断するには、アカウントの requirements プロパティを取得します。
- 事前入力可能な情報を収集します。
- Update Accountを呼び出して、アカウントの情報を記録します。
連結アカウントがアカウント登録の埋め込みコンポーネントを使用して登録を完了すると、プラットフォームは入金口座や法人情報など一部の情報を更新できなくなります。プラットフォームはマイナス残高に対する責任を負わないため、連結アカウントがその情報を更新する必要があります。
埋め込みアカウント登録コンポーネントを使用してユーザーのアカウント登録を行う
連結アカウントが支払いと入金を有効にするには、アカウント登録を行い、必要な情報を提供する必要があります。連結アカウントを登録するには、自社のサイトでアカウント登録の埋め込みコンポーネントをホストし、そこに新しいアカウントを誘導します。
アカウントセッションを作成する
アカウントセッションの作成時に、components
パラメーターで account_
を指定して、アカウント管理を有効にします。
アカウントセッションを作成して ConnectJS を初期化すると、フロントエンドにアカウント登録コンポーネントを表示できます。
アカウントの主たる所有者にアカウント登録フローを表示します。主たる所有者とは Stripe での認証を設定し、アカウント情報の編集とリスクに対する対処が可能なユーザーです。連結アカウントに設定可能な Stripe に対する認証情報は 1 つのみです。認証情報が設定されたユーザーは、1 回限りの SMS コードを使用して、入金先の銀行口座の更新や更新後の法人情報の提供などの機密情報にかかわる操作を実行できます。
アカウント登録イベントをリッスンする
アカウントがユーザー登録を進める際、account.updated イベントも、設定済みの Connect webhooks に送信されます。アカウントが詳細の送信を完了すると、Account の details_
フィールドが true に変わります。Webhook ハンドラーの account.
イベント本文で details_
を探すか、Account を取得することにより、ステータスを確認します。details_
が false の場合は、埋め込みアカウント登録コンポーネントを再び表示します。アカウントが何らかの情報を提出すると、埋め込みアカウント登録コンポーネントはそれをスキップし、送信されていない要件のみを収集します。
連結アカウントが詳細を送信してアカウント登録フローを完了すると、埋め込みのアカウント登録コンポーネントは、コンポーネントを表示する際に設定した onExit
ハンドラを呼び出します。このコールバックを使用して、アカウントを次のアクションに誘導します。終了ハンドラーを設定しない場合、またはこのハンドラ内でアクションを行わない場合、アカウントには、次に実行する明確なステップが示されずに完了メッセージが表示されます。
追加のケイパビリティをリクエストする (オプション)
ユーザーが連結アカウントに登録した後も、プラットフォームで追加のケイパビリティを引き続きリクエストできます。たとえば、アカウントに対して有効にするすべての支払い方法のケイパビリティをリクエストする必要があります。
リクエストされたケイパビリティで追加情報が必要な場合、連結アカウントは埋め込み通知バナーを介して通知を受け取ります。
継続的なコンプライアンスとリスクの更新を処理する
Stripe が連結アカウントのクレジットリスクと不正利用リスクを管理するため、アカウントは Stripe からのアラートを確認し、これに対応できなければなりません。これらを容易にするために、プラットフォームに通知バナーとアカウント管理の埋め込みコンポーネントを組み込む必要があります。これらのコンポーネントを通じて Stripe が連結アカウントをどのようにサポートするかについて詳しくは、埋め込み型 Connect サポートをご覧ください。
通知バナーを埋め込む
Stripe は通知バナー埋め込みコンポーネントを使用して、未対応の規制要件やその他のリスク関連リクエストを連結アカウントに通知します。これらの通知に対応することで、アカウントは、支払い処理と入金受け取りができるように規制順守を維持できます。未対応の通知がない場合は、埋め込み通知バナーは表示されません。
ウェブサイトのアクセスしやすい目立つ場所に通知バナーを導入します。たとえば、支払いページの上部などに導入できます。
アカウントセッションを作成する
アカウントセッションの作成時に、components
パラメーターで notification_
を指定して、通知バナーを有効にします。
通知バナーコンポーネントを表示する
バナー通知に応答するには、アカウントは通知内のボタンをクリックします。アカウント管理の埋め込みコンポーネントにリダイレクトする必要はありません。
埋め込みアカウント管理
Stripe ではリスクを管理する際にアカウント管理の埋め込みコンポーネントを必要とします。このコンポーネントを、アカウントが自身の設定やプロフィールを更新するウェブサイトに実装してください。
アカウントセッションを作成する
アカウントセッションの作成時に、components
パラメーターで account_
を指定して、アカウント管理を有効にします。
アカウント管理コンポーネントを表示する
このコンポーネントを使用すると、アカウントは、アカウントの詳細の更新、履行義務のある規制順守要件への対応、認証情報の更新を行うことができます。
決済を導入する
必要な埋め込みコンポーネントを導入した後、決済のシステムを設定します。支払いと入金の埋め込みコンポーネントをプラットフォームに追加したり、自社のワークフローを構築したりすることができます。
Connect webhooks を設定して、account.
イベントをリッスンします。連結アカウントは、charges_
プロパティが true の場合、支払いを受ける準備ができています。
埋め込み型の決済機能と入金機能を導入する
決済機能を構築する「前」に、決済と入金の埋め込みコンポーネントをプラットフォームに追加します。そうすることで、アカウントが主要な決済ワークフローに簡単にアクセスして管理できるようになります。
支払いコンポーネントは、連結アカウントの支払いの一覧を表示し、フィルター機能と個々の支払いの詳細ビューを利用できます。アカウントは、このコンポーネントを通じて、各支払いに対して返金を発行したり、反証資料を添えて不審請求の申請に対応することができます。
アカウントセッションを作成する
アカウントセッションの作成時に、components
パラメーターで payments
を指定して、支払いの埋め込みコンポーネントを有効にします。payments
で features
パラメーターを指定することにより、支払いのコンポーネントの個々の機能を有効または無効にすることができます。
連結アカウントはダイレクト支払いに関するすべての情報を表示できます。アカウントセッションの作成時に対応する機能を有効にした場合は、返金の管理、不審請求の申請の管理、支払いのキャプチャーも行うことができます。
支払いコンポーネントを表示する
アカウントセッションを作成して、ConnectJS を初期化すると、フロントエンドに支払いのコンポーネントを表示できます。
入金コンポーネントは、連結アカウントの最近の入金、現在の残高、資金が利用可能になる時期を示します。
アカウントセッションの作成時に、components
パラメーターで payouts
を指定して、入金の埋め込みコンポーネントを有効にします。payouts
で features
パラメーターを指定することにより、入金のコンポーネントの個々の機能を有効または無効にすることができます。
アカウントセッションを作成して ConnectJS を初期化すると、フロントエンドで入金コンポーネントを表示できます。
埋め込みコンポーネントを実装するための実践ガイドについては、Connect の埋め込みコンポーネント導入のクイックスタートをご覧ください。
決済を受け付ける
連結アカウントが顧客と直接取引する場合は、 ダイレクト支払いの使用を強くお勧めします。
Stripe は、Account に対して controller.
が account
に設定されていない場合に 、決済取引手数料をプラットフォームに請求します。代わりに、お客様が連結アカウントに決済取引手数料を請求する責任を負います。支払いごとにプラットフォーム手数料を指定して自動的に連結アカウントから手数料を取得できます。その際にシステムでの構築は必要ありません。
決済の受け付けには、Stripe がオンラインで提供する事前構築済みのページである Stripe Checkout の使用をお勧めします。Checkout は複数の支払い方法に対応し、顧客に最適な方法を自動的に表示します。
事前構築された UI コンポーネントである Payment Element を使用することもできます。これを埋め込むと、一度の導入で別の支払い方法を受け付けることができます。
連結アカウントへのメール通信を設定する
Stripe は、お客様の代理として連結アカウントとやり取りし、リスク管理と継続的なコンプライアンスの確保を担います。お客様は、メールドメインとプラットフォームのブランディングでこれらのメール通信のブランドをカスタマイズすることができます。
Stripe は連結アカウントに以下のメールを送信します。
- アカウントに関するメールは、メールアドレス、電話番号、銀行口座の追加や変更など、アカウントの情報を確認します。
- 法令順守に関するメールは、必要な情報を提供するようアカウントに通知します。Stripe は、金融パートナーに関連する規制を順守するために追加情報を収集しなければならないことがよくあります。
- リスクメールは、アカウントがリスク審査を受けている場合にそのアカウントに通知します。これらのメールには、多くの場合、入金の一時停止の解除など、リスクアクションを解決するために情報を送信する手順が記載されています。
- 税金に関するメール (Stripe が Stripe 手数料を連結アカウントから直接回収する場合のみ)は、タックス請求書または 1099 申告書のダウンロードが可能になったことをユーザーに通知します。
支払い関連のその他のメールを連結アカウントに送信する必要のある場合は、お客様自身で送信する必要があります。たとえば、新たな不審請求の申請に関するメールを送信するには、連結アカウントの charge.
イベントをリッスンします。そのイベントが発生したら、Disputes API を使用して詳細を取得し、アカウントにメールで送信します。
Stripe のメール通信に、アカウントが応答するためのリンクを含めることができるようにするため、支払いとアカウントのワークフローのURL で Connect の設定を更新する必要があります。
メールリンクからのリダイレクトを処理する
Stripe から送信される行動喚起を含むメールには、その行動へのリンクを含める必要があります。たとえば、連結アカウントでの行動を指示するメールを送信する場合、そのメールにはアカウント管理コンポーネントへのリンクを含める必要があります。
本番環境のアカウントセッションを作成するには、事前に、埋め込みコンポーネントをウェブサイトに組み込んだ場所の URL を指定する必要があります。 プラットフォームの Connect の設定のサイトのリンクセクションで、送信元のメールドメインと埋め込みコンポーネントの URL を設定します。
注
環境については、テスト環境でも本番環境と同じ URL を使用します。
サイトに組み込まれた埋め込みコンポーネントの場合は、はいを選択し、コンポーネントをホストするページの URL を入力します。埋め込みコンポーネントで処理されないアクションについては、いいえを選択し、アカウントがそのアクションを実行できるサイトのページの URL を入力します。 URL を入力したら、正しいページが開くかテストして検証します。
以下の URL を設定する必要があります。
- 通知バナー
- アカウント管理
- 支払い
- 入金
- 残高
- 書類 (Stripe が Stripe 手数料を連結アカウントから直接回収する場合)
メールを送信する際、 Stripe は連結アカウントの ID を stripe_
パラメーターとしてリダイレクト URL に自動的に追加します。このパラメーターを使用して、アカウントを識別し、認証済みであることを確認します。パラメーターを読み取り、正確な埋め込みコンポーネントを表示するためのルートをサーバー上に設定します。
Stripe での連結アカウント向けメール通信の設定について詳しくは、埋込型 Connect 連携でのメール通信をご覧ください。
メールのブランディングと設定を構成する
Stripe は、プラットフォームのブランド設定を反映したメールを、お客様のメールドメインから連結アカウントに送信できます。Stripe で連結アカウント向けのメール通信を設定するには、プラットフォームのダッシュボードのメールをご覧ください。
本番環境への移行
この時点では、以下を使用してプラットフォームの連携が完了しています。
- 正しい設定で作成された連結アカウント
- 連結アカウントがウェブサイトでアカウント登録、アカウントの管理、リスクアクションへの対応を行えるように統合された埋め込みコンポーネント
- プラットフォーム手数料を設定してダイレクト支払いを使用する支払いを設定する
- ブランド名の入ったメール通信を設定して、Stripe がコンプライアンス、リスクアクション、必要書類についてユーザーと通信できるようにする
実装内容をテストする
プラットフォームに導入された埋め込みアカウント登録を使用して、アカウント作成フローをテストします。連結アカウントの支払い方法の設定をテストするには、いずれかのテストアカウントにログインし、支払い方法の設定に移動します。テストキーとテストアカウントを使用して、決済フローをテストします。テストカードを使用して決済フローをテストし、さまざまな支払い結果をシミュレーションすることができます。