Fraud Workflow and Statuses
Understand DEUNA fraud-process, provider-analysis, and risk-decision fields without confusing them with payment outcomes.
On this page
Fraud decisions and payment outcomes are independent. An accepted fraud decision does not prove that a payment was authorized, captured, or settled; a rejected fraud decision does not prove that previously reserved or collected funds were reversed.
Read every value from its actual field:
| Field | Purpose | Public values |
|---|---|---|
fraud.status | Overall fraud-process state. In an order-wrapped payload: order.fraud.status. | pending, in_review, accepted, rejected |
fraud.analysis.status | Status reported for the selected provider analysis. | automatic_decision, manual_review, pending_analysis, denied, accepted |
fraud.analysis.fraud_decision | Normalized risk decision used by policy and routing. | high_risk, medium_risk, low_risk, pending_risk, manual_review, manual_denied, manual_approved |
payment.data.status | Financial payment lifecycle. | See Payment workflow and statuses. |
Do not combine these fields into one enum, even when two fields contain similar words.
Overall fraud process#
This diagram applies only to fraud.status. The rounded nodes complete the fraud decision, not the payment lifecycle.
fraud.status | Meaning | Merchant handling |
|---|---|---|
pending | Fraud screening has not produced an overall result. | Keep the configured review policy active and evaluate payment state separately. |
in_review | Further review or asynchronous analysis is required. | Wait for a completed fraud decision. Do not fulfill solely because the payment advanced. |
accepted | The overall fraud process accepted the transaction. | Continue according to policy, then check the actual payment status. |
rejected | The overall fraud process rejected the transaction. | Apply the configured decline or reversal policy, then verify any required refund or void from the payment status. |
Provider analysis#
fraud.analysis.status describes how the selected anti-fraud provider produced or is producing its analysis. The API does not define one universal transition sequence across all providers, so treat these as provider-analysis results—not as a second payment state machine.
automatic_decision says how the analysis was produced; it is not by itself an approval. Read fraud.analysis.fraud_decision, risk level, score, and details together. Provider-specific response fields can contain additional diagnostic values and must not replace the normalized public fields.
Pre-authorization and post-authorization flows#
Fraud screening can run before or after the processor operation according to the configured route.
In a post-authorization rejection, an authorization or collected payment can already exist. Follow the configured policy and confirm the actual payment.data.status; do not assume that the fraud response completed a void or refund.
Fraud provider selection, pre/post-authorization timing, manual review, and the resulting reversal behavior depend on merchant and processor configuration. Ask your DEUNA TAM to confirm and enable the required behavior.
Handle updates safely#
- Store
fraud.status,fraud.analysis.status,fraud.analysis.fraud_decision, andpayment.data.statusseparately. - Keep fulfillment blocked while the applicable fraud policy is pending or in review.
- Treat fraud acceptance as permission to continue the configured flow, not as financial confirmation.
- After fraud rejection, inspect the payment history and wait for any required
voidedorrefundedresult. - Process repeated webhooks idempotently and preserve provider references for reconciliation.
- Preserve unknown values and reconcile them; never map an unknown fraud value to payment success.
See Payment workflow and statuses for financial transitions and DEUNA Webhooks for notification setup.