Fix Stripe route helpers and improve error handling in checkout process
This commit is contained in:
@@ -266,8 +266,8 @@ module Api
|
||||
payment_method_types: [ "card" ],
|
||||
line_items: line_items,
|
||||
mode: "payment",
|
||||
success_url: order_payment_success_url + "?session_id={CHECKOUT_SESSION_ID}",
|
||||
cancel_url: order_payment_cancel_url,
|
||||
success_url: payment_success_url + "?session_id={CHECKOUT_SESSION_ID}",
|
||||
cancel_url: payment_cancel_url,
|
||||
metadata: {
|
||||
order_id: @order.id,
|
||||
user_id: current_user.id
|
||||
|
||||
@@ -128,6 +128,7 @@ class OrdersController < ApplicationController
|
||||
error_message = e.message.present? ? e.message : "Erreur Stripe inconnue"
|
||||
Rails.logger.error "Stripe checkout session creation failed: #{error_message}"
|
||||
flash[:alert] = "Erreur lors de la création de la session de paiement"
|
||||
@checkout_session = nil # Explicitly set to nil on error
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -255,6 +256,9 @@ class OrdersController < ApplicationController
|
||||
end
|
||||
|
||||
def create_stripe_session
|
||||
Rails.logger.debug "Creating Stripe session for order #{@order.id}"
|
||||
Rails.logger.debug "Order tickets: #{@order.tickets.inspect}"
|
||||
|
||||
line_items = @order.tickets.map do |ticket|
|
||||
{
|
||||
price_data: {
|
||||
@@ -269,12 +273,16 @@ class OrdersController < ApplicationController
|
||||
}
|
||||
end
|
||||
|
||||
Rails.logger.debug "Stripe line items: #{line_items.inspect}"
|
||||
Rails.logger.debug "Success URL: #{payment_success_url}"
|
||||
Rails.logger.debug "Cancel URL: #{payment_cancel_url}"
|
||||
|
||||
Stripe::Checkout::Session.create(
|
||||
payment_method_types: [ "card" ],
|
||||
line_items: line_items,
|
||||
mode: "payment",
|
||||
success_url: order_payment_success_url + "?session_id={CHECKOUT_SESSION_ID}",
|
||||
cancel_url: order_payment_cancel_url,
|
||||
success_url: payment_success_url + "?session_id={CHECKOUT_SESSION_ID}",
|
||||
cancel_url: payment_cancel_url,
|
||||
metadata: {
|
||||
order_id: @order.id,
|
||||
user_id: current_user.id
|
||||
|
||||
Reference in New Issue
Block a user