/**
  * сюда от платежного шлюза приходит запрос с информацией об ошибке платежа
  * пометим транзакцию 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;
 }