invalid_amountmediumAffects MRR

Stripe invalid_amount Error — Causes, Fix & MRR Impact

The Stripe invalid_amount error occurs when the payment amount is invalid or exceeds the amount the issuer allows, causing the charge to be declined and MRR risk for SaaS businesses processing subscription payments.

What this means

The charge amount is not accepted by the card or exceeds the customer's limit. Check your amount and currency; the customer may need to use another card or contact their bank.

Why it happens

Amount exceeds issuer limit

The card or account has a per-transaction or daily limit that your charge exceeded.

Invalid amount (zero or negative)

Rarely, a bug could send zero or negative amount; Stripe or the issuer may decline.

Currency or decimal issue

Amount in wrong currency or wrong number of decimal places for that currency.

Issuer policy on amount

The issuer does not allow this type or size of charge for this card product.

MRR Impact

Failed charges from invalid amount reduce MRR; validate amounts and offer alternatives (e.g. different card or plan) to recover.

Validating amount and offering alternative payment or plan protects MRR when issuer limits are hit.

Avg. recovery rate: Good when amount is fixed or customer switches card; poor if you keep retrying same amount.

Urgency: within 24h

How to fix it

  1. 1

    Verify the amount you sent

    Check that the amount and currency are correct (e.g. in smallest unit, correct decimals). Fix any bug in proration, plan price, or currency conversion before retrying.

  2. 2

    Do not retry same amount blindly

    If the amount is correct, retrying will likely fail again. Ask the customer to use a card with higher limits or contact their bank. If you have a bug, fix and retry.

  3. 3

    Show clear message

    Tell the customer the payment amount could not be processed and they may need to use another card or contact their bank. Avoid exposing raw error codes.

  4. 4

    Consider amount limits in product

    For very large one-time or annual charges, consider installments or warning the user that some cards may have limits.

  5. 5

    Log amount and currency

    Log the amount and currency when invalid_amount occurs; use for debugging and to spot systematic issues (e.g. wrong currency).

Detect invalid_amount automatically

Track invalid_amount with amount and currency; alert on spikes that might indicate a pricing or currency bug.

Monitor your Stripe health free →

FAQ

What is Stripe invalid_amount?
invalid_amount means the payment amount is invalid or exceeds what the issuer allows (e.g. per-transaction or daily limit). If the amount is correct on your side, the customer should check with their card issuer. For SaaS, verify the amount you charge (e.g. proration, currency) and consider breaking large charges into smaller ones if allowed.
Should I retry invalid_amount?
Do not retry the same amount immediately. If the amount is correct, the customer may need to contact their bank to raise limits or use another card. If you suspect a bug (e.g. wrong currency or double amount), fix the amount and retry.
How do I prevent invalid_amount?
Validate amounts before charging (min/max, currency). For large upgrades or annual plans, consider installments or warning the customer. Ensure proration and rounding match Stripe's behavior.
Does invalid_amount affect MRR?
Yes. Failed charges due to amount reduce MRR. Correct pricing logic and clear communication (or alternative payment method) help recovery.

Related errors