コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
始める
支払い
財務の自動化
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
概要
導入を開始
商品
グローバル入金
Capital
カードを発行する
Treasury
    概要
    Treasury の仕組み
    利用資格要件
    始める
    API の使用を開始
    ユーザーのアカウント登録
    不正利用の管理
    マーケティングと法令遵守のガイドライン
    導入のサンプル
    Treasury を使用して金融アカウントとカードを設定する
    Treasury を使用して資金を移動する
    Issuing と Treasury のサンプルアプリケーション
    Stripe Issuing と Treasury
    Stripe Issuing と Stripe Treasury の Webhook
    Stripe Issuing のカードを使用する
    アカウント管理
    Stripe Treasury のアカウント構造
    連結アカウントの使用
    金融口座を使用する
    金融アカウントの機能
    プラットフォームの金融アカウント
    残高と取引の使用
    資金移動
    Stripe Payments からの入金とトップアップ
    SetupIntent、PaymentMethod、BankAccount を使用する
    金融アカウントに資金を移動する
    金融アカウントから資金を移動する
      OutboundTransfer オブジェクトを使用して Treasury で送金
      OutboundPayment オブジェクトを使用して Treasury で送金
      ReceivedDebit オブジェクトを使用して Treasury で送金
      DebitReversal オブジェクトを使用して Treasury で送金
    資金移動のタイムライン
    銀行パートナー
    Fifth Third Bank の概要
    Fifth Third Bank の使用を開始
資金の管理
ホーム資金管理TreasuryMoving money out of financial accounts

注

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

OutboundPayment オブジェクトを使用して Treasury で送金

Treasury の金融口座からサードパーティーに送金するためのアウトバウンド支払いを作成する方法をご紹介します。

ページをコピー

OutboundPayment オブジェクトは、Treasury 金融アカウントからの追加ベースの送金を表します。これには、ACH または電信送金経由でサードパーティーの外部口座に送金するものや、stripeネットワークを使用して同じプラットフォームに関連付けられている別の金融口座に即時送金するものがあります。たとえば、金融口座から、ベンダーの外部のアメリカの銀行口座に送金するには、OutboundPayment を作成して資金を移動します。OutboundPayment の受け取り側の口座は、外部銀行口座または別の金融口座です。

一般的なアウトバウンド支払いにかかる時間は、数分 (Stripe ネットワークを使用する場合)、同日中、1 ~ 2 営業日 (ACH ネットワークを使用する場合) といったようにさまざまです。詳細については、資金移動のタイムラインのガイドをご覧ください。

OutboundPayment を作成する

POST /v1/treasury/outbound_payments を使用して OutboundPayment を作成します。リクエストに使用可能なパラメーターのうち、以下は必須です。

  • amount: セント単位での支払い金額。
  • currency: 3 文字の ISO 通貨コード (サポートされるのは usd のみ)。
  • financial_account: 資金が送金される支払い元の金融口座。
  • destination_payment_method または destination_payment_method_data: 支払いの送金先に関する情報。
    • destination_payment_method では、まず SetupIntent (支払いインテント) を使用して、アウトバウンドフローの PaymentMethod を設定する必要があります。また、PaymentMethod が関連付けられる Customer オブジェクトと一致する顧客 ID を指定する必要もあります。別の方法として、Customer に関連付けられた既存のレガシーの BankAccount を PaymentMethodの代わりに使用することもできます。
    • destination_payment_method_data を使用すると、インラインで支払い方法の詳細を指定できます。このパラメーターは、銀行口座の詳細の指定や、Stripe ネットワーク経由の別の金融口座への送金に使用できます。

外部銀行口座への OutboundPayment を作成する

POST /v1/treasury/outbound_payments を使用して、本文の financial_account パラメーター値の ID で特定された金融口座から OutboundPayment を作成します。以下のリクエストは、statement_descriptor と destination_payment_method_data の情報を追加します。

Command Line
cURL
curl https://api.stripe.com/v1/treasury/outbound_payments \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d financial_account=
{{FINANCIAL_ACCOUNT_ID}}
\ -d amount=2000 \ -d currency=usd \ -d statement_descriptor=payment_1 \ -d "destination_payment_method_data[type]"=us_bank_account \ -d "destination_payment_method_data[us_bank_account][account_holder_type]"=individual \ -d "destination_payment_method_data[us_bank_account][routing_number]"=110000000 \ -d "destination_payment_method_data[us_bank_account][account_number]"=1234567890 \ --data-urlencode "destination_payment_method_data[billing_details][email]"="jenny@example.com" \ -d "destination_payment_method_data[billing_details][phone]"=7135551212 \ -d "destination_payment_method_data[billing_details][address][city]"=Alvin \ -d "destination_payment_method_data[billing_details][address][state]"=TX \ -d "destination_payment_method_data[billing_details][address][postal_code]"=77511 \ -d "destination_payment_method_data[billing_details][address][line1]"="123 Main St." \ -d "destination_payment_method_data[billing_details][name]"="Jenny Rosen"

成功すると、新しく作成された OutboundPayment がレスポンスで返されます。

JSON (コメント付き)
{ "id": "{{OUTBOUND_PAYMENT_ID}}", "object": "outbound_payment", // The source FinancialAccount. Funds are pulled from this account. "financial_account": "{{FINANCIAL_ACCOUNT_ID}}", // The amount to send. 10.00 USD in this case. "amount": 1000, "cancelable": true | false, "currency": "usd", // The destination payment method. Either this or `destination_payment_method_data`

同日の ACH

プライベートプレビュー

同日の ACH は現在、制限付きのプレビュー版として提供されているため、Stripe の審査と承認が必要です。アクセスをリクエストするには、treasury-support@stripe.comにメールを送信してください。

アクセスできない場合、同日の ACH の機能またはパラメーターを含む API コールがエラーを返します。

Using same-day ACH enables sending funds that arrive the same business day if the OutboundPayment call successfully completes before the cutoff time. To use same-day ACH, set the destination_payment_method_options.us_bank_account.network parameter to ach and the destination_payment_method_options.us_bank_account.ach.submission parameter to same_day.

電信送金: 金融番号

一部の銀行では、ACH とは異なる別の電信送金の金融番号を使用することがあります。このため、支払い方法の金融番号が電信送金をサポートしていない場合、電信送金の作成時にエラーが発生することがあります。このエラーを受信した場合には、銀行の電信送金用の金融番号を指定して新しい支払い方法を追加する必要があります。

電信送金: 受取人の住所

電信送金には ACH メタデータのほかに、受取人名と請求先住所が必要です。住所は銀行の住所ではなく、電信送金を受け取るアカウント所有者の住所です。

支払い方法の billing_details.address を入力する際は、すべての住所フィールドに入力する必要があります。 billing_details.address に不完全なフィールドがある状態で電信送金しようとすると、エラーが発生します。

注

OutboundTransfer を使用して電信送金を行う際、住所フィールドに入力しない場合は、デフォルトで Stripe アカウント所有者を代表する法人に設定されます。

金融口座への OutboundPayment を作成する

金融口座間で資金を移動するには、移動元口座で POST /v1/treasury/outbound_payments を呼び出し、destination_payment_method_data パラメーターで移動先口座を指定します。両方の金融口座を同じプラットフォームに関連付ける必要がありますが、同じ連結アカウントに関連付けることはできません。同じ連結アカウントに関連付けられた金融口座間で資金を移動するには、OutboundTransfer を使用します。

Command Line
cURL
curl https://api.stripe.com/v1/treasury/outbound_payments \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"
\ -d financial_account={{SOURCE_FINANCIAL_ACCOUNT_ID}} \ -d amount=2000 \ -d currency=usd \ -d statement_descriptor="Test outbound payment to FA" \ -d "destination_payment_method_data[type]"=financial_account \ -d "destination_payment_method_data[financial_account]"={{DESTINATION_FINANCIAL_ACCOUNT_ID}}

リクエストの本文は、x-www-form-urlencoded でなければなりませんが、以下の JSON は、送信できるデータを定義します。

JSON (コメント付き)
{ // The source FinancialAccount. Funds are pulled from this account. "financial_account": "{{SOURCE_FINANCIAL_ACCOUNT_ID}}", // The amount to send. "amount": 1000, "currency": "usd", // The destination payment method. This parameter is the only way to // send an OutboundPayment through the `stripe` network. "destination_payment_method_data": { "type": "financial_account",

OutboundPayment を取得する

GET /v1/treasury/outbound_payments/{{OUTBOUND_PAYMENT_ID}} を使用し、関連付けられた ID の OutboundPayment の詳細を取得します。

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

成功すると、関連付けられた ID の OutboundPayment オブジェクトがレスポンスで返されます。 レスポンスの一部のパラメーターには、expand[] パラメーターに値として追加した場合にのみ返される追加情報があります。次のレスポンス例で、拡張できるフィールドには、「Expandable」コメントが付いています。オブジェクトレスポンスの拡張の詳細については、レスポンスを拡張するをご覧ください。

JSON (コメント付き)
{ "id": "{{OUTBOUND_PAYMENT_ID}}", "object": "outbound_payment", "livemode": true | false, "created": "{{Timestamp}}", "financial_account": "{{FINANCIAL_ACCOUNT_ID}}", // Expandable "amount": 1000, "currency": "usd", // Will only be set if `destination_payment_method` was used during the creation of // the OutboundPayment

OutboundPayment をキャンセルする

POST /v1/treasury/outbound_payments/{{OUTBOUND_PAYMENT_ID}}/cancel を使用し、関連付けられた ID の OutboundPayment をキャンセルします。OutboundPayment オブジェクトには、送金をキャンセルできるかどうかを示すブール値を含む cancelable パラメーターが含まれます。OutboundPayment がネットワークに送信されると、cancelable 値が false になり、このエンドポイントからの送金に対するエラーが受信されます。

Command Line
cURL
curl -X POST https://api.stripe.com/v1/treasury/outbound_payments/{{OUTBOUND_PAYMENT_ID}}/cancel \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -H "Stripe-Account:
{{CONNECTED_ACCOUNT_ID}}
"

成功すると、レスポンスで、status 値が canceled に設定された OutboundPayment オブジェクトが返されます。

{ "id": "{{OUTBOUND_PAYMENT_ID}}", "object": "outbound_payment", "livemode": false, "created": 123456, "financial_account": "{{FINANCIAL_ACCOUNT_ID}}", "amount": 1000, "currency": "usd", ... "status": "canceled",

OutboundPayment を一覧表示する

GET /v1/treasury/outbound_payments を使用し、関連付けられた ID の金融口座からの OutboundPayments をリストします。標準のリストパラメーターや、status または customer でリストをフィルタリングできます。

{ // Standard list parameters "limit", "starting_after", "ending_before", // Filter by status "status": "processing" | "canceled" | "failed" | "posted" | "returned", // Filter by FinancialAccount (Required) "financial_account": "{{FINANCIAL_ACCOUNT_ID}}", // Filter by Customer "customer": "{{CUSTOMER_ID}}", }

以下のリクエストは、プラットフォームに関連付けられた金融口座において、特定された Customer に支払われた最新 5 件の OutboundPayment オブジェクト を取得します。

Command Line
cURL
curl -G https://api.stripe.com/v1/treasury/outbound_payments \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d financial_account=
{{FINANCIAL_ACCOUNT_ID}}
\ -d limit=5 \ -d customer=
{{CUSTOMER_ID}}

OutboundPayment の状態

以下の表は、各ステータスと可能な移行状態について説明したものです。

ステータス説明可能な状態の移行
processingOutboundPayment の開始状態。資金は、保留中の取引に割り当てられます (ただし、引き続き現在の残高に含まれています)。cancelable パラメーターの値が true の間は 、ユーザーは OutboundPayment をキャンセルできます。posted、canceled、failed
failed (最終状態)OutboundPayment の確認に失敗しました。Stripe は保留中の取引を無効にし、資金をユーザーに返金します。該当なし
canceled (最終状態)ユーザーが、転記前に OutboundPayment をキャンセルしました。Stripe は、保留中の取引を無効にし、資金をユーザーに返金します。該当なし
postedOutboundPayment が転記され、資金がアカウントから送金されました。基となる取引が転記されます。returned
returned (最終状態)OutboundPayment は、送金先に正常に入金されませんでした。資金は取引 (returned_details[transaction]) とともにユーザーに返されます。該当なし

OutboundPayment をテストする

実装をエンドツーエンドでテストするには、テスト用の SetupIntents requests を使用して PaymentMethod を作成し、その PaymentMethod を、destination_payment_method パラメーターを使用して OutboundPayment 作成リクエストに渡します。

Stripe では、以下のようなテスト用の PaymentMethod トークンおよび番号を使用して、特定の機能をトリガーすることもできます。

  • テスト用の PaymentMethod トークンを destination_payment_method に渡す (ach および us_domestic_wire のネットワークの場合)
    • テスト用の PaymentMethod トークンを destination_payment_method に直接渡す場合でも、customer パラメーターに顧客 ID を渡す必要があります。便宜上、Stripe では既存のテスト用顧客を渡すことができます。これは、既存の PaymentMethod を Customer に関連付け、同じ顧客 ID を customer パラメーターに渡す必要がある本番環境とは異なります。
  • テスト用の金融番号と口座番号を destination_payment_method_data[us_bank_account] に渡す (ach および us_domestic_wire のネットワークの場合)。
  • プラットフォーム内アカウントが所有する既存のテスト用金融口座の ID を destination_payment_method_data[financial_account] (Stripe ネットワーク用) に渡す。

いずれの場合も、OutboundPayment のレスポンスは処理中のステータスを返します。Stripe は、該当する状態の移行に対して Webhook をトリガーします。OutboundPayment を作成後に取得すると、想定された状態が返されます。

作成DESTINATION_PAYMENT_METHOD (既存のテスト用顧客)DESTINATION_PAYMENT_METHOD_DATA[US_BANK_ACCOUNT]
初期の処理状態の OutboundPaymentpm_usBankAccount_processing
  • routing_number: 110000000
  • account_number: 000000000009
(processing から) posted に移行する OutboundPaymentpm_usBankAccount
  • routing_number: 110000000
  • account_number: 000123456789
(processing から) posted に移行する OutboundPayment。さらに、元の expected_arrival_date に 1 日追加しますpm_usBankAccount_expectedArrivalDateUpdated
  • routing_number: 110000000
  • account_number: 000123457890
(processing から) canceled に移行する OutboundPaymentpm_usBankAccount_canceledByUser
  • routing_number: 110000000
  • account_number: 000000000123
(processing から) failed に移行する OutboundPaymentpm_usBankAccount_internalFailure
  • routing_number: 110000000
  • account_number: 000000000234
アカウント閉鎖のために (転記後に processing から) returned に移行する OutboundPaymentpm_usBankAccount_accountClosed
  • routing_number: 110000000
  • account_number: 000111111113
口座がないために (転記後に processing から) returned に移行する OutboundPaymentpm_usBankAccount_noAccount
  • routing_number: 110000000
  • account_number: 000111111116
口座番号が無効であるために (転記後に processing から) returned に移行する OutboundPaymentpm_usBankAccount_invalidAccountNumber
  • routing_number: 110000000
  • account_number: 000111111119

OutboundPayment のテスト用ヘルパーエンドポイント

Stripe は、さまざまな状態の OutboundPayments をテストできるエンドポイントを提供しています。テストエンドポイントを使用して、作成した OutboundPayment を posted、failed、または returned などの新しい状態に直接移行します。

  • テスト用の post エンドポイントを使用して、特定された OutboundPayment を processing から posted に移行します。

    POST /v1/test_helpers/treasury/outbound_payments/{{OUTBOUND_PAYMENT_ID}}/post

  • テスト用の fail エンドポイントを使用して、特定された OutboundPayment を processing から failed に移行します。

    POST /v1/test_helpers/treasury/outbound_payments/{{OUTBOUND_PAYMENT_ID}}/fail

  • テスト用の return エンドポイントを使用して、特定された OutboundPayment を processing から returned に移行します。

    POST /v1/test_helpers/treasury/outbound_payments/{{OUTBOUND_PAYMENT_ID}}/return

これらのエンドポイントは、返品などのエラーシナリオをテストするために特に便利です。こういったエンドポイントがなければ、外部でのアクションが必要になります。

return エンドポイントでは、オプションの returned_details.code パラメーターを本文に含め、返金理由を示します。この情報が提供されない場合、送金にはデフォルトの declined 返金コードが適用されます。

{ "returned_details": { "code": "account_closed" | "account_frozen" | "bank_account_restricted" | "bank_ownership_changed" | "could_not_process" | "invalid_account_number" | "incorrect_account_holder_name" | "invalid_currency" | "no_account" | "declined" } }

また、テスト用の Outbound Payment で追跡詳細の転記をシミュレートするための、テスト用更新エンドポイントも提供しています。tracking_details フィールドは、テスト用オブジェクトにのみ設定できます。

いずれのケースでも、Stripe は、該当するそれぞれの状態の移行に対して Webhooks をトリガーします。移行後に OutboundPayment を取得すると、想定される状態が返されます。

OutboundPayment Webhook

Stripe は、Webhook エンドポイントに以下の OutboundPayment イベントを送信します。

  • OutboundPayment 作成時の treasury.outbound_payment.created。
  • OutboundPayment のステータスが変化した際の treasury.outbound_payment.{{new_status}}。ステータス値のオプションには以下が含まれます。
    • treasury.outbound_payment.posted
    • treasury.outbound_payment.failed
    • treasury.outbound_payment.canceled
    • treasury.outbound_payment.returned
  • OutboundPayment の expected_arrival_date が変化した際の treasury.outbound_payment.expected_arrival_date_updated。
  • OutboundPayment の追跡の詳細情報が更新された際の treasury.outbound_payment.tracking_details_updated。
このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc