Payflow Pro с экспресс-оплатой - отчеты PayPal Manager

Это общий вопрос.

Я реализовал Payflow Pro с прозрачным перенаправлением. Я также реализовал Express Checkout. На моей странице оформления заказа я хотел бы предложить оба варианта, например. Оплатить сейчас ИЛИ оформить заказ через PayPal в соответствии с рекомендациями PayPal. Дело в том, что если пользователь нажимает кнопку «Оплатить сейчас», Payflow используется для обработки транзакции, которую затем можно просмотреть в учетной записи PayPal Manager - «Отчеты». Если пользователь нажимает кнопку «Оформить заказ с помощью PayPal», транзакцию можно будет просмотреть, только перейдя в учетную запись PayPal.

Как я могу сделать так, чтобы транзакции «Checkout with PayPal» отображались в PayPal Manager?

Здесь есть документ https://www.paypalobjects.com/webstatic/en_US/developer/docs/pdf/pfp_expresscheckout_pp.pdf, имя которого, казалось бы, указывает на то, что существует процесс экспресс-оплаты Payflow, но он выглядит точно так же, как обычный процесс экспресс-оплаты. Я что-то упускаю?

Думаю, это может быть связано с использованием тестовых учетных записей. У меня есть учетная запись Manager для тестирования Payflow, и у меня есть учетная запись в песочнице для тестирования Express Checkout. Как использовать одну и ту же учетную запись для обоих?

Спасибо


person nuander    schedule 30.04.2014    source источник
comment
В конечном итоге это оказалось сбоем в моей учетной записи PayPal Manager. Этот сбой был очевиден в том, что на размещенных страницах - настройка - не было раздела настроек экспресс-оформления. Paypal пришлось исправить аккаунт.   -  person nuander    schedule 08.05.2014


Ответы (1)


Вы можете использовать учетные данные менеджера PayFlow для создания ExpressCheckout токена (EC-XXXXXXX):

ТЕНДЕР (обязательно) Тип конкурса (способ оплаты). Это всегда П.

ДЕЙСТВИЕ (обязательно). S, чтобы указать, что это запрос на установку экспресс-оплаты.

USER=
VENDOR=
PARTNER=
PWD=
TRXTYPE=S
TENDER=P
ACTION=S
AMT=0.01
CURRENCY=USD
RETURNURL=http://ex.com
CANCELURL=http://ex.com

Ответ будет таким:

RESULT=0 
RESPMSG=Approved 
TOKEN=EC-XXXXXXXXXXXXXXXXX

Вы бы перенаправили их таким же образом: http://sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token= ТОКЕН

Как только они вернутся на ваш обратный URL, вы получите PAYERID. Передайте это с другим запросом для завершения платежа:

TOKEN (обязательно) Маркер с отметкой времени, возвращенный в ответе Set Express Checkout.

ДЕЙСТВИЕ (Обязательно) Указывает, что это запрос Set Express Checkout.

PAYERID (обязательно) Уникальный идентификационный номер учетной записи покупателя PayPal, возвращенный ответом Get Express Checkout Details. Это значение возвращается в URL-адресе, когда покупатель перенаправляется на ваш веб-сайт.

USER=
VENDOR=
PARTNER=
PWD=
TRXTYPE=S
TENDER=P
ACTION=D
AMT=0.01
CURRENCY=USD
TOKEN=
PAYERID=

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

person Aaron    schedule 30.04.2014
comment
Хорошо, это помогает. В настоящее время я использую .net SDK для своих вызовов EC, и он не поддерживает эти параметры, поэтому мне придется перекодировать все это, чтобы проверить это. - person nuander; 01.05.2014
comment
Если вы используете .NET Payflow или Payments Pro SDK: PayPal.Payments.DataObjects.ECSetRequest - person Aaron; 01.05.2014
comment
Хорошо, я попробую ... Я только что попытался использовать PayflowNETAPI.SubmitTransaction для создания токена EC, и он действительно создал токен, но DoExpressCheckout не понравился токен. - person nuander; 01.05.2014
comment
Получив токен, вы должны перенаправить их на веб-сайт PayPal: sandbox.paypal.com/cgi-bin/. Как только они вернутся, вы получите payerid в переменных GET. Вам нужны как payerid, так и token для DoExpressCheckout - person Aaron; 01.05.2014
comment
Когда я перенаправляю на PayPal, я получаю Эта транзакция недействительна ... Мой токен не начинается с EC, так что, вероятно, это неправильно. Заглянув в ECSetRequest сейчас, я нашел объект, но еще не нашел никакой документации или примеров, которые его используют, и у него нет свойств для таких вещей, как USER, так что ... - person nuander; 01.05.2014
comment
К сожалению, я тоже не смог найти много. Я разобрал DLL с помощью ILSpy, так как у меня не установлена ​​Visual Studio. - person Aaron; 01.05.2014
comment
Я нашел многообещающую демонстрацию на markstraley.com/Code/PayFlowProExpressCheckout, поэтому я собираюсь чтобы проверить это - person nuander; 01.05.2014
comment
Хорошо, я реализовал SetExpressCheckout с помощью API Payflow (включая объект ECSetRequest), и результат, который я получаю, равен 25: не подписан на этот тип тендера, что заставляет меня думать, что это проблема с моей учетной записью менеджера PayPal - person nuander; 01.05.2014