Какой правильный URL-адрес и параметры следует использовать для песочницы PayPal? - PullRequest
1 голос
/ 03 марта 2020

Я использую программу под названием PayPal Integrator 2016. NET Edition. Он был в нашем приложении в течение многих лет, и мы только что заметили, что не можем вернуть деньги через песочницу PayPal. Возвраты в действующей системе go через, но в песочнице мы получаем ошибку. Похоже, что URL песочницы PayPal изменился, но ни один из URL, которые я пробовал, не работал. Можете ли вы сказать мне, как заставить это работать?

Я получил URL с этого сайта: https://www.nsoftware.com/kb/xml/07291101.rst. Я также попробовал URL-адрес, упомянутый на этой странице: https://developer.paypal.com/docs/api/sandbox/.

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

Ниже приведены URL-адреса, которые я пробовал, какие учетные данные я использовал и какое сообщение об ошибке я получил.

Активные учетные данные

https://api.sandbox.paypal.com/nvp  Connection closed.
https://api-3t.sandbox.paypal.com/nvp   [10002] Security error. Security header is not valid.
https://sandbox.paypal.com/nvp      [10002] Security error. Security header is not valid.

Учетные данные в изолированной программной среде (та же учетная запись, что и у действующих учетных данных)

https://api.sandbox.paypal.com/nvp  Connection closed.
https://api-3t.sandbox.paypal.com/nvp   [10011] Invalid transaction id value. Transaction refused because of an invalid transaction id value.
https://sandbox.paypal.com/nvp      [10011] Invalid transaction id value. Transaction refused because of an invalid transaction id value.

Учетные данные в изолированной программной среде (новая учетная запись разработчика)

https://api.sandbox.paypal.com/nvp  Connection closed.
https://api-3t.sandbox.paypal.com/nvp   [10011] Invalid transaction id value. Transaction refused because of an invalid transaction id value.
https://sandbox.paypal.com/nvp      [10011] Invalid transaction id value. Transaction refused because of an invalid transaction id value.

Здесь это код, который я использовал Я изменил URL, пользователь и т. Д. c. используя имена, которые я перечислил выше.

Dim ppRefund As New nsoftware.InPayPal.Refundtransaction()
Call ppRefund.Reset()

ppRefund.About = ""
ppRefund.InvokeThrough = Nothing
ppRefund.Timeout = 180

ppRefund.URL = PAYPAL_URL
ppRefund.User = PAYPAL_USERID
ppRefund.Password = PAYPAL_PASSWORD
ppRefund.Signature = PAYPAL_SIGNATURE

ppRefund.Amount = RefTrans.AmountTotal
ppRefund.RefundType = nsoftware.InPayPal.RefundtransactionRefundTypes.rtPartial
ppRefund.CurrencyCode = "USD"
ppRefund.Memo = "Credit PayPal Trans ID: " & RefTrans.Payment.payment_nbr

ppRefund.Refund(RefTrans.Payment.payment_nbr)

1 Ответ

0 голосов
/ 03 марта 2020

Никогда не используйте действительные учетные данные с конечными точками песочницы или наоборот, это приведет к 10002 (неверные учетные данные)

Ваши URL-адреса в порядке. Ваша проблема в том, что вы пытаетесь вернуть неверный идентификатор. Ваш идентификатор должен соответствовать фактической транзакции PayPal Sandbox на фактической учетной записи PayPal Sandbox, учетные данные которой вы используете, или он не будет работать с этой ошибкой.

Go до https://www.sandbox.paypal.com, войдите в систему с именем пользователя и паролем песочницы (это не действительное имя пользователя и пароль, и это не имя пользователя песочницы API или пароль песочницы API, если вы не уверены в этом), и подтвердите, что вы действительно можете найти этот идентификатор транзакции, который вы пытаетесь вернуть.

...