Rails PayPal自适应支付

4
我是使用paypal_adaptive gem,并且遇到了一些问题。 这是我的代码在config/paypal_adaptive.yml中:
development:
  environment: "sandbox"
  username: "x@gmail.com"
  password: "xxx"
  signature: "xxx"
  application_id: "APP-80W284485P519543T"

test:
  environment: "sandbox"
  username: "x@gmail.com"
  password: "xxx"
  signature: "xxx"
  application_id: "APP-80W284485P519543T"

enviorment:
  environment: "sandbox"
  username: "x@gmail.com"
  password: "xxx"
  signature: "xxxx"
  application_id: "APP-80W284485P519543T"

当然,XXX是真正的细节。我也尝试了给我的API凭据,但无论如何都不起作用。 这里是控制支付的控制器代码:

> pay_request = PaypalAdaptive::Request.new

data = {
"returnUrl" => "http://localhost:3000/payments/completed_payment_request", 
"requestEnvelope" => {"errorLanguage" => "en_US"},
"currencyCode"=>"USD",  
"receiverList"=>{"receiver"=>[{"email"=>"xxx@gmail.com", "amount"=>"10.00"}]},
"cancelUrl"=>"http://localhost:3000/payments/canceled_payment_request",
"actionType"=>"PAY",
"ipnNotificationUrl"=>"http://localhost:3000/payments/ipn_notification"
}

@pay_response = pay_request.pay(data)

当尝试输出pay_response时,我收到了以下包含错误的数组:

> ["responseEnvelope", {"timestamp"=>"2011-05-03T12:00:54.107-07:00", "ack"=>"Failure", "correlationId"=>"242e1fc31cf18", "build"=>"1846084"}] ["error", [{"errorId"=>"560022", "domain"=>"PLATFORM", "subdomain"=>"Application", "severity"=>"Error", "category"=>"Application", "message"=>"X-PAYPAL-APPLICATION-ID header包含无效值", "parameter"=>["X-PAYPAL-APPLICATION-ID"]}]]

我真的很绝望。提前感谢。


我曾经遇到了相同的问题,但是它是由于我的paypal_adaptive.yml文件中的yaml语法不正确所致。修复它并重新启动应用程序似乎解决了这个问题。 - Tadas T
嗨,亚当,我正在做同样的事情,我想知道你在哪里找到/获取应用程序ID。它在沙盒中与我的其他API凭据一起出现。或者这只是为了生产环境? - varatis
4个回答

3

在更改密钥后,请确保重新启动Rails服务器。


1

0

这是与你的YAML格式相同还是正确缩进了吗? 尝试重新格式化你的YAML。我过去也因为格式不正确的YAML而遇到过类似的问题。


-1

其实我从来没有让它工作过,我一直在自己处理付款事项。后来我发现我在编辑YAML后没有重置我的服务器! :D

无论如何还是谢谢你!


-1: 感谢您的回答,应该放在最后...就像自然交流一样。 - Miguel Angelo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接