Валюты добавляются вручную и необходимы для создания направлений обмена. У каждой валюты должен быть как минимум код и XML-код.
/api/currencies
Метод: GET
Описание: Запрашивает список валют.
Права доступа: ✅ Открыт для всех.
Параметры:
onlyGive
- загрузить только валюты, по которым есть активные направления Отдаю;onlyGet
- загрузить только валюты, по которым есть активные направления Получаю.Ответ:
{
"type": "success",
"message": null,
"data": [
{
"id": 1,
"name": "Сбер RUB",
"code": "RUB",
"xmlCode": "SBERRUB",
"fidelity": 3,
"acctValidator": "RUB",
"acctChain": "CARDLUNA",
"isEnabled": true,
"payin": "manual",
"payinCode": "",
"payinChain": "",
"payout": "manual",
"payoutCode": "",
"payoutChain": ""
}
],
"action": null
}
Подробности:
name
- имя валюты;code
- например, BTC
или ETH
, используется для поиска курса на биржах;xmlCode
- нужен для выгрузки направлений в файл XML, когда обменник будет размещаться в каталогах. Список кодов;isEnabled
- если валюта активна, то все направления с этой валютой тоже активны и отображаются на сайте в форме обмена;fidelity
- точность, знаков после запятой - применяется для отображения суммы в данной валюте в панели управления и на сайте;acctValidator
- код валюты для проверки адреса кошелька. Может принимать значения:
AUTO
- перебор всех валют;RUB
, USD
, USDT
, BTC
, BTCB
, BTG
, BSV
, BNB
, BUSD
, CAKE
, ETH
, DAI
, LINK
, UNI
, MANA
, SHIB
, USDC
, TUSD
, WBTC
, WETH
, YFI
, ZRX
, SOL
, ADA
.acctChain
- сеть для проверки адреса кошелька. Может принимать значения:
AUTO
;CARDLUNA
- алгоритм Луна для проверки пластиковых карт;ERC20
, BEP20
, TRC20
, BTC
, SOL
, ADA
- сети (блокчейны) криптовалют;payin
- прием платежей в валюте, можно указать manual
- ручной, или название биржи - bybit
или mexc
;payinCode
- код валюты на бирже или пустая строка для ручного режима;payinChain
- сеть валюты - например, BEP20
, TRC20
на бирже или пустая строка для ручного режима;payout
- отправка платежей в валюте, можно указать manual
- ручной, или название биржи - bybit
или mexc
;payoutCode
- код валюты;payoutChain
- сеть валюты./api/currencies
Метод: DELETE
Описание: Удаляет валюты по id.
Права доступа: 🔴 isAdminPanel
+ isEditCurrency
.
Параметры: ids
- список валют.
Ответ: Ответ:
{
"type": "success",
"message": "Удалены валюты: Bitcoin",
"data": null,
"action": null
}
/api/currency
Метод: PUT или POST
Описание: Добавляет новую валюту или изменяет существующую.
Права доступа: 🔴 isAdminPanel
+ isEditCurrency
.
Запрос:
{
"id": 1,
"name": "Сбер RUB",
"code": "RUB",
"xmlCode": "SBERRUB",
"fidelity": "2",
"acctValidator": "RUB",
"acctChain": "CARDLUNA",
"isEnabled": true,
"payin": "manual",
"payinCode": "",
"payinChain": "",
"payout": "manual",
"payoutCode": "",
"payoutChain": ""
}
Подробности:
name
- имя валюты. Этот параметр обязателен;code
- используется для поиска курса на биржах. Этот параметр обязателен;xmlCode
- нужен для выгрузки направлений в файл XML, когда обменник будет размещаться в каталогах. Позволяет каталогу различать разные платежные системы. Желательно, чтобы XML-код соответствовал стандарту jsons.info. Например, если у вас есть 2 направления: Сбербанк RUB и Альфа-Банк RUB, то у них будут разные XML-коды SBERRUB и ACRUB, а код валюты будет одинаковый - RUB;isEnabled
- принимает 2 значения: true, false. Если валюта активна, то все направления с этой валютой тоже активны и отображаются на сайте в форме обмена.fidelity
- точность, знаков после запятой - применяется для отображения суммы в данной валюте в панели управления и на сайте. Например, для RUB достаточно 2 знаков, а для BTC - 6.acctValidator
- код валюты для проверки адреса кошелька. Коды добавлены для удобства, а внутри всего несколько вариантов проверки. Может принимать значения: - пустая строка - отключить проверку;
AUTO
- перебор всех валют;RUB
, USD
, USDT
, BTC
, BTCB
, BTG
, BSV
, BNB
, BUSD
, CAKE
, ETH
, DAI
, LINK
, UNI
, MANA
, SHIB
, USDC
, TUSD
, WBTC
, WETH
, YFI
, ZRX
, SOL
, ADA
.acctChain
- сеть для проверки адреса кошелька. Может принимать значения:
AUTO
;CARDLUNA
- алгоритм Луна для проверки пластиковых карт;ERC20
, BEP20
, TRC20
, BTC
, SOL
, ADA
- сети (блокчейны) криптовалют.Ответ:
{
"type": "success",
"message": "Валюта Сбер RUB обновлена",
"data": {
"id": 1
},
"action": null
}
В ответе отправляется id
для того, чтобы после добавления новой валюты можно было сразу же, следующим запросом, задать доп.поля. А еще id
используется для обновления контекста на фронте в React, чтобы не загружать все валюты заново.
/api/currencies/getValidators
Метод: GET
Права доступа: 🟡 isAdminPanel
.
Описание: Загружает список методов (валидаторов) для проверки адреса кошелька в формате "код валюты": "список сетей". Валидатор выявит ошибки - неполный адрес, неправильная последовательность символов.
Ответ:
{
"type": "success",
"message": null,
"data": {
"DAI": [
"AUTO",
"BEP20",
"ERC20"
],
"USDT": [
"AUTO",
"BEP20",
"ERC20",
"TRC20"
],
"USD": [
"CARDLUNA"
]
},
"action": null
}
/api/currency/{id}/validate/{address}
Метод: GET
Описание: Проверяет адрес кошелька на ошибки
Права доступа: ✅ Открыт для всех
Параметры:
id
- id валюты;address
- адрес для проверки.Запрос: GET api/currency/1/validate/567567
Ответ:
{
"type": "success",
"message": "Адрес неправильный",
"data": {
"isPassed": false
},
"action": null
}
Подробности: isPassed
- прошел ли данный адрес проверку.
Если валидатор не задан, получим:
Ответ:
{
"type": "warning",
"message": "Валидатор для валюты Евро не задан",
"data": null,
"action": null
}