Charges API からの移行
Payment Intents API にアップグレードします。
以前に Bank Accounts API を使用して Stripe で顧客の決済詳細を収集している場合、保存されている BankAccount
を引き続き PaymentMethod として使用できます。以下の要件を満たした後、顧客の BankAccount (銀行口座) を Payment Intents API で使用できます。
- 顧客の銀行口座の確認が完了している。
- その銀行口座の有効な同意書が存在している。
Bank Accounts API との互換性
銀行口座を使用して PaymentIntent を作成する
すでに確認されて Customer に関連付けられている Bank Account (銀行口座) は、PaymentMethod
オブジェクトを受け付けるすべての API で使用できます。たとえば、PaymentIntent を作成するときに、保存した BankAccount
を PaymentMethod として使用できます。これにより、決済詳細を再収集する必要がなくなります。ただし、代わりに PaymentMethods の作成を開始するには、必ず構築済みのシステムの更新も行ってください。
同様に、SetupIntent を作成するときに、保存した BankAccount を PaymentMethod として使用できます。
同意書承認を収集する
PaymentIntent または SetupIntent を確定するには、顧客に口座から引き落とすための同意書を承認してもらう必要があります。自社のビジネスに適した承認の種類については、SEC コードをご覧ください。
一部のケースでは、顧客の以前の購入での事前オーソリ、または SetupIntent が存在する可能性があり、これを使用してオフセッションの決済を作成できます。以下に例を挙げます。
- 顧客からオンラインの同意書を収集済みの場合、IP アドレスとユーザーエージェント情報の両方を使用して、Mandate オブジェクトを作成できます。
- 支払いおよび同意書情報をすでにオフライン (書面) で収集している場合、PPD 同意書を作成できます。
オフセッションの支払いを作成するには、オフラインの同意書承認を使用して、顧客の元の承認に関する記録を提供することができます。
承認が必要なのは、PaymentIntents API で初回に BankAccount
オブジェクトを使用するときのみです。以降は、PaymentMethod で将来の決済を受け付けるときにその BankAccount
オブジェクトを使用できます。
PaymentMethod として BankAccount を取得する
Payment Methods API を使用して、保存されている BankAccount を取得できます。
BankAccount を PaymentMethod として使用する場合、新しいオブジェクトは作成されません。Payment Methods API は、基となる同じオブジェクトの異なるビューを提供するだけです。