Авторизация
Все запросы к апи осуществляются по адресу https://cashmost.com/api/userapi/{command}?sign={sign} методом POST и параметрами в формате JSON
Формирование подписи
Для генерирования цифровой подписи (sign) Вам необходимо передаваемый "POST body" подписать секретным ключом с помощью алгоритма HMAC SHA512
Пример функции запроса к API на языке программирвоания PHP:
function apiRequest($command, $reqParams)
{
$secret = 'xxx';
$reqParams['ShopId'] = 'c4cfc3ed-d402-48fa-a99f-704fe0cc840f';
$reqParams['Nonce'] = time();
$postJson = json_encode($reqParams);
$sign = hash_hmac('sha512', $postJson, $secret);
$url = "https://cashmost.com/api/userapi/$command?sign=$sign";
$options = array(
'http' => array(
'header' => "Content-type: application/json\r\n",
'method' => 'POST',
'content' => $postJson
)
);
$context = stream_context_create($options);
$resJson = file_get_contents($url, false, $context);
$result = json_decode($resJson, true);
return $result;
}
$response = apiRequest('getbalance', []);
Получение баланса - getbalance
Ответ в формате JSON следующего вида:
{
"Success":bool|true:false,
"Message":"optional|Описание ошибки в случае неудачи",
"Data":[
{
"CurrencyId":"USD",
"Available":10.01
}
]
}
Создание заявки на вывод - createWithdrawal
В таблице ниже указанны параметры для создания заявки
Parameter | Required | Description |
---|---|---|
WalletId |
required | int |
PointId |
required | int, Id точки вывода |
Purse |
required | string, Номер кошелька |
Amount |
required | Сумма к получению пользователем в валюте получения |
AmountFromShop |
required | Сумма к списанию с мерчанта в валюте кошелька WalletId |
ShopOrderId |
optional | Номер счета на сайте продавца |
StatusUrl |
optional | URL для коллбека со статусом платежа |
Ответ в формате JSON следующего вида:
{"Success":"bool|true:false", "Message": "optional|Описание ошибки в случае неудачи", "Data": "int|Id заявки в системе Cashmost"}
Информация по заявке вывода - findWithdrawal
В таблице ниже указанны параметры для поиска заявки
Parameter | Required | Description |
---|---|---|
PaymentId |
required | int, Id заявки в системе Cashmost |
Ответ в формате JSON следующего вида:
{
"Success": true,
"Message": null,
"Data": {
"Id": 2,
"Guid": "beb21e32-a1d4-44c2-a9af-6cc8bc43ed48",
"CreateDateTime": "2018-04-17T00:00:00",
"CurrencyId": "USD", //Валюта к получению пользователем
"ToShopCurrencyId": "USD", //Валюта кошелька магазина
"PaySystem": "Perfect Money",
"ClientEmail": null,
"ShopOrderId": null,
"PaymentType": "Withdrawal",
"MerchantTransactionId": null, //Номер транзакции поставщика
"State": "Created",
"Purse": null,
"Amount": 10.00000000, //Сумма к получению пользователем
"AmountToShop": 10.00000000, //Сумма списанная с мерчанта
"Comment":"string|null"
}
}
Поиск платежей - findPayments
В таблице ниже указанны параметры для поиска заявки
Parameter | Required | Description |
---|---|---|
PaymentType |
required | Deposit, Withdrawal |
PaymentId |
optional | int, Id заявки в системе Cashmost |
ShopOrderId |
optional | string, Id заказа мерчанта |
FromDateTime |
optional | string, (ex. 2020-01-01 00:00:00) |
ToDateTime |
optional | string, (ex. 2020-01-01 00:00:00) |
Если не задан ни один "optional" параметр, запрос вернет все платежи за текущий день
Ответ в формате JSON следующего вида:
{
"Success":true,
"Message":null,
"Data":[
{
"Id":2,
"Guid":"beb21e32-a1d4-44c2-a9af-6cc8bc43ed48",
"CreateDateTime":"2018-04-17T00:00:00",
"CurrencyId":"USD",
"ToShopCurrencyId":"USD",
"PaySystem":"Perfect Money",
"ClientEmail":null,
"ShopOrderId":null,
"PaymentType":"Withdrawal",
"MerchantTransactionId": null
"State":"Created",
"Purse":null,
"Amount":10.00000000,
"AmountToShop":10.00000000,
"Comment":"string|null"
}
]
}