PayPal错误消息的语言不正确



我们确实快速结账(在沙盒上),并在创建定期付款配置文件中设置了"zh_CN"

    CreateRecurringPaymentsProfileRequestType reqType = new CreateRecurringPaymentsProfileRequestType();
    reqType.setVersion(VERSION);
    reqType.setErrorLanguage(getLangCode());

我们也碰巧在请求PayPal令牌 api 中设置了它,并在两个地方设置了它(这有效,因为PayPal网站以中文显示)......

    setExpressCheckoutRequestDetails.setReturnURL(url);
    setExpressCheckoutRequestDetails.setCancelURL(url2);
    setExpressCheckoutRequestDetails.setPaymentDetails(paymentDetailsList);
            //This is the first place which works!!!! as the paypal GUI shows up in chinese...
    setExpressCheckoutRequestDetails.setLocaleCode(getLangCode());
    setExpressCheckoutRequestDetails.setBuyerEmail(user.getEmail());
    SetExpressCheckoutRequestType setExpressCheckoutRequest = new SetExpressCheckoutRequestType(setExpressCheckoutRequestDetails);
    setExpressCheckoutRequest.setVersion(VERSION);  
            //This is the second location which probably doesn't work though this request has never failed :( and I don't know how to force a failure :( as putting amount 105.37 on negative testing did not work
    setExpressCheckoutRequest.setErrorLanguage(getLangCode());

然后,我们将计费周期的开始日期注释掉以导致失败,因为阴性测试不起作用(请参阅帖子如何在沙盒中模拟付款拒绝PayPal)。 这会导致失败,但返回的错误是英文而不是中文,表示"需要开始日期"和长消息"需要订阅开始日期"错误代码 11549。

为什么这不起作用? (我们只是简单地显示PayPal错误,因为它似乎太多了,无法一直翻译,但它不是正确的语言)。

谢谢院长

你指的是 API 响应,对吧?这些仅是(美国)英语。
最好将PayPal API 错误响应映射到您端面向客户的相应消息(当然可以使用您想要的任何语言)。

我不建议直接向客户公开PayPal API 错误响应。

相关内容

  • 没有找到相关文章

最新更新