支払いと送金別方式を作成する
プラットフォームアカウントで支払いを作成し、複数の連結アカウントに売上を送金できます。
「支払いと送金を別々」に作成して、1 つの支払いから複数の連結アカウントに資金を送金する場合や、支払い時に特定のユーザーが不明な場合に送金します。プラットフォームアカウントへの支払いは、連結アカウントへの送金から切り離されます。この支払いタイプでは、次のようになります。
- プラットフォームのアカウントで支払いを作成し、売上を連結アカウントに送金します。この支払いは、ご自身のアカウントでの支払いとして表示され、さらに連結アカウントへの送金も表示されます (金額はご自身で決定します)。この金額はアカウント残高から引き落とされます。
- 複数の連結アカウントに売上を送金できます。
- Stripe の手数料、返金、チャージバックは、お客様のアカウント残高から引き落とされます。
この決済方式は、マーケットプレイスが複数の当事者間で決済を分割するのに役立ちます。例えば、レストランと配達員の間で決済を分割するレストラン配達プラットフォームなどです。
注
資金分離 は、連結アカウントに送金する前に決済資金を保護された保留状態に保つプライベートプレビュー機能です。これにより、割り当て資金が無関係なプラットフォーム運営に使用されることを防ぎます。アクセスをリクエストするには、Stripe アカウントマネージャーにお問い合わせください。
Stripe は、以下の地域で支払いと送金別方式に対応しています。
多くの場合、プラットフォームと連結アカウントは同じ地域に所在している必要があります。許可されていない越境送金を試みると、エラーが返されます。複数地域間での送金のサポートについては、越境送金をご覧ください。送金は、支払い、トップアップ、手数料の許可されたユースケースと併用する場合にのみ利用できます。Express ダッシュボードにアクセスできる連結アカウント、またはダッシュボードにアクセスできない連結アカウントは、支払いと送金別方式を利用することをお勧めします。

PaymentSheet クラスを使用して、Stripe の構築済み決済 UI を iOS アプリの決済フローに組み込みます。GitHub のサンプル実装をご覧ください。
Stripe を設定するサーバー側クライアント側
まず、Stripe アカウントが必要です。今すぐ登録してください。
サーバー側
この接続方法では、Stripe API と通信するエンドポイントがサーバー上に必要です。サーバーから Stripe API にアクセスするには、Stripe の公式ライブラリを使用します。
クライアント側
Stripe iOS SDK はオープンソースです。詳細なドキュメントが提供されており、iOS 13 以降をサポートするアプリと互換性があります。
注
SDK の最新リリースおよび過去バージョンの詳細については、GitHub の Releases (リリース) ページをご覧ください。リポジトリのリリースをウォッチして、新しいリリースの公開時に通知を受け取ることも可能です。
アプリの起動時に Stripe 公開可能キーを使用して SDK を設定します。これにより、アプリが Stripe API にリクエストを送信できるようになります。
エンドポイントを追加するサーバー側
この接続方法では、以下の 3 つの Stripe API オブジェクトを使用します。
- PaymentIntent (支払いインテント)。Stripe はこれを使用して、顧客から支払いを回収する意図を示し、プロセス全体を通して支払いの試行と支払い状態の変化を追跡します。
- Customer (顧客) (オプション)。将来の支払いに備えて支払い方法を設定するには、支払い方法を Customer に関連付ける必要があります。顧客がビジネスでアカウントを作成する際に、Customer オブジェクトを作成します。顧客がゲストとして支払いを行う場合は、支払いの前に Customer オブジェクトを作成し、後でこのオブジェクトを顧客のアカウントを表す自社の内部表現と関連付けることができます。
- Customer Ephemeral Key (顧客の一時キー) (オプション)。Customer オブジェクトの情報は機密情報であるため、アプリから直接取得することはできません。Ephemeral Key により、SDK に Customer への一時的なアクセス権が付与されます。
カードを保存して、保存されたカードの再利用をリピート顧客に許可する場合は、構築されたシステムの Customer オブジェクトおよび Customer Ephemeral Key オブジェクトが必要です。許可しない場合は、これらのオブジェクトを省略できます。
セキュリティ上の理由により、アプリでこれらのオブジェクトを作成することはできません。代わりに、サーバー側で以下を行うエンドポイントを追加します。
- Customer を取得するか、新規作成する。
- Customer の一時キーを作成する。
- サーバーで、amount (金額)、currency (通貨)、customer (顧客)、および transfer group (送金グループ) を指定して、PaymentIntent を作成します。
- PaymentIntent の client secret、一時キーの
secret
、Customer ID (顧客 ID)、および貴社の公開可能キーをアプリに返します。
購入プロセスで顧客に表示される支払い方法は、PaymentIntent にも含まれています。Stripe によってダッシュボードの設定から支払い方法を取得することも、手動でリスト化することもできます。
貴社の構築済みのシステムで支払い方法の提供にコードベースのオプションを必要とする場合を除き、支払い方法を手動でリスト化しないでください。Stripe は通貨、支払い方法の制約、その他のパラメーターを評価し、対応可能な支払い方法のリストを決定します。購入完了率の上昇につながり、使用通貨と顧客の所在地に最も適した支払い方法を優先的に表示します。一方、優先度の低い支払い方法は、オーバーフローメニューに隠された状態になります。
決済画面を導入するクライアント側
決済画面に Mobile Payment Element を表示するには、必ず以下を行ってください。
- 顧客が購入している商品を合計金額とともに表示する
- Address Element を使用して、必要な配送先情報を顧客から収集する
- Stripe の UI を表示する購入ボタンを追加する
PaymentSheetResult
が .
の場合は、ユーザーに通知します (注文確認画面を表示するなど)。
allowsDelayedPaymentMethods
を true に設定すると、アメリカの銀行口座などの 遅延通知型の支払い方法を使用できます。これらの支払い方法では、PaymentSheet
が完了した時点では最終的な支払いステータスが判明せず、後になって成功または失敗が確定します。このようなタイプの支払い方法に対応する場合は、注文が確定済みであることを顧客に通知し、支払いが成功した場合にのみ注文のフルフィルメント (商品の発送など) を実行するようにします。
戻り先 URL を設定するクライアント側
顧客はお客様のアプリから離れて、(Safari やバンキングアプリなどで) 認証する場合があります。ユーザーが認証後にアプリに自動的に戻れるようにするには、カスタム URL スキームを構成し、URL を SDK に転送するようにアプリのデリゲートを設定します。Stripe はユニバーサルリンクには対応していません。
支払い後のイベントを処理するサーバー側
支払いが完了すると、Stripe は payment_intent.succeeded イベントを送信します。ダッシュボードの Webhook ツールを使用するか Webhook のガイドに従ってこれらのイベントを受信し、顧客への注文確認メールの送信、データベースでの売上の記録、配送ワークフローの開始などのアクションを実行します。
クライアントからのコールバックを待つのではなく、これらのイベントをリッスンします。クライアントでは、コールバックが実行される前に顧客がブラウザーのウィンドウを閉じたり、アプリを終了する場合、また悪意を持つクライアントがレスポンスを不正操作する場合もあります。非同期型のイベントをリッスンするよう組み込みを設定すると、単一の組み込みで複数の異なるタイプの支払い方法を受け付けることができます。
Payment Element を使用して支払いを回収する場合は、payment_
イベントのほかにこれらのイベントを処理することをお勧めします。
イベント | 説明 | アクション |
---|---|---|
payment_intent.succeeded | 顧客が正常に支払いを完了したときに送信されます。 | 顧客に注文の確定を送信し、顧客の注文のフルフィルメントを実行します。 |
payment_intent.processing | 顧客が正常に支払いを開始したが、支払いがまだ完了していない場合に送信されます。このイベントは、多くの場合、顧客が口座引き落としを開始するときに送信されます。その後、payment_ イベント、また、失敗の場合は payment_ イベントが送信されます。 | 顧客に注文確認メールを送信し、支払いが保留中であることを示します。デジタル商品では、支払いの完了を待たずに注文のフルフィルメントを行うことが必要になる場合があります。 |
payment_intent.payment_failed | 顧客が支払いを試みたが、支払いに失敗する場合に送信されます。 | 支払いが processing から payment_ に変わった場合は、顧客に再度支払いを試すように促します。 |
送金を作成するサーバー側
サーバーで、Transfer (送金) を作成し、使用する transfer_
を指定することで、アカウントから連結アカウントに送金します。
送金額と支払い金額が一致している必要はありません。1 回の支払いを複数の送金に分割したり、複数の支払いを 1 回の送金に含めることができます。以下の例では、同じ transfer_
に関連付けられた追加の送金を作成しています。
送金オプション
transfer_
文字列には任意の値を指定できますが、1 つのビジネスアクションを示す必要があります。また、関連する支払いや transfer_
の指定がない送金を作成することもできます。これはたとえば、プロバイダーに支払いをする必要があるが、それに関連付けられた顧客の支払いがない場合などです。
注
transfer_
は、関連付けられているオブジェクトのみを識別します。標準の機能は影響を受けません。関連する支払いの資金が利用可能になる前に送金されないようにするには、送金の source_
属性を使用します。
デフォルトでは、金額がプラットフォームのアカウントの利用可能残高を超えていると送金リクエストが失敗します。Stripe は、失敗した送金リクエストを自動的に再試行しません。
支払いに関連付けられている送金の送金リクエストが失敗しないようにします。関連する支払いを送金の source_transaction として指定すると、送金リクエストは自動的に成功します。ただし、Stripe はその支払いの資金がプラットフォームアカウントで利用可能になるまで送金を実行しません。
注
支払いと送金別方式を使用する場合は、入金スケジュールを計画する際に考慮が必要です。自動入金は、source_
が定義されていない送金に支障をきたす場合があります。
実装内容をテストする
実装内容をテストするためのその他の情報については、テストをご覧ください。
オプションApple Pay を有効にする
注
決済画面に専用の Apple Pay ボタンがある場合は、Apple Pay ガイドに従い、ApplePayContext
を使用して Apple Pay ボタンからの支払いを回収します。その他の種類の支払い方法を処理するには、PaymentSheet
を使用できます。
Apple 加盟店 ID を登録する
Apple Developer Web サイトで 新規 ID を登録 して、Apple 加盟店 ID を取得します。
フォームに説明と ID を入力します。説明はお客様の記録用であり、後で変更できます。アプリの名前を ID として使用することをお勧めします (merchant.
など)。
新しい Apple Pay 証明書を作成する
支払いデータを暗号化するためのアプリの証明書を作成します。
ダッシュボードの iOS certificate settings (iOS 証明書の設定) に移動して、新規アプリケーションを追加をクリックし、表示されるガイドに従います。
証明書署名リクエスト (CSR) ファイルをダウンロードして、Apple Pay の利用を可能にする安全な証明書を Apple から取得します。
1 つの CSR ファイルを使用して証明書を 1 つだけ発行する必要があります。Apple 加盟店 ID を切り替えた場合、ダッシュボードの iOS Certificate Settings (iOS 証明書の設定) に移動して、新しい CSR と証明書を取得する必要があります。
Xcode を使用して組み込む
Apple Pay ケイパビリティをアプリに追加します。Xcode でプロジェクト設定を開き、Signing & Capabilities (署名およびケイパビリティ) タブを選択して、Apple Pay ケイパビリティを追加します。この段階で開発者アカウントへのログインを要求される場合があります。前の手順で作成した加盟店 ID を選択すると、アプリで Apple Pay を受け付けられるようになります。

Xcode で Apple Pay ケイパビリティを有効化する
Apple Pay を追加する
注文の追跡
iOS 16 以降で注文の追跡情報を追加するには、PaymentSheet.
で authorizationResultHandler を設定します。支払いの完了後、Stripe は iOS が Apple Pay の決済画面を閉じる前に実装を呼び出します。
authorizationResultHandler
の実装で、完了した注文の詳細をサーバーから取得します。この詳細を、指定された PKPaymentAuthorizationResult に追加して、指定された完了ハンドラーを呼び出します。
注文の追跡の詳細については、Apple のウォレットでの注文に関するドキュメントをご覧ください。
let customHandlers = PaymentSheet.ApplePayConfiguration.Handlers( authorizationResultHandler: { result, completion in // Fetch the order details from your service MyAPIClient.shared.fetchOrderDetails(orderID: orderID) { myOrderDetails result.orderDetails = PKPaymentOrderDetails( orderTypeIdentifier: myOrderDetails.orderTypeIdentifier, // "com.myapp.order" orderIdentifier: myOrderDetails.orderIdentifier, // "ABC123-AAAA-1111" webServiceURL: myOrderDetails.webServiceURL, // "https://my-backend.example.com/apple-order-tracking-backend" authenticationToken: myOrderDetails.authenticationToken) // "abc123" // Call the completion block on the main queue with your modified PKPaymentAuthorizationResult completion(result) } } ) var configuration = PaymentSheet.Configuration() configuration.applePay = .init(merchantId: "merchant.com.your_app_name", merchantCountryCode: "US", customHandlers: customHandlers)
オプションカードの読み取りを有効にする
カードのスキャンサポートを有効にするには、アプリケーションの Info.plist で NSCameraUsageDescription
(Privacy - Camera Usage Description (プライバシー - カメラの使用に関する記述)) を設定し、カメラにアクセスする理由を入力します (「To scan cards (カードのスキャンのため)」など)。カードのスキャンは、iOS 13 以降のデバイスでサポートされます。
オプション画面をカスタマイズする
カスタマイズはすべて、PaymentSheet.Configuration オブジェクトで設定されます。
デザイン
Appearance API を使用して、アプリのデザインに合うように色やフォントなどをカスタマイズします。
決済手段のレイアウト
paymentMethodLayout を使用して、画面上の決済手段のレイアウトを設定します。横や縦に表示することも、Stripe がレイアウトを自動で最適化するように設定することもできます。

var configuration = PaymentSheet.Configuration() configuration.paymentMethodLayout = .automatic
ユーザーの住所を収集する
Address Element を使用して、顧客から国内および国外の配送先住所や請求先住所を収集します。
加盟店の表示名
merchantDisplayName を設定し、顧客に表示するビジネス名を指定します。デフォルトではアプリ名になります。
var configuration = PaymentSheet.Configuration() configuration.merchantDisplayName = "My app, Inc."
ダークモード
PaymentSheet
は、ユーザーのシステム全体の表示設定 (ライト / ダークモード) に合わせて自動的に調整されます。アプリがダークモードに対応していない場合は、style を alwaysLight
または alwaysDark
モードに設定できます。
var configuration = PaymentSheet.Configuration() configuration.style = .alwaysLight
デフォルトの請求詳細
支払い画面で収集される請求詳細のデフォルト値を設定するには、defaultBillingDetails
プロパティーを設定します。PaymentSheet
の各フィールドに、指定したそれらの値が事前に読み込まれます。
var configuration = PaymentSheet.Configuration() configuration.defaultBillingDetails.address.country = "US" configuration.defaultBillingDetails.email = "foo@bar.com"
請求の詳細の収集
billingDetailsCollectionConfiguration
を使用して、決済画面で請求の詳細を収集する方法を指定します。
顧客の名前、メールアドレス、電話番号、住所を収集できます。
支払い方法で必須の請求詳細のみを収集する場合は、billingDetailsCollectionConfiguration.
を true に設定します。その場合、PaymentSheet.
が支払い方法の請求詳細として設定されます。
支払い方法で必ずしも必須ではない追加の請求詳細を収集する場合は、billingDetailsCollectionConfiguration.
を false に設定します。 その場合、PaymentSheet
で収集した請求詳細が支払い方法の請求詳細として設定されます。
var configuration = PaymentSheet.Configuration() configuration.defaultBillingDetails.email = "foo@bar.com" configuration.billingDetailsCollectionConfiguration.name = .always configuration.billingDetailsCollectionConfiguration.email = .never configuration.billingDetailsCollectionConfiguration.address = .full configuration.billingDetailsCollectionConfiguration.attachDefaultsToPaymentMethod = true
注
情報の収集に適用される法律については、弁護士に相談してください。電話番号は、取引に必要な場合にのみ収集してください。
オプションUI で支払いを完了する
支払い方法の詳細を収集するためにのみ支払い画面を表示して、後で confirm
メソッドを呼び出して、アプリの UI で支払いを完了できます。これは、カスタムの購入ボタンがある場合や、支払いの詳細を収集した後で追加のステップが必要な場合に便利です。

アプリの UI で支払いを完了する
PaymentSheetResult
が .
の場合は、ユーザーに通知します (注文確認画面を表示するなど)。
allowsDelayedPaymentMethods
を true に設定すると、アメリカの銀行口座などの 遅延通知型の支払い方法を使用できます。これらの支払い方法では、PaymentSheet
が完了した時点では最終的な支払いステータスが判明せず、後になって成功または失敗が確定します。このようなタイプの支払い方法に対応する場合は、注文が確定済みであることを顧客に通知し、支払いが成功した場合にのみ注文のフルフィルメント (商品の発送など) を実行するようにします。
オプションその他の支払い方法を有効にする
ダッシュボードの連結アカウントの支払い方法を管理するに移動して、連結アカウントで対応する支払い方法を設定します。デフォルトの設定に対する変更は、新規および既存のすべての連結アカウントに適用されます。
支払い方法の情報に関する次のリソースをご覧ください。
- 支払い方法ガイドは、プラットフォームに適した支払い方法の選択に役立ちます。
- アカウントのケイパビリティ を使用して、選択した決済手段が連結アカウントで機能することを確認します。
- 決済手段と製品サポートの表を参照して、選択した決済手段が使用中の Stripe プロダクトと決済フローで機能することを確認します。
支払い方法ごとに、次のいずれかのドロップダウンオプションを選択できます。
デフォルトで有効にする | 連結アカウントは、決済フローでこの支払い方法に対応します。一部の支払い方法は、無効またはブロックされている可能性があります。これは、Stripe ダッシュボードへのアクセスが許可された連結アカウントが、設定ページで有効化する必要があるためです。 |
デフォルトで無効にする | 連結アカウントは、決済フローでこの支払い方法に対応しません。Stripe ダッシュボードへのアクセスが許可された連結アカウントに、自身の支払い方法を管理することを許可している場合、連結アカウントはこれを有効にすることができます。 |
ブロック済み | 連結アカウントは、決済フローでこの支払い方法に対応しません。連結アカウントに Stripe ダッシュボードにアクセスして自身の支払い方法を管理することを許可していても、連結アカウントはこれを有効にできません。 |

支払い方法のオプション
支払い方法を変更した場合は、画面下部のバーにある変更を確認をクリックし、保存して適用をクリックして、連結アカウントを更新する必要があります。

保存ダイアログ
連結アカウントによる支払い方法の管理を許可する
Stripe では、連結アカウントが自身の支払い方法をカスタマイズできるようにすることをお勧めしています。このオプションを有効にすると、Stripe ダッシュボードにアクセスできる各連結アカウントは、支払い方法ページを表示および更新できるようになります。Stripe ダッシュボードには、新規および既存のすべての連結アカウントに対して適用される支払い方法のデフォルトのセットが表示されます。連結アカウントは、お客様がブロックした支払い方法を除き、これらのデフォルトを上書きできます。
このオプションを有効にするには、アカウントのカスタマイズチェックボックスを選択します。画面下部のバーにある変更を確認をクリックし、保存して適用をクリックして、この設定を更新する必要があります。

アカウントのカスタマイズのチェックボックス
支払い方法ケイパビリティ
連結アカウントが追加の支払い方法を受け付けられるようにするには、連結アカウントが有効な各支払い方法のケイパビリティを設定していることを確認する必要があります。ほとんどの支払い方法には、card_
ケイパビリティと同じ確認要件が適用されますが、いくつかの制限と例外があります。支払い方法ケイパビリティのテーブルには、カードの追加確認が必要な支払い方法のリストが記載されています。
売上処理加盟店を指定する
売上処理加盟店は、アカウントに設定されたケイパビリティと支払いの作成方法によって決まります。売上処理加盟店は、支払いの作成に誰の情報を使用するかを決定します。これには、その支払いに使用される顧客のクレジットカードまたは銀行口座の明細に表示される明細書表記 (プラットフォームまたは連結アカウントのもの) が含まれます。
売上処理加盟店を指定することにより、誰に対して支払いを作成するかをより明確にすることができます。たとえば、一部のプラットフォームは最終顧客がプラットフォーム (オンデマンドプラットフォームなど) と直接やり取りすることを理由として、売上処理加盟店となることを希望します。ただし、これと異なり最終顧客と直接やり取りする連結アカウントが存在するプラットフォームもあります (E コマースプラットフォーム上のストアなど)。こうしたシナリオでは、連結アカウントを売上処理加盟店にするのが合理的です。
連結アカウントの ID に on_
パラメーターを設定して、そのアカウントを支払いの売上処理加盟店にすることができます。on_
を使用すると、以下のようになります。
- 連結アカウントの国と売上処理通貨を使用して、支払いが売上として処理されます。
- 連結アカウントの国の手数料体系が使用されます。
- 連結アカウントの明細書表記が顧客のクレジットカード明細書に表示されます。
- 連結アカウントがプラットフォームと異なる国に所在する場合、連結アカウントの住所と電話番号が顧客のクレジットカード明細書に表示されます。
- 入金前の保留中の残高が保持される日数は、連結アカウントの delay_days 設定によって異なります。
on_
が省略された場合、プラットフォームが取引に関する金銭的責任を負います。
注意
on_
パラメーターは、card_payments などの支払いケイパビリティを持つ連結アカウントのみで利用できます。受取人利用規約 が適用されているアカウントは、card_
やその他の支払いケイパビリティをリクエストできません。
手数料を回収する
支払いと送金別方式を使用する場合、プラットフォームは、宛先アカウントに送金する金額を減らすことで、支払いの手数料を回収できます。レストランと運転手への支払いを行うレストランのデリバリーサービス取引の例を考えてください。
- 顧客は 100 USD を支払います。
- Stripe は、3.20 USD の手数料を回収して、残りの 96.80 USD をプラットフォームアカウントの保留中の残高に加算します。
- プラットフォームは、レストランの連結アカウントに 70 USD を送金して、運転手の連結アカウントに 20 USD を送金します。
- 6.80 USD のプラットフォーム手数料がプラットフォームアカウントに残されます。
資金分離でのプラットフォーム手数料
資金分離 は、送金時に割り当て資金から直接プラットフォーム手数料を引き落とし、明確な会計分離を提供するプライベートプレビュー機能です。アクセスをリクエストするには、Stripe アカウントマネージャーにお問い合わせください。

Connect を使用した複数通貨での支払いの処理について、詳細は複数通貨の処理をご覧ください。
送金可能な金額
デフォルトの動作では、プラットフォームアカウントの利用可能残高から送金が行われます。利用可能残高を超える送金を試行すると、エラーが発生して失敗します。この問題を回避するには、送金を作成するときに source_
パラメーターに支払い ID を指定することで、既存の支払いに関連付けます。source_
を指定すると、関連する支払いがまだ売上処理されていない場合でも、送金リクエストは残高に関係なく成功を返します。ただし、関連する支払いの資金がプラットフォームアカウントの送金に利用できるようになるまで、入金先口座でも資金を利用できません。
資金分離での送金
プライベート プレビュー 資金分離 機能では、割り当て資金からの送金が元の決済にリンクされるよう、source_
パラメーターが必要です。
注
プラットフォームの残高不足のために送金が失敗した場合、資金を追加しても、失敗したアクションが自動的に再試行されることはありません。資金を追加した後に、失敗した送金または入金を繰り返す必要があります。
元の支払いに transfer_
値が指定されている場合、Stripe は、同じ値を送金の transfer_
に割り当てます。そうでない場合は、Stripe は、group_
と関連する PaymentIntent ID の形式 (例: group_
) で文字列を生成します。この文字列は、支払いと送金の両方の transfer_
として割り当てられます。
注
送金の作成時に source_
を指定する必要があります。この属性は後で更新できません。
PaymentIntent から支払い ID を取得できます。
- PaymentIntent の latest_charge 属性を取得します。この属性は、PaymentIntent に関連付けられた最新の支払いの ID です。
- リクエストで
payment_
を指定して支払いのリストをリクエストします。この方法では、PaymentIntent に関連付けられているすべての支払いの詳細なデータが返されます。intent
このパラメータを使用するときは、以下のことを確認してください。
- 送金金額は、元の支払いの金額を超えることはできません
- 送金の合計が元の支払いを超えない限り、同じ
source_
で複数の送金を作成できますtransaction - 送金により、関連する支払いが保留状態になります。支払いからの売上が N 日後に利用可能になるとすると、送金先 Stripe アカウントが送金から受け取る支払いも N 日後に利用可能になります。
- Stripe は自動的に
transfer_
を作成しますgroup - 支払いに関連付けられている取引残高の通貨は、送金の通貨と同じである必要があります
ACH などの非同期の支払い方法が、後続の送金リクエストの実行後に失敗する場合があります。これらの支払いでは、source_
を使用しないでください。代わりに、charge.succeeded イベントがトリガーされるまで待ち、その後で売上を送金するようにしてください。これらの支払いで source_
を使用する必要がある場合は、支払いの失敗を管理する機能を実装する必要があります。
source_
として使用される支払いが失敗すると、プラットフォームのアカウント残高からの売上が連結アカウントに送金され、支払いを補填します。これらの売上を回収するには、失敗した source_
に関連する送金を差戻しします。
返金する
プラットフォームで作成された支払いは、シークレットキーを使用して返金できます。ただし、支払いの返金は関連するどの送金にも影響しません。以降の送金額の減額、または送金の差戻しによって返金される金額の調整はプラットフォームの責任で行います。
資金分離での返金
プライベート プレビュー 資金分離 機能は、プラットフォームでの決済残高を引き落とす前に返金に割り当て資金を使用し、明確な会計分離を提供します。
送金を差戻す
Connect は、連結アカウントに対して行われた送金の全額または一部金額 (amount
値で指定) を差戻す機能をサポートしています。送金の差戻しは、支払いに関連する返金や不審請求の申請、または送金のミスの修正のみに使用します。
送金差戻しにより、プラットフォームの利用可能残高に指定された金額 (または全額) が戻されて追加され、それに応じて連結アカウントの利用可能残高が減少します。連結アカウントの利用可能残高が差戻し額よりも大きい場合、または連結されたリザーブが有効になっている場合のみ、送金を差戻すことができます。
送金差戻しに通貨の換算が必要な場合、換算後に差戻し額で残高がゼロになるとエラーが返されます。
連結アカウントの返金を無効にしても、送金の差戻し処理機能はブロックされません。