決済ワークフロー & ステータス
は、支払いに関する真実の情報です。支払いステータスが注文応答またはWebhookにラップされている場合、
使用する payment.data.status 支払いの信頼できる情報源として。支払いが注文応答に包まれた場合、参照してください。 order.payment.data.status応答は、非同期操作が開始されたことを意味します。必ずしもお金が移動したことを意味するわけではありません。
常に、承認された金額と取引履歴と合わせてステータスを確認してください。 承認されたAPIリクエストまたはHTTP 2xx 不正検出に関する情報は、
を参照してください。 不正検出ワークフローとステータス非同期プロバイダー更新については、こちらを参照してください。 DEUNA Webhooks.
ステータスグループ#
以下のラベルは、商社がこれらの値をどのように処理すべきかを説明しています。これらはAPIの追加フィールドではありません。
| グループ | ステータス | 商人の取り扱い |
|---|---|---|
| 処理または承認を待機中 | pending, pending_3ds, processing, authorizing, capturing, partial_capturing, voiding, refunding, partial_refunding, manual_review | 支払いを未完了のままにする。必要な顧客の操作を完了し、または、承認された結果を待つか取得する。 |
| 確認済みで、正常に動作中 | processed, authorized, captured, partial_captured, partial_refunded | 確認された財務上の結果を記録する。後で、適切な回収、払い戻し、またはキャンセルを行うことで、ステータスが変更される可能性がある。 |
| 失敗したが、回復可能 | denied | この試行での処理は行わないでください。再試行またはルーティングの決定により、同じ決済がアクティブな状態に戻る可能性があるため、これをターミナルとしてモデル化しないでください。 denied (決済処理のステータスとして) |
| 決済のキャンセル待ち(金融処理の完了を待っている状態) | cancelled | 過去の財務活動を検査します。払い戻しまたはVoidも可能です。 |
| ターミナル | voided, refunded, expired | コアの決済状態マシンには、これらの値からの出力遷移は存在しません。 |
partial_captured および partial_refunded これは、商社のビジネスプロセスで必要となる最後の状態である場合でも、ターミナルAPIの状態としては存在しません。実際のステータスと累積額を維持し、部分的なステータスをローカルで置き換えないでください。 captured または refunded.
決済ワークフローを選択する#
カード決済と代替決済方法は、異なる顧客アクションや処理状態を経ません。まず、対応する決済方法に合わせたワークフローを開始し、その後、標準的なステータスとトランジションを参照するためにこちらに戻る。
これらのページに示されている図は、通常の商社向けパスを示しています。直接的なトランジション、リトライ、調整パス、およびプロバイダ固有の分岐は、 検証済みのトランザクション参照.
決済ステータスの参照#
値は、大文字・小文字を区別する小文字の文字列です。
| ステータス | 意味 | 商社が取るべき対応 |
|---|---|---|
pending | 決済が作成されました。顧客の操作、ルーティング、またはプロバイダによる確認が必要な場合があります。 | 参照 next_action または、指示に従い、処理を保留します。 |
pending_3ds | 3DS認証が完了していません。 | チャレンジを完了し、その結果の決済ステータスを評価してください。 |
processing | 購入またはAPM決済が進行中です。 | DEUNAによるプロバイダーの更新処理後に、信頼できる結果を取得します。過剰な再試行は避けてください。 |
processed | ワンステップでの購入が完了しました。 | 成功を記録し、履行ポリシーを適用します。払い戻しが必要な場合があります。 |
authorizing | 承認リクエストが進行中です。 | 現時点では、資金が確保または予約されているとは見なさないでください。 |
authorized | 資金が正常に予約されました。 | 適切な場合に、キャプチャまたは無効化してください。 |
capturing | 完全なキャプチャが進行中です。 | 操作を追跡し、確認を待ちます。 |
partial_capturing | 部分的なキャプチャが進行中です。 | 保留中の金額と、確認済みのキャプチャ/払い戻しの可能性を区別してください。 |
partial_captured | 一部の金額がキャプチャされました。 | 確認済みの金額と、残りのキャプチャ/払い戻しの可能性を記録してください。 |
captured | キャプチャが完了しました。 | 収集された金額を記録します。払い戻しが必要な場合があります。 |
voiding | 承認の解放が進行中です。 | 待機する voided または、復元または失敗した結果。 |
voided | 認証が発行されました。 | 端末での取引完了を記録する。 |
refunding | 完全または残高払い戻し処理中です。 | 返金処理の完了を待つ。返金処理の承認は、実際に返金が完了したことを証明するものではない。 |
partial_refunding | 一部返金処理が進行中。 | 未処理および完了した返金金額を個別に追跡する。 |
partial_refunded | 部分払い戻しが完了しました。 | 払い戻し可能な金額と残高を記録します。 |
refunded | ライフサイクルに基づいて設定された払い戻し金額が返却されました。 | 端末での取引完了を記録する。 |
manual_review | 支払いがリスク評価のために保留されています。 | 支払いが新しいステータスを受信するまで、履行をブロックします。 |
denied | 現在の試行が拒否されました。 | 実行しないでください。理由を保持し、設定された再試行により、アクティブなフローに再入力できます。 |
cancelled | 決済方法または商人が決済をキャンセルしました。 | 返金またはキャンセルが完了する必要があるかどうかを確認します。 |
expired | 承認された完了時間が、決済処理の完了前に終了しました。 | 端末での完了を記録し、顧客が再度試行した場合、新しい決済を作成します。 |
not_authorized および failed これらの値は、プロセッサまたはオペレーションレベルのアダプターで使用されますが、コアの標準的な値ではありません。 payment.data.status トランジショングラフには、プロバイダとオペレーションの状態、キャプチャ/返金オペレーションの状態、およびローカルタイムアウトマーカーを決済の状態フィールドにマージしないでください。
検証済みのトランジション参照#
以下のトランジションは、Paymentsのコア状態マシンと一致します。同じ状態の繰り返しは、明示的に許可されている場合を除き、省略されます。リストされたトランジションは、すべてのプロセッサまたは決済方法が対応するオペレーションをサポートすることを保証するものではありません。
| 現在の状態 | 許可される次の状態 |
|---|---|
pending | pending, pending_3ds, authorizing, authorized, processing, processed, cancelled, voided, denied, manual_review, expired |
pending_3ds | pending_3ds, authorizing, authorized, processing, processed, cancelled, denied, manual_review, expired |
processing | processed, cancelled, denied, manual_review, partial_refunding, refunding, partial_refunded, refunded |
processed | refunding, refunded, partial_refunding, partial_refunded, voided |
authorizing | authorized, captured, voiding, cancelled, denied, manual_review |
authorized | capturing, captured, partial_capturing, partial_captured, voiding, voided, cancelled |
capturing | captured, denied; для поддерживаемых потоков восстановления захвата: authorized, partial_capturing, partial_refunding, partial_refunded, refunding, refunded |
partial_capturing | capturing, partial_captured, captured, denied |
partial_captured | captured, partial_refunding, partial_refunded, refunding, refunded |
captured | partial_refunding, partial_refunded, refunding, refunded |
voiding | voided, denied, authorized |
refunding | refunded, partial_refunded, voided, processed, captured |
partial_refunding | partial_refunded, refunding, refunded, denied, processed, captured, partial_captured |
partial_refunded | partial_refunding, refunding, refunded |
manual_review | processed, captured, denied |
denied | pending, pending_3ds, processing, processed, authorizing, authorized, manual_review, denied |
cancelled | refunded, voided |
voided | なし(端末) |
refunded | なし(端末) |
expired | なし(端末) |
決済ファイルの一元化は、DEUNAが外部プロセッサの結果を再調合する際に、追加の復元トランジションを可能にします。これらのトランジションは、状態の意味を変更しません。
Некоторые профили процессоров могут принимать возврат, пока асинхронный захват все еще находится в процессе. В этом случае DEUNA может отменить или обратить захват и вернуть первоначальную авторизацию, что позволяет дополнительным транзициям, перечисленным для capturing. Не инициируйте этот поток, если DEUNA не подтвердила поддержку подключения к процессору.
安全にアップデートを処理してください。#
- ローカル状態を変更する前に、信頼できる支払いを取得します。
- 更新を適用する前に、支払いを特定し、関連する操作を識別します。
- 報告されたステータス、確認された金額、通貨、オペレーション識別子、およびプロバイダの参照情報を保存します。
- 繰り返し取得とクライアントによる再試行を、一貫性を持って処理します。ステータスのみに基づいて重複を削除しないでください。
- 一時的な、レビュー、または不明な状態の場合、支払いを保留します。
- サポートされている決済取得フローを通じて、欠落または競合する結果を調整してください。
HTTPタイムアウト、応答の喪失、または遅延したプロバイダーの更新は、PIXのステータス更新を証明しません。 denied または expired. 以下のガイドラインに従ってください。 冪等なリクエストに関するガイダンスを行い、支払いの取得、および同じリクエストの再試行と新しい支払い試行を区別します。