Class: SpreeStripe::ConfirmPaymentsController
- Inherits:
-
Object
- Object
- SpreeStripe::ConfirmPaymentsController
- Includes:
- Spree::CheckoutAnalyticsHelper
- Defined in:
- app/controllers/spree_stripe/confirm_payments_controller.rb
Instance Method Summary collapse
-
#show ⇒ Object
GET /stripe/confirm_payment/:id?session=ps_...&redirect_status=...
Instance Method Details
#show ⇒ Object
GET /stripe/confirm_payment/:id?session=ps_...&redirect_status=...
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'app/controllers/spree_stripe/confirm_payments_controller.rb', line 10 def show @order = current_store.orders.find_by_prefix_id!(params[:id]) return redirect_to_cart_canceled if @order.canceled? return redirect_to_complete if @order.completed? payment_session = @order.payment_sessions.find_by_prefix_id!(params[:session]) payment_session.payment_method.complete_payment_session( payment_session: payment_session, params: { session_result: params[:redirect_status] } ) return handle_failure(payment_session.errors..to_sentence) unless payment_session.completed? Spree::Dependencies.carts_complete_service.constantize.call(cart: @order) unless @order.completed? if @order.reload.completed? track_checkout_completed if respond_to?(:track_checkout_completed) redirect_to_complete else handle_failure end rescue Spree::Core::GatewayError => e handle_failure(e.) end |