setExternalIdentifier() public method

public setExternalIdentifier ( string | null $identifier )
$identifier string | null
 public function executePayment(PaymentInterface $payment, Request $request)
 {
     $order = $payment->getOrder();
     $paymentMethod = $order->getPaymentMethod();
     $configuration = $paymentMethod->getConfiguration();
     $apiContext = $this->getApiContext($configuration);
     $ccFirstname = $request->request->get('firstname');
     $ccLastname = $request->request->get('lastname');
     $ccNumber = str_replace(' ', '', $request->request->get('number'));
     $ccExpiry = $request->request->get('expiry');
     $ccCvc = $request->request->get('cvc');
     if (strlen($ccExpiry) == 0 || strlen($ccExpiry) < 5) {
         return new JsonResponse(['success' => false, 'message' => 'Upsss! Wygląda na to, że data ważności karty wpisana jest nieprawidłowo. Prosimy wprowadź ją w formacie MM/YY']);
     }
     list($ccExpiryMonth, $ccExpiryYear) = explode('/', $ccExpiry);
     if (substr($ccExpiryMonth, 0, 1) == 0) {
         $ccExpiryMonth = substr($ccExpiryMonth, 1, 1);
     }
     $ccExpiryYear = '20' . $ccExpiryYear;
     $cardType = $this->cardType($ccNumber);
     if (strlen($ccExpiryMonth) == 0 || strlen($ccExpiryYear) < 4) {
         return new JsonResponse(['success' => false, 'message' => 'Upsss! Wygląda na to, że data ważności karty wpisana jest nieprawidłowo. Prosimy wprowadź ją w formacie MM/YY']);
     }
     if ('' == $cardType) {
         return new JsonResponse(['success' => false, 'message' => 'Upsss! Wygląda na to, że wpisany numer karty jest nieprawidłowy. Prosimy wprowadź numer ponownie.']);
     }
     $card = new CreditCard();
     $card->setType($cardType);
     $card->setNumber($ccNumber);
     $card->setExpireMonth($ccExpiryMonth);
     $card->setExpireYear($ccExpiryYear);
     $card->setCvv2($ccCvc);
     $card->setFirstName($ccFirstname);
     $card->setLastName($ccLastname);
     $card->setBillingAddress($this->createAddress($order));
     $fundingInstrument = new FundingInstrument();
     $fundingInstrument->setCreditCard($card);
     $payer = $this->createPayer($configuration['paypal_type']);
     $payer->setFundingInstruments([$fundingInstrument]);
     $transaction = $this->createTransaction($order);
     $payPalPayment = new Payment();
     $payPalPayment->setIntent("sale");
     $payPalPayment->setPayer($payer);
     $payPalPayment->setTransactions([$transaction]);
     try {
         $payPalPayment->create($apiContext);
     } catch (PayPalConnectionException $e) {
         $error_object = json_decode($e->getData());
         $message = 'Upsss! Wystąpił nieoczekiwany błąd w trakcie przetwarzania transakcji. Skontaktuj się z obsługą sklepu.';
         switch ($error_object->name) {
             case 'CREDIT_CARD_CVV_CHECK_FAILED':
             case 'MISSING_CVV2':
             case 'GATEWAY_DECLINE_CVV2':
                 $message = 'Upsss! Wygląda na to, że podany przez Ciebie kod CVV2 lub CVC2 jest nieprawidłowy lub niepełny. Prosimy sprawdź numer i wprowadź go ponownie.';
                 break;
             case 'CREDIT_CARD_REFUSED':
                 $message = 'Upsss! Wygląda na to, że twój bank nie autoryzował transakcji. Prosimy spróbuj zapłacić przy użyciu innej karty.';
                 break;
             case 'EXPIRED_CREDIT_CARD':
                 $message = 'Upsss! Wygląda na to, że upłynął termin ważności twojej karty. Prosimy spróbuj zapłacić przy użyciu innej karty.';
                 break;
             case 'PAYER_EMPTY_BILLING_ADDRESS':
                 $message = 'Upsss! Wygląda na to, że podałeś niepełne dane adresowe. Prosimy sprawdź swoje dane adresowe i spróbuje ponowić płatność.';
                 break;
             case 'INVALID_CC_NUMBER':
                 $message = 'Upsss! Wygląda na to, że wpisany numer karty jest nieprawidłowy. Prosimy wprowadź numer ponownie.';
                 break;
             case 'CC_TYPE_NOT_SUPPORTED':
                 $message = 'Upsss! Nasz system nie obsługuje płatności dokonywanych tego typu kartą. Prosimy spróbuj użyć innej karty lub zmień metodę płatności na Paypal lub przelew bankowy.';
                 break;
             case 'VALIDATION_ERROR':
                 $message = 'Upsss! Podałeś niepoprawne dane karty. Spróbuj ponownie.';
                 break;
         }
         return new JsonResponse(['success' => false, 'message' => $message]);
     }
     $payment->setExternalIdentifier($payPalPayment->getId());
     if ($payment->getState() == 'approved') {
         $payment->setState(PaymentInterface::PAYMENT_STATE_APPROVED);
         return new JsonResponse(['success' => true, 'message' => 'Płatność zakończona sukcesem']);
     }
     return new JsonResponse(['success' => false, 'message' => 'Wystąpił nieoczekiwany błąd. Skontaktuj się z obsługą sklepu']);
 }