code: public function execute($request)
      {
          if (!$this->supports($request)) {
              throw RequestNotSupportedException::createActionNotSupported($this, $request);
          }
  
          $this->payment->execute($httpRequest = new GetHttpRequest());
          $details = $httpRequest->query;
  
          if (empty($details['order_code'])) {
              throw new BadRequestHttpException('Order code cannot be guessed');
          }
  
          $payment = $this->paymentRepository->findOneBy(array($this->identifier => $details['order_code']));
  
          if (null === $payment) {
              throw new BadRequestHttpException('Paymenet cannot be retrieved.');
          }
  
          if ((int) $details['total_amount'] !== $payment->getAmount()) {
              throw new BadRequestHttpException('Request amount cannot be verified against payment amount.');
          }
  
          // Actually update payment details
          $details = array_merge($payment->getDetails(), $details);
          $payment->setDetails($details);
  
          $status = new GetStatus($payment);
          $this->payment->execute($status);
  
          $nextState = $status->getValue();
  
          $this->updatePaymentState($payment, $nextState);
  
          $this->objectManager->flush();
  
          throw new HttpResponse(new Response('OK', 200));
      }
docs: {@inheritDoc}
  
  @param $request Notify