Closed victor-ono closed 12 years ago
I'm not able to reproduce this issue. I've set auto_capture to true and done a partial store credit / partial credit card payment for the order and the payment gets set correctly to "paid".
What version of Spree and Gateway are you using?
I'm using Spree 0.40.0. with Authorize.net. I fixed this problem by adding self.reload
to update!
method in core/app/models/order.rb. See my ticket on lighthouseapp.com - http://railsdog.lighthouseapp.com/projects/31096/tickets/1855-issue-with-spree_store_credits-gem-partial-credit-cart-payment-and-auto_capture-true
Can you give some insight on what might be wrong?
Thanks
Closing, not supporting 0.40 any longer.
There is a terrible issue with your plugin - if Spree credit card setting
:auto_capture
is set to true: Spree::Config.set(:auto_capture => true)preference :auto_capture, :boolean, :default => false # automatically capture the creditcard (as opposed to just authorize and capture later)
and someone places an order paying partly with their store credit and partly with a credit card, that order's
payment_state
is set to 'balance_due' instead of 'paid' and there's no way to change it in the admin. It happens because order'spayment_total
is not updated and is always 0 in this case, when it must be equal to the amount paid with the credit card. update_payment_state method in order.rb setspayment_state
to 'balance_due' whenpayment_total
is less thantotal
:We moved our store into production and now half of our orders are a mess. Please fix this as soon as possible.
Thanks