In this article
Merchants often hear "no chargebacks" as a selling point for crypto payments, and for anyone who's fought a fraudulent dispute, it is. But the same finality that prevents chargebacks also means there's no automatic refund mechanism. To return money to a customer, you send a new transaction yourself.
That's manageable. What makes it go smoothly is having a process in place before you need it, and getting the right information from the customer before they leave.
Why refunds work differently
With a card payment, a refund reverses through the card network. You initiate it in your processor, the funds are credited back, and the network handles the mechanics. The original transaction is the link that makes the whole thing work.
Blockchain transactions don't reverse. The payment the customer made is permanent. What you can do is send a new, separate transaction back to the customer, an outgoing payment from your wallet or processor to theirs.
Two things need to be right before you do:
- The customer's wallet address. You need the address they want the funds sent to. This may or may not be the same as the address they paid from. More on that below.
- The correct amount. You'll need a written policy, before the situation arises, on whether you refund the exact crypto amount received, the dollar value at receipt, or the dollar value at the time of refund. These can differ significantly if the asset's price has moved.
Best practices
Establish your refund amount policy now, in writing. The cleanest approach for most businesses: refund the dollar value of the original transaction, paid back in the same cryptocurrency the customer used. It's the most defensible for accounting and the easiest for customers to understand.
Refunding the original crypto amount regardless of current price is also reasonable, but it creates a windfall or a loss depending on which direction the market moved, which complicates your books and can feel unfair to one side. Some businesses use it anyway for simplicity. Either approach works, as long as you've committed to it before a dispute arises.
Don't refund to an address without confirming it first. Ask the customer to provide their refund address in writing (email or text). Don't assume the address they paid from is safe to use. Customers who pay through an exchange wallet often can't receive funds back to the originating address.
Send a small test amount for large refunds. For significant amounts, some merchants send a small test transaction first, confirm the customer received it, then send the remainder. It adds a step and costs a second network fee, but it eliminates the risk of sending a large amount to a wrong address.
Refund in the same asset the customer used. Don't substitute. A customer who paid in Bitcoin should get Bitcoin back, not USDC. Swapping assets introduces exchange rate disputes and muddies your records.
Network fees come out of your business, not the customer's refund, unless your written policy says otherwise. Record the fee as a business expense.
Documenting the refund
Good records protect you if a dispute arises later, and they keep your accounting clean. For each refund, record:
- The original transaction ID
- Date and amount of the original payment
- Reason for the refund
- The customer's stated refund address, and how they provided it (email, text, in person)
- Date you confirmed the address with the customer
- The refund transaction ID
- Date and amount of the refund
- The USD value at the time of the refund
Your payment processor may handle some of this automatically. Know what records it creates and whether they cover what you need. If you're self-custodying, the entire paper trail is on you.
On your books, a crypto refund reduces income for the period. How exactly depends on your accounting method. Ask your CPA when you set up your crypto bookkeeping. If you're converting to dollars immediately, it's straightforward. If you're holding crypto, a refund is a disposal event with potential gain or loss implications, the same as a sale.
Customer communication
Customers who pay with crypto usually understand there's no instant reversal. What matters to them is that you handle it clearly and quickly, not that you apologize for how blockchain works. Keep it direct:
- Confirm you're processing the refund and give a specific timeline. "I'll send that back within 24 hours" is better than "I'll take care of it."
- Ask for the refund address in writing. Explain briefly that you need to verify it before sending. Customers who use crypto regularly understand why.
- Once the refund is sent, share the transaction ID so they can confirm receipt on a block explorer. This closes the loop cleanly and prevents disputes about whether the funds ever left.
- If there's a delay (network congestion, a question about the amount, anything), communicate before the customer reaches out. A short update is better than silence.
Preventing mistakes
Wrong address is the big one. A crypto transaction sent to a wrong address is gone. No recovery process, no customer support escalation, no reversal mechanism. Confirming the address in writing, combined with a test transaction for large amounts, eliminates essentially all of this risk.
Wrong network. If you accept USDC on multiple networks, a customer's refund address might be on a different network than the one you're sending from. Ask them to specify the network, not just the address.
Assuming a slow transaction failed. If the first transaction doesn't confirm quickly, check the transaction ID on a block explorer before sending again. Pending is not the same as failed. Sending twice creates a second refund obligation.
Sending the wrong amount. Check the figure twice before broadcasting. Once the transaction is sent, there's no recalling it.
Write a refund policy before you need it
The worst time to figure out your refund policy is during an actual dispute. Write it before your first transaction and post it somewhere visible: your website, receipts, or counter area.
It doesn't need to be long. Five questions cover it:
- Under what conditions do you issue refunds?
- What's the refund amount: original crypto amount, or dollar value at receipt?
- What's your timeline? (24 hours? 48 hours?)
- How does a customer request a refund?
- Does the business absorb the network fee, or does the customer?
Customers who pay with crypto tend to respect a clear policy. They know the system works differently. A written policy signals that you've handled this before, or at least thought it through before someone made you.
The wrong amount guide covers what to do when a customer's payment has a problem, which sometimes leads to a refund situation. The Merchant's Guide covers refund policies and customer communication in more depth. If you're self-custodying, the Merchant Security Playbook covers wallet setup, backups, and the steps that prevent funds from being unrecoverable in the first place.