Commit Graph

165 Commits

Author SHA1 Message Date
Matt-Yorkley
3bcfc673f7 Ensure selected shipping method is actually selected
Hashes with symbol keys != hashes with string keys 🙈
2021-09-06 20:58:22 +01:00
Matt-Yorkley
e1393c96ca Correctly void transactions when payments are cancelled due to stock issues 2021-07-27 23:24:00 +01:00
Matt-Yorkley
8e1631bfc7 Set adjustments associated with voided payments to ineligible.
Otherwise we can end up with duplicate transaction fees for voided payments.
2021-07-12 08:28:32 +01:00
Matt-Yorkley
e6d9545c30 Use :incomplete scope when voiding payments that can't be processed due to stock changes 2021-07-09 13:31:00 +01:00
Matt-Yorkley
9bcf0d5b38 Handle Stripe payments when checkout fails due to stock issues
This can occur when stock is reduced after the user is redirected to Stripe and before they are redirected back. The stock is insufficient, the order is not complete, the user is bounced back to the cart, but a *pending* Stripe payment is left on the order.
2021-07-09 13:13:20 +01:00
Andy Brett
aa8067f96b process payments separately from completing the order 2021-06-29 11:54:48 -07:00
Andy Brett
334b9b520a removed deprecated calls to force_ssl; rely on config.force_ssl 2021-06-24 11:58:33 -07:00
Pau Pérez Fabregat
db993652c4 Merge branch 'master' into payment-states 2021-06-18 12:20:26 +02:00
Andy Brett
b41302d5d8 update state transitions for new requires_authorization state 2021-06-17 14:23:59 -07:00
Luis Ramos
23627c5453 Run rubocop -a (safe corrections) removing all exceptions so all possible fixes are applied
9290 issues fixed
2021-06-17 22:19:26 +01:00
Luis Ramos
b2e97fe1d2 Rename order.update! to order.update_order! and adjustment.update! to adjustment.update_adjustment! 2021-05-19 09:54:22 -07:00
Maikel Linke
4d242af007 Use pessimistic locking processing Stripe payment
We used pessimistic locking around the `update` action already but when
Stripe redirects back to us we complete the payment in the `edit` action.
2021-03-25 15:17:30 +11:00
Luis Ramos
c4c5bbc9a3 Adapt helpers to rails 5.2 2021-03-16 23:37:24 +00:00
Luis Ramos
f55150745e Add checkout helper to checkout controller 2021-03-16 23:37:24 +00:00
Luis Ramos
d4cbf47226 Add T and Cs helper to checkout controller 2021-03-16 23:37:24 +00:00
Matt-Yorkley
f28cd4a4e5 Adapt checkout FormDataAdapter 2021-03-11 12:06:00 +00:00
Matt-Yorkley
c5a47b51a6 Update order totals during CheckoutController#update 2021-03-11 11:20:01 +00:00
Luis Ramos
f3da7afd55 Replace spree_order_path with order_path so we can use scope in the routes file 2021-01-25 19:55:42 +00:00
Luis Ramos
6e7ee02191 Change spree.order_path to spree_order_path everywhere 2021-01-25 19:52:48 +00:00
Luis Ramos
7a22367b4a Make controllers use ::Basecontroller instead of StoreController 2021-01-15 21:59:16 +00:00
Matt-Yorkley
2fa2a30c67 Add spec coverage, refactor, avoid double-render errors
👍
2020-11-22 18:37:31 +00:00
Matt-Yorkley
87df44764f Extract stock-check logic to controller concern and inject prior to final Paypal payment confirmation. 2020-11-22 18:02:52 +00:00
Andy Brett
17202ff39c move gateway_error require to lib/spree/core.rb 2020-11-10 14:55:56 -08:00
Luis Ramos
032075c04a Merge pull request #6119 from arku/chore/fire-event-removal
Remove fire_event method usage
2020-10-21 21:21:35 +01:00
Arun Kumar Mohan
b0fa1464f8 Remove fire_event method usage 2020-10-18 20:36:38 -05:00
Luis Ramos
a34c18451c Add spree helper 2020-09-17 13:59:41 +01:00
Luis Ramos
27fa04114e Add require for gateway error 2020-09-17 13:59:41 +01:00
Luis Ramos
e0cb7a29bf Add helper prefix to helper calls 2020-09-17 13:58:45 +01:00
Matt-Yorkley
0fd163602d Rename method for clarity 2020-08-17 11:17:42 +01:00
Matt-Yorkley
de22ad0000 Fix flash error issues in checkout requests 2020-08-14 12:41:56 +01:00
Luis Ramos
9e9e0d0bd8 Remove rescue_from and just add the rescue to the edit action, the update action has a different logic where there is a generic rescue StandardError after the GatewayError rescue 2020-07-29 22:50:25 +01:00
Luis Ramos
da4abf6617 Add a comment to explain the necessity of the first rescue in the update action 2020-07-29 22:50:20 +01:00
Luis Ramos
ad00971ca8 Improve readability and add bugsnag error (now in the checkout_failed method) when checkout_fails while handling stripe redirect 2020-07-29 22:50:18 +01:00
Luis Ramos
07005594ff Move payments persistence code to order workflow service 2020-07-28 23:56:43 +01:00
Luis Ramos
9cbcf14485 Move shipping method id setting code to OrderWorkflow service 2020-07-28 23:50:47 +01:00
Luis Ramos
c3f99050fd Move advance_order_state from checkout_controller to OrderWorkflow service 2020-07-28 23:43:07 +01:00
Luis Ramos
734fce5ce7 Add code to persist payments after failed payments. The state machine
rollbacks the transactions, with this we keep record of what went wrong.
2020-07-28 23:29:49 +01:00
Luis Ramos
ec0d06af54 Reuse update_failed method as the code needed is exactly the same 2020-07-25 19:39:46 +01:00
Luis Ramos
b23b707b5d Notify bugsnag and execute post checkout actions (reset to cart state) whenever there's a payment gateway exceeption raised 2020-07-25 19:39:46 +01:00
Luis Ramos
1bf946d124 Reused code in checkout controller, the reponse for the case when there is a stripe exception anywhere is the same as when the update action fails 2020-07-25 19:39:46 +01:00
Luis Ramos
5266d95910 Move method closer to related/similar methods 2020-07-25 19:39:46 +01:00
Luis Ramos
2d4326ded3 Replace empty? with blank? which is equivalent but a bit more resilient, returns false for nil
Present is not blank, so unless blank? becomes if present?
2020-07-01 14:08:07 +01:00
Luis Ramos
f848a89a00 Rename update_attributes to update #rails4 2020-06-22 16:51:43 +01:00
Luis Ramos
8a61257547 Rename all before_filter to before_action, it's the same function with a new name 2020-06-22 13:11:57 +01:00
Luis Ramos
8a9dae0ee2 Run rubocop autocorrect
This is the result of bundle exec rubocop --auto-correct
2020-06-22 12:23:10 +01:00
Luis Ramos
f34f693620 Merge branch 'master' into 3-0-stable-may-22 2020-05-22 22:54:19 +01:00
Luis Ramos
35824c7aa1 Rename restartCheckout to order_checkout_restart to make it follow service naming convention 2020-05-15 19:29:37 +01:00
Luis Ramos
839b373b5c Merge branch 'master' into 3-0-stable-Apr28 2020-04-28 13:40:19 +01:00
Luis Ramos
ab16931d70 Merge pull request #5257 from luisramos0/stripe_sca_payments_last
StripeSCA - reuse better method to fetch last payment of an order to avoid nasty bugs in the future
2020-04-27 18:34:35 +01:00
Luis Ramos
d482cccefe Use OrderPaymentFinder methods instead of payments.last and payments.pending.last 2020-04-23 16:08:10 +10:00