How to tell if a crypto payment is real before you deliver
You sold a promo slot, a script or a logo, and the buyer says they've paid. Maybe they sent a screenshot, a link, or a long string of letters and numbers. None of those is the payment. The payment is a transaction on the blockchain, and you can check it yourself in a few minutes, for free, without trusting anyone. This guide shows you how, and the tricks fake payments rely on.
The five checks
A crypto payment is real when all five of these are true, and you checked them yourself:
- You looked it up yourself. On a block explorer you opened by typing its address, or from your own wallet app. Not through a link or an image the buyer sent you.
- It's on the right coin. A Bitcoin payment has to be on the Bitcoin network. A Litecoin payment has to be on the Litecoin network.
- It pays your address. The address in the transaction is exactly the one you gave the buyer, character for character.
- The amount is right. Count what arrived at your address, not what the buyer says they sent.
- It's confirmed, and it's new. It has at least one confirmation, and its date matches your deal, not last month.
If any of these is missing, you haven't been paid yet. Don't deliver.
Why screenshots and links prove nothing
Everything a buyer can send you as "proof" can be faked:
- Screenshots of a wallet, an exchange or a block explorer take a minute to edit. A fake one looks exactly like a real one.
- Links can lead to a copy of a real block explorer, built to show a transaction that doesn't exist. The web address might be one letter off.
- A transaction hash (also called a txid: the long ID of a transaction) can be real but belong to someone else's payment, to an old payment, or to a payment that went to a different address.
- A message from "the exchange" saying a withdrawal is processing is not a payment either. Until the transaction is on the blockchain, nothing has been sent to you.
None of this means every buyer is lying. It means the proof has to come from the blockchain, and you have to look at it yourself. An honest buyer won't mind waiting while you check.
How to check a payment, step by step
You need two things: the receiving address you gave the buyer, and a block explorer. A block explorer is a free public website that shows everything recorded on a blockchain. You don't need an account, and you don't need to connect a wallet.
- Open a block explorer yourself. Type the explorer's web address into your browser, or use the "view on explorer" button in your own wallet app. Make sure it's an explorer for the right coin. Some explorers show several coins and let you pick the network.
- Search for your own address first. Paste the address you gave the buyer. Starting from your address is safer than starting from the buyer's hash, because you know the address is yours. The explorer lists every transaction that has paid it.
- Find the payment. Look for a transaction with the right amount and a recent time. If the buyer sent you a hash, check that the same hash is in your address's list.
- Open the transaction and read the outputs. A transaction has inputs (where the coins came from) and outputs (where they went). Your address must be one of the outputs, with the amount next to it. Other outputs are normal. One of them is usually the sender's own change.
- Check the status. The explorer shows "unconfirmed" (or "pending", or "in mempool") until the transaction is in a block. After that it shows the number of confirmations. Each new block on top adds one.
- Compare the amount with the deal. If you agreed on a price in dollars, compare the coins that arrived with the amount you agreed on. If the buyer paid from an exchange, its withdrawal fee may have been taken out, so less can arrive than they typed.
- Check your own wallet. Once the payment is confirmed, the coins should show up in your wallet as well. When the explorer and your wallet agree, the payment is real.
Tricks fake payments rely on
- The edited screenshot. A picture of a "sent" screen, with a hash that doesn't exist or doesn't pay you.
- The lookalike explorer. A link to a site that copies a real block explorer. Always type the explorer's address yourself.
- Someone else's transaction. A real hash from a different payment. It's on the blockchain, but your address isn't in its outputs, or it's months old.
- "It's pending, you can start." An unconfirmed payment is not final. Until it's in a block, it may still be replaced by a version that sends the coins somewhere else.
- "Flash" coins. Some scammers claim to have software that sends Bitcoin that shows up now and disappears later. Real Bitcoin and Litecoin can't be faked on the blockchain itself. What these tools fake is the screen you're shown. If someone mentions flash coins, walk away.
- The overpayment. The buyer "accidentally" sends too much, often unconfirmed or only as a screenshot, and asks you to send the difference back right away. Wait until the payment is confirmed in your own wallet. If there really is extra, send back only from what actually arrived.
- The wrong network. Some tokens borrow the name of a coin but live on a different network. A "BTC" token on another network is not Bitcoin, and it won't arrive at a Bitcoin address. Check that your explorer is for the coin you agreed on.
- Pressure. "I'm in a hurry", "my friend already checked it", "the network is slow, just start". Urgency is there to stop you from checking.
Waiting for confirmations
When someone sends a payment, it first waits in a queue of unconfirmed transactions, called the mempool. Miners then put it into a block. That's the first confirmation. Every block added after that is one more.
Before the first confirmation, a payment isn't settled. Depending on the wallet and the network, the sender may be able to replace it with a new version that pays a higher fee and sends the coins to a different address. That's why "it's in the mempool" is not the same as "you've been paid".
How many confirmations to wait for is your decision. There is no single safe number. Each new block makes a payment harder to undo, so many people wait for more on bigger amounts. The Bitcoin network aims for a block about every 10 minutes on average and Litecoin about every 2.5 minutes, but both vary, and a payment with a low fee can wait much longer.
If a payment has sat unconfirmed for hours, the fee was probably too low for how busy the network is. Fixing that is up to the sender, for example by raising the fee if their wallet allows it. Keep waiting, and don't deliver until it confirms.
How escrow changes the check
In a direct deal, the buyer pays straight to your wallet and everything rests on your own check: once you've delivered, you have no leverage left. With escrow, the buyer pays into an address made for the deal instead. You deliver once that payment is confirmed there. The buyer can't take it back on their own, and you're paid when the buyer releases it.
The check itself stays the same: open the escrow's deposit address on a block explorer yourself, and wait for the confirmation. Escrow moves the trust, it doesn't remove it. While the deal is open, the escrow holds the money, so check the escrow as well. Our guide on how to check a crypto middleman has a checklist for that. If you sell code or design work, paying for code or design in crypto shows how to split a job into milestones, with one escrow deal for each.
With Truzor
Truzor is an escrow bot that runs inside Discord and works with Bitcoin (BTC) and Litecoin (LTC). As the seller, you are the Receiver and the buyer is the Sender. Here is what you'll see in the deal ticket, and when to deliver:
- The bot shows a fresh deposit address made just for your deal, with the exact amount the Sender has to send. You can open that address on any block explorer yourself.
- "Transaction has been detected" means the payment is on the network but not confirmed yet. Don't deliver yet.
- "Payment Received" appears after 1 confirmation. Check the deposit address on an explorer if you like, then deliver what you agreed.
- The Sender presses Release. Only the Sender can. You paste your payout address, and the bot sends the payment and posts the transaction hash in the ticket, so you can check that one too.
The bot's payment messages link the transaction on BlockCypher's public explorer. You can open the same address or hash on any other explorer to check it independently. If the buyer disappears after paying, the money stays in the deposit address, and you can't release it yourself. Open a support ticket early so a real person knows about the deal. There is no automatic payout or refund timer. The full flow is in Deal flow.
Questions people ask
Is a transaction hash proof of payment?
Not on its own. A hash only proves something once you look it up yourself on a block explorer and see that it pays your address, with the right amount, on the right coin, and that it is confirmed.
Can an unconfirmed crypto payment be cancelled?
There is no cancel button like a card refund, but until the payment is in a block it is not settled. Depending on the wallet and the network, the sender may be able to replace it with a new version that sends the coins somewhere else. Wait for at least one confirmation before you deliver.
How many confirmations should I wait for?
At least one. There is no single safe number: each new block makes a payment harder to undo, so many people wait for more on larger amounts. Truzor treats a deal as paid after 1 confirmation.
What is flash Bitcoin?
It is the name scammers use for software that supposedly sends Bitcoin that later disappears. What these tools fake is a screen or a balance, not a real transaction on the blockchain. If no confirmed transaction pays your address, you have not been paid.
More guides
Selling something to a stranger?
With Truzor, the buyer pays into a fresh BTC or LTC address made for your deal, and you can watch the payment arrive on a block explorer before you deliver. It's new, so start with a small deal and check every transaction yourself.