目前我正在尝试将一个工作的 php paypal payflow 实现迁移到一个新的基于 python 的系统。
我将安全令牌与托管结帐页面一起使用。安全令牌工作正常,我也被重定向到结帐页面(尽管它有可怕的格式错误)。
问题:付款后它应该重定向到返回网址。这可行,但附加了“processTransaction.do”。所以我的返回 url 定义为:
但我被重定向到
,这会引发 404。
'https://mywebsite.com/paypal/succes/'
'https://mywebsite.com/paypal/succes/processTransaction.do'
我的安全令牌请求参数:
params = {}
params["PARTNER"] = "paypal"
params["VENDOR"] = "...."
params["TRXTYPE"] = "S"
params["AMT"] = payment_amount #amount to pay
params["CREATESECURETOKEN"] = "Y"
params["SECURETOKENID"] = time.time() #needs to be unique
params["USER"] = "...."
params["PWD"] = "...."
然后我发送请求并捕获如下所示的返回:
RESULT=0&SECURETOKEN=QQQc0rQZ8TkKSNMqU3Mg2og7o
SECURETOKENID=1431563231.24&RESPMSG=Approved
之后,我使用以下参数发送结帐页面的请求:
params["SECURETOKEN"] = securetoken
params["SECURETOKENID"] = securetokenid
至:https ://payflowpro.paypal.com
我使用此代码发送请求:
data = urllib.urlencode(params)
request = urllib2.Request(url, data)
response = urllib2.urlopen(request)
response_text = response.read()
返回 url 在 paypal 管理器中设置,返回类型为 POST,“显示确认页面”设置为“在我的网站上”。
有人知道出了什么问题以及如何解决吗?
谢谢!