金融口座の使用
金融口座を使用して、資金の保管、送金、受け取りを行います。
Accounts v2 API 互換性
The Accounts v2 API doesn’t support Financial Accounts workflows. If you have accounts created with Accounts v2, you can use Accounts v1 to manage the treasury and card_ capabilities. For details, see Use Accounts as customers.
プラットフォーム向け金融口座への API アクセス権 を取得すると、Stripe はプラットフォームアカウントに金融口座をアタッチし、プラットフォーム上で対象となる連結アカウントに金融口座をプロビジョニングできるようになります。各金融口座は、関連付けられたアカウントの残高とは別に、独自の残高 を持ちます。例えば、あなたのプラットフォーム上の連結アカウントの所有者は、100 USD 連結アカウント残高と 200 USD 金融口座残高を持っているかもしれません。このシナリオでは、連結アカウントの所有者は、金融口座と連結アカウントの残高の間に 300 USD の合計が広がっています。これら 2 つの残高は別々のままですが、API は連結アカウント残高から金融口座残高に資金を移動する機能を提供します。
Stripe API では、FinancialAccount オブジェクトが資金移動 API リクエストのソースおよび宛先として機能します。FinancialAccounts に割り当てる Features を API でリクエストします。例えば、特定の金融口座で決済カード機能を有効にするには、FinancialAccount ID で card_ 機能の API リクエストを送信します。Feature オブジェクトの詳細については、金融口座機能 を参照してください。各 Feature に必要な連結アカウントケイパビリティを確認するには、そのガイド内の 利用可能な機能 セクションを参照してください。
プラットフォーム向け金融口座の導入のために本番環境で金融口座を作成する前に、まず サンドボックス 環境でテスト金融口座を作成することをお勧めします。テスト金融口座は実際の資金を送受信できず、本番環境では使用できず、実際の金融番号とアカウント情報を持つ本番アカウントを生成しませんが、その他の構成と機能は同じです。
FinancialAccount を作成する
POST /v1/treasury/financial_ を使用して FinancialAccounts を作成します。コールの Stripe-Account ヘッダーの値として連結アカウントの ID を含め、その FinancialAccount を連結アカウントと関連付けます。
プラットフォームアカウントと連結アカウントには、複数の金融口座を関連付けることができます。連結アカウントに別の金融口座を作成するには、Stripe-Account ヘッダーの値として連結アカウント ID を指定します。1 つの連結アカウントには、最大 3 の金融口座を関連付けることができます (閉鎖された金融口座は制限に加算されません)。プラットフォームアカウントに添付された金融口座の数にも同じ制限が適用されます。より高い金融口座のしきい値が必要な場合は、treasury-support@stripe.com にお問い合わせください。
以下の JSON は、FinancialAccount オブジェクトの構造を定義します。
通常、API リクエストでアカウントを作成する際に、金融口座機能 もリクエストします。Features にかかわらず、連結アカウントは treasury ケイパビリティを有効にしている必要があります。連結アカウントにケイパビリティがあるかどうか不明な場合は、GET /v1/accounts/{{CONNECTED_ を使用して確認してください。アカウントの capabilities ハッシュには treasury の値が active である必要があります。
Accounts v2 API 互換性
The Accounts v2 API doesn’t support Financial Accounts workflows. If you have accounts created with Accounts v2, you can use Accounts v1 to manage the treasury and card_ capabilities. For details, see Use Accounts as customers.
… "capabilities": { "card_issuing": "active", "card_payments": "active", "transfers": "active", "treasury": "active", "us_bank_account_ach_payments": "active" }, …
金融口座の残高に関連付けられたカードを発行するには、プラットフォームの連結アカウントで Issuing (card_) ケイパビリティが有効になっている必要があります。金融口座の card_ 機能をリクエストするには、連結アカウントにこのケイパビリティが存在する必要があります。連結アカウントにこのケイパビリティがない場合は、card_ 機能をリクエストして FinancialAccount を作成しようとするとエラーが発生します。
FinancialAccount オブジェクトの nickname フィールドを設定して、金融口座のカスタム名を指定します。ニックネームを使用して識別子を作成できるため、1 つの連結アカウントで複数の金融口座を操作する場合に便利です。有効なニックネームは、以下の条件を満たす必要があります。
- 空白以外の文字列であること
- 250 文字未満
アカウント作成時にニックネームを入力しなかった場合、ニックネームフィールドは空になり、null を返します。FinancialAccount を作成した後、更新 でニックネームを更新することができます。
以下のリクエストは、Stripe-Account ヘッダーに指定された ID を持つ、連結アカウントに割り当てられた金融口座を作成します。
レスポンスは、金融口座の作成を確認する FinancialAccount オブジェクトです。
{ "object": "treasury.financial_account", "created": 1612927106, "id": "{{FINANCIAL_ACCOUNT_ID}}", "country": "US", "supported_currencies": ["usd"], "active_features": [ "card_issuing", ], // Features that require activation enter a pending state before activating
FinancialAccount を更新する
POST /v1/treasury/financial_ を使用して、関連付けられた ID の FinancialAccount を更新します。Stripe-Account ヘッダー値として連結アカウントの ID を含めます。以下の例は、 FinancialAccount のメタデータを更新します。
FinancialAccount と口座番号を取得する
GET /v1/treasury/financial_ を使用し、関連付けられた ID の FinancialAccount を取得します。連結アカウントの ID を、Stripe-Account ヘッダー値として含めます。
デフォルトでは、金融口座の口座番号はレスポンスに含まれていません。口座番号を取得するには、expand 配列に financial_ フィールドを含めます。
成功すると、レスポンスで、FinancialAccount オブジェクトが返されます。expand 配列が含まれているかどうかに応じて、口座番号が示される場合と示されない場合があります。
expand パラメーターの詳細については、レスポンスの拡張をご覧ください。
機能のサマリー
FinancialAccount オブジェクトでは、すべての Features の状態のサマリーが active_、pending_、restricted_ の 3 つの配列に格納されます。
{ "object": "treasury.financial_account", "id": "fa_987", "status": "open", ... "active_features": ["card_issuing"], "pending_features": ["financial_addresses.aba"], "restricted_features": ["outbound_transfers.ach"], }
これらの配列は、以下を確認するのに便利です。
- 非アクティブな機能 (
pending_またはfeatures restricted_に含まれる)features - アクティブな機能 (
active_に含まれる)features - アクションが必要な制限付きの機能 (
restricted_に含まれる)features
詳しくは金融口座の機能 をご覧ください。
FinancialAccount を閉鎖する
以下の条件を満たす場合には、金融口座を永久に閉鎖することができます。
- 保留中のインバウンド送金はありません。
- 関連付けられたすべての Issuing カードがキャンセル済みです。
- アカウント残高がゼロで、過去 75 日間にアカウントの取引がありません。または、別の金融口座または 検証済み外部アカウント を指定し、転送 して入出金を処理することもできます。
警告
閉鎖後に金融口座を再び開くことはできません。
金融口座の閉鎖は、Transactions などの関連オブジェクトのデータ保管に影響を及ぼしません。
APIを使用した FinancialAccount の閉鎖
POST/v1/treasury/financial_ を使用し、関連付けられた ID の金融口座を閉鎖することが可能です。ヘッダー値として、関連付けられた連結アカウントの ID を含めます。
curl https://api.stripe.com/v1/treasury/financial_accounts/{{FINANCIAL_ACCOUNT_ID}}/close \ -u: \ -X "POST" \ -H "Stripe-Account: {{CONNECTED_STRIPE_ACCOUNT_ID}}"sk_test_BQokikJOvBiI2HlWgH4olfQ2
レスポンスは、アクションを確認する、 status が closed の FinancialAccount オブジェクトです。
{ "id": "{{FINANCIAL_ACCOUNT_ID}}", "object": "treasury.financial_account", "status": "closed", "status_details": { "closed": { "reasons": ["closed_by_platform"] } }, "active_features": [], "pending_features": [], "restricted_features": ["financial_addresses.aba"], ... }
閉鎖された口座の取引を処理する
稀なケースでは、Stripe が自動的に返金できないクレジットやデビットを解約された口座が受け取ることがあります。プラットフォームの所有者であるお客様が、口座解約後に発生したマイナス残高の責任を負います。Stripe サポートはお客様と協力して、売り手やサービスプロバイダーに支払うべき残金を返金し、残高がマイナスになっている解約された口座を修復します。金融口座の解約時に転送設定を含めると、Stripe は、選択された口座にデビットとクレジットを自動的に転送できます。
金融口座を解約するときに転送設定を指定します。次の例では、転送アカウントとして外部の銀行口座を使用します。
Webhook
アカウント登録要件を満たす前に金融口座を作成することができます。この場合、金融口座は非同期に開設され、その後 treasury. Webhook がトリガーされます。この Webhook では、アカウント登録要件が満たされていないため、制限されたままになっている機能の最新状態を確認することができます。
account.updated - 新しい機能をリクエストすると、要件ハッシュが変更され一部の新しいフィールドが
pending_になったことを通知する、verification account.Webhook がプラットフォームで受信されることがあります。updated
- 新しい機能をリクエストすると、要件ハッシュが変更され一部の新しいフィールドが
treasury.financial_ account. created - FinancialAccount が新規作成されるたびにトリガーされます。
treasury.financial_ account. closed - 最上位の FinancialAccount が closed (閉鎖済み) に変わるったことを通知します。
treasury.financial_ account. features_ status_ updated - 1 つ以上の機能のステータスが変わったことを示します。これを反映して、
active_、features pending_、またはfeatures restricted_の配列に変更が加えられます。features
- 1 つ以上の機能のステータスが変わったことを示します。これを反映して、