Bitcoin Invoice Expired or Underpaid? Here's the Fix
BitDeals.com is reader-supported. We may earn a commission when you buy through links on our site, at no extra cost to you. It never changes what we recommend.
You clicked "Pay with Bitcoin," a QR code appeared with a countdown timer, and something went wrong. The timer ran out while you were digging for your wallet password. Or you sent the amount and the invoice still says unpaid. Or you overpaid by a few dollars and now nobody will tell you where the difference went.
This is the single most common way a Bitcoin purchase goes sideways, and it's almost never covered properly — most "how to spend Bitcoin" guides stop at "scan the code." So here is what actually happens to your money in each failure case, and what to do about it.
We'll use BitPay's mechanics as the reference, because it's the processor behind most large merchants that accept BTC directly. Other processors work similarly but not identically — always check the one you're using.
First: why there's a timer at all
A BitPay invoice is valid for 15 minutes. During that window the exchange rate is locked and guaranteed — the merchant has agreed to accept a specific amount of BTC as full payment for a specific dollar amount.
That guarantee is the whole point. Bitcoin moved roughly 4% in a single day this past Friday. No merchant is going to price goods in BTC and eat that. The 15-minute lock transfers the volatility risk to the processor, which hedges it. The countdown isn't the merchant being difficult; it's the mechanism that makes the fixed price possible.
Which also explains why the timer is unforgiving. Once the rate is no longer locked, the merchant is no longer holding the price.
Case 1: The invoice expired before you paid
What happens: Once the invoice expires, payments can no longer be accepted. Anything you submit to it will be declined, and an automatic refund notification email goes out from noreply@bitpay.com.
What to do: Nothing dramatic. Go back to the merchant's checkout and generate a fresh invoice. The new one will have a new address and a new rate.
Cost to you: Zero, if you didn't send anything. If BTC moved against you in the gap, the new invoice will ask for a different amount of BTC for the same dollar price — which is neutral in fiat terms and only feels bad if you were thinking in coins.
Case 2: You sent it, but it arrived after the timer ran out
This is the one people panic about, and it's the one with the best news attached.
What happens: Late payments still arrive at BitPay. They are not lost. They are simply not automatically applied to an invoice, and — critically — the exchange rate is no longer guaranteed.
From there the merchant has options. They can return the payment. Or, if BTC dropped between the invoice and the arrival, they can ask you for additional BTC to cover the shortfall at the current spot rate, because the amount you sent no longer covers the fiat price you agreed.
What to do: Contact the merchant first, not the processor. The merchant controls the decision. Have two things ready: the invoice ID and the on-chain transaction ID (txid). With those, a competent support agent can find the payment in minutes. Without them, you're asking someone to search a global ledger for "a Bitcoin payment, on Tuesday."
Cost to you: Potentially the price move, if it went against the merchant. This is the real argument for the prevention step at the bottom of this article.
Case 3: You underpaid
What happens: The amount you paid is not credited to the merchant's account. Underpaid invoices can only be refunded to the customer — the order does not go through.
Why it happened, and these are BitPay's own three explanations, all of which are avoidable:
You entered the fiat amount instead of the crypto amount. Your wallet's exchange rate and the invoice's exchange rate are not the same number. If you type "$249" into your wallet, you will send whatever your wallet thinks $249 of BTC is, which is not what the invoice asked for. Always enter the exact Amount Due in BTC shown on the invoice.
You paid from an exchange account. Exchanges batch withdrawals together for cost savings rather than sending individual payments, and the rate can shift before the transaction actually goes out. This is the most common cause and the easiest to fix — see below.
Your wallet didn't include a miner fee, or deducted it from the amount sent. Some wallets subtract the network fee from the amount you specified rather than adding it on top. Check your wallet's fee behavior before you rely on it for payments.
What to do: Claim the refund through the processor's refund flow. Then generate a new invoice and pay it properly.
Case 4: You overpaid
What happens: Same category, opposite direction. The overpaid amount is refundable to you through the processor's refund process. The order may or may not go through depending on the merchant's settings, so check.
What to do: Request the refund. And remember the rule from our refund guide: a Bitcoin refund is denominated in the invoice's fiat amount and converted at the rate on the day the refund is sent — not the rate you paid at. If BTC has fallen since, you get back more coin than you sent. If it's risen, you get back less. That asymmetry catches people every time.
How to never have this happen again
Three habits eliminate nearly all of it.
1. Fund the wallet before you open the invoice. Do not start a 15-minute countdown and then go withdraw from an exchange. Exchange withdrawals take minutes to hours, they batch, and they are the single largest source of both expiries and underpayments. Move the coins to a wallet you control first, confirm they've landed, then click Pay with Bitcoin.
2. Pay from a payment-protocol wallet, never directly from an exchange. BitPay's own recommendation is to send crypto to a payment-protocol-capable wallet and pay the invoice from there. These wallets read the invoice, populate the exact amount and address automatically, and calculate fees dynamically — which removes all three underpayment causes at once. The BitPay wallet does this; so do several others.
3. Never type the amount by hand. Scan or click the payment link and let the wallet fill it in. Manual entry is how a decimal ends up in the wrong place, and an on-chain payment does not have an undo button.
The bigger habit
There is a reason we keep recommending that people hold spending Bitcoin in a wallet they actually control rather than leaving it on an exchange until the moment of purchase. It isn't ideology. It's that exchange withdrawal timing is the root cause of most failed Bitcoin payments, and a wallet you control removes the dependency entirely.
For amounts you're actively spending, a good mobile wallet is enough. For the balance you're not spending, a hardware wallet is the right tool — we've covered the Ledger range and the Trezor lineup in detail, along with cheaper and air-gapped alternatives.
One tax note
Every one of these scenarios involves a disposal, a refund, or both — and in the U.S., spending Bitcoin is a taxable disposal, while receiving a refund in Bitcoin is an acquisition at that day's price with a fresh basis and holding period. A single failed-then-retried order can generate more tax events than the purchase was worth. Keep the invoice IDs and txids with your records. If you're doing this at any volume, this is genuinely a question for a CPA.
Get the BitDeals Digest. One email a week: verified deals on wallets, VPNs and exchanges, plus practical guides to actually spending Bitcoin. Subscribe here.
Sources
BitPay Support, "Why does an invoice expire after 15 minutes?" — https://support.bitpay.com/hc/en-us/articles/203010466
BitPay Support, "What happens when an invoice expires?" — https://support.bitpay.com/hc/en-us/articles/360022482971
BitPay Blog, "Applying Late Transactions to Guaranteed Rate Invoices" — https://blog.bitpay.com/applying-late-transactions-to-guaranteed-rate-invoices/
BitPay Support, "Why is my invoice underpaid/overpaid?" (updated July 10, 2026) — https://support.bitpay.com/hc/en-us/articles/203411533-Why-is-my-invoice-underpaid-overpaid
BitPay Support, "How to Claim Refunds for Underpaid, Overpaid, or Declined Invoices" — https://support.bitpay.com/hc/en-us/articles/360049269071
Comments