AssurePay IconAPAssurePay

PaymentIntent を利用した課金への対応について

AssurePay では、PaymentIntent を利用した課金の失敗を検知して、自動的に未払い回収のメールを送信することができます。
このとき、請求ごとに一意な ID を AssurePay 側で追跡できるようにする必要があります。


なぜ追加実装が必要か?

PaymentIntent は「支払いの試行」を表すオブジェクトであり、
1回の請求 (Order) に対して複数の PaymentIntent が発行される可能性があります。

例:

  • 同じ請求に対して顧客が複数回カード番号を入力し直す
  • 支払いが失敗し、Stripe が自動再試行する

そのため、PaymentIntent の ID だけでは「どの請求に対応する支払いか」が特定できません。


必要な実装

PaymentIntent の作成時に、請求ごとに一意な IDmetadata に付与してください。
この ID を assurePayOrderId というキーで設定します。

実装例 (Node.js)

const paymentIntent = await stripe.paymentIntents.create({
  amount: 5000, // 請求金額 (例: ¥5000)
  currency: "jpy",
  metadata: {
    assurePayOrderId: "order_12345", // 請求ごとに一意な ID
  },
});
PaymentIntent を利用した課金への対応について | AssurePay