процессор_отклоненный ответ для транзакции PayPal Braintree - PullRequest
0 голосов
/ 14 декабря 2018

Я использовал некоммерческую учетную запись для создания учетных записей в песочнице.Созданы транзакции: -

$amount = $_POST["amount"];
$nonce = $_POST["payment_method_nonce"];
$result = $gateway->transaction()->sale([
    'amount' => $amount,
    'paymentMethodNonce' => $nonce,
    'options' => [
    'submitForSettlement' => true]
]);

Результат, который я получил:

Ошибка обработки транзакции: код: 2081 текст: ожидающие платежи PayPal не поддерживаются

Я не уверен, что эта проблема возникла из-за проблемы с учетной записью или из-за интеграции.

Ответы [ 2 ]

0 голосов
/ 06 августа 2019

Для меня это решено:

1) Paypal: в учетной записи песочницы PayPal я воссоздал новую учетную запись, указав страну, в которой приложение эффективно запущено (в моем случае: IT).

2) Paypal: с только что созданным бизнес-счетом я создал новое приложение Paypal и получаю идентификатор клиента Paypal и секрет.

3) Braintree: я заново связал свое приложение песочницы Paypal с указанием учетных данных нового бизнес-аккаунта Paypal:электронная почта, идентификатор клиента и секрет клиента только что сгенерированного приложения.

4) В мое приложение / интеграцию: в моем jS-коде braintree SDK (v3) я установил правильную валюту (в моем случае EUR) в PayPalкод установки js:

<script>
var form = document.querySelector('#checkout-form');
var client_token = "{{ $clientToken }}";
var price = $('#selected_service_price').val();

braintree.dropin.create({
  authorization: client_token,
  selector: '#bt-dropin',
  paypal: {
    flow: 'checkout',
    amount: price, 
    currency: 'EUR'
  }
}, function (createErr, instance) {
  if (createErr) {
    console.log('Create Error', createErr);
    return;
  }
  form.addEventListener('submit', function (event) {
    event.preventDefault();
    instance.requestPaymentMethod(function (err, payload) {
      if (err) {
        console.log('Request Payment Method Error', err);
        return;
      }
      // Add the nonce to the form and submit
      document.querySelector('#nonce').value = payload.nonce;
      form.submit();
    });
  });
});

0 голосов
/ 14 декабря 2018

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

Похоже, ваша учетная запись в песочнице настроена для блокировки платежей со счетов PayPal в валютах, отличных от той, в которой вы находитесьвыполнение запроса с помощью.

Если вы хотите именно такое поведение, вам нужно будет создать тестовую учетную запись клиента в той же валюте, которую вы используете при настройке Drop-in.

Если это не то поведение, которое вам нужно, вы можете войти в sandbox.paypal.com и перейти к Profile > My Selling Tools > Block Payments, чтобы изменить настройку, или Profile > My Money > PayPal Balance section > More > Currencies, чтобы добавить валюту учетной записи, которую вы пытаетесь использовать.

Источник: Проблема с песочницей Paypal

...