Skip to content

Decline code 61: Exceeds Withdrawal Amount Limit

Calum EwingBy Calum Ewing · Head of FulfillmentReviewed by Jay StevensUpdated 3 min read
Summarize with AI

Quick answer

Decline code 61 — “Exceeds Withdrawal Amount Limit” — is an ISO 8583 response code returned when a charge would push the cardholder past a withdrawal or spending cap their bank enforces over a set window (per-day, per-cycle, or per-transaction). It’s a soft, retryable decline: the card is valid, the limit just hasn’t reset. Stripe surfaces the equivalent as withdrawal_count_limit_exceeded; Braintree returns it as code 2002, “Limit Exceeded.” Recovery is a timed retry plus a nudge to the customer.

What code 61 means

Soft declineRetryable

A soft decline tied to a limit window — a blind immediate retry usually fails for the same reason, so retry once the cardholder's daily/cycle limit resets (typically the next day), or after they confirm a higher limit with their bank.

Cross-processor equivalents

The same issuer decision surfaces under a different code on every processor. Here is how code 61 maps across the stacks Revatto recovers on.

ISO 8583
Code61
CalledExceeds Withdrawal Amount Limit
Stripe
Codewithdrawal_count_limit_exceeded
CalledWithdrawal count limit exceeded
Braintree
Code2002
CalledLimit Exceeded
Authorize.net
Code49
CalledAmount exceeds maximumresponseReasonCode 49
NMI
Code203
CalledOver limitalso 300 (exceeds maximum ticket)
Chargebee
Codetransaction_limit_exceeded
CalledTransaction limit exceeded
Recurly
Codetoo_many_attempts
CalledToo many attempts
IxoPay
Code2004
CalledLimit exceededadapterCode 61/65 also map here
Whop
Codelimit_exceeded
CalledLimit exceedednormalized — no processor-specific code (free-text categorized)
Fanbasis
Codelimit_exceeded
CalledLimit exceedednormalized — matched by substring rule, no processor-specific code

Why it happens

  • The transaction would push the cardholder past a daily or per-cycle spending limit their issuer enforces.
  • A per-transaction ceiling on the card (common on debit, prepaid, and corporate cards) is lower than the charge amount.
  • The cumulative total of recent charges has already consumed most of the available limit for the window.
  • A temporary issuer-set cap — newly issued cards, prepaid balances, or risk-based throttling — is tighter than the cardholder expects.
  • A high-ticket or annual renewal lands above a limit that comfortably cleared smaller monthly charges.

How to recover it

  1. 1Don't re-run the same charge immediately — the limit window hasn't reset, so an instant retry hits the same ceiling and inflates your decline ratio.
  2. 2Time the retry to land after the limit resets — typically the next day for a daily cap, or early in the next billing cycle for a cycle cap.
  3. 3Reach the customer on email and SMS: explain the bank capped the charge and ask them to raise the limit, use a different card, or expect the retry once the window resets.
  4. 4
    When it persists, a real person works the card update or alternate-payment conversation directly. That AI-timed-retry-plus-human handoff is exactly what Revatto does for you, fully done-for-you — and you only pay if it works (20% of the first recovered payment, $0 setup, $0 monthly, cancel anytime).See how Revatto recovers 61declines →

See what Revatto would recover for you

Failed payments recovered automatically — no engineering, no manual chasing. We do the work; you keep the revenue.

See Your Recovery Potential

Frequently asked questions