Я использую API-интерфейс Payment Getaway, и когда он неверен в параметрах, он показывает ошибку, мой код следующий:
$paymentData = [
'amount' => '200',
'description' => 'test',
'cardHolder' => 'jon doe',
'cardHolderId' => '11111111',
'cardNumber' => '4111111111111111',
'cvc' => '123',
'expirationDate' => '12/2019',
'IP' => '127.0.0.1',
];
try{
$instapago = new Instapago();
$respuesta = $instapago->directPayment($paymentData);
} catch(\Socialgest\Instapago\Instapago\Exceptions\InstapagoException $e){
// redirect
session()->put('card_error', 1);
return Redirect::to('checkout');
} catch(\Socialgest\Instapago\Instapago\Exceptions\TimeoutException $e){
// redirect
session()->put('card_error', 1);
return Redirect::to('checkout');
}
Дело в том, что если он показывает ошибку, это может быть перенаправлено на другую страницу, как вы можете видеть, я добавляю перенаправление, НО оно не работает, потому что, когда появляется ошибка, отображается это, например:
Socialgest \ Instapago \ Exceptions \ InstapagoException
Error cardHolder: 2323
И это очень уродливое сообщение, поэтому мне интересно, как я могу получить эту ошибку и перенаправить на другую страницу? потому что я пробовал, но это не работает.
Спасибо!