Введение
В этом разделе описывается работа с CuisPay API.
CuisPay API легко внедрить в ваше бизнес-ПО. Наш API хорошо форматирует URL, принимает запросы cURL, возвращает ответы JSON.
Вы можете использовать API в тестовом режиме, который не влияет на ваши реальные данные. Ключ API используется для аутентификации запроса и определения того, является ли запрос допустимым платежом или нет. Для тестового режима просто используйте URL-адрес песочницы, а в случае реального режима используйте реальный URL-адрес из раздела Генерация платежа .
Поддерживаемые валюты
В этом разделе описываются валюты, поддерживаемые CuisPay
CuisPay allows to make transaction with below currencies. Any new currency may update in future.
Название валюты | Символ валюты | Код валюты |
---|---|---|
United States Dollar | $ | USD |
BTC | ₿ | BTC |
EUR | € | EUR |
LTC | Ł | LTC |
Tether | ₮ | USDT |
Получить API-ключ
В этом разделе описывается, как получить свой ключ API.
Войдите в свой CuisPay merchant account. If you don't have any ? Кликните сюда
Следующий шаг — найти API-ключ в меню боковой панели инструментов. Нажмите на меню.
Там можно найти ключи API, Публичный ключ и Секретный ключ. Используйте эти ключи для инициирования запроса API. Каждый раз вы можете сгенерировать новый ключ API, нажав Сгенерировать API-ключ кнопку. Помните, не передавайте эти ключи никому.
Генерация платежа
В этом разделе описывается процесс инициирования платежа.
Чтобы инициировать платеж, следуйте примеру кода и будьте внимательны с параметрами. Вам нужно будет сделать запрос с этими следующими конечными точками API.
Live End Point: https://cuispay.com/payment/initiate
Test End Point: https://cuispay.com/sandbox/payment/initiate
Test Mode Mail: [email protected]
Test Mode Verification Code: 222666
Request Method: POST
Запрос к конечной точке со следующими параметрами ниже.
Имя параметра | Тип параметра | Описание |
---|---|---|
public_key | string (50) | Обязательный Ваш публичный ключ API |
identifier | string (20) | Обязательный Идентификатор в основном предназначен для идентификации платежа на вашем конце |
currency | string (4) | Обязательный Код валюты, должен быть указан заглавными буквами. Например, USD,EUR |
amount | decimal | Обязательный Сумма платежа. |
details | string (100) | Обязательный Подробная информация о вашем платеже или транзакции. |
ipn_url | string | Обязательный URL-адрес мгновенного уведомления о платеже. |
success_url | string | Обязательный URL-адрес перенаправления для успешного платежа. |
cancel_url | string | Обязательный URL-адрес перенаправления для отмены платежа. |
site_logo | string/url | Обязательный Логотип вашего бизнес-сайта. |
checkout_theme | string | Необязательно Тема оформления заказа темная/светлая. Тема по умолчанию светлая |
customer_name | string (30) | Обязательный Имя клиента. |
customer_email | string (30) | Обязательный Действительный адрес электронной почты клиента. |
<?php
$parameters = [
'identifier' => 'DFU80XZIKS',
'currency' => 'USD',
'amount' => 100.00,
'details' => 'Purchase T-shirt',
'ipn_url' => 'http://example.com/ipn_url.php',
'cancel_url' => 'http://example.com/cancel_url.php',
'success_url' => 'http://example.com/success_url.php',
'public_key' => 'your_public_key',
'site_logo' => 'https://cuispay.com/assets/images/logoIcon/logo.png',
'checkout_theme' => 'dark',
'customer_name' => 'John Doe',
'customer_email' => '[email protected]',
];
//live end point
$url = "https://cuispay.com/payment/initiate";
//test end point
$url = "https://cuispay.com/sandbox/payment/initiate";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
//$result contains the response back.
?>
//Error Response.
{
"error": "true",
"message": "Invalid api key"
}
//Success Response.
{
"success": "ok",
"message": "Payment Initiated. Redirect to url.",
"url":"http://example.com/initiate/payment/checkout?payment_id=eJSAASDxdrt4DASDASVNASJA7893232432cvmdsamnvASF"
}
Проверка платежа и IPN
В этом разделе описывается процесс получения мгновенного уведомления о платеже.
Чтобы инициировать платеж, следуйте примеру кода и будьте внимательны с параметрами. Вам нужно будет сделать запрос с этими следующими конечными точками API.
End Point: URL-адрес IPN вашего сайта/приложения.
Request Method: POST
Ниже вы получите следующие параметры.
Имя параметра | Описание |
---|---|
status | Статус успешного платежа. |
identifier | Идентификатор в основном предназначен для идентификации платежа на вашей стороне. |
signature | Хэш-подпись для подтверждения вашего платежа на вашей стороне. |
data | Данные содержат некоторую базовую информацию, включая сборы, сумму, валюту, идентификатор платежной транзакции и т. д. |
<?php
//Receive the response parameter
$status = $_POST['status'];
$signature = $_POST['signature'];
$identifier = $_POST['identifier'];
$data = $_POST['data'];
// Generate your signature
$customKey = $data['amount'].$identifier;
$secret = 'YOUR_SECRET_KEY';
$mySignature = strtoupper(hash_hmac('sha256', $customKey , $secret));
$myIdentifier = 'YOUR_GIVEN_IDENTIFIER';
if($status == "success" && $signature == $mySignature && $identifier == $myIdentifier){
//your operation logic
}
?>