SetupIntents の仕組み
決済フローで SetupIntents がどのように機能するかをご紹介します。
非同期の決済フローは、アプリケーションの外部で発生する顧客とのやり取りによって変わるため、管理が複雑になることがあります。PaymentIntent (支払いインテント) および SetupIntent (支払い方法設定インテント) は、フローのステータスを追跡することで、管理をシンプルにします。
SetupIntent が作成されると、支払い方法が関連付けられるまで、ステータスは requires_
1 になります。
顧客が支払い方法の情報を入力したら、SetupIntent を確定できます。
通常、組み込みでは支払い方法の情報が SetupIntent の確定と同時に送信されるため、この状態はスキップされます。
3D セキュアでの認証など、設定に追加アクションが必要な場合、SetupIntent のステータスは requires_
1 になります。
必要なアクションが処理されると、SetupIntent のステータスが processing
に移行します。すぐに処理が行われる支払い方法 (カードなど) もありますが、処理に数日かかる支払い方法もあります。
SetupIntent のステータスが succeeded
の場合は、無事に設定されていることを意味します。
この支払い方法を Customer オブジェクトに関連付けて、将来の支払いに使用できます。
設定に失敗した場合、SetupIntent のステータスは requires_
に戻ります。
SetupIntent は、processing
または succeeded
より前の任意の時点でキャンセルできます。
1 2019-02-11 以前の API のバージョンでは、requires_
の代わりに requires_
、requires_
の代わりに requires_
が表示されます。