diff --git a/src/Patpass/PatpassByWebpay/Transaction.php b/src/Patpass/PatpassByWebpay/Transaction.php index fe823f27..77fb7116 100644 --- a/src/Patpass/PatpassByWebpay/Transaction.php +++ b/src/Patpass/PatpassByWebpay/Transaction.php @@ -36,7 +36,12 @@ public function create($buyOrder, $sessionId, $amount, $returnUrl, $details) try { $response = $this->sendRequest('POST', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCreateException::raise($exception); + throw new TransactionCreateException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCreateResponse($response); @@ -50,7 +55,12 @@ public function commit($token) try { $response = $this->sendRequest('PUT', $endpoint.'/'.$token, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCommitException::raise($exception); + throw new TransactionCommitException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCommitResponse($response); @@ -64,7 +74,12 @@ public function status($token) try { $response = $this->sendRequest('GET', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw TransactionStatusException::raise($exception); + throw new TransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionStatusResponse($response); diff --git a/src/Patpass/PatpassComercio/Inscription.php b/src/Patpass/PatpassComercio/Inscription.php index cc3a3856..7ad52bb5 100644 --- a/src/Patpass/PatpassComercio/Inscription.php +++ b/src/Patpass/PatpassComercio/Inscription.php @@ -85,7 +85,12 @@ public function start( try { $response = $this->sendRequest('POST', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw InscriptionStartException::raise($exception); + throw new InscriptionStartException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new InscriptionStartResponse($response); @@ -111,7 +116,12 @@ public function status($token) try { $response = $this->sendRequest('POST', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw InscriptionStatusException::raise($exception); + throw new InscriptionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new InscriptionStatusResponse($response); diff --git a/src/TransaccionCompleta/MallTransaction.php b/src/TransaccionCompleta/MallTransaction.php index 35ec4f67..25953461 100644 --- a/src/TransaccionCompleta/MallTransaction.php +++ b/src/TransaccionCompleta/MallTransaction.php @@ -56,7 +56,12 @@ public function create( try { $response = $this->sendRequest('POST', static::ENDPOINT_CREATE, $payload); } catch (WebpayRequestException $exception) { - throw MallTransactionCreateException::raise($exception); + throw new MallTransactionCreateException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionCreateResponse($response); @@ -80,7 +85,12 @@ public function installments( return new MallTransactionInstallmentsResponse($response); }, $details); } catch (WebpayRequestException $exception) { - throw TransactionInstallmentsException::raise($exception); + throw new TransactionInstallmentsException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } } @@ -97,7 +107,12 @@ public function commit( try { $response = $this->sendRequest('PUT', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw MallTransactionCommitException::raise($exception); + throw new MallTransactionCommitException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionCommitResponse($response); @@ -120,7 +135,12 @@ public function refund( try { $response = $this->sendRequest('POST', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw MallTransactionRefundException::raise($exception); + throw new MallTransactionRefundException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionRefundResponse($response); @@ -133,7 +153,12 @@ public function status($token) try { $response = $this->sendRequest('GET', $endpoint, null); } catch (WebpayRequestException $exception) { - throw MallTransactionStatusException::raise($exception); + throw new MallTransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionStatusResponse($response); @@ -165,7 +190,12 @@ public function capture($token, $commerceCode, $buyOrder, $authorizationCode, $c try { $response = $this->sendRequest('PUT', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw MallTransactionCaptureException::raise($exception); + throw new MallTransactionCaptureException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new Responses\MallTransactionCaptureResponse($response); diff --git a/src/TransaccionCompleta/Transaction.php b/src/TransaccionCompleta/Transaction.php index 578c0fdb..e13932f0 100644 --- a/src/TransaccionCompleta/Transaction.php +++ b/src/TransaccionCompleta/Transaction.php @@ -63,7 +63,12 @@ public function create( try { $response = $this->sendRequest('POST', static::ENDPOINT_CREATE, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCreateException::raise($exception); + throw new TransactionCreateException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCreateResponse($response); @@ -91,7 +96,12 @@ public function installments( try { $response = $this->sendRequest('POST', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw TransactionInstallmentsException::raise($exception); + throw new TransactionInstallmentsException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionInstallmentsResponse($response); @@ -125,7 +135,12 @@ public function commit( try { $response = $this->sendRequest('PUT', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCommitException::raise($exception); + throw new TransactionCommitException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCommitResponse($response); @@ -151,7 +166,12 @@ public function refund($token, $amount) try { $response = $this->sendRequest('POST', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw TransactionRefundException::raise($exception); + throw new TransactionRefundException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionRefundResponse($response); @@ -172,7 +192,12 @@ public function status($token) try { $response = $this->sendRequest('GET', $endpoint, null); } catch (WebpayRequestException $exception) { - throw TransactionStatusException::raise($exception); + throw new TransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new \Transbank\TransaccionCompleta\Responses\TransactionStatusResponse($response); @@ -202,7 +227,12 @@ public function capture($token, $buyOrder, $authorizationCode, $captureAmount) try { $response = $this->sendRequest('PUT', $endpoint, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCaptureException::raise($exception); + throw new TransactionCaptureException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new Responses\TransactionCaptureResponse($response); diff --git a/src/Utils/InteractsWithWebpayApi.php b/src/Utils/InteractsWithWebpayApi.php index f891bc2d..f408f39d 100644 --- a/src/Utils/InteractsWithWebpayApi.php +++ b/src/Utils/InteractsWithWebpayApi.php @@ -56,8 +56,6 @@ public function sendRequest($method, $endpoint, $payload = []) /** * @param Options $options - * - * @return $this */ public function loadOptions(Options $options = null) { @@ -72,8 +70,6 @@ public function loadOptions(Options $options = null) } $this->setOptions($options); - - return $this; } /** @@ -90,8 +86,6 @@ public function getOptions() public function setOptions(Options $options) { $this->options = $options; - - return $this; } /** @@ -108,8 +102,6 @@ public function getRequestService() public function setRequestService(RequestService $requestService = null) { $this->requestService = $requestService; - - return $this; } /** diff --git a/src/Webpay/Exceptions/WebpayRequestException.php b/src/Webpay/Exceptions/WebpayRequestException.php index 25ddcb9a..71bfe2d2 100644 --- a/src/Webpay/Exceptions/WebpayRequestException.php +++ b/src/Webpay/Exceptions/WebpayRequestException.php @@ -43,11 +43,12 @@ public function __construct( $message, $tbkErrorMessage = null, $httpCode = null, - TransbankApiRequest $failedRequest = null + TransbankApiRequest $failedRequest = null, + \Exception $previous = null ) { $theMessage = isset($tbkErrorMessage) ? $tbkErrorMessage : $message; if ($failedRequest !== null) { - $theMessage = $this->getExceptionMessage($message, $tbkErrorMessage, $httpCode, $failedRequest); + $theMessage = $this->getExceptionMessage($message, $tbkErrorMessage, $httpCode); } $this->message = $theMessage; @@ -55,7 +56,7 @@ public function __construct( $this->httpCode = $httpCode; $this->failedRequest = $failedRequest; - parent::__construct($theMessage, $httpCode); + parent::__construct($theMessage, $httpCode, $previous); } /** @@ -74,7 +75,7 @@ public function getTransbankErrorMessage() public static function raise(WebpayRequestException $exception) { return new static($exception->getMessage(), $exception->getTransbankErrorMessage(), $exception->getHttpCode(), - $exception->getFailedRequest()); + $exception->getFailedRequest(), $exception); } /** @@ -97,15 +98,13 @@ public function getFailedRequest() * @param $message * @param $tbkErrorMessage * @param $httpCode - * @param TransbankApiRequest|null $failedRequestCapturedData * * @return string */ protected function getExceptionMessage( $message, $tbkErrorMessage, - $httpCode, - TransbankApiRequest $failedRequestCapturedData = null + $httpCode ) { if (!$tbkErrorMessage) { $theMessage = $message; @@ -113,22 +112,7 @@ protected function getExceptionMessage( $theMessage = 'API Response: "'.$tbkErrorMessage.'" ['.$httpCode.'] - '.static::$defaultMessage; } - if ($possibleCause = $this->getPossibleCause($httpCode, $tbkErrorMessage, $failedRequestCapturedData)) { - return $theMessage.' - '.$possibleCause; - } - return $theMessage; } - /** - * @param $httpCode - * @param $tbkErrorMessage - * @param TransbankApiRequest|null $failedRequestCapturedData - * - * @return null - */ - protected function getPossibleCause($httpCode, $tbkErrorMessage, TransbankApiRequest $failedRequestCapturedData = null) - { - return null; - } } diff --git a/src/Webpay/Modal/Transaction.php b/src/Webpay/Modal/Transaction.php index dcd896b8..a125d2f2 100644 --- a/src/Webpay/Modal/Transaction.php +++ b/src/Webpay/Modal/Transaction.php @@ -49,7 +49,12 @@ public function create($amount, $buyOrder, $sessionId = null) try { $response = $this->sendRequest('POST', static::CREATE_TRANSACTION_ENDPOINT, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCreateException::raise($exception); + throw new TransactionCreateException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCreateResponse($response); @@ -70,7 +75,12 @@ public function commit($token) try { $response = $this->sendRequest('PUT', $endpoint, []); } catch (WebpayRequestException $exception) { - throw TransactionCommitException::raise($exception); + throw new TransactionCommitException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCommitResponse($response); @@ -91,7 +101,12 @@ public function status($token) try { $response = $this->sendRequest('GET', $endpoint, []); } catch (WebpayRequestException $exception) { - throw TransactionStatusException::raise($exception); + throw new TransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionStatusResponse($response); @@ -117,7 +132,12 @@ public function refund($token, $amount) ['amount' => $amount] ); } catch (WebpayRequestException $exception) { - throw TransactionRefundException::raise($exception); + throw new TransactionRefundException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionRefundResponse($response); diff --git a/src/Webpay/Oneclick/MallInscription.php b/src/Webpay/Oneclick/MallInscription.php index 36f6ac28..e02b44f2 100644 --- a/src/Webpay/Oneclick/MallInscription.php +++ b/src/Webpay/Oneclick/MallInscription.php @@ -56,8 +56,13 @@ public function start($username, $email, $responseUrl) static::INSCRIPTION_START_ENDPOINT, $payload ); - } catch (WebpayRequestException $e) { - throw InscriptionStartException::raise($e); + } catch (WebpayRequestException $exception) { + throw new InscriptionStartException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new InscriptionStartResponse($response); @@ -71,8 +76,13 @@ public function finish($token) str_replace('{token}', $token, static::INSCRIPTION_FINISH_ENDPOINT), null ); - } catch (WebpayRequestException $e) { - throw InscriptionFinishException::raise($e); + } catch (WebpayRequestException $exception) { + throw new InscriptionFinishException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new InscriptionFinishResponse($response); @@ -91,12 +101,17 @@ public function delete($tbkUser, $username) static::INSCRIPTION_DELETE_ENDPOINT, $payload ); - } catch (WebpayRequestException $e) { - if ($e->getHttpCode() !== 204) { - return new InscriptionDeleteResponse(false, $e->getHttpCode()); + } catch (WebpayRequestException $exception) { + if ($exception->getHttpCode() !== 204) { + return new InscriptionDeleteResponse(false, $exception->getHttpCode()); } - throw InscriptionDeleteException::raise($e); + throw new InscriptionDeleteException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new InscriptionDeleteResponse(true); diff --git a/src/Webpay/Oneclick/MallTransaction.php b/src/Webpay/Oneclick/MallTransaction.php index 6cb0902c..30331258 100644 --- a/src/Webpay/Oneclick/MallTransaction.php +++ b/src/Webpay/Oneclick/MallTransaction.php @@ -42,8 +42,13 @@ public function authorize( static::AUTHORIZE_TRANSACTION_ENDPOINT, $payload ); - } catch (WebpayRequestException $e) { - throw MallTransactionAuthorizeException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionAuthorizeException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionAuthorizeResponse($response); @@ -64,8 +69,13 @@ public function capture($childCommerceCode, $childBuyOrder, $authorizationCode, static::TRANSACTION_CAPTURE_ENDPOINT, $payload ); - } catch (WebpayRequestException $e) { - throw MallTransactionCaptureException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionCaptureException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionCaptureResponse($response); @@ -79,8 +89,13 @@ public function status($buyOrder) str_replace('{buy_order}', $buyOrder, static::TRANSACTION_STATUS_ENDPOINT), null ); - } catch (WebpayRequestException $e) { - throw MallTransactionStatusException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionStatusResponse($response); @@ -100,8 +115,13 @@ public function refund($buyOrder, $childCommerceCode, $childBuyOrder, $amount) str_replace('{buy_order}', $buyOrder, static::TRANSACTION_REFUND_ENDPOINT), $payload ); - } catch (WebpayRequestException $e) { - throw MallRefundTransactionException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallRefundTransactionException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionRefundResponse($response); diff --git a/src/Webpay/WebpayPlus/MallTransaction.php b/src/Webpay/WebpayPlus/MallTransaction.php index 00934bca..ac916c31 100644 --- a/src/Webpay/WebpayPlus/MallTransaction.php +++ b/src/Webpay/WebpayPlus/MallTransaction.php @@ -54,7 +54,12 @@ public function create($buyOrder, $sessionId, $returnUrl, $details) $payload ); } catch (WebpayRequestException $exception) { - throw MallTransactionCreateException::raise($exception); + throw new MallTransactionCreateException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionCreateResponse($response); @@ -83,8 +88,13 @@ public function commit($token) str_replace('{token}', $token, static::ENDPOINT_COMMIT), null ); - } catch (WebpayRequestException $e) { - throw MallTransactionCommitException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionCommitException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionCommitResponse($response); @@ -115,8 +125,13 @@ public function refund($token, $buyOrder, $childCommerceCode, $amount) str_replace('{token}', $token, static::ENDPOINT_REFUND), $payload ); - } catch (WebpayRequestException $e) { - throw MallTransactionRefundException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionRefundException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionRefundResponse($response); @@ -138,8 +153,13 @@ public function status($token) str_replace('{token}', $token, static::ENDPOINT_STATUS), null ); - } catch (WebpayRequestException $e) { - throw MallTransactionStatusException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionStatusResponse($response); @@ -177,8 +197,13 @@ public function capture( str_replace('{token}', $token, static::ENDPOINT_CAPTURE), $payload ); - } catch (WebpayRequestException $e) { - throw MallTransactionCaptureException::raise($e); + } catch (WebpayRequestException $exception) { + throw new MallTransactionCaptureException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new MallTransactionCaptureResponse($response); diff --git a/src/Webpay/WebpayPlus/Responses/TransactionDetail.php b/src/Webpay/WebpayPlus/Responses/TransactionDetail.php index 41f8cd82..cc5a4c25 100644 --- a/src/Webpay/WebpayPlus/Responses/TransactionDetail.php +++ b/src/Webpay/WebpayPlus/Responses/TransactionDetail.php @@ -18,55 +18,20 @@ class TransactionDetail public $commerceCode; public $buyOrder; - /** - * TransactionDetail constructor. - * - * @param $amount - * @param $status - * @param $authorizationCode - * @param $paymentTypeCode - * @param $responseCode - * @param $installmentsNumber - * @param $installmentsAmount - * @param $commerceCode - * @param $buyOrder - */ - public function __construct( - $amount, - $status, - $authorizationCode, - $paymentTypeCode, - $responseCode, - $installmentsNumber, - $installmentsAmount, - $commerceCode, - $buyOrder - ) { - $this->amount = $amount; - $this->status = $status; - $this->authorizationCode = $authorizationCode; - $this->paymentTypeCode = $paymentTypeCode; - $this->responseCode = $responseCode; - $this->installmentsNumber = $installmentsNumber; - $this->installmentsAmount = $installmentsAmount; - $this->commerceCode = $commerceCode; - $this->buyOrder = $buyOrder; - } - public static function createFromArray(array $array) { - $amount = Utils::returnValueIfExists($array, 'amount'); - $status = Utils::returnValueIfExists($array, 'status'); - $authorizationCode = Utils::returnValueIfExists($array, 'authorization_code'); - $paymentTypeCode = Utils::returnValueIfExists($array, 'payment_type_code'); - $responseCode = Utils::returnValueIfExists($array, 'response_code'); - $installmentsNumber = Utils::returnValueIfExists($array, 'installments_number'); - $installmentsAmount = Utils::returnValueIfExists($array, 'installments_amount'); - $commerceCode = Utils::returnValueIfExists($array, 'commerce_code'); - $buyOrder = Utils::returnValueIfExists($array, 'buy_order'); - - return new static($amount, $status, $authorizationCode, $paymentTypeCode, $responseCode, $installmentsNumber, - $installmentsAmount, $commerceCode, $buyOrder); + $result = new TransactionDetail(); + $result->amount = Utils::returnValueIfExists($array, 'amount'); + $result->status = Utils::returnValueIfExists($array, 'status'); + $result->authorizationCode = Utils::returnValueIfExists($array, 'authorization_code'); + $result->paymentTypeCode = Utils::returnValueIfExists($array, 'payment_type_code'); + $result->responseCode = Utils::returnValueIfExists($array, 'response_code'); + $result->installmentsNumber = Utils::returnValueIfExists($array, 'installments_number'); + $result->installmentsAmount = Utils::returnValueIfExists($array, 'installments_amount'); + $result->commerceCode = Utils::returnValueIfExists($array, 'commerce_code'); + $result->buyOrder = Utils::returnValueIfExists($array, 'buy_order'); + + return $result; } public function isApproved() diff --git a/src/Webpay/WebpayPlus/Transaction.php b/src/Webpay/WebpayPlus/Transaction.php index e0dfbe6e..72920c40 100644 --- a/src/Webpay/WebpayPlus/Transaction.php +++ b/src/Webpay/WebpayPlus/Transaction.php @@ -53,7 +53,12 @@ public function create($buyOrder, $sessionId, $amount, $returnUrl) try { $response = $this->sendRequest('POST', static::ENDPOINT_CREATE, $payload); } catch (WebpayRequestException $exception) { - throw TransactionCreateException::raise($exception); + throw new TransactionCreateException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCreateResponse($response); @@ -82,8 +87,13 @@ public function commit($token) str_replace('{token}', $token, static::ENDPOINT_COMMIT), null ); - } catch (WebpayRequestException $e) { - throw TransactionCommitException::raise($e); + } catch (WebpayRequestException $exception) { + throw new TransactionCommitException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCommitResponse($response); @@ -106,8 +116,13 @@ public function refund($token, $amount) str_replace('{token}', $token, static::ENDPOINT_REFUND), ['amount' => $amount] ); - } catch (WebpayRequestException $e) { - throw TransactionRefundException::raise($e); + } catch (WebpayRequestException $exception) { + throw new TransactionRefundException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionRefundResponse($response); @@ -129,8 +144,13 @@ public function status($token) str_replace('{token}', $token, static::ENDPOINT_STATUS), null ); - } catch (WebpayRequestException $e) { - throw TransactionStatusException::raise($e); + } catch (WebpayRequestException $exception) { + throw new TransactionStatusException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionStatusResponse($response); @@ -161,8 +181,13 @@ public function capture($token, $buyOrder, $authorizationCode, $captureAmount) str_replace('{token}', $token, static::ENDPOINT_CAPTURE), $payload ); - } catch (WebpayRequestException $e) { - throw TransactionCaptureException::raise($e); + } catch (WebpayRequestException $exception) { + throw new TransactionCaptureException($exception->getMessage(), + $exception->getTransbankErrorMessage(), + $exception->getHttpCode(), + $exception->getFailedRequest(), + $exception + ); } return new TransactionCaptureResponse($response);