Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
CvvEmsCodeMapper.php
Go to the documentation of this file.
1 <?php
7 
12 
21 {
27  private static $notProvidedCode = 'P';
28 
34  private static $cvvMap = [
35  'Y' => 'M',
36  'N' => 'N'
37  ];
38 
46  public function getCode(OrderPaymentInterface $orderPayment)
47  {
48  if ($orderPayment->getMethod() !== Config::METHOD_PAYFLOWPRO) {
49  throw new \InvalidArgumentException(
50  'The "' . $orderPayment->getMethod() . '" does not supported by Payflow CVV mapper.'
51  );
52  }
53 
54  $additionalInfo = $orderPayment->getAdditionalInformation();
55  if (empty($additionalInfo[Info::PAYPAL_CVV2MATCH])) {
56  return self::$notProvidedCode;
57  }
58 
59  $cvv = $additionalInfo[Info::PAYPAL_CVV2MATCH];
60 
61  return isset(self::$cvvMap[$cvv]) ? self::$cvvMap[$cvv] : self::$notProvidedCode;
62  }
63 }
getCode(OrderPaymentInterface $orderPayment)