# References

> Коди мереж, відповідність валют і мереж та значення статусів платежів, які використовуються в API 2328.io.

На цій сторінці перелічено всі довідкові значення, що використовуються в запитах і відповідях API.

## Коди мереж

Ці коди використовуються скрізь, де присутнє поле `network`:

| Код | Мережа |
|-----|--------|
| `TRX-TRC20` | Tron TRC-20 |
| `BSC-BEP20` | BNB Smart Chain |
| `ETH-ERC20` | Ethereum (ERC-20) |
| `BASE` | Base |
| `AVAX-C` | Avalanche C-Chain |
| `POL-MATIC` | Polygon (Matic) |
| `TON` | TON |
| `BTC` | Bitcoin |
| `LTC` | Litecoin |
| `DASH` | Dash |
| `SOL` | Solana |
| `DOGE` | Dogecoin |
| `ZEC` | Zcash |
| `XRP` | XRP Ledger |
| `XMR` | Monero |

## Відповідність валюти та мережі

Кожна валюта доступна лише у певній підмножині мереж. Скористайтеся цією таблицею, щоб обрати дійсну комбінацію:

| Валюта | Дозволені мережі |
|--------|------------------|
| `USDT` | TRX-TRC20, BSC-BEP20, ETH-ERC20, BASE, AVAX-C, POL-MATIC, TON, SOL |
| `USDC` | BSC-BEP20, ETH-ERC20, BASE, AVAX-C, POL-MATIC, SOL |
| `BTC` | BTC |
| `ETH` | ETH-ERC20, BASE |
| `BNB` | BSC-BEP20 |
| `TRX` | TRX-TRC20 |
| `LTC` | LTC |
| `DASH` | DASH |
| `GRAM` | TON |
| `AVAX` | AVAX-C |
| `POL` | POL-MATIC |
| `SOL` | SOL |
| `DOGE` | DOGE |
| `ZEC` | ZEC |
| `XRP` | XRP |
| `XMR` | XMR |

`GRAM` є канонічним кодом активу для рідної валюти TON. API для платежів, статичних гаманців та створення виплат наразі приймає спадковий ввід `TON` і нормалізує його до `GRAM`; інтеграції мають зберігати та обробляти канонічне значення, повернуте API. Рідний актив Polygon — `POL`, тоді як його мережевий код — `POL-MATIC`. Ніколи не надсилайте `MATIC` як мережевий код.

Увімкнені напрямки є операційною конфігурацією і можуть змінюватися незалежно від цього каталогу. Запитуйте `/v1/directions` перед тим, як пропонувати варіанти; розглядайте цю таблицю як дійсну карту кодів, а не як гарантію того, що кожна пара зараз увімкнена.

## Статуси платежів

Поле `payment_status` для платежів та фільтр у `/v1/payment/list` приймають такі значення:

| Статус | Опис |
|--------|------|
| `pending` | Створено, очікує ініціалізації |
| `check` | Очікує оплати від клієнта |
| `paid` | Успішно оплачено |
| `underpaid_check` | Недоплачено (можна доповнити) |
| `underpaid` | Недоплачено |
| `overpaid` | Переплачено (зараховано) |
| `cancel` | Скасовано / прострочено |
| `aml_lock` | Транзакцію заблоковано через AML |

> **INFO:** Слухаючи успішні платежі, ви маєте трактувати як успішні стани одночасно `paid` і `overpaid` та зараховувати замовлення клієнта.

### Політика обробки статусу

| Статус | Виконати замовлення? | Продовжувати чекати? | Операційна дія |
|--------|----------------|-------------------|--------------------|
| `pending` / `check` | Ні | Так, до закінчення терміну | Показати стан очікування та провести звірку в звичайному режимі. |
| `underpaid_check` | За замовчуванням ні | Так, поповнення може надійти | Зберігати кожний txid ідемпотентно та показувати потік залишкового платежу. |
| `paid` | Так, один раз | Ні | Виконати атомарно з перевіреної події. |
| `overpaid` | Так, один раз | Ні | Виконуйте та зберігайте надлишкові/фактичні суми для політики торговця. |
| `underpaid` | Продукт-специфічно | Ні | Застосуйте явну політику часткової оплати/ручної перевірки. |
| `cancel` | Ні | Ні | Позначайте прострочені/скасовані, але піднімайте будь-які пізні докази в ланцюзі. |
| `aml_lock` | Ні | Немає автоматичного виконання | Перевірка відповідності/підтримки; не звільняйте вартість автоматично. |

Статуси описують погляд платформи на оплату. Вони не замінюють ваш локальний стан виконання. Зберігайте обидва, щоб повернене, вручну перевірене або вже виконане замовлення не було пошкоджене старим вебхуком.

Фільтр запитів `/v1/payment/list` наразі приймає `pending`, `check`, `paid`, `underpaid_check`, `underpaid`, `overpaid` та `cancel`. Він не приймає `aml_lock` як фільтр, хоча платіж, заблокований AML, може бути повернений іншими платіжними кінцевими точками.

## Статуси виплат

Поле `status` у `/v1/payout` та `/v1/payout/status/{uuid}` приймає одне з:

| Статус | Опис |
|--------|------|
| `pending` | Створено, очікує обробки |
| `completed` | Успішно завершено — `txid` встановлено |
| `failed` | Помилка надсилання — див. `error_type` |
| `cancelled` | Скасовано |

## Типи помилок виплат

Коли виплата має `status = failed`, поле `error_type` описує причину:

| Код | Опис |
|-----|------|
| `aml_risk` | Виплату заблоковано перевірками AML-ризиків (адресу отримувача позначено як високоризикову) |