コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
始める
支払い
財務の自動化
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
概要
導入を開始
    サンプルアプリ
    アカウント登録の概要
    導入ガイド
      埋込型金融
      B2B 決済
      フリート
商品
グローバル入金
Capital
カードを発行する
Treasury
資金の管理
ホーム資金管理Start an integrationIntegration guides

注

このページはまだ日本語ではご利用いただけません。より多くの言語で文書が閲覧できるように現在取り組んでいます。準備が整い次第、翻訳版を提供いたしますので、もう少しお待ちください。

埋込型金融の導入ガイド

Issuing と Treasury を使用して埋込型金融サービスシステムを構築します。

ページをコピー

BaaS になじみがない場合

SaaS プラットフォーム向け BaaS の使用に関する導入ガイドをご確認ください。

Stripe の Issuing と Treasury を使用して、アメリカの埋込型金融サービスオファリングを構築します。Issuing を使用してカードを作成し、Treasury を使用して残高を保管し、カード支出の資金に充当します。

このガイドでは、以下の方法について説明します。

  • 関連する Issuing と Treasury のケイパビリティが付与された企業顧客を表す確認済みの連結アカウントを作成する
  • 企業顧客のウォレットとしての使用が可能で外部銀行口座を使用して資金を追加できる金融口座を作成する
  • 企業顧客向けのバーチャルカードを作成してカードを使用してウォレットから支出する方法

はじめに

  1. 登録して Stripe アカウントを作成します。
  2. ダッシュボードからサンドボックス環境で Issuing と Treasury を有効にします。詳細については、Issuing と Treasury への API アクセスをご覧ください。
  3. 自社の Connect プラットフォームのブランディング設定を行い、アイコンを追加します。

連結アカウントを作成する

連結アカウントを作成する

プラットフォームのビジネス顧客を表す連結アカウントを作成します。たとえば、飲食店向けの SaaS プラットフォームの場合、各飲食店が 1 件の連結アカウントとして表されます。

Connect アカウントのタイプ

Issuing は、Stripe がホストするダッシュボードを使用せず、プラットフォームが要件の収集と損失に対する責任を負う連結アカウント (Custom 連結アカウントとも呼ばれる) のみをサポートします。詳しくは、Issuing と連携可能な連結アカウントの作成方法をご確認ください。既存のアカウントがこの設定に当てはまらない場合は、アカウントを再作成する必要があります。

以下のリクエストによって、アメリカを拠点とする連結アカウントが適切な設定で新規作成され、必須のケイパビリティがリクエストされます。

Command Line
cURL
curl https://api.stripe.com/v1/accounts \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d country=US \ -d "controller[stripe_dashboard][type]"=none \ -d "controller[fees][payer]"=application \ -d "controller[losses][payments]"=application \ -d "controller[requirement_collection]"=application \ -d "capabilities[transfers][requested]"=true \ -d "capabilities[card_issuing][requested]"=true \ -d "capabilities[treasury][requested]"=true \ -d "capabilities[us_bank_account_ach_payments][requested]"=true

ユーザーのアカウント情報がレスポンスに表示されます。

{ ... "id": "{{CONNECTED_ACCOUNT_ID}}", "controller": { "stripe_dashboard": { "type": "none" }, "fees": { "payer": "application" }, "losses": { "payments": "application" }, "is_controller": true, "type": "application", "requirement_collection": "application" }, ... }

連結アカウントの id を書き留めておきます。この値を Stripe-Account ヘッダーでリクエストすることにより、連結アカウントとして認証します。

連結アカウントがすでに存在する場合は、リクエストで連結アカウントの id を指定することで、必要なケイパビリティを追加できます。

Command Line
cURL
curl https://api.stripe.com/v1/accounts/
{{CONNECTED_ACCOUNT_ID}}
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "controller[stripe_dashboard][type]"=none \ -d "controller[fees][payer]"=application \ -d "controller[losses][payments]"=application \ -d "controller[requirement_collection]"=application \ -d country=US \ --data-urlencode email="jenny.rosen@example.com" \ -d "capabilities[transfers][requested]"=true \ -d "capabilities[treasury][requested]"=true \ -d "capabilities[card_issuing][requested]"=true

連結アカウントを確認する

次のアカウント登録オプションのいずれかを選択します。

Stripe のホスティング登録は、Stripe がオンラインで提供する、貴社のブランド名、色、アイコンを設定したウェブフォームです。Stripe のホスティング登録では、Accounts API を使用して要件を読み取り、堅牢なデータ検証機能を備え、Stripe で対応しているすべての国に合わせて現地化されたアカウント登録フォームを生成します。

Connect アカウント登録を使用するには、事前に Connect 設定ページのブランディングセクションでご自身のブランドの名前、色、アイコンを指定しておく必要があります。

ホスティング登録を使用して、連結アカウントが external_account (入金のために必要) を関連付けできるようにすることができます。それには、Connect アカウント登録の設定で外部口座を有効にします。

連結アカウントのアカウント登録リンクを作成するには、Account Links API を使用します。

Command Line
cURL
curl https://api.stripe.com/v1/account_links \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account={{CONNECTED_ACCOUNT_ID}} \ --data-urlencode refresh_url="https://example.com/reauth" \ --data-urlencode return_url="https://example.com/return" \ -d type=account_onboarding

注意

セキュリティ保護のため、アカウントリンクの URL はメール、テキスト、送信の手段では連結アカウントに直接通知しないでください。アカウントリンクの URL は、プラットフォームでアカウントの認証が行われるアプリケーション内から配信することをお勧めします。

受信するレスポンスにある url パラメーターには、連結アカウントがプラットフォームにアカウント登録するためのリンクを設定できます。

{ "object": "account_link", "created": 1612927106, "expires_at": 1612927406, "url": "https://connect.stripe.com/setup/s/…" }

この時点で、Stripe は Issuing と Treasury の使用に関連するケイパビリティが active に設定された連結アカウントを作成し、確認しています。

詳細については、以下をご覧ください。

  • Issuing と Connect の導入の設定
  • 連結アカウントの Stripe のホスティング登録
  • 連結アカウントの作成と使用
  • 連結アカウントの本人確認

金融口座を作成して資金を追加する

プラットフォームで Treasury を有効にした後に、FinancialAccount オブジェクトをプラットフォームアーキテクチャーに追加して、資金の保管、送金、受け取りを効率化します。有効化の後に Stripe は金融口座をプラットフォームのアカウントに関連付けます。これにより、プラットフォームの対象連結アカウントにそれぞれ金融口座をプロビジョニングできるようになります。

Stripe API では、FinancialAccount オブジェクトが資金移動の API リクエストの送金元および送金先として機能します。プラットフォーム上の金融口座に追加機能を提供するには、API を通じて Features をリクエストし、FinancialAccounts に割り当てます。

金融口座は、関連付けられているアカウントの連結アカウントの支払い残高とは異なる資金の残高を運用します。たとえば、プラットフォーム上の連結アカウントの所有者が 100 USDの連結アカウント残高と 200 USDの金融口座残高を保有しているとします。この場合、連結アカウントの所有者は金融口座と連結アカウントの残高全体で、合計 300 USDを所有していることになります。この 2 つの残高は別々に維持されますが、API により、連結アカウントの残高から金融口座の残高に資金が移動できるようになります。

金融口座を作成する

Stripe によって treasury ケイパビリティがアカウントに追加され、アカウントが active とマークされると、連結アカウントの FinancialAccount オブジェクトを作成できます。これを作成するには、FinancialAccounts を呼び出し、提供する Features をリクエストします。

Command Line
cURL
curl https://api.stripe.com/v1/treasury/financial_accounts \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "supported_currencies[]"=usd \ -d "features[card_issuing][requested]"=true \ -d "features[deposit_insurance][requested]"=true \ -d "features[financial_addresses][aba][requested]"=true \ -d "features[inbound_transfers][ach][requested]"=true \ -d "features[intra_stripe_flows][requested]"=true \ -d "features[outbound_payments][ach][requested]"=true \ -d "features[outbound_payments][us_domestic_wire][requested]"=true \ -d "features[outbound_transfers][ach][requested]"=true \ -d "features[outbound_transfers][us_domestic_wire][requested]"=true

金融口座作成時に機能をリクエストした場合、そのレスポンスでは、active_features、pending_features、restricted_features パラメーターでステータスが示されます。

{ "object": "treasury.financial_account", "created": 1612927106, "id": "fa_123", "country": "US", "supported_currencies": ["usd"], "active_features": ["card_issuing"], "pending_features": ["financial_addresses.aba"], "restricted_features": [], // No FinancialAddress added as the financial_addresses.aba feature is not yet active "financial_addresses": [], "livemode": true, "status": "open", ... }

機能 (card_issuing など) によっては、有効化が即時実行されますが、中には financial_addresses.aba のように、非同期で有効化される機能もあります。こうした機能の場合、Stripe が外部システムと通信している間に最大で 30 分 pending の状態になることがあります。関連機能がすべて有効になると、treasury.financial_account.features_status_updated Webhook リスナーに確認メッセージが表示されます。金融口座の各機能についての詳細は、利用可能な機能をご確認ください。

銀行口座を関連付ける

顧客が外部口座との間で送金できるようにするには、必要なパラメーターを使用して SetupIntent を作成し、外部口座を self に関連付けて、顧客が外部口座を所有していることを示します。

Command Line
cURL
curl https://api.stripe.com/v1/setup_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d attach_to_self=true \ -d "flow_directions[]"=inbound \ -d "flow_directions[]"=outbound \ -d "payment_method_types[]"=us_bank_account \ -d "payment_method_data[type]"=us_bank_account \ -d "payment_method_data[us_bank_account][routing_number]"=110000000 \ -d "payment_method_data[us_bank_account][account_number]"=000123456789 \ -d "payment_method_data[us_bank_account][account_holder_type]"=company \ -d "payment_method_data[billing_details][name]"="Company Corp" \ -d confirm=true \ -d "mandate_data[customer_acceptance][type]"=online \ -d "mandate_data[customer_acceptance][online][ip_address]"="123.123.123.123"

API レスポンスには、ACH 送金の実行時にこの銀行口座の参照に使用された payment_method の一意の ID が含まれています。

{ "id": "{{SETUP_INTENT_ID}}", "object": "setup_intent", "next_action": { "type": "verify_with_microdeposits", "verify_with_microdeposits": { "arrival_date": 1642579200, "hosted_verification_url": "https://payments.stripe.com/microdeposit/sacs_test_xxx", "microdeposit_type": "amounts" } }, ... "payment_method": "{{PAYMENT_METHOD_ID}}", "payment_method_types": [ "us_bank_account" ] }

銀行口座を利用できるようにするには、少額入金 (ここで説明しているオプション) か、高速サービスの Financial Connections を使用して口座を確認する必要があります。前のステップで説明された SetupIntent のレスポンスには、hosted_verification_url が含まれます。この URL を顧客に提示して、関連する少額入金の明細書表記コードを顧客が入力できるようにする必要があります。値 SM11AA を使用して銀行口座を確認するか、Stripe が提供するテスト用口座番号を使用して、その他さまざまなケースをテストします。

少額入金の確認

少額入金の確認

金融口座に資金を追加する

アプリで埋め込み型の金融口座コンポーネントを使用すると、連結アカウントが金融口座に売上を送金できるようになります。

Create an Account Session

アカウントセッションを作成する際に、components パラメーターで financial_account を指定して、金融口座コンポーネントを有効にします。金融口座コンポーネントの個々の機能は financial_account で features パラメーターを指定することで、有効または無効を設定できます。

Command Line
cURL
curl https://api.stripe.com/v1/account_sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account=
{{CONNECTED_ACCOUNT_ID}}
\ -d "components[financial_account][enabled]"=true \ -d "components[financial_account][features][send_money]"=true \ -d "components[financial_account][features][transfer_balance]"=true \ -d "components[financial_account][features][external_account_collection]"=true

アカウントセッションを作成して ConnectJS を初期化すると、フロントエンドに金融口座コンポーネントを表示できます。

financial-account.js
JavaScript
// Include this element in your HTML const financialAccount = stripeConnectInstance.create('financial-account'); financialAccount.setFinancialAccount('{{FINANCIAL_ACCOUNT_ID') container.appendChild(financialAccount);

ここから、ユーザーは資金を移動をクリックして送金を開始できます。

この時点で連結アカウントには FinancialAccount があります。この口座には、InboundTransfer から受け取った資金が入っています。この資金はカードまたは OutboundPayments (ACH や電信送金など) を使用して支出に使用できます。

詳細については、以下をご覧ください。

  • InboundTransfers の権限の取得
  • Treasury 金融口座の連携
  • Treasury を使用して資金を移動
  • 金融口座の機能のリクエスト
  • SetupIntent、PaymentMethods、BankAccounts の使用
  • InboundTransfer オブジェクトを使用して Treasury で送金
  • ReceivedCredit オブジェクトを使用して Treasury で送金

カード保有者とカードを作成する

Cardholeder (カード保有者)は、関連残高からカードへの資金追加が企業顧客によって承認された個人 (従業員または請負業者) です。Cardholder オブジェクトには、カードに表示される name (名前) や billing (請求先) 住所 (通常は連結アカウントまたはプラットフォームの企業住所) など、関連する詳細が含まれています。

埋め込み型の Issuing カードのリストコンポーネントを使用して、連結アカウントがカード保有者の Card (カード) を作成し、それを金融口座に関連付けられるようにすることができます。

アカウントセッションを作成する際に、components パラメーターで issuing_cards_list を指定して、Issuing カードリストコンポーネントを有効にします。Issuing カードリストコンポーネントの個々の機能は issuing_cards_list で features パラメーターを指定することで、有効または無効を設定できます。

Command Line
cURL
curl https://api.stripe.com/v1/account_sessions \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d account=
{{CONNECTED_ACCOUNT_ID}}
\ -d "components[issuing_cards_list][enabled]"=true \ -d "components[issuing_cards_list][features][card_management]"=true \ -d "components[issuing_cards_list][features][cardholder_management]"=true \ -d "components[issuing_cards_list][features][card_spend_dispute_management]"=true \ -d "components[issuing_cards_list][features][spend_control_management]"=true

アカウントセッションを作成して ConnectJS を初期化すると、フロントエンドに Issuing カードリストコンポーネントを表示できます。

issuing-cards-list.js
JavaScript
// Include this element in your HTML const issuingCardsList = stripeConnectInstance.create('issuing-cards-list'); issuingCardsList.setShowSpendControls(true); container.appendChild(issuingCardsList);

ここで、ユーザーはカードを作成をクリックして、新しいカード保有者とカードの作成を開始できます。ユーザーはカードを作成中に有効化することも、または後から有効化することもできます。

この時点で、有効なカードがカード保有者と金融口座に関連付けられています。カードとカード保有者の情報を確認するには、連結アカウントの Issuing ページをご覧ください。

詳細については、以下をご覧ください。

  • Issuing のバーチャルカード
  • 物理カード
  • Use the Dashboard for Issuing with Connect
  • Create cards with the API

カードを使用する

オーソリを作成する

関連残高へのカードアクティビティの影響を確認するには、テスト用オーソリを生成します。テスト用オーソリの作成は、連結アカウントのダッシュボードの Issuing ページで行うか、Authorization API に対する以下のコールを使用して行うことができます。

Command Line
cURL
curl https://api.stripe.com/v1/test_helpers/issuing/authorizations \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d card=
{{CARD_ID}}
\ -d amount=1000 \ -d authorization_method=chip \ -d "merchant_data[category]"=taxicabs_limousines \ -d "merchant_data[city]"="San Francisco" \ -d "merchant_data[country]"=US \ -d "merchant_data[name]"="Rocket Rides" \ -d "merchant_data[network_id]"=1234567890 \ -d "merchant_data[postal_code]"=94107 \ -d "merchant_data[state]"=CA

承認後、Stripe はキャプチャーを待っている間に pending 状態の Authorization を作成します。売上のキャプチャーに使用する オーソリの id に注意してください。

{ "id": "iauth_1NvPyY2SSJdH5vn2xZQE8C7k", "object": "issuing.authorization", "amount": 1000, ... "status": "pending", "transactions": [], }

金融口座の残高詳細を取得し、オーソリの影響を確認できます。

Command Line
cURL
curl https://api.stripe.com/v1/treasury/financial_accounts/
{{FINANCIAL_ACCOUNT_ID}}
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"

API レスポンスは、資金とその利用可能状況の詳細を示す balance ハッシュが含まれた FinancialAccount オブジェクトです。

{ "object": "treasury.financial_account", "id": "{{FINANCIAL_ACCOUNT_ID}}", ... "balance": { "cash": {"usd": 19000}, "inbound_pending": {"usd": 0}, "outbound_pending": {"usd": 1000} } }

このレスポンスは、現在 190 USD が利用可能であり、さらに pending オーソリからの outbound_pending に 10 USD が保持されていることを示しています。これで、API でオーソリのキャプチャーをシミュレーションできます。

売上をキャプチャーする

以下のコードを使用して売上をキャプチャーします。

Command Line
cURL
curl -X POST https://api.stripe.com/v1/test_helpers/issuing/authorizations/
{{AUTHORIZATION_ID}}
/capture
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

オーソリがキャプチャーされると、Stripe は Issuing の取引を作成します。オーソリの status は closed に設定され、これらの詳細が含まれた ReceivedDebit Webhook が作成されます。金融口座の残高詳細を再取得すると、outbound_pending が現在 0 USD で、利用可能な現金が 190 USD であることが確認できます。

{ "object": "treasury.financial_account", "id": "{{FINANCIAL_ACCOUNT_ID}}", ... "balance": { "cash": {"usd": 19000}, "inbound_pending": {"usd": 0}, "outbound_pending": {"usd": 0} } }

参照情報

  • リアルタイムの auth Webhook の処理
  • 支出管理
  • Issuing のオーソリ
  • Issuing の取引
  • Issuing のテスト
  • Stripe Issuing カードと Treasury の連携
  • 取引の不正利用の管理
  • 規制下にある顧客への通知
このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc