422
payments.attempt_not_allowedpaymentsRule R5This payment cannot start an attempt with this method
Three things are checked together: the method is in your tenant's enabled_methods, the payment's status is created, requires_action or failed, and expires_at is still in the future.
Why the API refuses
WHEN StartAttempt is executed, THE SYSTEM SHALL reject it unless the method is in the tenant setting enabled_methods, the payment status is created, requires_action or failed, and expires_at is in the future.
What to do
- Read the payment first. A
succeeded,processing,canceledorexpiredpayment is finished — create a new one rather than attempting again. - If
expires_athas passed, the payment is over even if its status still readsrequires_action. Create a new payment. - If the method is not enabled, offer only the methods the payment's own
next_actionand your dashboard list. Hard-coding a method list in the client is how this error reaches production.