Skip to main content

Overview

Transaction retries allow you to automatically or manually reattempt failed payments. Not all declines are permanent — soft declines (temporary issues) can often succeed on retry, while hard declines (permanent issues) should not be retried. Understanding the difference between soft and hard declines and configuring appropriate retry logic can significantly improve your payment success rate.

Soft Decline vs. Hard Decline

Soft Declines (Retryable)

Soft declines are temporary failures that may succeed on a subsequent attempt. Common causes include:
  • Insufficient funds (customer may add money)
  • Issuer temporarily unavailable
  • Rate limiting or throttling
  • Temporary processing errors
  • 3DS authentication timeout

Hard Declines (Do Not Retry)

Hard declines are permanent failures that will not succeed on retry. Retrying hard declines wastes resources and may trigger penalties:
  • Card stolen or lost
  • Card expired
  • Invalid card number
  • Fraud-related decline
  • Account closed
Card networks penalize merchants who excessively retry hard declines. Visa and Mastercard monitor retry rates and may impose fines or restrict processing for merchants with high retry-to-decline ratios.

Retryable Decline Codes

CodeDescriptionRetryableRecommended Action
INSUFFICIENT_FUNDSNot enough balanceYesRetry after 24 hours
ISSUER_UNAVAILABLEIssuer system downYesRetry after 1 hour
PROCESSING_ERRORTemporary processing issueYesRetry after 15 minutes
AUTHENTICATION_REQUIRED3DS needed but not completedYesRetry with 3DS flow
RATE_LIMITToo many attemptsYesRetry with exponential backoff
DO_NOT_HONORGeneric issuer declineMaybeRetry once; if declined again, treat as hard
STOLEN_CARDCard reported stolenNoDo not retry; block card
EXPIRED_CARDCard is expiredNoRequest updated card from customer
INVALID_CARDCard number is invalidNoRequest correct card details
FRAUD_DECLINESuspected fraudNoDo not retry; review transaction
ACCOUNT_CLOSEDCardholder account closedNoDo not retry; request alternative payment

Network Retry Limits

Card networks impose strict limits on retry attempts:

Visa

RuleLimit
Maximum retries15 attempts
Time window30 days from initial decline
Applies toSame card, same merchant

Mastercard

RuleLimit
Maximum retries (same amount)10 attempts within 24 hours
Maximum retries (30-day window)35 attempts
Time window30 days from initial decline
Applies toSame card, same amount, same merchant
These limits apply to the combination of card number and merchant. Exceeding these limits may result in network fines. Yuno tracks retry counts automatically when using the retry features.

Cascade Retry vs. Same-Provider Retry

Same-Provider Retry

Retry the transaction with the same payment provider. Useful when the decline is due to a temporary issue (issuer unavailable, rate limiting).

Cascade Retry

Route the transaction to a different payment provider. Useful when:
  • The provider is experiencing an outage
  • The decline is provider-specific
  • A different acquirer may have better authorization rates for the card brand or region
Configure cascade routing in Dashboard > Routing > Cascade Rules to define fallback providers.

Configuring Retry Rules

Set up automatic retry rules in the Yuno Dashboard:
  1. Navigate to Dashboard > Settings > Retry Rules
  2. Define which decline codes should trigger automatic retries
  3. Set the maximum number of retry attempts
  4. Configure the delay between retries
  5. Optionally enable cascade routing for retries

Example Configuration

SettingValue
Retryable codesINSUFFICIENT_FUNDS, ISSUER_UNAVAILABLE, PROCESSING_ERROR
Max retries3
Initial delay15 minutes
Backoff multiplier2x
Cascade enabledYes (fallback to secondary provider)

Exponential Backoff

When implementing retry logic, use exponential backoff to avoid overwhelming providers and issuers:
Attempt 1: Immediate
Attempt 2: Wait 15 minutes
Attempt 3: Wait 30 minutes
Attempt 4: Wait 60 minutes
For API-level retries (429 rate limit responses), use shorter intervals:
Attempt 1: Wait 1 second
Attempt 2: Wait 2 seconds
Attempt 3: Wait 4 seconds
Attempt 4: Wait 8 seconds
Add random jitter (0-1 second) to backoff intervals to avoid thundering herd problems when multiple retries fire simultaneously.

Monitoring Retry Performance

Track retry effectiveness in Dashboard > Analytics > Retries:
MetricDescription
Retry success ratePercentage of retries that result in approval
Average retries to successMean number of attempts before approval
Retry-to-decline ratioRetries vs. total declines (monitor for network compliance)
Cascade success rateSuccess rate when routing to fallback providers
If your retry success rate is below 10%, review your retry rules. You may be retrying hard declines unnecessarily, which increases costs and network penalty risk.

Common Issues

IssueCauseResolution
Retries always failRetrying hard declinesReview decline codes; only retry soft declines
Network penalty warningExceeding retry limitsReduce max retries; respect Visa/Mastercard limits
Cascade not triggeringNo fallback provider configuredAdd a secondary provider in Dashboard > Routing
Duplicate chargesRetry succeeded but original also processedUse idempotency keys to prevent double-charging