convene
convene copied to clipboard
The Stripe Webhook Callback should fail more gracefully
Our current implementation can leave orders in strange spots if they fail in the middle.
On the one hand, this is good because we don't want to redo important steps that have already happened.
On the other, it's not great because if step B updates the order to paid and step C fails then D and E don't happen and never will.
It would probably be better to either:
- Put this all in a transaction, and if any part fails don't commit the transaction (not sure how to do that, since sidekiq uses redis...)
- Figure out a better way to ensure each piece of the order completion process can be eventually resolved if any one point fails
Thoughts?