# 連結アカウント向けの複数の決済手段設定

連結アカウントがシナリオに応じて顧客に異なる決済手段のセットを表示できるようにする方法をご確認ください。

プラットフォームで[動的な決済手段](https://docs.stripe.com/payments/payment-methods/dynamic-payment-methods.md)を使用しており、取引のタイプ (サブスクリプションと 1 回限りの決済など) や請求金額 (一定の金額を超える請求には後払いを使用できるなど) に応じて異なる種類の決済手段を設定できる場合に、この機能を使用します。

## 新しい支払い方法の設定を作成する [ダッシュボード]

Stripe ダッシュボードで、連結アカウントの[支払い方法の設定](https://dashboard.stripe.com/settings/payment_methods/connected_accounts)にアクセスします。ここで、プラットフォームレベルの「親」設定を管理します。連結アカウントは、それぞれの親の「子」構成を受け取り、以下に設定する制約の範囲内でカスタマイズできます。

デフォルトで、1 つの親設定から開始します。追加の設定を作成するには、**新しい設定を追加**をクリックし、名前を付けます。

有効にする決済手段の設定がダッシュボードで `active` に設定されていることを確認する手順は、次のとおりです。

1. 決済手段の設定に移動します。
2. **決済設定** セクションで決済手段をクリックし、オーバーフローメニュー (⋯) > **設定の管理** をクリックします。
3. **設定ステータス** で、 **アクティブ** オプションを有効にします。
4. **変更を保存** をクリックして、更新を適用します。

> #### 複数の決済手段設定の運用
> 
> 追加の決済手段の設定を作成した場合、[is_default](https://docs.stripe.com/api/payment_method_configurations/object.md#payment_method_configuration_object-is_default) プロパティでデフォルトの設定を特定できます。Stripe は、[設定 ID を指定](https://docs.stripe.com/connect/multiple-payment-method-configurations.md#use-payment-method-configuration)していない支払いに対してデフォルトの設定を使用します。
![支払い方法の設定ページ](https://b.stripecdn.com/docs-statics-srv/assets/ppc-dashboard-demo-connect.93d78670fd3582900915ab57e3e219ec.png)

## 各支払い方法のデフォルトの状態を設定する [ダッシュボード]

新しい親設定に対して支払い方法ごとにデフォルトの設定を適用し、連結アカウントが実行できるカスタマイズを管理できます。ドロップダウンを使用して次のように希望の設定を選択します。

- **On by default**: 支払い方法はデフォルトで有効です。連結アカウントが有効と無効を切り替えることができます。
- **Off by default**: 支払い方法はデフォルトで無効です。連結アカウントが有効と無効を切り替えることができます。
- **ブロック**: すべての連結アカウントの支払い方法を無効にします。連結アカウントは有効にできませんが、プラットフォームは個々の連結アカウントに対してこれを上書きできます。
![支払い方法ごとに設定を構築する](https://b.stripecdn.com/docs-statics-srv/assets/settings-api-wallets.956b27fd0756e064d433aaa5999130fe.png)

## 連結アカウントによる支払い方法のカスタマイズを許可する

Stripe ダッシュボードの全機能を利用できる連結アカウントは、支払い方法が `On by default` と `Off by default` のいずれかに設定されている場合、ダッシュボードにアクセスして有効と無効を切り替えることができます。連結アカウントの**支払い方法**の設定ページには、新しく作成された子設定が表示されます。連結アカウントはページ上部のドロップダウンメニューを使用して、編集する設定を選択できます。

連結アカウントが Stripe ダッシュボードではなくプラットフォームのダッシュボードから**支払い方法**設定をカスタマイズできるようにする場合、または*Stripe ダッシュボードへのアクセス権* (Platforms can provide connected accounts with access to the full Stripe Dashboard or the Express Dashboard. Otherwise, platforms build an interface for connected accounts using embedded components or the Stripe API)のない連結アカウントが存在する場合は、Payment Method Configurations API を組み込むことができます。

連結アカウント ID と子設定 ID を指定して 支払い方法の設定 API を使用することで、特定の連結アカウントに関する支払い方法の現在の状況を読み取ります。

```curl
curl https://api.stripe.com/v1/payment_method_configurations/{{PAYMENTMETHODCONFIGURATION_ID}} \
  -u "<<YOUR_SECRET_KEY>>:" \
  -H "Stripe-Account: {{CONNECTEDACCOUNT_ID}}"
```

```json
{
  "object": "list",
  "data": [
    {
      "id": ""{{PAYMENT_METHOD_CONFIGURATION_ID}}"",
      "object": "payment_method_configuration",
      "name": "My Custom Configuration",
      "active": true,
      "is_default": true,
      "livemode": false,
      "parent": ""{{PAYMENT_METHOD_CONFIGURATION_ID}}"",
      "acss_debit": {
        "available": false,
        "display_preference": {
          "overridable": true,
          "preference": "off",
          "value": "off"
        }
      },
      "affirm": {
        "available": false,
        "display_preference": {
          "overridable": true,
          "preference": "off",
          "value": "off"
        }
      },
      "afterpay_clearpay": {
        "available": false,
        "display_preference": {
          "overridable": true,
          "preference": "off",
          "value": "off"
        }
      },
      ... additional payment methods
    }
  ],
  "has_more": false,
  "url": "/v1/payment_method_configurations"
}
```

成功すると、返されるリストには各決済手が表示され、可用性と表示設定を示す 2 つのパラメーターが含まれます。

- `available` は、[ケイパビリティ](https://docs.stripe.com/api/capabilities/object.md) の値 (`active`、`inactive`、`pending` または `unrequested`) と `display_preference` の値の組み合わせです。

  決済時に顧客にこの決済手段が表示されるかどうかを判断するには、`available` フィールドを使用します。`available` が `true` の場合、決済手段の機能はアクティブであり、`display_preference` はオンになっています。`available` が `false` の場合、決済手段にアクティブな機能がないか、`display_preference` の値がオフになっており、決済時に顧客には表示されません。

  実装を簡素化し、他の機能を活用するには、決済時にダッシュボードから管理する決済手段を使用します。これにより、このパラメーターが自動的に読み取られ、適切な決済手段が顧客に表示されます。

- `display_preference` には、`overridable`、`preference`、`value` の 3 つのコンポーネントがあります。

  - `overridable` は読み取り専用であり、上記で設定したデフォルトを連結アカウントの設定で上書きできるかどうかを示します。
  - `preference` は書き込み可能であり、連結アカウントの設定を保存します。
  - `value` は読み取り専用で、有効な `display_preference` 値を反映します。

> 連結アカウントの国に関連する支払い方法のみが API レスポンスで表示され、設定可能です。[各国のサポート状況をご確認ください](https://docs.stripe.com/payments/payment-methods/integration-options.md)。

連結アカウント所有者が決済手段を有効または無効にする操作を行うときは、`display_preference.preference` プロパティを更新できます。これにより、その決済手段に対する連結アカウント所有者の設定が保存され、Stripe はこれを使用して、顧客に決済手段を表示するかどうかを決定します。

```curl
curl https://api.stripe.com/v1/payment_method_configurations/{{PAYMENTMETHODCONFIGURATION_ID}} \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "affirm[display_preference][preference]=on"
```

```json
{
  "id": ""{{PAYMENT_METHOD_CONFIGURATION_ID}}"",
  "object": "payment_method_configuration",
  "name": "My Custom Configuration",
  "active": true,
  "is_default": true,
  "livemode": false,
  "acss_debit": {
    "available": false,
    "display_preference": {
      "overridable": true,
      "preference": "off",
      "value": "off"
    }
  },
  "affirm": {
    "available": true,
    "display_preference": {
      "overridable": true,
      "preference": "on",
      "value": "on"
    }
  },
  "afterpay_clearpay": {
    "available": false,
    "display_preference": {
      "overridable": true,
      "preference": "off",
      "value": "off"
    }
  },
  ... additional payment methods
}
```

連結アカウントが API を使用して決済手段を有効にすると、Stripe は顧客の所在地、注文金額、その他の要素に基づいて決済手段を自動的にランク付けし、コンバージョン率が最も高い決済手段を常に最初に表示します。

## 決済フローの設定を使用する

決済フローのレンダリング時に親設定 ID を渡して新しい設定を使用するようにします。

#### Checkout

```curl
curl https://api.stripe.com/v1/checkout/sessions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d mode=payment \
  -d "line_items[0][price]={{PRICE_ID}}" \
  -d "line_items[0][quantity]=1" \
  --data-urlencode "success_url=https://example.com/success" \
  -d currency=usd \
  -d "payment_method_configuration={{PAYMENTMETHODCONFIGURATION_ID}}"
```

#### Payment Element

```curl
curl https://api.stripe.com/v1/payment_intents \
  -u "<<YOUR_SECRET_KEY>>:" \
  -H "Stripe-Account: {{CONNECTEDACCOUNT_ID}}" \
  -d amount=1099 \
  -d currency=usd \
  -d "automatic_payment_methods[enabled]=true" \
  -d "payment_method_configuration={{PAYMENTMETHODCONFIGURATION_ID}}"
```

[インテント作成猶予の導入パス](https://docs.stripe.com/payments/accept-a-payment-deferred.md)を使用して Payment Element を使用する場合は、Element セッションオプションに親 ID を渡すことができます。

```javascript
const options = {
   mode: 'payment',
   amount: 1099,
   currency: 'usd',
   payment_method_configuration: ''{{PAYMENT_METHOD_CONFIGURATION_ID}}''
}
```

## カードタイプの決済手段への対応

Apple Pay、Google Pay、Link などの一部の決済手段は、`PaymentIntent` に個別の決済手段タイプとして含まれていません。これらは、タイプとして `card` を指定した場合に利用できます。Payment Method Configurations API を使用して、連結アカウント所有者がこれらの特定の決済手段をオプトインまたはオプトアウトできるように設定できます。これらを有効にするには、カード決済が有効になっている必要があります。

## 連結アカウント所有者への決済手段の案内

ターゲットを絞ったマーケティングメッセージを使用して、連結アカウント所有者に、利用可能な特定の決済手段にオプトインするよう促します。

決済手段設定の表示設定を確認して、決済手段を案内するタイミングを決定します。`display_preference.preference` の値を読み取ることで、連結アカウント所有者が設定内の決済手段を操作したかどうかを判断できます。値が `none` の場合、連結アカウント所有者はデフォルト設定を変更していないため、その決済手段の案内を検討できます。値が `on` または `off` の場合、連結アカウント所有者はその決済手段の使用に関する設定をすでに指定しています。
