支払い方法のためにドメインを登録する
支払い方法 (Link、Apple Pay、Google Pay など) を Elements または Checkout の埋め込み可能な決済フォームで使用するには、ドメインを登録して確認します。
実装で Elements または Checkout のオンライン決済フォームを使用している場合、特定の決済手段では、決済手段を表示するウェブドメインをそれぞれ登録する必要があります。これには、最上位のドメインとサブドメインの登録が含まれます。たとえば、yourdomain.com というドメインと、shop.yourdomain.com、www.yourdomain.com のようなサブドメインを使用する場合の登録方法を、このガイドで説明します。
ドメインを登録すると、そのドメインは、今後有効にする可能性のある他の支払い方法で使用できるようになります。
以下の支払い方法では登録が必要です。
- Google Pay
- Link
- PayPal
- Amazon Pay
- Apple Pay (追加の確認のステップが必要です)
Apple Pay と加盟店の検証
Apple Pay のドキュメントでは、「加盟店の検証」プロセスについて説明されていますが、これは Stripe がバックグラウンドで処理しているため、Apple Merchant ID や CSR を作成する必要はありません。代わりに、このガイドの次のステップを実行してください。
テスト
テスト用にもドメインを登録する必要があります。ローカルでテストする場合、ngrok などのツールを使用して HTTPS ドメインを取得できます。テスト環境でも本番環境でも登録でき、本番環境ではドメインは自動的にテスト環境にも登録されます。本番移行する前に、必ず本番環境にドメインを登録してください。
ドメインを登録する
ドメインを登録するには、以下を実行します。
登録する必要があるすべてのドメインについて繰り返します。
iframe を使用する
- iframe を使用する場合は、そのオリジンがトップレベルのオリジンと一致している必要があります (Safari 17 以降を使用する場合を除く)。プロトコル、ホスト (フルドメイン名)、ポート (指定されている場合) が 2 つのページで同一である場合、そのオリジンは同一です。
- Safari 17 以降でクロスオリジンの iframe を使用する場合は、
allow=“payment”
属性を指定する必要があります。Apple Pay を有効にするには、iframe が読み込むソースドメインも登録する必要があります。
Apple Pay でのドメインの所有権を確認する
登録中、Stripe は自動的に Apple Pay に登録されたドメインの所有権を確認しようとします。ドメインが確認されなかった場合、ご自身でドメインを登録し、以下の手順に沿って Apple Pay に登録されたドメインを確認します。
- ドメインアソシエーションファイルをダウンロードします。
- それを自社サイトの
/.
でホストします。たとえば、well-known/apple-developer-merchantid-domain-association https://yourdomain.
を登録する場合、com https://yourdomain.
でこのファイルを入手できるようにします。com/. well-known/apple-developer-merchantid-domain-association
Stripe は、Webhook IP のいずれかから発生したリクエストを使用して、最初のドメインの検証を実行します。
ドメインを管理する
PaymentMethodDomain API を使用すると、以下を実行できます。
- ドメインを取得します。
- すべてのドメインのリストを表示します。
- ドメインを有効または無効にします。ドメインが無効になると、そのドメインの Elements や Checkout の埋め込み可能な決済フォームに支払い方法は表示されなくなります。
次のサンプルは、ドメインを無効にする方法を示しています。
Connect の使用時にドメインを登録する
上記の支払い方法が Elements または Checkout の埋め込み可能な決済フォームに表示されるすべてのドメインを、Connect プラットフォームに登録する必要があります。支払いが実行中のドメインは、その支払いを実行しているユーザー用に登録する必要があります。
プラットフォームでダイレクト支払いを作成する場合、リクエストの認証にはプラットフォームのシークレットキーを使用し、Stripe-Account ヘッダーには連結アカウントの Stripe ID を設定します。
プラットフォームでデスティネーション支払いまたは支払いと送金別方式を作成する場合は、リクエストの認証にプラットフォームのシークレットキーを使用し、Stripe-Account ヘッダーを省略します。
連結アカウントに対する API コールの実行の詳細をご確認ください。