<!-- 0Gkit docs — CHAIN_TX_TIMEOUT
     Source: https://docs.0gkit.com/errors/CHAIN_TX_TIMEOUT
     LLM-friendly Markdown twin of the page. -->

# CHAIN_TX_TIMEOUT

**Transaction did not confirm in time**

## What happened

The transaction was broadcast but didn't reach the configured number of confirmations within the timeout. Possible reasons: network congestion, gas price too low, or the tx was dropped from the mempool.

## How to fix

Bump the gas price and re-send (with the same nonce, to replace), or extend the wait timeout. The receipt is recoverable later via the tx hash.

## Example

```ts
import { waitForReceipt } from "@foundryprotocol/0gkit-chain";
const receipt = await waitForReceipt({ hash, timeoutMs: 120_000 });
```

## Reference

- Namespace: `CHAIN`
- Help URL: `https://0gkit.com/errors/CHAIN_TX_TIMEOUT`
- See also: [all error codes](/errors)
