DEV Community

Payneteasy
Payneteasy

Posted on

Retry logic can trip the card network's own decline-rate monitor

Found this after a client asked why their merchant account got flagged for "excessive decline rate" despite every individual transaction eventually succeeding.

Their retry logic resubmitted a declined authorization up to 4 times with short backoff, same card, same amount, hoping a soft decline would clear. It usually did, on attempt 2 or 3. From the app's point of view, that's a success story.

From the network's point of view, that's 4 authorization attempts, 3 of them declined. Visa and Mastercard both run decline-rate monitoring at the merchant level, counting declines over total auth attempts in a rolling window, not unique transactions. Retries inflate the denominator and the decline count together. Cross a threshold (ballpark 15% triggers a warning tier on some programs) and the merchant account itself gets reviewed, sometimes rate-limited by the acquirer regardless of how clean the actual approval-after-retry outcome looks.

Fix was capping retries to 1 for hard declines, routing only specific soft-decline codes (51, 65) into a delayed retry queue, and treating anything else as terminal on first attempt.

Anyone tracking their decline ratio as "attempts" vs "unique transactions" separately, or is this usually invisible until the acquirer calls?

Top comments (0)