PayTo 支払い招待のみ
PayTo による支払い方法を受け付ける方法をご紹介します。
PayTo は、オーストラリアで使われているリアルタイムの支払い方法です。1 回限りの支払いと継続支払いを受け付けることができます。 PayTo で支払う場合、顧客はモバイルバンキングアプリを使用して認証および承認します。
支払いが成功したか失敗したかに関する遅延通知を受け取ります。通常、支払いの最終ステータスの通知は、契約の承認から 30 秒以内に送信されます。
PaymentIntent を作成するサーバー側
PaymentIntent は、顧客から支払いを回収する意図を表すオブジェクトであり、支払いプロセスを追跡します。PayTo による決済手段を受け付ける PaymentIntent
を作成するには、回収する金額、通貨として aud
、payment_method_types リストで payto
を指定します。PaymentIntent
の作成時に渡す決済手段リストを保持している場合は、それに payto
を追加します。
client secret を取得する
PaymentIntent には、client secret が含まれています。これは、支払いプロセスを安全に完了するためにクライアント側で使用されます。client secret をクライアント側に渡す際は、いくつかの方法を使用できます。
支払い方法の詳細を収集して支払いを送信するクライアント側
支払いを確定するときに、client secret を渡します。
注意
client secret は PaymentIntent へのアクセスを許可するため、慎重に取り扱う必要があります。記録したり、URL に埋め込んだり、当該の顧客以外に公開されることがないようにしてください。
stripe.
を使用して、顧客の支払いの承認を開始します。
顧客は支払いリクエストに関する通知を受け取り、バンキングアプリでリクエストを承認または拒否します。
// Inititates the payment request notification to the customer stripe.confirmPayToPayment( '{{PAYMENT_INTENT_CLIENT_SECRET}}', { payment_method: { billing_details: { // Name is required for all PayTo payments name: 'Jenny Rosen', // Email is required only for PayID payments, for refund processing email: 'jenny@example.com' }, payto: { // Either provide a PayID (typically an email or phone number) pay_id: 'jenny@example.com' // ...or provide bank account details account_number: '000123456', bsb_number: '000000' } } } ).then(function(result) { if (result.error) { // Inform the customer that there was an error. console.log(result.error.message); } });
デフォルトでは、Stripe.js によって PaymentIntent への更新がポーリングされます。confirmPayToPayment
によって返されるプロミスは、PaymentIntent が succeeded
ステータスになるか、支払いが失敗して PaymentIntent が requires_
ステータスを返した場合に解決します。PaymentIntent のライフサイクルで、このような移行がどのように発生するかについての詳細をご覧ください。
自身でポーリングするには、handleActions: false
を設定して自動ポーリングを無効にします。
stripe.confirmPayToPayment( '{{PAYMENT_INTENT_CLIENT_SECRET}}', { payment_method: { payto: { account_number: '000123456', bsb_number: '000000' } } } { handleActions: false } // <---- Like this )
この例では、お客様自ら PaymentIntents API を呼び出して、PaymentIntent のステータスを取得します。
実装内容をテストする
以下のさまざまなテスト用 PayID と銀行口座情報を使用して、テスト API キーで PayTo の実装内容をテストします。各セットによって、本番環境でシステムが直面する各種シナリオが再現されています。