Payment error PAY004 — Stripe refused the charge ("Invalid amount", "Card declined"…)

Created by Emily Campbell, Modified on Fri, 24 Jul at 4:25 PM by Emily Campbell

What this error means

When BRM asks Stripe to charge a card and Stripe refuses, BRM reports it as PAY004. The wording that appears before the code — for example "Your card was declined." or "Invalid amount." — comes straight from Stripe, not from BRM. The same code therefore covers several quite different causes, and that Stripe wording is the part that tells you which one you have.

A full example looks like:

Reservation Reference: Jul0003-26, Client : 4461, Stripe Id : cus_XXXX, Amount : 218.8: Invalid amount. (pay004)


Why it happens

There are two broad families:

  1. The card was refused. Messages such as "Your card was declined", "Insufficient funds", "Your card has expired" or "Incorrect CVC". Stripe checked with the customer's bank and the bank said no. Nothing is wrong with your BRM setup.
  2. Stripe rejected the request before reaching the card. Messages such as "Invalid amount". The card was never actually tried — Stripe turned the charge away first because something about the request wasn't acceptable to it.


What to do

  1. Read the message that appears before the code. That is Stripe's own explanation, and it decides what happens next.
  2. If it points at the card (declined, expired, insufficient funds, incorrect CVC): ask the customer for a different card, or take payment another way. Retrying the same card usually fails in the same way.
  3. If it says "Invalid amount": first check the amount is a sensible, positive figure. A zero or negative total — which can happen after a full refund or a 100% discount — will be refused, as will a very tiny amount, since card networks have a minimum charge.
  4. If the amount looks perfectly normal, stop there and contact support. A reasonable amount being rejected as invalid is not something you can fix from your settings, and it is worth us looking at.
  5. You can always cross-check the attempt in your Stripe dashboard using the Stripe Id shown in the error.


Still stuck?

Contact support with the full error message, the reservation reference and the Stripe Id. All three appear in the error itself, and together they let us trace the exact attempt.


Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article