Can Not Checkout on iOS - Safari / Chrome

  • Posts: 7
  • Thank you received: 1
2 years 5 months ago #342125

-- HikaShop version -- : 4.6.0
-- Joomla version -- : 3.10.9
-- PHP version -- : 7.4.12
-- Browser(s) name and version -- : Safari/Chrome
-- Error-message(debug-mod must be tuned on) -- : none

When customers go to checkout on iPhones and other iOS devices, the order is not submitted.

On the checkout page, after all information is completed and the "Finish" button is selected, the page refreshes and is blank. The user is never redirected to the PayPal page and the order is not submitted.

This was tested on both Safari and Chrome browsers with the same (negative) result.

Checkout appears to work fine on Desktop computers and Android devices so the issue is likely related to iOS.

We have a lot of potential customers who use iPhones and iPads so we are losing a lot of sales.

Any suggestions? Please help!

-JM

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

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 5 months ago #342127

Hi,

That's strange. Chrome works the same on Android and iOS.
Are you able to reproduce the issue on several iPhones/iOS devices ?
Is the page completely blank ? Or just the middle ?
If the page is completely blank, it normally indicates a PHP fatal error so it wouldn't be linked to the browser but to a bug on the server. In that case, the first thing to do is to activate the "debug mode" and "error reporting" settings of the Joomla configuration and try again. That way, it should display an error message on blank pages which will help us understand what's going on.

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

  • Posts: 7
  • Thank you received: 1
2 years 5 months ago #342180

Nicolas,

Thanks for the response.

It seems to work fine on Android but not iPhone so it must be an issue with iOS.

Yes, I have tested it on multiple Androids and they all work and tested it on multiple iPhones and none of them work.

The page is not blank. You fill-out all the info (email, address. phone, etc.) then click on "Finish" and instead of going to the payment page (like Android does) it just reloads the page and clears the form. Fill-out the form again and the same thing happens again.

Error reporting is set to maximum and no errors are reported. There are also no errors in the console.

This has been an ongoing issue through several versions of HikaShop. We just updated everything including Joomla (3.10.9) and HikaShop (4.6.0). I've also tried PHP 7.4, 8.0, and 8.1.

The site is very old and has been migrated many times. We have also used multiple developers and were even hacked once several years ago. Everything else seems to be running very good now except this issue with iPhones and HikaShop.

What can we try to figure this out and get it resolved.

-JM

If you have access to an iPhone or iPad, you can select any product from our store and try to get to the payment page.

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

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 5 months ago #342181

Hi,

I don't have an iPhone / iPad on hand so I can't check the situation until at least Tuesday / Wednesday with one.
However, while looking at the checkout page with a Chrome browser on windows, I see several javascript errors linked to jquery on the page:
i.imgur.com/9iDCgYI.png
This seems to indicate a jquery conflict. It's actually amazing that the checkout is working with these javascript errors on other browsers.
So I would recommend first fixing these jquery errors. Hopefully, it might fix the problem on iPhones/iPads.
I'm not exactly sure why these errors popup. However, usually, jquery conflicts can be fixed by using Jquery Easy ( extensions.joomla.org/extension/jquery-easy/ ). So I would recommend installing and setting it up.

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

  • Posts: 7
  • Thank you received: 1
2 years 5 months ago #342193

Nicolas,

Thanks for the tips. I'll try to get those js errors fixed and see where that leaves me.

-JM

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

  • Posts: 7
  • Thank you received: 1
2 years 5 months ago #342210

Hi Nicolas,

I fixed the js errors on checkout but the issue still persists on iOS.

Please let us know if you have a chance to check it on an iPhone or if you have any other suggestions of things we can try.

Thanks,

-JM

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

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 5 months ago #342278

Hi,

I indeed don't see the javascript errors anymore on your website.
I tried to reproduce the issue on both Chrome and Safari on an iPhone X with iOS 15.4 from a coworker today.
However, I couldn't reach the checkout.
Whenever I tried to add a product to the cart, I got the error "The operation can only work if you accept the use of cookies" on both browsers.
And I checked on FireFox and Chrome on my desktop PC and I didn't get the problem, and I also didn't get the problem on Chrome on my Android smartphone.
That error with the cookies is something which happens when a cookie plugin is not properly configured. However, it should normally be problematic for all browsers, not just iOS browsers, but maybe that's a lead ?
Are you still able to add products to the cart on your iOS devices ?

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

  • Posts: 7
  • Thank you received: 1
2 years 5 months ago #342307

I had an issue with cookies before and I made changes to the script so it would work. Once I updated HikaShop to 4.6.0, I no longer had the cookie issue.

CART COOKIE ISSUE:
Here is the file: /public_html/components/com_hikashop/controllers/product.php
Line NO: 401 - 409, I commented-out the code.

$tmpl = hikaInput::get()->getCmd('tmpl', '');

		if(empty($_COOKIE)) {
			if(in_array($tmpl, array('ajax', 'raw'))) {
				$ret = array(
					'ret' => 0,
					'message' => JText::_('COOKIES_REQUIRED_FOR_OPERATION')
				);
				hikashop_cleanBuffers();
				echo json_encode($ret);
				exit;
			}

We have another website (flightcam360.com) and it is very similar but does not have the same issue. On this site I can reach the checkout on iOS. So, perhaps the issue is caused by the template or perhaps one of the plugins?? This probably also means the issue is not w/ HS unless it is in the configuration.

I hope we can figure out the cause of the issue because I can't really afford to rebuild the site. :(

-JM

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

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 5 months ago #342309

Hi,

Searching a bit only I found this thread on the Joomla forum about similar cookies issues on iOS only :
forum.joomla.org/viewtopic.php?t=985651
There are some leads to follow there so I would recommend read there and see if what is proposed can help.

Testing today again, I indeed still reproduced the cookies issue on motocam360 and not on flightcam360 on that same iPhone X with Safari.

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

  • Posts: 7
  • Thank you received: 1
2 years 5 months ago #342446

Hi Nicolas,

I think you put us on the right path with that Joomla forum post.

I checked the "Cookie Path" in the configuration and it was set to our domain name rather than "/".

So, I cleared "Cookie Domain" and "Cookie Path" and now the checkout appears to work as expected.

I'm glad that it turned-out to be a configuration issue and not a problem with the software. This issue has been driving us nuts for a very long time. I sure do appreciate that you took the time to help us get it figured-out.

Thank you, thank you, thank you.

Regards,

-JM

The following user(s) said Thank You: nicolas

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

Time to create page: 0.075 seconds
Powered by Kunena Forum