HTTP заголовок |
eshopId::orderId::serviceName::recipientAmount::recipientCurrency::userName::email::successUrl::failUrl::backUrl::resultUrl::expireDate::holdMode::preference::signSecretKey |
В нем signSecretKey
- секретный ключ, полученный вместе с Bearer токеном на странице https://lk.intellectmoney.ru/profile/security/api, остальное - параметры передаваемые в метод.
Скажем, что вы вызываете метод CreateInvoice
со следующими параметрами:
eshopId: 462539 orderId: myorder recipientAmount: 10.00 recipientCurrency: RUB email: e@e.ru |
Для рассчета хеша нужно:
Заменить имена параметров в шаблоне их значениями, и подставить секретный ключ вместо signSecretKey
. Получаем строку:
462539::myorder::::10.00::RUB::::e@e.ru::::::::::::::::21baff51c1a342f3ac059e61e0894583 |
Эту строку нужно закодировать в UTF-8 и посчитать от нее хеш SHA256. Получаем хеш:
1c4e379396faee212c676d500ee12a21354d8f68b1acbc40b64065cd7dcd50fa |
Полученный хеш записываем в заголовок Sign
.
HTTP заголовок |
Параметр |
eshopId::orderId::serviceName::recipientAmount::recipientCurrency::userName::email::successUrl::failUrl::backUrl::resultUrl::expireDate::holdMode::preference::secretKey |
Здесь secretKey
- ключ, заданный в личном кабинете в настройках магазина. Это ключ, как и весь шаблон, не связаны с ключем и шаблоном из заголовка Sign
.
Возьмем такие параметры для примера:
eshopId: 462539 orderId: myorder recipientAmount: 10.00 recipientCurrency: RUB email: e@e.ru |
Для расчета параметра hash
нужно:
Заменить имя каждого параметра его значением, и подставить секретный ключ вашего магазина вместо secretKey
:
462539::myorder::::10.00::RUB::::e@e.ru::::::::::::::::my_very_secret_key |
Закодировать полученную строку в UTF-8 и расчитать её MD5 хеш:
7a97ff0cda3d7593c1a69a04d0a78a13 |
Полученный хеш нужно передать в параметре hash
.
|
|
|
|
|
Чтобы получить ответ в формате JSON, нужно добавить в запрос заголовок Accept: application/json
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"EshopId": 465932,
"Result": {
"PaymentStep": "InProcess",
"State": {
"Code": 0,
"Desc": "Успешно обработан"
}
}
}
|
|
Чтобы получить ответ в формате JSON, нужно добавить в запрос заголовок Accept: application/json
{
"OperationState": {
"Code": 0,
"Desc": "Успешно обработана"
},
"EshopId": 465932,
"Result": {
"State": {
"Code": 0,
"Desc": "Успешно обработан"
}
}
}