我正在开发一个具有贝宝交易的应用程序。我正在使用'paypal-sdk-rest'
gem来建立与paypal api的连接,但是在尝试将多个物品传递到购物车时遇到了麻烦。
让我们看这个例子,以指定我在说什么。
这有效:
payment = {
:intent => "sale",
:payer => {:payment_method => "paypal"},
:transactions =>
[{
:amount => {
:total => '500',
:currency => "USD" },
:item_list => {
:items => { :name => "pizza", :sku => "pizza", :price => '500', :currency => "USD", :quantity => 1 },
},
:description => "Some description"
}],
:redirect_urls => {
:return_url => "http://localhost:3000/somepath",
:cancel_url => "http://localhost:3000/otherpath"
}
}
@payment = Payment.new(payment)
@payment.create
但这不是(将一个项目添加到项目列表中):
payment = {
:intent => "sale",
:payer => {:payment_method => "paypal"},
:transactions =>
[{
:amount => {
:total => '500',
:currency => "USD" },
:item_list => {
:items => [{ :name => "pizza", :sku => "pizza", :price => '500', :currency => "USD", :quantity => 1 },{ :name => "pizza2", :sku => "pizza2", :price => '1000', :currency => "USD", :quantity => 1 }],
},
:description => "Some description"
}],
:redirect_urls => {
:return_url => "http://localhost:3000/somepath",
:cancel_url => "http://localhost:3000/otherpath"
}
}
@payment = Payment.new(payment)
@payment.create
我想要的东西与第二个东西相似,因为我想向交易中添加很多物品,实际上,我购物车中的每个物品。我的问题清楚吗?
任何帮助将非常感激,因为我一直在努力解决这一问题,例如整天,并且尝试了所有一切,但是没有运气。
我终于找到了解决方案!问题是,金额的总和必须与所添加物品的总价格一致。因此,在该示例中,错误:total
必须是'1500'
而不是'500'
,因为两个项目的价格总计为1500
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句