1

当我在 Spree 中设置 auto_capture_on_dispatch = true 时,Braintree 不支持在一个订单授权中对多个发货进行部分付款。它适用于第一次捕获尝试,但在第二次尝试时会引发以下错误。

 Gateway Error
 --- !ruby/object:ActiveMerchant::Billing::Response
params:
 braintree_transaction: 
 message: Cannot submit for settlement unless status is authorized. (91507)
 success: false 

我认为如果不是授权订单总额,Spree 授权每批货物分别在最后进行不同的交易,我认为这个错误可以解决。换句话说,在一个订单中创建与发货一样多的付款授权。这在技术上可行吗?有人可以让我在这方面走上正轨吗?如何在 Spree 中实施这种方法?

我正在寻找多个 Spree 代码行,让我告诉你 Spree 不是香草蛋糕。

https://github.com/spree/spree/blob/master/core/app/models/spree/order/checkout.rb#L82

https://github.com/spree/spree/blob/master/core/app/models/spree/order/payments.rb#L22

https://github.com/spree/spree/blob/master/core/app/models/spree/payment/processing.rb#L10

https://github.com/spree/spree/blob/master/core/app/models/spree/payment.rb#L215

https://github.com/spree/spree/blob/master/core/app/models/spree/shipment.rb#L183

https://github.com/spree/spree/blob/master/core/app/models/spree/shipment_handler.rb#L20

非常感谢您。

4

0 回答 0