В настоящее время я работаю над новой интеграцией с PayPal с NVP (paypalfunctions.php) для обработки платежей. Такая же интеграция работает и для других проектов, но по текущей она терпит неудачу.Интеграция PayPal NVP - оплата не обработана
Описание: Платежная ссылка создается успешно - перенаправляется в Paypal - Войти и оплатить сумму (1 или 5 EUR) - перенаправить на URL-адрес успеха.
Проблема: ни учетная запись магазина, ни учетная запись отправителей не видят платеж, и я не получаю никакого обратного вызова от PayPal - таким образом, платеж не был обработан/принят и т. Д., Но я не получаю никакой информации от Paypal.
настройки NVP, которые я использую являются минимальными и не нужны адрес доставки:
$nvpstr="&PAYMENTREQUEST_0_AMT=". $paymentAmount;
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_PAYMENTACTION=" . $paymentType;
$nvpstr = $nvpstr . "&RETURNURL=" . $returnURL;
$nvpstr = $nvpstr . "&CANCELURL=" . $cancelURL;
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_CURRENCYCODE=" . $currencyCodeType;
$nvpstr = $nvpstr . "&NOSHIPPING=1";
$nvpstr = $nvpstr . "&BRANDNAME=MyName";
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_CUSTOM=" . $paymentId;
$nvpstr = $nvpstr . "&PAYMENTREQUEST_0_NOTIFYURL=https://my.callback.com";
URL-адрес получает созданный успешно и все переменные устанавливаются.
Любая идея, почему это не работает?
Большое спасибо
bert2002
Привет, большое спасибо. Я использую CallShortcutExpressCheckout(), которого должно быть достаточно (или они что-то изменили за последние недели/месяц), или я все время ошибался, и это работает из магии. Я следил за [link] (https://devtools-paypal.com/integrationwizard/ecpaypal/code.php), и он не упоминает ваши функции. Я проверю ваш SDK, если я смогу его интегрировать. Хотелось бы знать, почему мой больше не работает. – bert2002
Хорошо, я нашел способ, но это странно. Сначала я делаю CallMarkExpressCheckout() со всеми моими данными, затем пользователи платит и перенаправляется на ReturnURL, который обрабатывает токен и PayerID с помощью DoExpressCheckoutPayment(). Затем платеж будет одобрен. Имеет ли смысл этот рабочий процесс? В другом проекте вся вторая часть хранится с обратным вызовом, а не с ReturnUrl от пользователя. Это ReturnUrl немного странно. – bert2002
Названия API, которые я обозначил, являются фактическими именами. Эти функции создаются для выполнения определенных действий с помощью запроса SetExpressCheckout. Например, один из параметров в SetExpressCheckout может быть установлен на «Billing» или «Mark», и опыт отличается от того, как вы его установили. Независимо от того, эти функции запускают SetExpressCheckout для вас и, вероятно, обрабатывают перенаправление для вас, но да, вам нужно также добавить вызов DoExpressCheckoutPayment после того, как вы вернетесь обратно в свой ReturnURL, поставляемый вместе с SetExpressCheckout. –