# 銀行とデビットカードの送金を管理する Stripe では、Connect の Custom アカウントの送金をプラットフォームですべて管理できます。 > このページでは、連結アカウントの入金のレガシーバージョンについて説明します。システムでこのバージョンが使用されていない場合は、[連結アカウントへの入金](https://docs.stripe.com/connect/payouts-connected-accounts.md)をご覧ください。 このガイドでは、お客様がアカウント所有者との連絡およびやり取りの責任を持つ、_「Custom」_アカウントについてのみ説明します。 既存の Stripe アカウントに連結する場合、または Stripe に本人確認書類の収集などの詳細の処理を任せる場合は、[Standard アカウント](https://docs.stripe.com/connect/standard-accounts.md)をご確認ください。 デフォルトでは、連結アカウントの代理として行う請求は、連結アカウントの [Stripe 残高](https://docs.stripe.com/connect/account-balances.md)に累積され、日次のローリング方式で入金されます。ただし、Stripe は、Custom アカウントに関してこの動作を詳細に管理する機能を用意しています。 以下の操作が可能です。 - 入金先の[銀行口座とデビットカード](https://docs.stripe.com/connect/legacy-transfers.md#bank-accounts)を設定する - 売上が自動的に入金される[頻度](https://docs.stripe.com/connect/legacy-transfers.md#payout-information)を管理する - [手動入金](https://docs.stripe.com/connect/legacy-transfers.md#using-manual-transfers)を実行する - 売上を[即座に](https://docs.stripe.com/connect/legacy-transfers.md#instant-payouts)送金する ## 銀行口座とデビットカードを管理する Custom アカウントには、`external_accounts` プロパティがあります。これは、Stripe アカウントに関連付けられているすべての銀行口座とデビットカードの一覧です。任意の外部口座を売上の入金先にすることができます。 ```json { "id": ""{{CONNECTED_ACCOUNT_ID}}"", "object": "account", "external_accounts": { "object": "list", "has_more": false, "url": "/v1/accounts/acct_14qyt6Alijdnw0EA/external_accounts", "data": [ { "id": ""{{BANK_ACCOUNT_ID}}"", "object": "bank_account", "account": "acct_14qyt6Alijdnw0EA", "account_holder_name": "Jane Austen", "account_holder_type": "individual", "bank_name": "STRIPE TEST BANK", "country": "US", "currency": "usd", "default_for_currency": false, "fingerprint": "sSZ2yLp0EZTH17cF", "last4": "6789", "metadata": { }, "routing_number": "110000000", "status": "new" }, {...}, {...}, ], ... } ``` 入金先口座は、Stripe アカウントを[作成](https://docs.stripe.com/connect/custom-accounts.md#create)または[更新](https://docs.stripe.com/connect/updating-service-agreements.md)するときに、`external_accounts` パラメーターを介して追加されます。この値は、[Stripe.js](https://docs.stripe.com/js.md) から返された銀行口座またはデビットカードのトークンに該当します。これ以外の方法として、銀行口座情報のハッシュを指定できますが、機密性の高いデータがサーバーを介さないよう、Stripe.js を使用することをお勧めします。 送金先としてデビットカードを使用する場合には、次の制限が適用されます。 - プリペイド式ではないアメリカの Visa、Mastercard、またはディスカバーであること - [Instant Payouts](https://docs.stripe.com/connect/legacy-transfers.md#instant-payouts) では各入金の上限を 9,999 USD とする - 上記以外では一般に送金ごとに 3,000 USD を上限とする ## 複数の銀行口座およびデビット口座を管理する デフォルトでは、Custom アカウントの更新時に `external_accounts` に新しい値を指定すると、既存の口座が新しい口座に「置換」されます。連結アカウントに他の銀行口座またはデビットカードを「追加」するには、[Bank Account (銀行口座)](https://docs.stripe.com/api.md#account_create_bank_account) と [Card (カード)](https://docs.stripe.com/api.md#account_create_card) の作成 API エンドポイントを使用します。 ```curl curl https://api.stripe.com/v1/accounts/{{CONNECTEDACCOUNT_ID}}/external_accounts \ -u "<>:" \ -d "external_account={{BANKACCOUNTTOKEN_ID}}" ``` 複数の通貨を扱う際は、Stripe はその通貨を使用する関連付けられた銀行口座またはデビットカードに入金を自動送信して、換算手数料を回避します。特定の通貨に複数の口座がある場合には、Stripe は `default_for_currency` として設定されている口座を使用します。 Stripe では、参照用およびサポート対象のオプションからユーザーが選択できるよう、[利用可能な国と通貨の組み合わせ](https://docs.stripe.com/connect/payouts-connected-accounts.md#supported-settlement)の一覧を管理しています。 ## 入金情報 自動送金の使用時は、アカウントの `transfer_schedule` プロパティによって Stripe アカウントの残高が自動入金される頻度が示されます。 ```json { ... "transfer_schedule": { "delay_days": 7, "interval": "daily" }, ... } ``` `delay_days` プロパティは、支払い (またはリンクされた送金) が入金可能になるまでの時間を示しています。このフィールドは、自動入金の管理に利用できます。たとえば、Custom アカウントが、売上を支払いの 2 週間後に受け取るようにするには、`interval` を `daily` に、`delay_days` を **14** に設定します。 デフォルトは、アカウントの最小許容値であり、連結アカウントの国によって決まります。このフィールドを設定または更新するときは、文字列 **minimum** を渡して最小許容値を選択できます。 `interval` プロパティには、4 種類の設定を使用できます。 - **manual** に設定すると自動入金は行われません。[Transfers API](https://docs.stripe.com/api.md#create_transfer) を使用して、アカウントの残高を手動で入金する必要があります (連結アカウントとして処理)。また、[Instant Payouts](https://docs.stripe.com/connect/legacy-transfers.md#instant-payouts) を使用する場合もアカウントを `manual` に設定します。 - **daily** に設定すると、支払いの作成から `delay_days` で設定された日数後にその支払いが自動的に入金されます。`delay_days` の値をお客様独自の送金スケジュールやアカウントのデフォルトの送金スケジュールの値より小さくすることはできません。 - **weekly** に設定すると、`weekly_anchor` パラメータ (**monday** などの小文字の曜日) に従って、残高が毎週 1 回自動的に入金されます。 - **monthly** に設定すると、`monthly_anchor` パラメータ (1 から 31 の数字) に従って、残高が毎月 1 回自動的に入金されます。 ## 手動入金を使用する [Accounts API](https://docs.stripe.com/api.md#account_object-transfer_schedule) を使用して、`transfer_schedule[interval]` を `manual` に設定した場合、Stripe は最大 90 日間 、入金指示があるまで (または 最大 90 日間が経過するまで) アカウント保有者の残高に売上を保持します。こうした売上の入金をトリガーするには、[Transfers API](https://docs.stripe.com/api.md#create_transfer) を使用します。 Transfers API は、Stripe の連結アカウントの残高から外部口座に資金を移動するためにのみ使用されます。Stripe アカウント間で売上を移動するには、[支払いと送金別方式](https://docs.stripe.com/connect/separate-charges-and-transfers.md)の作成または[プラットフォームでのデスティネーション支払いの作成](https://docs.stripe.com/connect/destination-charges.md)をご覧ください。 > _Escrow_には法律上の明確な定義があり、Stripe はエスクロー口座をサポートしていません。ただし、手動転送でエスクローに類似する機能を提供しています。これにより入金タイミングを管理でき、カスタムアカウントへの入金を最長 90 日間遅延させることができます。 > > 配送遅延のリスクが考えられる場合、または返金が必要になる可能性がある場合に、手動入金をエスクローの代替として使用することができます。 ### 標準の送金 基本的な送金の例として、Custom アカウントの Stripe 残高から外部口座に 10 USD を送金します。 #### curl ```bash curl https://api.stripe.com/v1/transfers \ -u <>: \ -H "Stripe-Account: {{CONNECTED_STRIPE_ACCOUNT_ID}}" \ -d "amount"=1000 \ -d "currency"="usd" \ -d "destination"="default_for_currency" ``` `destination=default_for_currency` を設定すると、Stripe は、アカウントの、指定された通貨のデフォルトの銀行口座またはデビットカードに送金します。 標準的な送金では、ユーザーの利用可能な残高を上限として入金できます。この金額を確認するには、ユーザーの代理として[残高取得](https://docs.stripe.com/api.md#retrieve_balance)のコールを実行します。 Stripe は、残高内で複数の支払い元からの支払いの構成部分を分類して個別の残高で追跡します。残高取得のレスポンスでは、各残高の構成要素が支払い元のタイプ別に分類されます。たとえば、クレジットカード以外の残高の送金を作成するには、リクエストで `source_type` を指定します。 #### curl ```bash curl https://api.stripe.com/v1/transfers \ -u <>: \ -d "amount"=24784 \ -d "currency"="usd" \ -d "destination"="default_for_currency" \ -d "source_type"="bank_account" ``` いずれのソースの残高の構成部分もマイナスになる可能性があり (返金またはチャージバックによって)、利用可能な残高の総計を超える送金は作成できないことに注意してください。 ### Instant Payouts を使用する Instant Payouts を使用すると、Custom アカウントのデビットカードに売上を即時送金できます。売上は通常 30 分以内に関連付けられた銀行口座に反映され、支払いから入金までを非常に短時間で行うことができます。 Instant Payouts を使用するには、送金作成時に `method` プロパティに **instant** を指定します。 #### curl ```bash curl https://api.stripe.com/v1/transfers \ -u <>: \ -H "Stripe-Account: {{CONNECTED_STRIPE_ACCOUNT_ID}}" \ -d "amount"=1000 \ -d "currency"="usd" \ -d "method"="instant" ``` Instant Payouts は、いくつかの点で他の手動送金とは異なります。 - アカウントの利用可能残高に加え、「保留」残高も送金できます - Instant Payouts は週末や祝日にもリクエストできます 初めに、プラットフォームはすべての連結アカウント全体で、1 日あたり最大 500 USD まで Instant Payouts を使用して送金できます。このしきい値を増やす必要がある場合は、[お問い合わせください](https://support.stripe.com/contact)。 Instant Payouts はアメリカの主要銀行のすべてでサポートされていますが、ごく一部の銀行ではサポートされていません。その銀行では、Standard Payouts に戻す必要があります。 カードをアカウントに追加すると、Stripe はレスポンスで `available_payout_methods` プロパティを返します。これは、Stripe がそのカードでサポートする支払い方法のセッになります。送金を作成する際には、このセットに含まれる値のみを `method`として渡す必要があります。 ```json { "id": ""{{CARD_ID}}"", "object": "card", ... "account": "acct_1032D82eZvKYlo2C", "available_payout_methods": ["standard", "instant"], } ``` Custom アカウントのクレジットカードが Instant Payouts に対応していない場合は、入金を即座に受け取ることができないことをそのアカウントの所有者に明確に伝える必要があります。 ### 送金で Webhook を使用する 連結アカウントの送金アクティビティはすべて、[Webhook](https://docs.stripe.com/webhooks.md) を使用して追跡できます (Connect を使用している場合には、常に Webhook を使用する必要があります)。送金に固有のイベントは、以下のとおりです。 - `transfer.created` - `transfer.updated` - `transfer.paid` - `transfer.failed` 大半の送金では、これらのイベント通知は数日間にわたって送信されます。Instant Payouts は通常 `transfer.paid` を 30 分以内に送信します。 送金を完了できない場合には、`transfer.failed` イベントが発生します。このイベントの `failure_reason` プロパティでその理由が示されます。 ## See also - [Custom アカウント](https://docs.stripe.com/connect/custom-accounts.md) - [アカウントを更新する](https://docs.stripe.com/connect/updating-service-agreements.md) - [Connect アカウントの残高について](https://docs.stripe.com/connect/account-balances.md)