/** * сюда от платежного шлюза приходит запрос с информацией об ошибке платежа * пометим транзакцию fail, чтобы не мешала выполнять повторные платежи * * @throws CloudPaymentException */ public function fail() { $this->parseRequest(); $input = Input::all(); Reporter::payExternalFail(Input::get('AccountId'), Input::get('InvoiceId'), Input::get('Amount'), $input); return $this->processPayFail(); }
/** * сюда от платежного шлюза приходит запрос о возврате средств по платежу */ public function refund() { $input = Input::all(); Reporter::payExternalFail($input['TransactionId'], $input['PaymentTransactionId'], $input['AccountId'], $input['Amount']); $refund = new RefundPayment(); $refund->transaction_id = $input['TransactionId']; $refund->payment_id = $input['PaymentTransactionId']; $refund->amount = $input['Amount']; $refund->customer_id = $input['AccountId']; $refund->save(); $data = ['code' => 0]; Response::json($data)->send(); die; }