# References

> Network codes, currency-network mappings, and payment status values used across the 2328.io API.

This page lists all the reference values used across API requests and responses.

## Network codes

These codes are used wherever a `network` field is present:

| Code | Network |
|------|---------|
| `TRX-TRC20` | Tron TRC-20 |
| `BSC-BEP20` | BNB Smart Chain |
| `ETH-ERC20` | Ethereum (ERC-20) |
| `AVAX-C` | Avalanche C-Chain |
| `POL-MATIC` | Polygon (Matic) |
| `TON` | TON |
| `BTC` | Bitcoin |
| `LTC` | Litecoin |
| `DASH` | Dash |
| `SOL` | Solana |
| `DOGE` | Dogecoin |

## Currency-network mapping

Each currency is only available on a subset of networks. Use this table to pick a valid combination:

| Currency | Allowed networks |
|----------|-----------------|
| `USDT` | TRX-TRC20, BSC-BEP20, ETH-ERC20, AVAX-C, POL-MATIC, TON, SOL |
| `USDC` | BSC-BEP20, ETH-ERC20, AVAX-C, POL-MATIC, SOL |
| `BTC` | BTC |
| `ETH` | ETH-ERC20 |
| `BNB` | BSC-BEP20 |
| `TRX` | TRX-TRC20 |
| `LTC` | LTC |
| `DASH` | DASH |
| `TON` | TON |
| `AVAX` | AVAX-C |
| `POL` | POL-MATIC |
| `SOL` | SOL |
| `DOGE` | DOGE |

## Payment statuses

The `payment_status` field on payments and `/v1/payment/list` filter takes the following values:

| Status | Description |
|--------|-------------|
| `pending` | Created, awaiting initialization |
| `check` | Awaiting payment from customer |
| `paid` | Paid successfully |
| `underpaid_check` | Underpaid (can top up) |
| `underpaid` | Underpaid |
| `overpaid` | Overpaid (credited) |
| `cancel` | Cancelled / expired |
| `aml_lock` | Transaction blocked due to AML |

> **INFO:** When listening for a successful payment, you should treat both `paid` and `overpaid` as successful states and credit the customer's order.

## Payout statuses

The `status` field on `/v1/payout` and `/v1/payout/status/{uuid}` takes one of:

| Status | Description |
|--------|-------------|
| `pending` | Created, awaiting processing |
| `completed` | Completed successfully — `txid` is set |
| `failed` | Sending error — see `error_type` |
| `cancelled` | Cancelled |

## Payout error types

When a payout has `status = failed`, the `error_type` field describes why:

| Code | Description |
|------|-------------|
| `aml_risk` | Payout blocked by AML risk checks (recipient address flagged as high-risk) |