更改 Paypal Adaptive Payments 登录语言
Posted
技术标签:
【中文标题】更改 Paypal Adaptive Payments 登录语言【英文标题】:Change Paypal Adaptive Payments login language 【发布时间】:2012-12-03 10:52:12 【问题描述】:我的网站通过贝宝接收付款。 我的用户抱怨他们只看到葡萄牙语的登录屏幕,他们不明白。 我已经尝试了here 提出的解决方案(如下面的代码所示),但到目前为止还没有运气。
这是我正在做的一个小测试: 下面的代码使用paypalx,可以作为gist使用
from django.conf import settings
from paypalx import AdaptivePayments
from urllib import urlencode
from urllib2 import urlopen, Request
import logging
paypal = AdaptivePayments(settings.PAYPAL_API_USERNAME,
settings.PAYPAL_API_PASSWORD,
settings.PAYPAL_API_SIGNATURE,
settings.PAYPAL_API_APPLICATION_ID,
settings.PAYPAL_API_EMAIL,
sandbox=settings.PAYPAL_USE_SANDBOX)
receivers = []
receivers.append('amount' : '10.00', 'email' : 'penepoleb@gmail.com')
response = paypal.pay(
actionType = 'PAY',
cancelUrl = settings.PAYPAL_CANCEL_URL,
currencyCode = 'USD',
feesPayer = 'EACHRECEIVER',
receiverList = 'receiver': receivers,
returnUrl = settings.PAYPAL_RETURN_URL,
ipnNotificationUrl = settings.PAYPAL_IPNNOTIFY_URL,
errorLanguage = "en_US"
)
paykey = response['payKey']
print('https://www.paypal.com/webapps/adaptivepayment/flow/pay?paykey=%s&expType=light&country.x=us&locale=en_US&change_locale=1' % paykey)
这是使用我的 paypal 凭据生成的一个这样的 paykey:AP-2AG393088X128224K 现在,您可以尝试打开生成的 URL 并查看它是葡萄牙语的: https://www.paypal.com/webapps/adaptivepayment/flow/pay?paykey=AP-2AG393088X128224K&expType=light&country.x=us&locale=en_US&change_locale=1
但如果您尝试使用不同的支付密钥,则区域设置参数会起作用 (我正在使用从this example 获得的支付密钥:AP-7LB18162J0578713L) 如果您转到下面的链接,您会看到它是英文的。
https://www.paypal.com/webapps/adaptivepayment/flow/pay?paykey=AP-7LB18162J0578713L&expType=light&country.x=us&locale=en_US&change_locale=1
我需要做什么才能向用户显示英文登录页面?
【问题讨论】:
可能是因为您有葡萄牙语的 PayPal?您是否检查过 Paypal 中的其他设置? 我是巴西人,所以我有一个巴西的 Paypal 帐户。当然,这一定与此有关。但是我已经将 Paypal 上的所有语言设置都设置为英语。现在,当我登录贝宝时,我看到所有的菜单都是英文的。但我的应用程序仍然“生成葡萄牙语支付密钥”。如果有这个配置,我想知道它在哪里...... 等一下,现在paykey过期了,错误页面显示为英文。但是当支付密钥有效时,它以葡萄牙语显示。这看起来像是 Paypal 中的一个错误 :-( 这是一个截图作为证据:(当我使用仍然有效的支付密钥访问时:paypal.com/webapps/adaptivepayment/flow/…) - 请参阅dl.dropbox.com/u/2683925/paypal_portuguese.png 【参考方案1】:请查看this 帖子 - 似乎与您遇到的问题相同。
谢谢,
亚瑟
【讨论】:
您可能还想查看此相关帖子:tipsandtricks-hq.com/forum/topic/…【参考方案2】:按照@casals 的提示,我发现还有另一个我可以使用的 paypal URL。
[1] - https://www.paypal.com/webapps/adaptivepayment/flow/pay?paykey=...
[2] - https://www.paypal.com/webscr?cmd=_ap-payment&paykey=...
我在 iframe 中使用 [1]。
现在我将 [2] 与浏览器重定向一起使用。重定向到 [2] 将使贝宝根据需要以英文显示登录页面。
这稍微改变了支付体验 - 用户实际上必须离开我的网站,然后被重定向回它。不过没关系,我认为用户实际上更喜欢这种方式,因为他们在输入凭据时可以看到 Paypal 的 url。
我仍然认为 [1] 的当前行为是 paypal 中的错误。
我的应用程序 - http://www.freedomsponsors.org - 在 Github 上是开源的,你可以看到修改后的代码 here)
【讨论】:
以上是关于更改 Paypal Adaptive Payments 登录语言的主要内容,如果未能解决你的问题,请参考以下文章
Paypal Adaptive Payments 以访客身份
Paypal Adaptive - 3 向付款方式(无需将用户带到 Paypal 网站)
Paypal Payments Pro 是不是与 Paypal 的 Adaptive Payments API 兼容?