Stripe Payment Element
安全で埋め込み可能な UI コンポーネントで、世界中の支払い方法を受け付けます。
Payment Element は、40 以上の決済手段を受け付け、入力内容を検証し、エラーに対処する、ウェブのための UI コンポーネントです。単独で使用するか、ウェブアプリのフロントエンドの他の Element とともに使用します。
互換性のある API
Stripe は Elements と互換性のある 2 つの主要な決済 API を提供しており、顧客からさまざまなタイプの決済を柔軟に受け付けることができます。これらの API を、Stripe の構築済みの決済インターフェイスに実装できます。ほとんどのユーザーに Checkout Session (セッション) の使用をお勧めしていますが、API は決済フローの構築方法の選択と必要な制御の程度に応じて、わずかに異なるユースケースに対応します。Checkout Session API を使用して決済ページを構築するか、Payment Intents API を使用して高度なシステムを構築できます。
- Checkout Sessions API では、顧客の決済フローをモデル化できます。これには、購入に含まれる項目、請求先住所と配送先住所、適用される税率、クーポンや割引が含まれます。Checkout セッションでは、サブスクリプションを作成して、Stripe Tax で税率を計算し、支払いを開始できます。
- Payment Intents API では、支払いステップをモデル化できます。項目の詳細が必要な Checkout Sessions API とは異なり、請求する最終金額のみを渡します。これは、オフセッションの支払いなどの決済フローに適しています。Stripe を使用して、該当する税金の計算やサブスクリプションの作成を行う場合は、Stripe Tax API または Subscriptions API をそれぞれ実装する必要があります。

Elements を組み合わせる
Payment Element はその他の Element と連携します。たとえば、このフォームは支払い情報の自動入力に 1 つの追加エレメント、配送先住所の収集にもう 1 つの追加エレメントを使用しています。
注
Link の法的合意書は、利用規約やプライバシーポリシーに対する適切なユーザー意識の遵守を保証するために必要なものであるため、削除することはできません。terms オブジェクトは、Link の法的合意書には適用されません。

この例の全体のコードについては、Elementsの組み込みに Link を追加する をご覧ください。
Payment Element を Express Checkout Element と組み合わせることもできます。この場合、Apple Pay や Google Pay などのウォレットの支払い方法は、重複を避けるために Express Checkout Element でのみ表示されます。
決済手段
Stripe は、特定の支払い方法をデフォルトで有効にします。また、通知後に追加の支払い方法を有効にする場合があります。ダッシュボードを使用すると、いつでも支払い方法を有効または無効にできます。Payment Elemen では、動的な支払い方法を使用して以下を行うことができます。
- ダッシュボードを使用してノーコードで支払い方法を管理する
- 所在地、通貨、取引金額などの要素に基づいて、最も関連性の高い支払いオプションを動的に表示する
たとえば、ドイツの顧客が EUR で支払う場合、EUR を受け付ける有効なすべての支払い方法が、ドイツで広く普及しているものから順に表示されます。

顧客への関連性の高い順に支払い方法を表示する
サポートしないカードブランドをフィルタリングするなど、決済手段の表示方法をさらにカスタマイズしたい場合は、決済手段のカスタマイズをご覧ください。Stripe 外で連携した決済手段を追加する場合、カスタムの決済手段を使用できます。
貴社で構築済みの Stripe システムで支払い方法を手動で一覧表示する必要がある場合は、支払い方法を手動でリストアップするをご覧ください。
レイアウト
決済フローに合わせて Payment Element のレイアウトをカスタマイズできます。以下の画像は、同じ Payment Element を異なるレイアウト設定を使用して描写した場合を示しています。

さまざまなレイアウトの Payment Element。
デザイン
Appearance API を使用して、すべての Elements のスタイルを管理します。テーマを選択するか、特定の詳細を更新します。

たとえば、「flat」のテーマを選択して、主要なテキストの色を上書きします。
const stripe = Stripe(
); const appearance = { theme: 'flat', variables: { colorPrimaryText: '#262626' } };'pk_test_TYooMQauvdEDq54NiTphI7jx'
テーマと変数の一覧については、Appearance API のドキュメントをご覧ください。
オプション
Stripe Elements はこれより多くのオプションをサポートします。たとえば、business オプションを使用して、ビジネス名を表示します。
const stripe = Stripe(
); const appearance = { /* appearance */}; const options = { business: { name: "RocketRides" } };'pk_test_TYooMQauvdEDq54NiTphI7jx'
Payment Element は以下のオプションをサポートします。詳細については、各オプションのリファレンス項目をご覧ください。
layout | Payment Element のレイアウト。 |
defaultValues | Payment Element に表示する顧客の初期情報。 |
business | Payment Element に表示するビジネスに関する情報。 |
paymentMethodOrder | 支払い方法が表示される順序。 |
fields | 特定のフィールドを表示するかどうか。 |
readOnly | 支払いの詳細を変更できるかどうか。 |
terms | 同意書や法的な契約書を Payment Element に表示するかどうか。デフォルトの動作では、必要な場合にのみ表示します。 |
wallets | Apple Pay や Google Pay のようなウォレットを表示するかどうか。デフォルトでは、可能な場合には表示します。 |
エラー
Payment Element は、次のエラーコードについて、クライアント確認中にローカライズされた顧客向けのエラーメッセージを自動的に表示します。
generic_
decline insufficient_
funds incorrect_
zip incorrect_
cvc invalid_
cvc invalid_
expiry_ month invalid_
expiry_ year expired_
card fraudulent
lost_
card stolen_
card card_
velocity_ exceeded