# 支払い エクスポート、返金、不審請求の申請ケイパビリティを持つ支払いのリストを表示します。 > iOS での決済はプレビュー中です。 > Android での決済はプレビュー中です。 支払いは、連結アカウントの[ダイレクト支払い](https://docs.stripe.com/connect/direct-charges.md)、[デスティネーション支払い](https://docs.stripe.com/connect/destination-charges.md)、[支払いと送金別方式](https://docs.stripe.com/connect/separate-charges-and-transfers.md)の取引リストを表示します。 デフォルトでは、埋め込みコンポーネントはデスティネーション支払いと支払いと送金別方式の限られた情報しか提供しません。顧客情報、決済手段、一部の支払い金額の詳細にはアクセスできません。[destination_on_behalf_of_charge_management](https://docs.stripe.com/connect/supported-embedded-components/payments.md#allow-your-connected-accounts-to-manage-destination-charges) 機能を使用すると、連結アカウントは返金の実行、不審請求の申し立ての管理、顧客情報、決済手段、手数料などのデスティネーション支払いの追加情報の確認を行うことができます。 Note: The following is a preview/demo component that behaves differently than live mode usage with real connected accounts. The actual component has more functionality than what might appear in this demo component. For example, for connected accounts without Stripe dashboard access (custom accounts), no user authentication is required in production. Note: The following is a preview/demo component that behaves differently than live mode usage with real connected accounts. The actual component has more functionality than what might appear in this demo component. For example, for connected accounts without Stripe dashboard access (custom accounts), no user authentication is required in production. Note: The following is a preview/demo component that behaves differently than live mode usage with real connected accounts. The actual component has more functionality than what might appear in this demo component. For example, for connected accounts without Stripe dashboard access (custom accounts), no user authentication is required in production. Note: The following is a preview/demo component that behaves differently than live mode usage with real connected accounts. The actual component has more functionality than what might appear in this demo component. For example, for connected accounts without Stripe dashboard access (custom accounts), no user authentication is required in production. ## アカウントセッションを作成する [アカウントセッションの作成](https://docs.stripe.com/api/account_sessions/create.md) 時に、`components` パラメーターで `payments` を指定して、決済の組み込みコンポーネントを有効にします。`payments` で `features` パラメーターを指定することにより、決済のコンポーネントの個々の機能を有効または無効にすることができます。 ```curl curl https://api.stripe.com/v1/account_sessions \ -u "<>:" \ -d "account={{CONNECTEDACCOUNT_ID}}" \ -d "components[payments][enabled]=true" \ -d "components[payments][features][refund_management]=true" \ -d "components[payments][features][dispute_management]=true" \ -d "components[payments][features][capture_payments]=true" \ -d "components[payments][features][destination_on_behalf_of_charge_management]=false" ``` payments コンポーネントは、支払いタイプごとに異なる情報を示し、異なる機能をサポートします。 - ダイレクト支払いの場合、連結アカウントはすべての情報を表示できます。アカウントセッションの作成時に対応する機能を有効にした場合は、返金の管理、不審請求の申請の管理、支払いのキャプチャーも行うことができます。 - [デスティネーション支払い](https://docs.stripe.com/connect/destination-charges.md)と[支払いと送金別方式](https://docs.stripe.com/connect/separate-charges-and-transfers.md)の場合、連結アカウントはこの選択された支払いに関連付けられた送金オブジェクトのみを表示でき、これに含まれる情報は限定的です。 - [on_behalf_of](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-on_behalf_of) 属性が指定されたデスティネーション支払いの場合、連結アカウントは `destination_on_behalf_of_charge_management` 機能が有効な場合にすべての情報を表示できます。この機能が有効になっている場合、対応する機能を有効にすることで、返金および不審請求の申請の管理を有効にすることもできます。 ### 連結アカウントによるデスティネーション支払いの管理を許可する `destination_on_behalf_of_charge_management` 機能を `true` に設定すると、連結アカウントは支払いコンポーネントで [on_behalf_of](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-on_behalf_of) 属性が設定されている[デスティネーション支払い](https://docs.stripe.com/connect/destination-charges.md)を表示および管理できます。`dispute_management` 機能も有効にすると、連結アカウントは[不審請求の申請の処理に直接参加する](https://docs.stripe.com/connect/supported-embedded-components/payments.md#dispute-management-for-destination-charges)こともできます。 `destination_on_behalf_of_charge_management` 機能を有効にすることには、次の制限があります。 1. 支払いのステータスや支払い方法で絞り込むことはできません。 1. 特定のデータ列のエクスポートはできません。 ## 支払いコンポーネントを表示する アカウントセッションを作成して [ConnectJS を初期化](https://docs.stripe.com/connect/get-started-connect-embedded-components.md#account-sessions) すると、フロントエンドで決済コンポーネントをレンダリングできます。 #### JavaScript ```js // Include this element in your HTML const payments = stripeConnectInstance.create('payments'); container.appendChild(payments); // Optional: specify filters to apply on load // payments.setDefaultFilters({ // amount: {greaterThan: 100}, // date: {before: new Date(2024, 0, 1)}, // status: ['partially_refunded', 'refund_pending', 'refunded'], // paymentMethod: 'card',}); ``` #### HTML + JS | メソッド | タイプ | 説明 | デフォルト | | ------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | | `setDefaultFilters` | `PaymentsListDefaultFilters` | 読み込み時に、フィルター要件に一致する支払いを表示します。利用可能な [PaymentsListDefaultFilters プロパティ](https://docs.stripe.com/connect/supported-embedded-components/payments.md#the-object)については、こちらをご確認ください。 | なし | #### React | React プロパティ | タイプ | 説明 | デフォルト | 必須または任意 | | ---------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | ------- | | `defaultFilters` | `PaymentsListDefaultFilters` | 読み込み時に、フィルター要件に一致する支払いを表示します。利用可能な [PaymentsListDefaultFilters プロパティ](https://docs.stripe.com/connect/supported-embedded-components/payments.md#the-object)については、こちらをご確認ください。 | なし | 任意 | ### デフォルトのフィルターを設定する 支払いリストのデフォルトフィルターの設定は任意です。設定すると、有効なフィルターが適用され、無効なフィルターは無視されます。ステータスまたは決済手段でフィルタリングすることはできないため、`destination_on_behalf_of_charge_management` 機能が有効になっている場合でもこれらのフィルターは自動的に無視されます。 `PaymentsListDefaultFilters` オブジェクトを使用すると、支払いフィルターを自由に組み合わせて指定できるようになります。 #### `PaymentsListDefaultFilters` オブジェクト デフォルトのフィルターを指定するには、`PaymentsListDefaultFilters` オブジェクトを `setDefaultFilters` セッターに渡します。オブジェクトには次のプロパティがありますが、すべてオプションです。 | 名前 | タイプ | 説明 | サンプル値 | | --------------- | --------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | | `amount` | `{equals: number} | {greaterThan: number} | {lessThan: number} | {between: {lowerBound: number, upperBound: number}}` | 支払い金額でフィルターを設定します (100 分の 1 の位まで)。 | `{greaterThan: 100}` | | `date` | `{before: Date} | {after: Date} | {between: {start: Date; end: Date}` | `Date` オブジェクトを指定して、日付で絞り込みます。JavaScript の `Date` オブジェクトで許可されている任意の日付形式が受け入れられます。考慮されるのは年、月、日のみです。 | `{before: new Date(2024, 0, 1)}` | | `status` | `Status[]` | 1 つ以上のステータスを指定します。有効なステータスの種類は次のとおりです。 `'blocked' | 'canceled' | 'disputed' | 'early_fraud_warning' | 'failed' | 'incomplete' | 'partially_refunded' | 'pending' | 'refund_pending' | 'refunded' | 'successful' | 'uncaptured'` `destination_on_behalf_of_charge_management` 機能が有効になっている場合、このフィルターは無視されます。 | `['disputed', 'canceled']` | | `paymentMethod` | `PaymentMethod` | 決済手段の一覧は、[PaymentMethod オブジェクト](https://docs.stripe.com/api/payment_methods/object.md#payment_method_object-type)の type 列挙値で確認できます。利用可能な決済手段を確認するには、[決済手段の設定](https://dashboard.stripe.com/login?redirect=%2Fsettings%2Fpayment_methods%2Fconnected_accounts%3Fconfig_id%3Dpmc_1KldNkAppfGnVJgHI6jpKIek)をご覧ください。 `destination_on_behalf_of_charge_management` 機能が有効になっている場合、このフィルターは無視されます。 | `'card'` | ## 支払いコンポーネントを表示する アカウントセッションを作成し、[StripeConnect SDK](https://docs.stripe.com/connect/get-started-connect-embedded-components.md?platform=ios#install-the-stripeconnect-sdk) を設定したら、モバイルアプリで決済コンポーネントを表示できます。 #### Swift ```swift // Optional: specify filters to apply on load let defaultFilters = EmbeddedComponentManager.PaymentsListDefaultFiltersOptions() defaultFilters.amount = .greaterThan(10.10) // Show payments > $10.10 defaultFilters.status = [.successful, .pending] // Only successful and pending payments defaultFilters.paymentMethod = .card // Only card payments defaultFilters.date = .between(start: startDate, end: endDate) // Date range // Display this view controller in your app let paymentsViewController = embeddedComponentManager.createPaymentsViewController(defaultFilters: defaultFilters) present(paymentsViewController) ``` | パラメーター | タイプ | 説明 | デフォルト | | ---------------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----- | | `defaultFilters` | `PaymentsListDefaultFiltersOptions` | 読み込み時に、フィルター条件に一致する決済を表示します。可能な [PaymentsListDefaultFiltersOptions プロパティ](https://docs.stripe.com/connect/supported-embedded-components/payments.md#the-object) をご覧ください。 | なし | ### デフォルトのフィルターを設定する 支払いリストのデフォルトフィルターの設定は任意です。設定すると、有効なフィルターが適用され、無効なフィルターは無視されます。ステータスまたは決済手段でフィルタリングすることはできないため、`destination_on_behalf_of_charge_management` 機能が有効になっている場合でもこれらのフィルターは自動的に無視されます。 `PaymentsListDefaultFiltersOptions` オブジェクトを使用して、任意の決済フィルターの組み合わせを指定できます。 ### `PaymentsListDefaultFiltersOptions` オブジェクト デフォルトのフィルターを指定するには、`PaymentsListDefaultFiltersOptions` オブジェクトを作成し、それを `defaultFilters` パラメーターに渡します。オブジェクトには次のプロパティがありますが、すべてオプションです。 | 氏名 | タイプ | 説明 | サンプル値 | | --------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | | `amount` | `AmountFilter?` | 決済金額 (100 分の 1 以下) で絞り込みます。列挙型のケースは次のとおりです。 `.equals(Double)` `.greaterThan(Double)` `.lessThan(Double)` `.between(lowerBound: Double, upperBound: Double)` | `.greaterThan(100.0)` | | `date` | `DateFilter?` | `Date` オブジェクトを使用して日付で絞り込みます。列挙型のケースは次のとおりです。 `.before(Date)` `.after(Date)` `.between(start: Date, end: Date)` 年、月、日のみが考慮されます。 | `.before(Date())` | | `status` | `[Status]?` | 1 つ以上のステータスを指定します。有効なステータスの種類は次のとおりです。 `.blocked` `.canceled` `.disputed` `.earlyFraudWarning` `.failed` `.incomplete` `.partiallyRefunded` `.pending` `.refundPending` `.refunded` `.successful` `.uncaptured` `destination_on_behalf_of_charge_management` 機能が有効になっている場合、このフィルターは無視されます。 | `[.disputed, .canceled]` | | `paymentMethod` | `PaymentMethod?` | 決済手段は、`.card`、`.applePay`、`.googlePay` など、使用可能な列挙型ケースから 1 つ選択できます。使用できる決済手段を確認するには、[決済手段設定](https://dashboard.stripe.com/login?redirect=%2Fsettings%2Fpayment_methods%2Fconnected_accounts%3Fconfig_id%3Dpmc_1KldNkAppfGnVJgHI6jpKIek) を確認してください。 `destination_on_behalf_of_charge_management` 機能が有効になっている場合、このフィルターは無視されます。 | `.card` | ## 支払いコンポーネントを表示する アカウントセッションを作成し、[StripeConnect SDK](https://docs.stripe.com/connect/get-started-connect-embedded-components.md?platform=android#install-the-stripeconnect-sdk) を設定したら、モバイルアプリで決済コンポーネントを表示できます。 #### Kotlin ```kotlin // Optional: specify filters to apply on load val defaultFilters = PaymentsProps.PaymentsListDefaultFilters( amount = PaymentsProps.AmountFilter.greaterThan(10.10), // Show payments > $10.10 status = listOf(PaymentsProps.Status.SUCCESSFUL, PaymentsProps.Status.PENDING), // Only successful and pending payments paymentMethod = PaymentsProps.PaymentMethod.CARD, // Only card payments date = PaymentsProps.DateFilter.between(startDate, endDate) // Date range ) val props = PaymentsProps(defaultFilters = defaultFilters) val paymentsView: View = embeddedComponentManager.createPaymentsView( context = activity, // Use an activity or activity-derived context props = props ) findViewById(R.id.content_view).addView(paymentsView) ``` | パラメーター | タイプ | 説明 | デフォルト | | ---------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | | `defaultFilters` | `PaymentsListDefaultFilters` | 読み込み時に、フィルター要件に一致する支払いを表示します。利用可能な [PaymentsListDefaultFilters プロパティ](https://docs.stripe.com/connect/supported-embedded-components/payments.md#the-object)については、こちらをご確認ください。 | null | ### デフォルトのフィルターを設定する 支払いリストのデフォルトフィルターの設定は任意です。設定すると、有効なフィルターが適用され、無効なフィルターは無視されます。ステータスまたは決済手段でフィルタリングすることはできないため、`destination_on_behalf_of_charge_management` 機能が有効になっている場合でもこれらのフィルターは自動的に無視されます。 `PaymentsProps.PaymentsListDefaultFilters` オブジェクトを使用して、任意の決済フィルターの組み合わせを指定できます。 ### `PaymentsProps.PaymentsListDefaultFilters` オブジェクト デフォルトのフィルターを指定するには、`PaymentsProps.PaymentsListDefaultFilters` オブジェクトを作成し、それを `PaymentsProps` の `defaultFilters` パラメーターに渡します。オブジェクトには次のプロパティがありますが、すべてオプションです。 | 氏名 | タイプ | 説明 | サンプル値 | | --------------- | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------ | | `amount` | `AmountFilter?` | 決済金額 (100 分の 1 以下) でフィルタリングします。静的メソッドを使用します。 `AmountFilter.equalTo(Double)` `AmountFilter.greaterThan(Double)` `AmountFilter.lessThan(Double)` `AmountFilter.between(Double, Double)` | `AmountFilter.greaterThan(100.0)` | | `date` | `DateFilter?` | `Date` オブジェクトを使用して日付でフィルタリングします。静的メソッドを使用します。 `DateFilter.before(Date)` `DateFilter.after(Date)` `DateFilter.between(Date, Date)` 年、月、日のみが考慮されます。 | `DateFilter.before(Date())` | | `status` | `List?` | 1 つ以上のステータスを指定します。有効なステータスの種類は次のとおりです。 `Status.BLOCKED` `Status.CANCELED` `Status.DISPUTED` `Status.EARLY_FRAUD_WARNING` `Status.FAILED` `Status.INCOMPLETE` `Status.PARTIALLY_REFUNDED` `Status.PENDING` `Status.REFUND_PENDING` `Status.REFUNDED` `Status.SUCCESSFUL` `Status.UNCAPTURED` `destination_on_behalf_of_charge_management` 機能が有効になっている場合、このフィルターは無視されます。 | `listOf(Status.DISPUTED, Status.CANCELED)` | | `paymentMethod` | `PaymentMethod?` | `PaymentMethod.CARD`、`PaymentMethod.APPLE_PAY`、`PaymentMethod.GOOGLE_PAY` など、使用可能な列挙型ケースから 1 つの決済手段を選択します。使用できる決済手段を確認するには、[決済手段設定](https://dashboard.stripe.com/login?redirect=%2Fsettings%2Fpayment_methods%2Fconnected_accounts%3Fconfig_id%3Dpmc_1KldNkAppfGnVJgHI6jpKIek) を確認してください。 `destination_on_behalf_of_charge_management` 機能が有効になっている場合、このフィルターは無視されます。 | `PaymentMethod.CARD` | ## 決済コンポーネントを表示する アカウントセッションを作成し、[Stripe React Native SDK](https://docs.stripe.com/connect/get-started-connect-embedded-components.md?platform=react-native#install-the-stripe-react-native-sdk) を設定したら、アプリで決済コンポーネントを表示できます。 #### TypeScript ```javascript import { ConnectPayments } from '@stripe/stripe-react-native'; export default function PaymentsScreen() { return ; } ``` ## アクセスをリクエストする (プライベートベータ版) サインインして、プライベートプレビューで React Native 用 Connect の埋め込みコンポーネントへのアクセスをリクエストしてください。Stripe アカウントをお持ちでない場合は、[今すぐ登録](https://dashboard.stripe.com/register) できます。 ## デスティネーション支払いに対する不審請求の申請を管理する `dispute_management` と `destination_on_behalf_of_charge_management` を両方とも有効にすると、連結アカウントは、`on_behalf_of` 属性が自身に設定されたデスティネーション支払いに対する不審請求の申し立てについて、反証資料の更新と変更、反論、および承諾を行うことができます。 [デスティネーション支払い](https://docs.stripe.com/connect/destination-charges.md)では、`on_behalf_of` の有無にかかわらず、Stripe はプラットフォームアカウントから不審請求の申し立てに係る金額と手数料を引き落とします。 [不審請求の申し立て作成イベント](https://docs.stripe.com/api/events/types.md#event_types-charge.dispute.created)をリッスンするために、[Webhook](https://docs.stripe.com/webhooks.md) を設定することをお勧めします。このような状況が発生した場合は、[ダッシュボード](https://dashboard.stripe.com/test/transfers)から送金を差戻すか、[送金の差戻しを作成](https://docs.stripe.com/api/transfer_reversals/create.md)して、連結アカウントから売上の回収を試みることができます。 連結アカウントの残高がマイナスの場合、`debit_negative_balances` が `true` に設定されていれば、Stripe は[その外部口座からの引き落とし](https://docs.stripe.com/connect/account-balances.md#automatically-debit-connected-accounts)を試みます。 不審請求の申し立てに反論して主張が認められた場合は、以前に差戻した売上を連結アカウントに送金できます。プラットフォームの残高が不足している場合、送金は失敗します。[Stripe 残高に資金を追加](https://docs.stripe.com/get-started/account/add-funds.md)して、残高不足によるエラーを防止してください。 > 以前差戻した売上を再送金する場合、[海外送金に関する制限](https://docs.stripe.com/connect/account-capabilities.md#transfers-cross-border)の対象となるため、連結アカウントに返済する方法がなくなる可能性があります。その場合は代わりに、不審請求の申し立てがなくなるまで、`on_behalf_of` を指定したデスティネーション支払いで、不審請求の申し立てが行われた海外への支払い送金が回復されるのを待ちます。 ## 説明をカスタマイズする [destination_on_behalf_of_charge_management](https://docs.stripe.com/connect/supported-embedded-components/payments.md#allow-your-connected-accounts-to-manage-destination-charges) オプションを使用している場合、`on_behalf_of` 属性が指定されたデスティネーション支払いに対して表示される支払い情報 (説明を含む) は、元の作成済みの支払いに対応しています。この機能が無効に設定されている場合に、[デスティネーション支払い](https://docs.stripe.com/connect/destination-charges.md)および[支払いと送金別方式](https://docs.stripe.com/connect/separate-charges-and-transfers.md)の支払いの詳細ビュー内にカスタムの説明を表示するには、以下の手順に従います。 ### デスティネーション支払い プラットフォームのユーザーに表示される Payment (支払い) オブジェクトの [description](https://docs.stripe.com/api/charges/object.md#charge_object-description) を更新するには、Stripe API を使用する必要があります。これは、[デスティネーション支払い](https://docs.stripe.com/connect/destination-charges.md)を使用するすべてのプラットフォームに適用されます。 1. アカウントに対して作成した既存の Transfer オブジェクトを見つけます。これには、[PaymentIntent (支払いインテント) オブジェクト](https://docs.stripe.com/api/payment_intents/object.md)で作成された最新の [charge](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-charges) を見つけます。 1. Charge (支払い) オブジェクトを使用して、その支払いに関連付けられている [transfer](https://docs.stripe.com/api/charges/object.md#charge_object-transfer) オブジェクトを見つけます。 1. Transfer オブジェクトを使用して、その送金に存在する [destination_payment](https://docs.stripe.com/api/transfers/object.md#transfer_object-destination_payment) ID を見つけます。 1. [Update Charge](https://docs.stripe.com/api/charges/update.md) API を呼び出して、`destination_payment` ID を使用してデスティネーション支払いの [description](https://docs.stripe.com/api/charges/update.md#update_charge-description) を更新します。 > [destination_payment](https://docs.stripe.com/api/transfers/object.md#transfer_object-destination_payment) オブジェクトは連結アカウントに属するため、このコールを実行するには、[Stripe-Account ヘッダー](https://docs.stripe.com/connect/authentication.md)を、連結アカウント ID に設定する必要があります。 ```curl curl https://api.stripe.com/v1/charges/{{PAYMENT_ID}} \ -u "<>:" \ -H "Stripe-Account: {{CONNECTEDACCOUNT_ID}}" \ -d "description=My custom description" ``` この説明は、このフィールドの入力後に支払いで表示されるようになります。 [プラットフォームでのデスティネーション支払いの作成](https://docs.stripe.com/connect/destination-charges.md)の詳細をご覧ください。 ### 支払いと送金別方式 プラットフォームのユーザーに表示される Payment (支払い) オブジェクトの [description](https://docs.stripe.com/api/charges/object.md#charge_object-description) を更新するには、Stripe API を使用する必要があります。これは、[支払いと送金別方式](https://docs.stripe.com/connect/separate-charges-and-transfers.md)を使用するプラットフォームに適用されます。 1. Transfer オブジェクトを使用して、その送金に存在する [destination_payment](https://docs.stripe.com/api/transfers/object.md#transfer_object-destination_payment) ID を見つけます。 1. [Update Charge](https://docs.stripe.com/api/charges/update.md) API を呼び出して、前のステップで見つかった `destination_payment` ID を使用してデスティネーション支払いの [description](https://docs.stripe.com/api/charges/update.md#update_charge-description) を更新します。 > [destination_payment](https://docs.stripe.com/api/transfers/object.md#transfer_object-destination_payment) オブジェクトは連結アカウントに属するため、このコールを実行するには、[Stripe-Account ヘッダー](https://docs.stripe.com/connect/authentication.md)を、連結アカウント ID に設定する必要があります。 ```curl curl https://api.stripe.com/v1/charges/{{PAYMENT_ID}} \ -u "<>:" \ -H "Stripe-Account: {{CONNECTEDACCOUNT_ID}}" \ -d "description=My custom description" ``` この説明は、このフィールドの入力後に支払いで表示されるようになります。 [支払いと送金別方式の作成](https://docs.stripe.com/connect/separate-charges-and-transfers.md)の詳細をご覧ください。