You sent the coins. The page still says pending. Nothing has moved for twenty minutes and you are starting to wonder whether the money went somewhere it should not have.
Usually it is fine and the page is just telling you less than it could. Occasionally it is not fine. Here is how to tell the difference, and what each state actually means underneath.
The states a donation passes through
Our checkout, like most crypto payment flows, reports a small set of statuses. They sound similar and mean quite different things.
Waiting. We have generated an address for you and nothing has arrived at it yet. If you have not sent anything, this is correct. If you have sent something and it still says waiting after a few minutes, the transaction has not reached the network's view yet — or it went somewhere else.
Confirming. Your transaction is visible on-chain and is accumulating confirmations. This is the normal state and the one people worry about unnecessarily. Nothing is wrong; blocks are being produced.
Finished. The payment settled. The donation reaches our public ledger with a link to the transaction.
Expired. The address was generated and nothing arrived within the window. If you later send to that address anyway, recovery is not automatic.
Failed. Something went wrong in processing, including a refund.
One nuance worth knowing: a partial payment — sending less than the quoted amount — is treated as finished rather than left hanging. You will appear on the ledger for what actually arrived, not for what was quoted.
How long "confirming" should take
This depends almost entirely on which chain you used, and the range is enormous.
Seconds to a minute: Solana, Stellar, XRP, Toncoin, Sui. These chains finalise fast enough that if you are still waiting after a couple of minutes, something else is happening.
A few minutes: Ethereum and the EVM layer-2s like Base, Arbitrum and Polygon. Litecoin, around two and a half minutes per block.
Ten minutes to an hour: Bitcoin. One confirmation averages ten minutes, and most processors want several. An hour on Bitcoin is normal and not a problem.
Variable: Monero and Zcash sit in the ten-to-thirty minute range in ordinary conditions.
If your chain is in the first group and you have been waiting half an hour, the delay is not the chain.
When pending means something is actually wrong
You underpaid. Fee deducted from the amount rather than added to it is the usual cause — you meant to send the quoted figure and the wallet took its fee out of that. Processors often hold the payment rather than completing it. Check the amount that actually arrived against the amount quoted.
You sent on the wrong network. The classic: USDT on Tron to an address expecting USDT on Ethereum. The payment page will wait forever, because on the network it is watching, nothing arrived. Your transaction confirmed perfectly well somewhere else. See what to do when you send crypto to the wrong address.
You missed a destination tag. XRP, Stellar and Toncoin use tags to attribute deposits. Without one, funds can land unattributed.
Your fee was too low. On Bitcoin and Ethereum a transaction with an under-market fee can sit unconfirmed for hours. A block explorer will show it as pending in the mempool. This resolves itself eventually or the transaction drops.
The quote expired. Crypto prices move, so the amount you were quoted is valid for a window. Send after it lapses and the payment may not match.
What to do, in order
- Find your transaction ID in the wallet or exchange you sent from.
- Paste it into a block explorer for the chain you actually used. This single step answers most questions — it tells you whether the transaction exists, whether it confirmed, how much arrived and where it went.
- Compare the amount that arrived against the amount quoted.
- Compare the network. Not the coin name, the network.
- If it confirmed on the right network for the right amount and the page still says pending after an hour, get in touch with the transaction ID. That is the point at which it is worth a human looking.
Step 2 is the one people skip, and it is the one that resolves it. The chain is a public record; you do not have to take anyone's word for what happened, including ours.
Why we re-check in the background
A donation page that depends on your browser staying open is a page that loses donations. Ours does not: a background process re-checks every pending payment against the processor on a schedule, so a notification that goes missing does not leave a confirmed gift stuck in limbo.
That matters for a reason beyond convenience. It means our reported numbers reflect what actually settled rather than what we happened to be told. We found and fixed a bug in exactly that logic in September 2026 — the re-check was touching a timestamp it should have left alone, which made abandoned attempts look freshly active and hid the real drop-off from our own reporting. Writing it down here is cheaper than pretending our instrumentation has always been right.
Where we stand
Every confirmed donation appears on our public ledger with a link to the transaction on an independent block explorer. If a gift arrived, you can show that it arrived without asking us — which is the only kind of record worth having.
We are a newly founded organisation whose registration as a non-profit association in Estonia is not yet complete, and donations to us are not tax-deductible anywhere. Our About page carries the full position.
Still stuck? Tell us with the transaction ID and we will look.