Вывод средств
API для бизнеса
Запрос
POST https://aaio.so/api/create-payoff
Заголовки
Accept: application/json *
Content-Type: application/x-www-form-urlencoded *
X-Api-Key: {api_key} *
Определения
{api_key} - Ключ API из раздела https://aaio.so/business/api/keys с разрешениями:
Вывод средств
* - обязательные заголовки. Без них Вы не сможете получить корректный ответ.
Параметры (url-encoded)
my_id
string
ID вывода средств в Вашей системе
wallet *
string
Номер счета/кошелька в допустимом формате (без пробелов и разделителей)
amount *
double / int
Сумма вывода в RUB
commission_type
int
Комиссия:
0 - с суммы платежа (по умолчанию)
1 - с баланса
mobile_operator
string
Кодовое название мобильного оператора.
Поле обязательное при методе mobile_ru
beeline_ru - Билайн
tele2 - Tele2
mts_ru - МТС
megafon_ru - Мегафон
webhook_url
url
Webhook URL для отправки оповещения о выполнении либо отмене вывода. Данный URL будет использоваться вместо того что указан в настройках аккаунта если вы укажите его в параметре.
Обратите внимание! Параметры передаются в формате application/x-www-form-urlencoded
Примеры ответа
Формат ответа application/json
Пример если к отправке будет валюта USD, USDT, BTC, UAH:
{
"type": "success",
"id": "52a16aea-d308-11ed-afa1-0242ac120002", // ID Вывода средств в нашей системе
"my_id": "my_id_123", // ID Вывода средств в Вашей системе
"method": "tether_trc20", // Кодовое название платежной системы
"wallet": "*********", // Номер счета/кошелька
"amount": 485, // Придёт на счет (в RUB)
"amount_in_currency": 5, // Придёт на счет (в валюте)
"amount_currency": "USDT", // Валюта отправки на счет
"amount_rate": 96.92, // Курс конвертации
"amount_down": 500, // Списано с баланса (в RUB)
"commission": 15, // Сумма комиссии (в RUB)
"commission_type": 0, // Тип комиссии
"status": "in_process" // Статус (in_process - в процессе, cancel - отменено, success - выполнено)
}Пример если к отправке будет валюта RUB:
{
"type": "success",
"id": "52a16aea-d308-11ed-afa1-0242ac120002", // ID Вывода средств в нашей системе
"my_id": "my_id_123", // ID Вывода средств в Вашей системе
"method": "qiwi", // Кодовое название платежной системы
"wallet": "*********", // Номер счета/кошелька
"amount": 485, // Придёт на счет (в RUB)
"amount_in_currency": 485, // Придёт на счет (в валюте)
"amount_currency": "RUB", // Валюта отправки на счет
"amount_down": 500, // Списано с баланса (в RUB)
"commission": 15, // Сумма комисии (в RUB)
"commission_type": 0, // Тип комиссии
"status": "in_process" // Статус (in_process - в процессе, cancel - отменено, success - выполнено)
}Пользовательские коды ошибок - 400, 401, 429
Серверные коды ошибок - 500, 503
{
"type": "fail",
"code": "400",
"message": "message"
}Если код ответа другой, то возможна проблема на стороне сервера API. Рекомендуем учитывать такие ситуации в коде.
Готовые примеры запроса
curl -X 'POST' \
'https://aaio.so/api/create-payoff' \
-H 'accept: application/json' \
-H 'x-api-key: API_KEY' \
-d 'my_id=my_id_123' \
-d 'method=tether_trc20' \
-d 'amount=500' \
-d 'commission_type=0' \
-d 'wallet=*********'<?php
$api_key = ''; // Ключ API из раздела https://aaio.so/cabinet/api
$my_id = 'my_id_123'; // ID вывода средств в Вашей системе
$method = 'tether_trc20'; // Кодовое название платежной системы
$amount = 500; // Сумма вывода
$wallet = '*********'; // Номер счета/кошелька
$commission_type = 0; // Тип комиссии
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://aaio.so/api/create-payoff');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Accept: application/json',
'X-Api-Key: ' . $api_key
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
'my_id' => $my_id,
'method' => $method,
'amount' => $amount,
'wallet' => $wallet,
'commission_type' => $commission_type
]));
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15); // Таймаут подключения к нашему серверу
curl_setopt($ch, CURLOPT_TIMEOUT, 60); // Таймаут обработки запроса
$result = curl_exec($ch); // Ответ
$http_code = curl_getinfo($ch, CURLINFO_RESPONSE_CODE); // Код ответа
if (curl_errno($ch)) {
die('Connect error:' . curl_error($ch)); // Вывод ошибки соединения
}
curl_close($ch);
if(!in_array($http_code, [200, 400, 401])) {
die('Response code: ' . $http_code); // Вывод неизвестного кода ответа
}
$decoded = json_decode($result, true); // Парсинг результа. На выходе получаем массив данных
if(json_last_error() !== JSON_ERROR_NONE) {
die('Не удалось пропарсить ответ');
}
if($decoded['type'] == 'success') {
print_r($decoded); // Вывод результата
} else {
die('Ошибка: ' . $decoded['message']); // Вывод ошибки
}import requests, sys
from requests.exceptions import ConnectTimeout, ReadTimeout
url = 'https://aaio.so/api/create-payoff'
api_key = '' # Ключ API из раздела https://aaio.so/cabinet/api
my_id = 'my_id_123' # ID вывода средств в Вашей системе
method = 'tether_trc20' # Кодовое название платежной системы
amount = 500; # Сумма вывода
wallet = '' # Номер счета/кошелька
commission_type = 0 # Тип комиссии
params = {
'my_id': my_id,
'method': method,
'amount': amount,
'wallet': wallet,
'commission_type': commission_type,
}
headers = {
'Accept': 'application/json',
'X-Api-Key': api_key
}
try:
response = requests.post(url, data=params, headers=headers, timeout=(15, 60))
except ConnectTimeout:
print('ConnectTimeout') # Не хватило времени на подключение к сайту
sys.exit()
except ReadTimeout:
print('ReadTimeout') # Не хватило времени на выполнение запроса
sys.exit()
if(response.status_code in [200, 400, 401]):
try:
response_json = response.json() # Парсинг результата
except:
print('Не удалось пропарсить ответ')
sys.exit()
if(response_json['type'] == 'success'):
print(response_json) # Вывод результата
else:
print('Ошибка: ' + response_json['message']) # Вывод ошибки
else:
print('Response code: ' + str(response.status_code)) # Вывод неизвестного кода ответа
Last updated