Вам нужно будет отправить запрос со следующими данными:
Обязательные параметры
-
token API ключ аккаунта
-
unique_id Уникальный ID заказа в вашей системе
-
amount Сумма пополнения
-
shop_id Айди магазина
-
description Описание к пополнению
-
user_ip IP пользователя
Необязательные параметры
-
system_name Способ оплаты ("sbp", "payeer")
-
additional Дополнительные данные, которые вам нужны будут
-
email Email адрес пользователя
-
user_id ID пользователя (Обязателен для тг ботов)
Пример запроса на языке PHP:
$token = "xxxxxxxxxxxxxxxx"; // API ключ аккаунта $shop_id = 1; // Айди магазина $unique_id = 45666; // Уникальный айди заказа в вашей системе $summa = 5; // Сумма платежа $desc = "Описание"; // Описание к пополнению $ip = $_SERVER['REMOTE_ADDR']; // IP пользователя $system_name = "sbp"; // Способ оплаты $additional = ""; // Дополнительные данные, которые вам нужны будут $email = ""; $url = 'https://techwhizpay.ru/api/createOrder'; $params = array( 'token' => $token, 'unique_id' => $unique_id, 'amount' => $summa, 'shop_id'=> $shop_id, 'description' => $desc, 'user_ip' => $user_ip, 'system_name' => $system_name, 'additional' => $additional, 'email' => $email ); $result = file_get_contents($url, false, stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => http_build_query($params) ) ))); $result = json_decode($result, true); $link = $result['data']['link']; // Ссылка для оплаты
Пример ответа в случае успеха:
{ "data": { "error": 0, "link": "https://techwhizpay.ru/pay/xxxx-xxxx-xxxx-xxxx", "info": { "order_id": 1, // ID заказа в системе TechWhiz Pay "unique_id": 1, // Уникальный ID заказа в вашей системе "amount": 5, "description": "Описание" } } }
Пример ответа в случае ошибки:
{ "data": { "error": 1, "message": "Не передан API ключ аккаунта" } }
Вам нужно будет отправить запрос со следующими данными:
Необязательные параметры
-
order_id ID заказа в системе TechWhiz Pay (Обязателен при отсутствии unique_id)
-
unique_id Уникальный ID заказа в вашей системе (Обязателен при отсутствии order_id)
Пример запроса на языке PHP:
$unique_id = 45666; // Уникальный айди заказа в вашей системе $url = 'https://techwhizpay.ru/api/checkOrder'; $params = array( 'unique_id' => $unique_id, ); $result = file_get_contents($url, false, stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => http_build_query($params) ) ))); $result = json_decode($result, true); $link = $result['data']['status']; // Статус заказа
Пример ответа в случае успеха:
{ "data": { "error": 0, "status": 0 } }
Параметр status может принимать следующие значения:
-
0 Создан
-
1 Оплачен
-
2 Отменен
Пример ответа в случае ошибки:
{ "data": { "error": 1, "message": "Ошибка" } }
При успешном проведении платежа на ссылку, указанную в настройках (ссылка для уведомлений) будет отправлен GET-запрос со следующими полями:
-
id ID пополнения в системе TechWhiz Pay
-
unique_id уникальный ID пополнения в системе вашего мерчанта
-
sign SHA256(unique_id:amount:token:shop_id)
-
amount сумма пополнения в рублях
-
status статус пополнения
-
created_at дата создания заказа
-
paid_at дата оплаты заказа
-
email email пользователя
-
description описание заказа
-
additional дополнительные данные, которые вы передавали
Пример обработки запроса на языке PHP:
$id = $_GET['id']; //ID пополнения в системе TechWhiz Pay $unique_id = $_GET['unique_id']; //уникальный ID пополнения в системе вашего мерчанта $sign = $_GET['sign']; //SHA256(unique_id + amount + token + shop_id) $amount = $_GET['amount']; //сумма пополнения $status = $_GET['status']; //статус пополнения $created_at = $_GET['created_at']; //дата создания заказа $paid_at = $_GET['paid_at']; //дата оплаты заказа $email = $_GET['email']; //email пользователя $description = $_GET['description']; //описание заказа $additional = $_GET['additional']; //дополнительные данные, которые вы передавали $my_token = "xxxxxxxxxxxxxxxx"; //API ключ аккаунта $my_shop_id = 1; //Айди магазина $amount = number_format($amount, 2, '.', ''); $my_sign = hash('sha256', "{$unique_id}:{$amount}:{$my_token}:{$my_shop_id}"); if ($sign == $my_sign){ //Далее ваш код обработки платежа }else{ die("Недействительная подпись"); }
Для сервисов на основе CMS, SaaS или фреймворков, а также для CRM и мессенджеров. Просто включите модуль TechWhizPay и пропишите настройки. Если ваша система есть в списке, значит, модуль для неё уже разработан. Если нет, напишите нам. В случаях обнаружения проблем обратитесь в поддержку!