Пример PayPal Gateway SDK PayPal не работает - PullRequest
1 голос
/ 07 февраля 2012

Я скачал .NET SDK для шлюза Payflow и следовал этим инструкциям при настройке моей тестовой учетной записи шлюза Payflow, затем изменил две строки DOSecureTokenAuth.cs, User и Connectionпеременные:

        UserInfo User = new UserInfo("myacctname", "myacctname", 
                                     "PayPal", "passwd");
        PayflowConnectionData Connection = new PayflowConnectionData(
                                     "pilot-payflowpro.paypal.com", 443);

Когда я запускаю DOSecureTokenAuth.cs, открывается окно командной строки со словами:

------------------------------------------------------
Executing Sample from File: DOSecureTokenAuth.cs
------------------------------------------------------
RESULT = 0
RESPMSG = Approved
SECURETOKEN = 3BZVLoht6cESPxMkScSau4g4l
SECURETOKENID = 9e09209a562b43739dd5d1a44a3e2d73
DUPLICATE =
Transaction was successful.

The next step would be to redirect to PayPal to display the hosted
checkout page to allow your customer to select and enter payment.

This is only a simple example, which does not take into account things like
RETURN or SILENT POST URL, etc.

Press <Enter> to redirect to PayPal.

Transaction Successful.
Press Enter to Exit ...

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

Some required information is missing or incorrect. Please correct the fields below and try again.
Error: An error has occurred. Please contact the system administrator.

В документах шлюза Payflow говорится, что я должен отправить SECURETOKENID и SECURETOKEN на http://payflowlink.paypal.com (даже если вы хотите использовать Payflow PRO ???), и вот пример моей попытки (ниже приведен GET, но POST завершается с ошибкой так же):

https://payflowlink.paypal.com/?securetoken=3BZVLoht6cESPxMkScSau4g4l&securetokenid=9e09209a562b43739dd5d1a44a3e2d73&MODE=test&USER1=testuser1&ACCT=5105105105105100&EXPDATE=1212&CVV2=123

Я даже сделал симпатичную маленькую HTML-страницу формы на основе приведенного выше примера PHP:

<form method='post' action='https://payflowlink.paypal.com/'>
<input type='text' name='SECURETOKEN' value='3BZVLoht6cESPxMkScSau4g4l' />
<input type='text' name='SECURETOKENID' value='9e09209a562b43739dd5d1a44a3e2d73' />
<input type='hidden' name='MODE' value='test' />
<input type='submit' />
</form>

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

Поскольку я предполагаю, что это конфигурация, моя учетная запись настроена со следующими настройками:

PayPal Express Checkout = Enabled
PayPal Email Address and PayPal Sandbox Email Address are configured and going to the same address
Show Confirmation Page = On a PayPal hosted page
Use Silent Post = No
Send email = Yes
AVS Check = No
CVC Check = No
Enable Secure Token = Yes

Помощь!Что вызывает смутную ошибку?!

Ответы [ 3 ]

2 голосов
/ 07 февраля 2012

Оказывается, что пример файла cs отправляет первоначальный запрос безопасного токена как «Без звука» и по умолчанию режим «Без звука» не включен.Закомментирование этой строки (или включение бесшумного режима) решило проблему.

0 голосов
/ 07 февраля 2012

Является ли настроенная учетная запись Sandbox действительной Песочницей учетной записи?
Если это не так, это может быть другая настройка учетной записи. Обратитесь в службу поддержки PayPal по номеру https://www.papyal.com/mts, и он сможет найти его для вас.

0 голосов
/ 07 февраля 2012

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

Когда я разрабатывал их тестовый API, у меня былоне успехОказалось, что тестовый URI, который я запускал, был старой, устаревшей версией, которая все еще была указана в текущей документации, с которой я работал.

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

Удачи!

...