Multiple Page Checkout
Posted: Mon Feb 02, 2009 4:56 pm
Our client does not want to have a one page checkout.
Instead they want to have the payment information moved to a new page that shows a summary of the customer order and display the payment methods.
So basically one page checkout page should have a continue button that should redirect the user to the payment page where they can view a summary of the order, select a payment method and place the order.
I found Conlib/PaymentPage.ascx to be doing a similar thing. It displays a summary of customer order and the payment methods. I initially thought to just add a button to this page that would redirect to the payment page on the click event but then I figured out that in case of anonymous users, one page checkout control is also firing logic to create a new user. If I just redirect the user to the payment page, the logic to create a new customer won't be fired. I customized the code a bit to take into account this aspect. The problem that is trobling me now is that once the new user is created, the basket shipment information is not getting updated for the new user. I thought the line of code "User.Migrate(oldUser, newUser, true);" in the function "CheckedOut" would migrate all the basket information of the anonymous user to the new user but it's not doing that. When I redirect to payment page, I cannot see the shipment information at all.
I might be able to do what I want by adding some more custom code but I would like to find out if Able-Commerce has any recommended way for this scenario.
Thanks.
Instead they want to have the payment information moved to a new page that shows a summary of the customer order and display the payment methods.
So basically one page checkout page should have a continue button that should redirect the user to the payment page where they can view a summary of the order, select a payment method and place the order.
I found Conlib/PaymentPage.ascx to be doing a similar thing. It displays a summary of customer order and the payment methods. I initially thought to just add a button to this page that would redirect to the payment page on the click event but then I figured out that in case of anonymous users, one page checkout control is also firing logic to create a new user. If I just redirect the user to the payment page, the logic to create a new customer won't be fired. I customized the code a bit to take into account this aspect. The problem that is trobling me now is that once the new user is created, the basket shipment information is not getting updated for the new user. I thought the line of code "User.Migrate(oldUser, newUser, true);" in the function "CheckedOut" would migrate all the basket information of the anonymous user to the new user but it's not doing that. When I redirect to payment page, I cannot see the shipment information at all.
I might be able to do what I want by adding some more custom code but I would like to find out if Able-Commerce has any recommended way for this scenario.
Thanks.