Авторизованные запросы Binance

Zedx

Client
Регистрация
12.06.2018
Сообщения
1 346
Благодарностей
910
Баллы
113
Подскажи пожалуйста, в переменную hash, класть закодированную инфу + секрет ключ?
Хэшируем все параметры запроса, api key прописываем только в заголовке запроса. В самом запросе в параметрах пишем опять все параметры, которые передавали на хэширование плюс добавляем подпись - хэш из первого шага: &signature={-Variable.signature-}
 
  • Спасибо
Реакции: vasyaya

_HEDELKA_

Client
Регистрация
20.02.2022
Сообщения
648
Благодарностей
170
Баллы
43

Вложения

Последнее редактирование:

_HEDELKA_

Client
Регистрация
20.02.2022
Сообщения
648
Благодарностей
170
Баллы
43
Всем привет! Работаю сейчас над API binance pay что может быть не так в этом запросе:
Посмотреть вложение 105438

Тело запроса:
{"requestId":"{-Variable.bin_random-}","batchName":"Выплаты остатка с баланса","currency":"USDT","totalAmount":{-Variable.amount-},"totalNumber":1,"bizScene":"MERCHANT_PAYMENT","transferDetailList":[{"merchantSendId":"219928819256303616","transferAmount":{-Variable.amount-},"receiveType":"PAY_ID","transferMethod":"MERCHANT_PAYMENT","receiver":"{-Variable.payerId-}","remark":"Выплаты остатка с баланса"}]}
Хеш:
C#:
string payload = project.Variables["xei"].Value+ " \n" +project.Variables["bin_random"].Value+ " \n" +project.Variables["unixtime"].Value+ " \n";
string secretKey = project.Variables["sekret_bin"].Value;

using (var hmac = new HMACSHA512(Encoding.UTF8.GetBytes(secretKey)))
{
    byte[] hashBytes = hmac.ComputeHash(Encoding.UTF8.GetBytes(payload));
    return BitConverter.ToString(hashBytes).Replace("-", "").ToUpper();
}
Как сам запрос построен:
Посмотреть вложение 105439
Посмотреть вложение 105440
Параметры построены по документации

Заголовок запроса#
ПравилоТипТребуетсяОписание
тип контентастрокаYприложение / json
BinancePay-отметка временидолгоYОтметка времени в миллисекундах, которую запрашивает...
BinancePay-одноразовый платежстрокаYСлучайная строка, сгенерированная продавцами. M...
BinancePay-Сертификат-SNстрокаYКлюч API, сгенерированный на портале администратора Binance Merchant
BinancePay-ПодписьстрокаYПодпись API. Пожалуйста, смотрите следующий шаг для...
Как сгенерировать подпись API#
Шаг 1. Создайте контент

String payload=timestamp+" \n"+nonce+" \n"+body+" \n";
Копировать
Шаг 2. Подпишите содержимое

String signature = hex(hmac("sha512", payload, secretKey)).toUpperCase();


Уже сутки не можем разобраться
А да ответ всегда приходит {"status":"FAIL","code":"400002","errorMessage":"Signature for this request is not valid."}
 

Zedx

Client
Регистрация
12.06.2018
Сообщения
1 346
Благодарностей
910
Баллы
113
Ответил в соседней теме
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)