Интеграция Paypal php Ошибка аутентификации - PullRequest
0 голосов
/ 10 марта 2019

Я пытаюсь интегрировать Paypal в мой веб-сайт, но когда я запускаю его и пытаюсь выполнить свой платеж после проверки клиента, я получаю следующую ошибку транзакции:

имя "AUTHENTICATION_FAILURE"
сообщение «Ошибка аутентификации из-за неверных учетных данных или отсутствующего заголовка авторизации.»

Но раньше он работал 2 раза, а потом уже не снова.

Код для создания транзакции:

public function genererPaiement(Inscription $inscri) {


    $apiContext = Paiement::getContexte();

    $payer = new Payer();
    $payer->setPaymentMethod('paypal');

    $items = array();
    $items[0] = $inscri->getCircuit()->getItem();
    $i = 1;
    foreach ($inscri->getOptionInscris() as $option) {
        $items[$i] = $option->getItem();
        $i++;
    }

    $itemList = new ItemList();

    $total = 0;
    for ($j = 0; $j < $i; $j++) {
        $total += floatval($items[$j]->getPrice()) * intval($items[$j]->getQuantity());
        $itemList->addItem($items[$j]);
    }

    $amount = new Amount();
    $amount->setCurrency('EUR')
        ->setTotal($total);

    $transaction = new Transaction();
    $transaction->setAmount($amount);
    $transaction->setItemList($itemList)
        ->setDescription("Paiement route thermale cycliste.")
        ->setInvoiceNumber($this->course->getId());

    $baseURL = Paiement::getBaseURL();
    $redirectURL = new RedirectUrls();
    $redirectURL->setReturnUrl($baseURL.'/engagement/'.$this->course->getId().'/'.$inscri->getId().'/true')
        ->setCancelUrl($baseURL.'/engagement/'.$this->course->getId().'/'.$inscri->getId().'/false');

    $payement = new Payment();
    $payement->setIntent('sale')
        ->setPayer($payer)
        ->setRedirectUrls($redirectURL)
        ->setTransactions(array($transaction))
        ->create($apiContext);

    return $payement->getApprovalLink();

}

Код для выполнения:

public function payer($idEng, $idInscrit)
{
    $paymentId = $_GET['paymentId'];
    $apiContext = Paiement::getContexte();

    $payment = Payment::get($paymentId, $apiContext);

    $execution = new PaymentExecution();
    $execution->setPayerId($_GET['PayerID']);

    $result = $payment->execute($execution, $apiContext);

    $em = $this->getDoctrine()->getManager();
    $onglets = $em->getRepository(Onglets::class)->findOnglets();

    $eng = $em->getRepository(Engagement::class)->find($idEng);

    $page = $em->getRepository(Pages::class)->find(3);

    $inscri = $em->getRepository(Inscription::class)->find($idInscrit);

    $inscri->setPayer(true);

    return $this->render('engagement/index.html.twig', [
        "page" => $page,
        "onglets" => $onglets,
    ]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...