Документация

Описание

Вы можете использовать API для кассы и Вашего личного кабинета. Подробности по подключению описаны ниже.

Создание платежа

Вы можете использовать POST / GET запрос для создания формы. Так же ниже мы привели подробный пример создания платежный формы.
Запрос мы обрабатываем по адресу https://to-payments.com/create/?параметры

Параметры для создания платежа
Параметр Обязательные Описание
id Да Номер Вашего проекта
secret Да Секретный ключ Вашего проекта.
amount Да Сумма платежа. Указывается в формате: 1.00 руб
pay_id Да Номер платежа в Вашей системе. ( Уникальный индефикатор )
description Нет Описание платежа в Вашей системе.
email Нет Электронная почта плательщика
system Нет Система для оплаты. ( Полный список систем представлен ниже )
my_parametr Нет Вы можете передавать свои параметры в платежную форму до 2048 символов.
Название параметра вы определяете сами.
Системы оплаты
Название API
Qiwi Кошелёк qiwi
Карты ( RUS ) cardru
Функции для облегчения интеграции:

 // Функции для быстрой интеграции

function getHash($id_kassa ,$secret_kassa , $amount , $pay_id){  // Получение Hash

$amount = number_format($amount, 2 , '.', '');
$string = $id_kassa.'&'.$secret_kassa.'&'.$amount.'&'.$pay_id;
$result = hash('sha256' , $string);
return $result; 

} 


function getLink($data){  // Получение ссылки на оплату

$data['sign'] = getHash($data['id'] , $data['secret'] , $data['amount'] , $data['pay_id']);
unset($data['secret']);
$result = http_build_query($data, '', '&');
return 'https://to-payments.com/create/?'.$result;

} 
                          

                        
PHP код для GET запроса:

$kassa_id = "112";  // номер кассы
$kassa_secret = "KSDSndsaKJsafsaf";  // секретный ключ для Вашей кассы

 // Формируем массив для запроса

$data_kassa = [
 // Обязательные
'id' => $kassa_id // ID кассы
'secret' => $kassa_secret // Secret кассы
'amount' => '1' // Сумма платежа
'pay_id' => $pay_id // Идентификатор в Вашей системе

 // Не обязательные

'description' => 'Пополнение баланса' // Описание платежа
'email' => $email // Почта плательщика
'system' => 'qiwi' // Система для оплаты
'my_parametr' => '1234' // Мой параметр
];


$url = getLink($data_kassa); // получаем URL
header('Location: '.$url);
exit();
Платежная форма POST:

<form method="POST" action="https://to-payments.com/create/">
    <input type="hidden" name = "id" value="<? echo $kassa_id; ?>">
    <input type="hidden" name = "secret" value="<? echo $kassa_secret; ?>">
    <input type="hidden" name = "amount" value="<? echo $amount; ?>">
    <input type="hidden" name = "pay_id" value="<? echo $pay_id; ?>">

    <!-- не обязательные ниже -->

    <input type="hidden" name = "description" value="<? echo 'Описание платежа'; ?>">
    <input type="hidden" name = "system" value="<? echo 'qiwi'; ?>">
    <input type="hidden" name = "sign" value="<? echo getHash($id_kassa ,$secret_kassa , $amount , $pay_id); ?>">
    <input type="hidden" name = "my_parametr" value="parametr">
    <button<Оплатить</button>
</form>                            

                        

Оповещение об оплате

Вы можете использовать POST / GET запрос для передачи данных. Настройки проводятся в личном кабинете Вашего акканута.

Пример обработчика платежа:

function getActiveIp(){  // Проверка IP адреса

if(isset($_SERVER['HTTP_X_REAL_IP'])) return  $_SERVER['HTTP_X_REAL_IP']; 
return $_SERVER['REMOTE_ADDR']; 

}


if(!in_array(getActiveIp(), ['212.109.222.2'] )) {  // Проверка актуального IP адреса
exit("Error");
}


$code = getHash($kassa_id,$kassa_secret,$_POST['amount'],$_POST['pay_id']); // генерируем HASH 
// ( функция для генерации представлена выше ) 
// Параметры приходят в зависимости от настроек POST / GET


if( $code !=  $_POST['sign']){
 exit('Неверная подпись ! ');
}

// Выполняем ваш код //


exit('OK'); // успешная операция