422
payments.blocked_by_riskpaymentsRule R3Risk rules blocked the payment
The risk evaluation returned block, so no payment was created. This is a decision about the payer and the context (amount, method, IP, velocity), not about the shape of your request — resending the same body verbatim will be blocked again.
Why the API refuses
WHEN CreatePayment is executed, THE SYSTEM SHALL obtain a decision from risk.Evaluate; IF the decision is block THEN THE SYSTEM SHALL reject the command; IF the decision is review THEN THE SYSTEM SHALL create the payment with risk_decision review.
What to do
- Show the payer a neutral message and offer another payment method. Do not tell them they were blocked for risk; that is a fraud-testing oracle.
- A
reviewdecision does not produce this error: the payment is created withrisk_decision: "review"and proceeds. Read that field rather than inferring it. - If a legitimate payer is blocked repeatedly, that is a rule-tuning conversation with your account contact, not an integration change.