Checkout Steps

Hi to all the community.

Is there a way to merge the two steps “Shipping Options” and “Payment Options” in one step as it was in 2.2.5 version “Shipping and Payment Options”.

If we can't implement this, how i can change the position of these two steps.

Step 4 “Payment Options” to be step 3 and

Step 3 “Shipping Options” to be step 4.

Thanks!

@akistdm,



Unfortunately there is no simply way to do it. Let me explain the reason. For some payment methods (e.g. PayPal Pro) credit card details should be entered in the store. If you switch checkout steps, it will be required to store secure data (credit card number, e.t.c.) somewhere (e.g. in session) until the “Place order” button is clicked on the last checkout step. So due to security reasons the “Payment Options” is always last step. Hope it makes sense.

Is there a way to simply have the “Billing and Shipping Address” the first step that shows up? Right now, in 4.x.x, it goes to “Shipping options” first. I don't want to change the step orders, I just want the “Billing and Shipping Address” tab to be open first.

It must be something you set somewhere causing that. The addresses is the first section to come up with on my 4.x installs for single page checkout and multi-page checkout.

[quote name='fishtail' timestamp='1398964392' post='182749']

Is there a way to simply have the “Billing and Shipping Address” the first step that shows up? Right now, in 4.x.x, it goes to “Shipping options” first. I don't want to change the step orders, I just want the “Billing and Shipping Address” tab to be open first.

[/quote]



Do you mean that the step #2 should be displayed to the customer if he logs in on the first checkout step?

[quote name='eComLabs' timestamp='1399016351' post='182775']

Do you mean that the step #2 should be displayed to the customer if he logs in on the first checkout step?

[/quote]



Im not quite sure what you mean, but right now what happens if you click on “Checkout”, it displays a list of steps in “accordion” style tabs (top to bottom) → Signed in as, Billing and Shipping, Shipping Options, and Billing Options.



All my customers must be signed in to buy, so it always starts at “Shipping options” step, but I want it to start at the “Billing and Shipping” step instead since a lot of our customers use a different shipping address from time to time. If it doesn't start at that step, then some forget they used a different shipping address last time (since it saves it in memory).

NairdaCart, I forgot to mention that I disabled shipping, since we calculate it manually after for the customer. I have a feeling that has to do with it. But is there a way to bypass that and still make Address the first step to appear?


[quote name='fishtail' timestamp='1399085538' post='182817']

Im not quite sure what you mean, but right now what happens if you click on “Checkout”, it displays a list of steps in “accordion” style tabs (top to bottom) → Signed in as, Billing and Shipping, Shipping Options, and Billing Options.



All my customers must be signed in to buy, so it always starts at “Shipping options” step, but I want it to start at the “Billing and Shipping” step instead since a lot of our customers use a different shipping address from time to time. If it doesn't start at that step, then some forget they used a different shipping address last time (since it saves it in memory).

[/quote]

[quote name='fishtail' timestamp='1399085538' post='182817']

Im not quite sure what you mean, but right now what happens if you click on “Checkout”, it displays a list of steps in “accordion” style tabs (top to bottom) → Signed in as, Billing and Shipping, Shipping Options, and Billing Options.



All my customers must be signed in to buy, so it always starts at “Shipping options” step, but I want it to start at the “Billing and Shipping” step instead since a lot of our customers use a different shipping address from time to time. If it doesn't start at that step, then some forget they used a different shipping address last time (since it saves it in memory).

[/quote]



Please open the “app/controllers/frontend/checkout.php” file and replace this part of code:



if ($shipping_population == true || empty($profile_fields['S'])) {
$completed_steps['step_two'] = true;
}




with this one:



if ($shipping_population == true || empty($profile_fields['S'])) {
if (!empty($edit_step)) {
$completed_steps['step_two'] = true;
}
}




It should help.

[quote name=‘eComLabs’ timestamp=‘1399267653’ post=‘182910’]

Please open the “app/controllers/frontend/checkout.php” file and replace this part of code:


<br />
if ($shipping_population == true || empty($profile_fields['S'])) {<br />
	$completed_steps['step_two'] = true;<br />
			}<br />

```<br />
<br />
with this one:<br />
<br />
```php
<br />
if ($shipping_population == true || empty($profile_fields['S'])) {<br />
				if (!empty($edit_step)) {<br />
	$completed_steps['step_two'] = true;<br />
	}<br />
			}<br />

```<br />
<br />
It should help.<br />
[/quote]<br />
<br />
Thanks for trying to help me "eComLabs", but it didn't seem to work. Still goes directly to step "3". Now that I know about checkout.php file, maybe I'll try to look through it to see if I can maybe find a solution. But if you happen to find it, I'd be glad to hear it <img src="upload://rA9Qa8gnUPZzRZRdI8kt3dpjkrs.png" class="bbc_emoticon" alt=":)">

[quote name=‘fishtail’ timestamp=‘1399353395’ post=‘182970’]

Thanks for trying to help me “eComLabs”, but it didn’t seem to work. Still goes directly to step “3”. Now that I know about checkout.php file, maybe I’ll try to look through it to see if I can maybe find a solution. But if you happen to find it, I’d be glad to hear it :)

[/quote]



Hm… We have tested it and it worked. Note that this code will work on the first visit of the checkout page only. So if you go to the next step at least one time, the default behavior will be used until the session is cleared.

[quote name='eComLabs' timestamp='1399361040' post='182983']

Hm… We have tested it and it worked. Note that this code will work on the first visit of the checkout page only. So if you go to the next step at least one time, the default behavior will be used until the session is cleared.

[/quote]



It works. Thank you very much! That's exactly what I did wrong. I signed out and cleared my browser cache, and it worked.



We'll need a few custom add-ons and changes done to our store at some point in the near future, I'm assuming you do this based on your website information. I like to pay back the people who lend a helping hand, so we will come to you when the time comes.



Thanks again!

[quote name='fishtail' timestamp='1399525079' post='183120']

It works. Thank you very much! That's exactly what I did wrong. I signed out and cleared my browser cache, and it worked.



We'll need a few custom add-ons and changes done to our store at some point in the near future, I'm assuming you do this based on your website information. I like to pay back the people who lend a helping hand, so we will come to you when the time comes.



Thanks again!

[/quote]



You are welcome! We will wait for your requests. Have a good day!

Thanks eComLabs

Solution works on 4.9.3.SP1