<?php /* SimplePay API PHP example (for PHP 5) https://simplepay.pro/ */ require_once 'SimplePay.class.php'; $new_payment = new SimplePay_Payment(); // Новый экземпляр платежа $new_payment->order_id = 300; // номер заказа $new_payment->amount = 500; // сумма $new_payment->description = 'Описание заказа'; $simplepay = new SimplePay(); // 1. Обычный платеж с передачей параметров в браузере пользователя $simplepay->init_payment($new_payment); // 2. Прямое взаимодействие - вернет ссылку для оплаты и описание параметров в виде XML или JSON //$direct_answer = $simplepay->init_payment_direct($new_payment); // Переадресация плательщика //header("location: ".$direct_answer['sp_redirect_url']); /* вернет массив типа ( [sp_salt] => 872014043 [sp_status] => ok [sp_redirect_url_type] => need data [sp_redirect_url] => https://secure.simplepay.pro/payment_page.php?id=e96081c978845e3410d1a9ebf1c8c4ef [sp_sig] => 09a1505a52db8d5d9c14ab298df4a120 ) */ // 3. проведение платежа по рекурентному профилю
<?php /* SimplePay API PHP example (for PHP 5) https://simplepay.pro/ */ // // Это обработчик Result для Вашего платежа // Перепишите методы process_success() и process_fail() в SimplePay.class.php // require_once "SimplePay.class.php"; $simplepay = new SimplePay(); $simplepay->process_request_result();
<?php include dirname(__FILE__) . '/../../config/config.inc.php'; include dirname(__FILE__) . '/../../init.php'; include dirname(__FILE__) . '/simplepay.php'; $simplepay = new SimplePay(); $cart = Context::getContext()->cart; $customer = new Customer($cart->id_customer); /* Verify SimplePay transaction */ $private_key = Configuration::get('SIMPLEPAY_LIVE_PRIVATE_KEY'); if ((int) Configuration::get('SIMPLEPAY_TEST_MODE')) { $private_key = Configuration::get('SIMPLEPAY_TEST_PRIVATE_KEY'); } $data = array('token' => $_POST['token']); $data_string = json_encode($data); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://checkout.simplepay.ng/v1/payments/verify/'); curl_setopt($ch, CURLOPT_USERPWD, $private_key . ':'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Content-Length: ' . strlen($data_string))); $curl_response = curl_exec($ch); $curl_response = preg_split("/\r\n\r\n/", $curl_response); $response_content = $curl_response[1]; $json_response = json_decode(chop($response_content), TRUE); $response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($response_code == '200') {