# 動的な支払い方法

支払い方法を動的に並べ替えて表示することで、支払い方法のコードを簡素化します。

動的な決済手段は [Stripe のデフォルト実装](https://stripe.com/blog/dynamic-payment-methods)の一部であり、[ダッシュボード](https://dashboard.stripe.com/settings/payment_methods)から決済手段を設定でき、コーディングは不要です。[Element](https://docs.stripe.com/payments/payment-element.md)、[Checkout](https://docs.stripe.com/payments/checkout.md)、Payment Links、またはオンライン請求書ページの実装で動的な決済手段を使用すると、Stripe では、コンバージョンを最大化するため、各顧客に対して、対象となる決済手段のうち最も関連性の高いものを動的に表示する処理が行われます。また、動的な決済手段を使用すると[カスタマイズ機能](https://docs.stripe.com/payments/payment-methods/dynamic-payment-methods.md#customization-features)も利用でき、決済手段をカスタマイズしたり、さまざまな設定を試したりできます。

動的な支払い方法を使用して以下を行います。

- ダッシュボードでほとんどの支払い方法を有効にして管理する
- 個々の支払い方法の対象要件を指定する必要をなくす
- 100 種類以上のシグナルに基づく Stripe の [AI モデル](https://docs.stripe.com/payments/payment-methods/dynamic-payment-methods.md#ai-models)を適用し、Checkout セッションごとにどの決済手段が適格であるか、また、どのように表示するかを動的に決定します
- 決済手段が顧客に表示される際のルールを設定する
- 特定の取引の決済手段の除外
- 新しい決済手段を顧客に展開する前に A / B テストを実行する

## 導入オプション

取引ごとに対象となる決済手段をフロントエンドに表示するロジックを Stripe に処理させるには、動的な決済手段で [Checkout](https://docs.stripe.com/payments/accept-a-payment.md?payment-ui=checkout&ui=stripe-hosted) または [Payment Element](https://docs.stripe.com/payments/accept-a-payment.md?payment-ui=elements&api-integration=checkout) を使用します。プラットフォームアカウントをお持ちの場合は、[Connect の実装](https://docs.stripe.com/connect/manage-payment-methods.md)手順に従ってください。

### 動的な支払い方法に移行する

既存のシステムで支払い方法を手動で一覧表示し、[ダッシュボード](https://dashboard.stripe.com/settings/payment_methods)で支払い方法を管理する場合は、導入コードから [payment_method_types](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-payment_method_types) を削除します。

#### Checkout

Checkout の導入で [payment_method_types](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-payment_method_types) を削除します。

```bash
curl https://api.stripe.com/v1/checkout/sessions \
  -u sk_test_4eC39HqLyjWDarjtT1zdp7dc: \
  -d success_url="https://example.com/success" \
  -d "line_items[0][price]"=price_H5ggYwtDq4fbrJ \
  -d "line_items[0][quantity]"=2 \
  -d mode=payment
```

#### 高度な連携機能

Payment Element の導入で、[payment_method_types](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-payment_method_types) を削除します。

```bash
curl https://api.stripe.com/v1/payment_intents \
  -u sk_test_4eC39HqLyjWDarjtT1zdp7dc: \
  -d amount=1099 \
  -d currency=eur \
```

[2023-08-16](https://docs.stripe.com/upgrades.md#2023-08-16) 以前の API バージョンを使用している場合、[payment_method_types](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-payment_method_types) を [automatic_payment_methods](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-automatic_payment_methods) に置き換える必要があります。[使用しているAPI バージョンと最新のアップグレードは、ダッシュボードで確認](https://docs.stripe.com/upgrades.md#view-your-api-version-and-the-latest-upgrade-in-the-dashboard)できます。

```bash
curl https://api.stripe.com/v1/payment_intents \
  -u sk_test_4eC39HqLyjWDarjtT1zdp7dc: \
  -d amount=1099 \
  -d currency=eur \
  -d "automatic_payment_methods[enabled]"=true
```

## ダッシュボードベースのカスタマイズ機能

動的な支払い方法で次の機能にアクセスし、支払い方法の表示方法と表示タイミングを制御します。

| 機能 | 説明 |
| --- | --- |
| [支払い方法のルール](https://docs.stripe.com/payments/payment-method-rules.md) | 金額や顧客の所在地に基づいてターゲット設定のパラメーターを指定し、決済手段の表示方法をカスタマイズします。 |
| [A/B テストの支払い方法](https://docs.stripe.com/payments/a-b-testing.md) | 支払い方法をトラフィックの割合に応じて有効にして、実験を行い、それが購入完了率、平均注文額、他の支払い方法から転換した金額の変化に与える影響を確認します。 |
| [支払い方法の設定](https://docs.stripe.com/payments/payment-method-configurations.md) | 1 回限りの購入には特定の支払い方法のみを表示し、継続的な購入には別の支払い方法のみを表示するなど、複雑なロジックを使用して、決済シナリオごとに異なる支払い方法のセットを作成します。 |
| [支払い方法の設定コンポーネントを埋め込む](https://docs.stripe.com/connect/embed-payment-method-settings.md) | 支払い方法の設定ページをウェブサイトに直接埋め込み、ユーザーが支払い方法を管理できるようにします。 |

## 動的な決済手段の仕組み

Apple Pay と Google Pay は用いている[基準が異なる](https://docs.stripe.com/testing/wallets.md)ため、このセクションでは扱いません。

このセクションを確認して、Stripe がどのような基準で決済手段を採用し、表示・非表示を決定しているか、あるいは表示の順番を決めているかを理解しましょう。特定の決済手段が決済フローに表示されない場合は、これらの基準のうち 1 つ以上が満たされていない可能性があります。

### ダッシュボードの設定

利用可能な決済手段は [Stripe ダッシュボード](https://dashboard.stripe.com/test/settings/payment_methods)で確認できます。顧客に表示できるのは、有効にした決済手段のみです。

ダッシュボードの設定に決済手段が表示されない場合は、Stripe が対応していないか、またはアカウントが登録されている国では対応していません。たとえば、PayNow はシンガポールの Stripe アカウントのみ利用できます。

詳細は[国のサポート](https://docs.stripe.com/payments/payment-methods/payment-method-support.md#country-currency-support)をご覧ください。

> ダイレクト支払いまたは `on_behalf_of` を使用した Stripe Connect を利用する場合、利用可能な決済手段は連結アカウントの設定によって決まります。これらは [Connect の設定](https://dashboard.stripe.com/test/settings/payment_methods/connected_accounts)で設定できます。

### 決済手段の除外

動的決済手段によりダッシュボードを通じて決済手段を管理できますが、PaymentIntent を作成する際に `excluded_payment_method_types` パラメーターを使用して取引ごとに特定の決済手段を除外することもできます。これにより、ダッシュボード設定で有効になっていても、各取引で利用可能な決済手段を制御できます。

現在、`excluded_payment_method_types` は PaymentIntents、[SetupIntents](https://docs.stripe.com/payments/setup-intents.md)、[Checkout](https://docs.stripe.com/payments/checkout.md)、[Payment Element](https://docs.stripe.com/payments/payment-element.md) を使用する場合にのみ利用可能です。特定の PaymentIntent の決済手段を除外するには以下のようにします。

```curl
curl https://api.stripe.com/v1/payment_intents \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d amount=1000 \
  -d currency=usd \
  -d "automatic_payment_methods[enabled]=true" \
  -d "excluded_payment_method_types[]=affirm" \
  -d "excluded_payment_method_types[]=acss_debit"
```

> 特定の PaymentIntent で Apple Pay、Google Pay、または Link の決済手段の使用を禁止するには、導入タイプごとに指定されたウォレットハッシュパラメーターを使用してください。たとえば、[PaymentElements wallets parameter](https://docs.stripe.com/js/elements_object/create_payment_element#payment_element_create-options-wallets) を参照してください。ウォレットハッシュではなく `apple_pay`、`google_pay`、または `link` を `excluded_payment_method_types` で除外すると、エラーが発生します。

### 製品サポート

Checkout セッションや Payment Element など、一部の Stripe プロダクトでは貴社から顧客に請求できます。すべてのプロダクトですべての決済手段を利用できるわけではありません。たとえば、Bacs ダイレクトデビットは Mobile Payment Element では利用できません。Swish など一部の決済手段は、継続支払いに対応していません。

詳細は[製品サポート](https://docs.stripe.com/payments/payment-methods/payment-method-support.md#product-support)をご覧ください。

### 取引通貨

Stripe は [135 種類以上の取引通貨](https://docs.stripe.com/currencies.md#presentment-currencies)に対応していますが、ほとんどの決済手段はこれらの一部のみをサポートしています。たとえば、ACH Direct Debit は米ドル建ての支払いにのみ利用できます。

詳細は、[通貨のサポート](https://docs.stripe.com/payments/payment-methods/payment-method-support.md#country-currency-support)をご覧ください。

### 支払い金額

Stripe が対応している一般的な[最低金額と最高金額](https://docs.stripe.com/currencies.md#minimum-and-maximum-charge-amounts)に加えて、一部の決済手段では最低金額と最高金額が個別に設けられています。たとえば、SEPA ダイレクトデビットは 10,000 EUR 未満の支払いにのみ利用できます。

> 利用可能な決済手段を判断する際に用いられる金額は、税金と割引を含む最終的な金額です。

詳しくは、その決済手段の概要ページをご覧ください。

### API のサポート

TWINT など一部の決済手段は、将来使用するように設定することはできません。`setup_future_usage` を設定すると、一部の決済手段が自動的に除外されます。

同様に、iDEAL など一部の決済手段は[手動キャプチャー](https://docs.stripe.com/payments/place-a-hold-on-a-payment-method.md)に対応していません。`capture_method: manual` を設定すると、一部の決済手段が自動的に除外されます。

詳細は[API のサポート](https://docs.stripe.com/payments/payment-methods/payment-method-support.md#additional-api-supportability)をご覧ください。

### 顧客の国

ほとんどの決済手段では利用可能な国の数が事前に定義されているため、顧客の国によって決済ページで利用できる決済手段に影響が及びます。たとえば、BLIK はポーランドの顧客のみ利用できます。

詳細は[国のサポート](https://docs.stripe.com/payments/payment-methods/payment-method-support.md#country-currency-support)をご覧ください。

### その他の考慮事項

次の機能も、一部の決済手段の利用可否に影響を与える可能性があります。

- [決済手段の設定](https://docs.stripe.com/payments/payment-method-configurations.md): 表示する決済手段をカスタマイズします。
- [決済手段のルール](https://docs.stripe.com/payments/payment-method-rules.md): 金額や通貨などの条件に基づいて決済手段を表示または非表示にします。
- [A/Bテスト](https://docs.stripe.com/payments/a-b-testing.md): 決済手段を一時的に表示または非表示にして、購入完了率への影響を確認します。

### AI モデル

決済セッションごとに、最適化された決済プロダクトの AI モデルが決済手段の表示方法 (その順序を含む) を動的に決定します。このモデルには、リアルタイムでの決済手段の利用率や類似顧客間での人気度など、100 種類以上のオンセッションシグナルとともに、類似企業でよく受け付けられている決済手段などの広範なネットワークシグナルが組み込まれています。AI モデルは、コードで追加した決済手段のロジックや、ダッシュボードで設定したルールと連携できます。

Stripe の AI モデルは探索と活用フレームワークを採用しており、実証済みの戦略を展開しながら、新しいアプローチを継続的にテストしています。このため、決済手段の優先度は顧客の期待に素早く適応し、時間の経過とともに体系的に改善されます。
