Я пытаюсь интегрировать PayUMoney в Laravel 5.6.Согласно документу PayUMoney Redirect Checkout, форму необходимо заполнить и отправить по адресу "https://sandboxsecure.payu.in/_payment" (используя URL-адрес песочницы для тестирования). Отправка html-формы с необходимыми заполненными полями успешно перенаправляет меня на страницу шлюза оплаты и работаетхорошо. Но я хотел реализовать это в моем контроллере Laravel. Я сделал следующее:
мои маршруты:
Route::get('book/placeOrder', ['uses' => 'BooksController@placeOrder', 'as' => 'placeOrder']);
Route::get('payumoney/surl', ['uses' => 'BooksController@surl', 'as' => 'payumoneysurl']);
Route::get('payumoney/furl', ['uses' => 'BooksController@furl', 'as' => 'payumoneyfurl']);
функция placeOrder в BooksController:
public function sendCurlPostRequest(){
//code to add order and order details go here
$salt = "[my merchant salt]";
$hash_string = '';
$hash_string .= "[hash string as per the payumoney checkout document]";
$hash_string .= $salt;
$hash = strtolower(hash('sha512', $hash_string));
$data1 = [
'key' => "[merchant key]",
'hash' => $hash,
'txnid' => "or1234txn",
'amount' => "10",
'firstname' => "[sample customer name]",
'email' => "[sample email]",
'phone' => "[sample phone number]",
'productinfo' => "book",
'surl' => "[route to success page]",
'furl' => "[route to failure page]",
'service_provider' => "payu_paisa",
];
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://sandboxsecure.payu.in/_payment",
CURLOPT_RETURNTRANSFER => false,
CURLOPT_FOLLOWLOCATION => 1,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $data1,
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
//print_r(json_decode($response));
//print_r($response);
}
}
При нажатии кнопки «Оформить заказ» на странице корзины я перенаправляюсь на страницу PayUMoney, но страница загружается не полностью. Только html страницыпоявляется заголовок и появляется загрузчик страницы. Поскольку страница не загружается, загрузчик - это все, что я вижу.
Не могли бы вы мне помочь, как правильно внедрить платежный шлюз PayUMoney (желательно без какой-либо третьей стороны)в моем методе контроллера Laravel?
Пожалуйста, укажите мне необходимое решение ...
Спасибо