/** * @param Order $order * @return Payment */ protected function createPayment(Order $order) { /** @var $payment Payment */ $payment = $this->registry->getStorage(Payment::class)->create(); $payment->setNumber($order->getId()->getValue()); $payment->setCurrencyCode($this->currency); $payment->setTotalAmount($order->getTotal()->getAmount()); $payment->setClientId($order->getCustomer()->getId()->getValue()); $payment->setClientEmail($order->getCustomer()->getEmail()); $payment->setDescription('Payment for order #' . $order->getId()->getValue()); return $payment; }