Closed jash closed 5 years ago
hey @jash we've made the timeouts configurable and also added retries in our fork - https://github.com/spree-contrib/spree_avatax_certified
@jash thanks for the feedback. We have some planned maintenance coming up for this gem.
@damianlegawiec we still actively maintain this gem and I'd prefer that you submit patches to us instead of adding confusion.
Thanks, -dh
@dhonig well... we tried but nobody reviewed those PRs and weren't merged. Also, your test suite doesn't pass on CI and we're already over 60 commits ahead in our fork.
The last Spree version this repo supports is 3 years old. I wouldn't call it actively maintaining.
We can get that sorted. Let me look into where the confusion is.
I just ran into a couple problems with this. It seems like the timeouts are hardcoded to exceptionally short times (1 second): See here and here and here.
When the network is slow at all, an exception is raised which causes the second issue -- the Spree order is left in a "half-completed" state. The charge goes through and the payment is recorded, but there is no credit card transaction ID saved, and the order isn't marked as purchased, so the customer typically re-attempts making the purchase, thus being double-billed.
Can you make the timeouts a configurable parameter so they can be lengthened? Can you make it so that in case of not being able to contact Avalara servers, orders are left is a consistent state? (Either fully purchased, or not at all).
Thanks, John