One step checkout is not real one step

  • Posts: 317
  • Thank you received: 17
  • Hikashop Business
3 years 11 months ago #327261

-- HikaShop version -- : 4.4.0

So after some testing I realize that one step checkout is imposible to use.
For almost every input, there must be some validation with confirm button. Example selction of country must be confirmed with button, to shipping method can be changed.
Is there anybody to achive one step with Hikashop and how to?

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
3 years 11 months ago #327272

Hi,

Well, that's not totally true.
If the shipping methods available before the registration / guest form are the same as after, and no other things change, when you use the main "finish" button at the bottom, it will process the order directly.
However, if the available shipping methods change, or if the total amount changes, or something else changes, HikaShop won't validate the finish process and will require the customer to validate again. That's because you do want people to finish with the amount they expect to pay, etc. You would get complains if the final amount would be different after the order creation because something changed due to the customer registering/logging in.
So it is possible to have a true one step checkout, and I've seen it done by others in the past with HikaShop.
However, it depends on the situation and how the checkout is configured.
Some features can't be used with a true one page checkout. For example, if you need a registration with confirmation, the customer will have to validate his account with a link in an email sent to his email address before finishing his order. So it's impossible to have a true one step checkout with that feature activated.

Please Log in or Create an account to join the conversation.

  • Posts: 317
  • Thank you received: 17
  • Hikashop Business
3 years 11 months ago #327309

Nicolas, yes one step works with limited functions (I use it). But change of country is not doing nothing on one step. This is one of most important, when customer can see his shipping cost. And it should change on same page.
We have no country selection before and all works well. Now we need diferent shipping costs for 2 zones.
When customer select other country, it should change shipping cost. It is just simple UX fact.
I understand that is hard to predict all scenarios, but this is common thing in international shops.

Please Log in or Create an account to join the conversation.

  • Posts: 2143
  • Thank you received: 747
3 years 11 months ago #327315

Hi,

This may help... or not:

To achieve what feels to the customer like a 1-step checkout, I am making it "technically" a 2-step checkout in HikaShop.
- Step 1: Login only (all switches set to "yes").
- Step 2 (in this order): Address, Shipping, Coupon, Cart, Payment, Status (if at all), Fields (if any), T&C.
- Display checkout progress bar: No.

It works perfectly also with address/country selection and shipping being adjusted accordingly.
And again, it feels like a 1-step checkout, and that's what matters to the customer in terms of UX where 1-step checkout makes sense (which isn't always the case, of course).


Need help with customisations of layouts, style or other site development? PM me!
(Don't forget to turn on "E-mail notification of new messages" )

Please Log in or Create an account to join the conversation.

  • Posts: 317
  • Thank you received: 17
  • Hikashop Business
3 years 11 months ago #327317

It make sense, but that means that you use registration? I use just guest checkout.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
3 years 11 months ago #327316

Hi,

It is possible to do it.
You just have to add an onclick on the country field to auto submit the current block when changed.
To do that,
You want to change the line:

'class="hkform-control" '.$onWhat.'="window.hikashop.toggleField(this.value,\''.$fieldName.'\',\'address_shipping_' . $this->step . '_' . $this->module_position.'\',0,\'hikashop_\');"',
in the file sub_block_login_registration.php via the menu Display>Views to something like that:
'class="hkform-control" '.$onWhat.'="'.($fieldName =='address_country' ? 'window.checkout.submitLogin('.$this->step.', '.$this->module_position.', \'register\')' : 'window.hikashop.toggleField(this.value,\''.$fieldName.'\',\'address_shipping_' . $this->step . '_' . $this->module_position.'\',0,\'hikashop_\');').'"',
That will automatically register (or validate the guest form if you're in guest mode) of the user and refresh the shipping area with the corresponding shipping methods when the customer selects his shipping address country.
But we can't do that by default. In most cases merchants don't want the registration form to validate when changing the country as the state needs to be selected after the country selection.

Last edit: 3 years 11 months ago by nicolas.

Please Log in or Create an account to join the conversation.

  • Posts: 317
  • Thank you received: 17
  • Hikashop Business
3 years 11 months ago #327353

Nicolas, not working. I changed the code, but country select does nothing.
With your exact code I get syntax error, unexpected 'class' (T_CLASS), expecting ')'
When I deleted first ' there was no error.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
3 years 11 months ago #327385

Hi,

Sorry. That was a bad copy / paste. The first quote should indeed not be there. I've edited my message to remove it.

Please Log in or Create an account to join the conversation.

  • Posts: 317
  • Thank you received: 17
  • Hikashop Business
3 years 11 months ago #327387

Ok. But as I say, I changed the code, but country select does nothing.
It should change shipping cost.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
3 years 11 months ago #327389

Hi,

I don't know. I would need to check on your website to see what is going on.
Could you provide a link to it ?

Please Log in or Create an account to join the conversation.

  • Posts: 86
  • Thank you received: 3
3 years 10 months ago #327779

I also would like this feature of the shipping cost updating depending on the country selected.
I'm using guest checkout only and 1 step checkout.

I have seen it work on other webshops and it would be really great to have.

Kind regards
Jacob

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

  • Posts: 246
  • Thank you received: 9
  • Hikashop Business Hikashop Essential
3 years 1 week ago #337115

nicolas wrote: Hi,

It is possible to do it.
You just have to add an onclick on the country field to auto submit the current block when changed.
To do that,
You want to change the line:

'class="hkform-control" '.$onWhat.'="window.hikashop.toggleField(this.value,\''.$fieldName.'\',\'address_shipping_' . $this->step . '_' . $this->module_position.'\',0,\'hikashop_\');"',
in the file sub_block_login_registration.php via the menu Display>Views to something like that:
'class="hkform-control" '.$onWhat.'="'.($fieldName =='address_country' ? 'window.checkout.submitLogin('.$this->step.', '.$this->module_position.', \'register\')' : 'window.hikashop.toggleField(this.value,\''.$fieldName.'\',\'address_shipping_' . $this->step . '_' . $this->module_position.'\',0,\'hikashop_\');').'"',
That will automatically register (or validate the guest form if you're in guest mode) of the user and refresh the shipping area with the corresponding shipping methods when the customer selects his shipping address country.
But we can't do that by default. In most cases merchants don't want the registration form to validate when changing the country as the state needs to be selected after the country selection.





Seems this file is changed, I can't find the items you mention here. Have same issue on my site.


I'll keep on trying!
Last edit: 3 years 1 week ago by gasoline.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
3 years 1 week ago #337122

Hi,

The line is still there in the latest version of HikaShop.
Note however that this is not tested. Also, it would require some real, complex development to handle this properly in all type of situations.
The simplest is to configure your shipping methods / checkout so that they don't appear before a user validates his address.

Please Log in or Create an account to join the conversation.

Time to create page: 0.107 seconds
Powered by Kunena Forum