ruby-on-rails - 创建定期付款配置文件时出现 Paypal 无效 token 错误

标签 ruby-on-rails express-checkout paypal

我正在尝试在 paypal-express gem 的帮助下,通过 Paypal 的 ExpressCheckout API 在 Ruby on Rails 中设置定期付款配置文件但我不断收到错误代码 11502(无效 token )=> Paypal error code documentation

文档有点不清楚,因为它没有说缺少什么:

One or more subscription detail fields are missing from the request.

我已经检查了文档中的必填字段 here但我不认为我错过了任何。无需运输细节,因为我们不运送产品。 这是我结帐时发送到 Paypal 的日志,然后创建定期配置文件:

SetExpressCheckout

Parameters:

{:RETURNURL=>"http://localhost:3000/paypal/validate", :CANCELURL=>"http://localhost:3000/paypal/cancel", :REQCONFIRMSHIPPING=>0, :NOSHIPPING=>1, :ALLOWNOTE=>0, :PAYMENTREQUEST_0_AMT=>"88.00", :PAYMENTREQUEST_0_TAXAMT=>"0.00", :PAYMENTREQUEST_0_SHIPPINGAMT=>"0.00", :PAYMENTREQUEST_0_CURRENCYCODE=>"HKD", :PAYMENTREQUEST_0_DESC=>"Plus x 2-month subscription x 2 staff", :LOCALECODE=>:fr}

Response:

TOKEN=EC%2d0H440138VJ9552235&TIMESTAMP=2015%2d04%2d25T08%3a38%3a42Z&CORRELATIONID>=48742557da98&ACK=Success&VERSION=88%2e0&BUILD=16428450

创建经常性付款资料

参数:

{:TOKEN=>"EC-0H440138VJ9552235", :BILLINGPERIOD=>:月份, :BILLINGFREQUENCY=>2, :TOTALBILLINGCYCLES=>0, :AMT=>"88.00", :CURRENCYCODE=>"HKD", :SHIPPINGAMT=>"0.00", :TAXAMT=>"0.00", :DESC=>"加上 x 2 个月订阅 x 2 名员工", :MAXFAILEDPAYMENTS=>0, :PROFILESTARTDATE=>"2015-04-25 16:39:24"}

响应:

TIMESTAMP=2015%2d04%2d25T08%3a39%3a26Z&CORRELATIONID=533964ff183a1&ACK=Failure&VE>RSION=88%2e0&BUILD=16398710&L_ERRORCODE0=11502&L_SHORTMESSAGE0=Invalid%20Token&L_>LONGMESSAGE0=The %20token%20is%20invalid&L_SEVERITYCODE0=Error

你们有什么地方可能出错的想法吗?我可以毫无问题地执行付款,创建定期配置文件时出现问题。

最佳答案

没关系! 我发现错误的地方是误读了 gem wiki ( https://github.com/nov/paypal-express/wiki/Recurring-Payment ) 并错误地将即时付款请求与定期创建配置文件混合在一起,因此发送到 paypal 的数据中没有 billing_agreement_description 和 billing_agreements...

关于ruby-on-rails - 创建定期付款配置文件时出现 Paypal 无效 token 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29863160/

相关文章:

ruby-on-rails - 如何测试 API 错误?

php - Paypal 我们目前无法完成您的请求。请稍后再试。我们对不便表示抱歉

PHP Express Checkout Response 在几秒钟内调用我的脚本两次

支付宝修改结账界面

paypal - "account optional"功能是否可用于 PayPal 的订阅?

ruby-on-rails - 为什么 ActionDispatch::Static 从生产中的中间件栈中移除?

ruby-on-rails - PostgreSQL 数组中的值以 Rails 形式重复

paypal - 以编程方式设置 Paypal IPN url

php - 调用 PayPal API/payments/payment 时如何传递送货地址

sql - 如何使用 'safe window' 为基于时间的元素创建 MySQL 查询?