> For the complete documentation index, see [llms.txt](https://countertrade.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://countertrade.gitbook.io/docs/funds-and-settlement/transaction-troubleshooting.md).

# Transaction troubleshooting

The transaction states you see when joining, claiming, or refunding on chain, and how to get a stuck or failed one moving.

This covers on-chain actions — joining a room, claiming a prize, and claiming a refund — that get stuck partway or fail. It doesn't cover rejected paper trades, which show their reason in the trading terminal, not here.

If the status next to the button mentions the app catching up (an "indexer" line), your transaction is already on chain. Wait a few seconds and refresh before you retry anything. A second join, claim or refund is refused by the contract, so a retry can't take your money twice — but it will fail, and a failed transaction still costs gas.

## The button is stuck on "Indexer catching up…" or "Confirmed on chain"

### Symptom

After your transaction confirms, the button reads **Indexer catching up…**, **Confirmed on chain**, or **Confirmed (indexer slow)**, and the status line beside it reads `Confirmed on chain — waiting for indexer` or `Confirmed on chain. Indexer is catching up — refresh the page in a moment`. On a join, the button reads **Waiting for indexer confirmation…**.

### Likely cause

Your transaction is already on the chain. The app is still reading it back before it updates the button. Nothing is stuck on your side, and no funds move a second time.

### Check

On a claim or refund, open the transaction in the block-explorer link shown next to the status and confirm it succeeded.

### Fix

Wait a few seconds, then refresh the page. The action completes on its own once the app catches up. Don't retry the transaction: it has already gone through, and the contract refuses a second one — the retry would fail and cost gas for nothing.

## The status reads "Awaiting wallet confirmation…"

### Symptom

On a claim or refund, the status line reads `Awaiting wallet confirmation…` and the button reads **Claiming…**. On a join, the button reads **Approving…** or **Joining…** while the wallet prompt is open.

### Likely cause

Your wallet is waiting for you to approve or reject the prompt. Nothing continues until you act in the wallet.

### Check

Open your wallet extension or app. There should be a pending signature or transaction request.

### Fix

Approve the request to continue, or reject it to cancel. If you don't see a prompt, it may have been dismissed — start the action again from the button.

## The status reads "Transaction failed." or the button reads "Try again"

### Symptom

On a claim or refund, the status line reads `Transaction failed.` and the button reads **Try again**. On a join, the button returns to **Join room** and a message appears beneath it — often a specific reason, for example "Room is full", "Join deadline has passed", "You already joined this room", or "Contract is paused".

### Likely cause

The transaction reverted or was dropped before it confirmed. A specific join message tells you why the contract rejected it.

### Check

Read the message shown. If it names a specific reason, that's your cause. If it's the generic `Transaction failed.`, check your token balance and network first (see the two blocks below).

### Fix

1. On a claim or refund, select **Try again**; on a join, select **Join room** again. Confirm again in your wallet.
2. If a join says "Insufficient allowance — approve again", approve the token spend and retry; some tokens also show a **Reset allowance to 0** button you must select first.
3. If the reason says the room is full, the deadline passed, or you already joined, retrying won't help — that path is closed.

## The join button reads "Insufficient token balance"

### Symptom

After you try to join, a message beneath the join button reads "Insufficient token balance".

### Likely cause

The connected wallet doesn't hold enough of the room's entry-fee token.

### Check

Compare the wallet's entry-token balance against the room's entry fee. If the join asked you to confirm a transaction rather than sign two requests, you are also paying the network fee — check you hold ETH. See [Network and gas](/docs/funds-and-settlement/network-and-gas.md).

### Fix

Add the entry-fee token, and ETH if the join is one you pay for, then start again.

## The button reads "Switch chain"

### Symptom

The button reads **Switch chain** on a claim.

### Likely cause

Your wallet is connected to a different network than the room's. On-chain actions only work on the room's own network.

### Check

The button naming a network id is the confirmation — your wallet is on the wrong network.

### Fix

Select the button. The helper line reads "Switch to chain N to continue." Approve the network switch in your wallet; the claim is then sent on the room's network.

A join, a refund and a claim ask your wallet to switch to the room's network themselves when you press them. If you decline, nothing is sent and the page says so. If your wallet doesn't answer the switch, the page stops waiting after about 20 seconds and says so: approve or cancel the request in your wallet if it still shows it, then press again.

## The button reads "Wallet mismatch"

### Symptom

The button reads **Wallet mismatch**. On a claim, the helper reads "Connect with `0x1a2b…9f8e` to claim." On a join, it reads "Sign in with the connected wallet (`0x1a2b…9f8e`) or switch back to `0x1a2b…9f8e`."

### Likely cause

The wallet connected in your browser isn't the wallet this action belongs to. A prize goes only to the wallet that joined the room, and a join must use the wallet your account is signed in with.

### Check

Compare the address in the helper line with the address selected in your wallet.

### Fix

Switch your wallet to the address shown in the helper — or sign in with that wallet — then take the action again. Only that wallet can complete it. If you've lost access to the wallet you joined with, you can't claim from it.

## When to contact support

If the block explorer shows your transaction succeeded but the app still hasn't updated after several refreshes over a few minutes, or a claim you're eligible for keeps failing, see [Troubleshooting](/docs/help/troubleshooting.md) for how to get help. Include the room name, your trader name, the wallet address you used, the exact message shown, and roughly when it happened.

## Related

* [Claims and refunds](/docs/funds-and-settlement/claims-and-refunds.md)
* [Join a room](/docs/battles/join-a-room.md)
* [Troubleshooting](/docs/help/troubleshooting.md)
