更改 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 兼容?

金额无效 paypal_adaptive gem rails

paypal_adaptive gem 的安全问题

使用 Paypal Adaptive Payments 设置标题图片