/**
  * Load vault payment extension attribute to order/payment entity
  *
  * @param OrderPaymentInterface $payment
  * @param \Closure $proceed
  * @return OrderPaymentExtensionInterface
  */
 public function aroundGetExtensionAttributes(OrderPaymentInterface $payment, \Closure $proceed)
 {
     /** @var OrderPaymentExtensionInterface $paymentExtension */
     $paymentExtension = $proceed();
     if ($paymentExtension === null) {
         $paymentExtension = $this->paymentExtensionFactory->create();
     }
     $paymentToken = $paymentExtension->getVaultPaymentToken();
     if ($paymentToken === null) {
         $paymentToken = $this->paymentTokenManagement->getByPaymentId($payment->getEntityId());
         $paymentExtension->setVaultPaymentToken($paymentToken);
         $payment->setExtensionAttributes($paymentExtension);
     }
     return $paymentExtension;
 }
 /**
  * @param OrderPaymentInterface $payment
  * @return \Magento\Sales\Api\Data\OrderPaymentExtensionInterface
  */
 private function getPaymentExtensionAttributes(OrderPaymentInterface $payment)
 {
     $extensionAttributes = $payment->getExtensionAttributes();
     if ($extensionAttributes === null) {
         $extensionAttributes = $this->paymentExtensionFactory->create();
         $payment->setExtensionAttributes($extensionAttributes);
     }
     return $extensionAttributes;
 }