Card issuer response codes (ISO 8583) · Decline codes
What does card decline code R0 mean?
Checked
Code R0 is a Visa issuer response code meaning "stop this payment". The cardholder told their bank to stop this particular payment, usually a recurring charge. Visa lists R0 in Category 1, "issuer will never approve": after receiving it, the merchant must never resubmit an authorization for the same card. Treat it as a request from the customer and contact them about their subscription.
- Type
- Hard decline (stop payment)
- Who declined
- The bank, on the cardholder's instruction
- Visa category
- Category 1 (issuer will never approve): never resubmit the same card
- Retry
- Never on this card
- Shopper action
- Contact the store to change or cancel the subscription
- Merchant action
- Stop charging; contact the customer
- PlatformDTC renewal (fixed or Smart retry)
- Never retried; customer asked for a new card
What PlatformDTC does
PlatformDTC treats R0 as a hard stop on both paths. A Visa checkout declined R0 is never moved to a backup processor, and on either retry schedule, fixed or Smart retry, a renewal is never retried: the subscription is held past due and the customer receives a link to update their card or manage the subscription.
Why it happens
The cardholder asked the bank to block a payment to the merchant. It is often a subscription the customer meant to cancel.
What the store can do
Don't retry and don't switch processors. Contact the customer, confirm whether they want to cancel, and make cancelling easy.
For developers
On Stripe the raw issuer code arrives in charge.outcome.network_decline_code (here "R0"), next to Stripe's own decline_code. Read it together with the card brand: the same two characters can mean different things on Visa and Mastercard. PlatformDTC treats Stripe's stop_payment_order decline code the same way: hard for renewals and never-retry at checkout.
Frequently asked questions
- Can I charge a code R0 customer again?
- Not that card. Visa forbids resubmitting Category 1 codes. Ask the customer how they want to proceed.
- What is the difference between R0, R1 and R3?
- R0 stops one payment, R1 all future payments to you, R3 all payments to all merchants.
Sources
Related
- R1 — Stop all future payments: the cardholder revoked recurring payments to this merchant.
- R3 — Stop all merchants: the cardholder revoked recurring payments to every merchant.
- 9G — Blocked by cardholder: the cardholder set a block. Contact the cardholder.
- 01 — Refer to card issuer: the bank wants the cardholder to contact it before it approves.
- 02 — Refer to card issuer, special condition: the bank wants the cardholder to call before approving.
- 03 — Invalid merchant: the issuer would not accept the payment from this merchant setup.
- 04 — Pick up card: the bank wants the card taken out of use. Never retry it.