我正在尝试使用活跃的商家设置PayPal快速结账,但我遇到了问题。我已经按照教程进行了,我可以在paypal上找到“选择支付方式”的表格,但没有显示任何项目或价格。
这是截图。 http://i39.tinypic.com/35mircz.png
为什么即使我传递价格也没有显示价格或任何商品?这是我用来setup_purchase的代码。
@product = Product.find(params[:product_id])
setup_response = gateway.setup_purchase(200,
:ip => request.remote_ip,
:items => [{:name => "Tickets", :quantity => 22, :description => "Tickets for 232323", :amount => 10}],
:return_url => url_for(:action => 'confirm', :only_path => false),
:cancel_return_url => url_for(:action => 'index', :only_path => false)
)
redirect_to gateway.redirect_url_for(setup_response.token)
非常感谢任何帮助。 亚历
答案 0 :(得分:8)
您的问题在于您的数量和定价 - 如果您在使用类似
之类的呼叫后输出setup_responselogger.debug setup_response
然后检查日志,你会发现它可能会抱怨项目中的价格与你传递的金额(第一个值)不匹配。
目前,你的数量为22,每个'金额'为10. 10 * 22 = 220,并且因为你只是在第一个值中加入200,所以你错了它们。解决这个问题,你应该好好去。
答案 1 :(得分:1)
我遇到了同样的问题,终于找到了原因,这是令人难以置信的愚蠢。你准备好了吗?
您指定的总价格(200)与商品总和(22 * 10 = 220)之间存在不匹配。如果您将数量更改为20,它将起作用。 Paypal要求您的商品成本总和等于您指定的总价。我不知道我是怎么意识到的。