Пополнение баланса через API
Через API можно создавать Crypto-пополнения, счета LZT Market и заявки на перевод по Bybit UID.
Порядок работы:
1. Получите список доступных сетей:
GET /topups/crypto/methods
2. Создайте заявку на пополнение:
POST /topups/crypto
3. Отправьте точную сумму на address из ответа. Не выводите средства на этот адрес из Crypto Bot или xRocket: такие переводы могут не быть распознаны и зачислены.
4. После оплаты передайте hash транзакции:
POST /topups/{topup_id}/tx
5. Проверьте статус заявки:
GET /topups/{topup_id}
Доступные trade_type зависят от настроек сервиса. Список нужно брать из GET /topups/crypto/methods.
Пример создания заявки:
{
"amount": 10,
"trade_type": "usdt.trc20"
}
Пример Python:
import requests
BASE_URL = "https://api.averonpay.app"
TOKEN = "pk_partner_key"
headers = {
"Authorization": f"Bearer {TOKEN}",
"Content-Type": "application/json",
}
methods = requests.get(
f"{BASE_URL}/topups/crypto/methods",
headers=headers,
timeout=20,
)
print(methods.json())
topup = requests.post(
f"{BASE_URL}/topups/crypto",
headers=headers,
json={
"amount": 10,
"trade_type": "usdt.trc20",
},
timeout=20,
)
topup_data = topup.json()
print(topup_data)
topup_id = topup_data["topup_id"]
address = topup_data["address"]
pay_amount = topup_data["pay_amount"]
pay_symbol = topup_data["pay_symbol"]
print(f"Send {pay_amount} {pay_symbol} to {address}")
# После оплаты замените transaction_hash на реальный hash транзакции.
tx = requests.post(
f"{BASE_URL}/topups/{topup_id}/tx",
headers=headers,
json={"tx_hash": "transaction_hash"},
timeout=20,
)
print(tx.json())
status = requests.get(
f"{BASE_URL}/topups/{topup_id}",
headers=headers,
timeout=20,
)
print(status.json())
LZT Market
1. Получите доступные платёжные способы:
GET /topups/payment/methods
2. Создайте счёт:
POST /topups/payment
Тело запроса:
{
"amount": 10,
"payment_method": "lzt"
}
В ответе используйте pay_url для оплаты. Поле amount — сумма, которая будет зачислена на баланс; pay_amount — сумма счёта с учётом настроенной комиссии.
Пример Python:
import requests
BASE_URL = "https://api.averonpay.app"
TOKEN = "pk_partner_key"
headers = {"Authorization": f"Bearer {TOKEN}"}
topup = requests.post(
f"{BASE_URL}/topups/payment",
headers=headers,
json={"amount": 10, "payment_method": "lzt"},
timeout=20,
).json()
print("Оплатить:", topup["pay_url"])
# Webhook LZT зачисляет платёж автоматически. Этот запрос можно использовать
# для ручной проверки или polling до terminal status.
checked = requests.post(
f"{BASE_URL}/topups/{topup['topup_id']}/check",
headers=headers,
timeout=20,
).json()
print(checked)
Bybit UID
1. Создайте заявку:
POST /topups/bybit
Тело запроса:
{
"amount": 10
}
В ответе address содержит Bybit UID, pay_amount — точную сумму перевода, а pay_symbol всегда равен USDT. Выполните внутренний перевод USDT через Bybit на указанный UID.
2. После перевода отправьте его txID:
POST /topups/{topup_id}/bybit-tx
Тело запроса:
{
"tx_id": "1234567890"
}
Пример Python:
import requests
BASE_URL = "https://api.averonpay.app"
TOKEN = "pk_partner_key"
headers = {"Authorization": f"Bearer {TOKEN}"}
topup = requests.post(
f"{BASE_URL}/topups/bybit",
headers=headers,
json={"amount": 10},
timeout=20,
).json()
print(f"Перевести {topup['pay_amount']} {topup['pay_symbol']} на UID {topup['address']}")
# После внутреннего перевода замените значение на реальный txID из Bybit.
confirmed = requests.post(
f"{BASE_URL}/topups/{topup['topup_id']}/bybit-tx",
headers=headers,
json={"tx_id": "1234567890"},
timeout=20,
).json()
print(confirmed)
Один txID можно использовать только один раз. Перевод должен быть выполнен после создания заявки, иметь статус зачисленного и соответствовать монете и сумме заявки.
Получить текущее состояние без обращения к платёжному провайдеру:
GET /topups/{topup_id}
Статусы заявки:
pending заявка создана, ожидает оплату или проверку hash
completed платеж подтвержден, баланс пополнен
cancelled заявка или истёкший счёт отменены
Минимальные суммы и комиссии могут отличаться по монете и сети. Перед созданием заявки всегда используйте GET /topups/crypto/methods и проверяйте address, pay_amount, pay_symbol, memo и address_transfer_warning из ответа POST /topups/crypto. Для XRP поле memo — обязательный Destination Tag: перевод без него не будет зачислен. Вывод из Crypto Bot или xRocket на выданный on-chain address запрещен: перевод может не быть распознан и зачислен.