Формирование подписи
Запросы для взаимодействия с платежной системой подписываются с использованием алгоритма SHA256.
Для формирование подписи необходимо:
В случае POST запроса, тело запроса requestData сортируется по алфавиту и кодируется в BASE64.
В случае GET запроса, Query params преобразуем в JSON. ИЗ: https://prapi.tarlanpayments.kz/transaction/api/v1/system/client/cards?merchant_id=123&project_id=124&project_client_id=999 В: { "merchant_id" : 123, "project_client_id" : "999", "project_id" : 124} После преобразования сортируем по алфавиту и кодируем в BASE64.
Конкатенируем кодированное тело запроса (base64EncodedData) и secret (выдается мерчанту платежной организацией)
Используя хеш-функцию SHA256 хешируем полученный результат (dataToSign)
Добавляем подпись в заголовок запроса Authorization: Bearer sign
Все тело запроса участвует в подписи, кроме полей c пустым значением строки "" Поле additional_data не участвует в формировании подписи
В формировании подписи участвует все тело запроса с исключениями: Поля с пустыми строковыми значениями "" не участвуют в подписи; Поле additional_data не участвует в формировании подписи
Last updated