Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checkout stuck step 2 (payment) on Firefox only #7186

Closed
miro91 opened this issue Oct 25, 2016 · 22 comments
Closed

Checkout stuck step 2 (payment) on Firefox only #7186

miro91 opened this issue Oct 25, 2016 · 22 comments
Labels
bug report Component: Checkout Issue: Cannot Reproduce Cannot reproduce the issue on the latest `2.4-develop` branch Issue: Clear Description Gate 2 Passed. Manual verification of the issue description passed Issue: Format is valid Gate 1 Passed. Automatic verification of issue format passed

Comments

@miro91
Copy link

miro91 commented Oct 25, 2016

I have magento 2 running on live project and our clients are seeing some weird issue on Firefox browser. I was able to reproduce it only once and after refreshing the page everything is working as expected. I will be happy if someone have/had similar issue and have some information how to debug/fix it.

Preconditions

  1. Magento CE 2.1.0
  2. Production mode & Varnish
  3. Firefox latest version

Steps to reproduce:

  1. Add product to basket
  2. Navigate to checkout page
  3. Enter billing address and select shipping method
  4. Click Next button to open payment section

Expected result:

Display loading-mask, load payment section and cart summary, hide loading-mask

Actual results:

Display loading-mask, load payment section and cart summary, loading-mask doesn't hide and stay.

No JS errors on console or network tab in FF (ajax request to getting payment section). After refresh with #payment in URL everything is working fine. Even if open /checkout without #payment (start from 1st step) it's opening 2nd step smoothly.

@dcabrejas
Copy link

I have exactly the same issue on Magento 2.1.0, it happens sporadically so I can't provide further details as to how to replicate it other than what @miro91 has already written. I can however tell you that for us, we have replicate it on Google Chrome and Safari so I don't think this is specific to the Firefox browsers. There is nothing in the logs nor in the browser console when the issue happens which makes it really hard, if not impossible to debug.

@Loxzibit
Copy link
Contributor

I have the same issue on two different projects, one is running 2.0.9 and the other is running 2.1.0. Is there a solution for this?

@ghost
Copy link

ghost commented Oct 26, 2016

@dcabrejasazagra @Loxzibit are your stores set in production mode?

@dcabrejas
Copy link

@jupiter01 I have managed to replicate this issue on both production and developer mode

@studiotwentyeleven
Copy link

We are also experiencing this issue on 2.1.0. As @miro91 said after refresh it works fine, we have found the issue across all browsers.

@SerhiyShkolyarenko
Copy link
Contributor

@dcabrejasazagra @Loxzibit @studiotwentyeleven is a Varnish obligatory for reproducing?

@miro91
Copy link
Author

miro91 commented Nov 11, 2016

@SerhiyShkolyarenko I can replicate it on local without Varnish. Also I was able to get this issue on Chrome, not only on FF

@dcabrejas
Copy link

dcabrejas commented Nov 11, 2016

@miro91 @studiotwentyeleven @SerhiyShkolyarenko I didn't use Varnish, I have put in place a quick work around for this issue : Override the following file in your theme : magento/module-checkout/view/frontend/web/javascript/model/shipping-save-processor/default.js
Change every instance of this line fullScreenLoader.stopLoader(); to fullScreenLoader.stopLoader(true); This will force the loader to stop, the true is for force.
Hope that helps.

@SerhiyShkolyarenko
Copy link
Contributor

OK, let's sum up: issue is reproducible on 2.1.0 and 2.0.9, it doesn't depend on browser and doesn't depend on Varnish.
@miro91 @dcabrejasazagra @studiotwentyeleven @Loxzibit how often is it reproducible? How many attempts should I perform for reproducing this behavior?
Have anybody tried 2.1.2 or current develop branch?
Is it reproducible for guest or for logged in user?
15 attempts on Firefox and Chrome were not successful for me. I tried both as guest and as logged in customer. Magento 2.1.2, production mode.

@KevinMace
Copy link
Member

KevinMace commented Nov 14, 2016

We're able to replicate this,

Preconditions
Magento EE 2.1.2
Production mode
Varnish
Firefox and Chrome

Happening as a guest (haven't tested a logged in customer), the issue is occurring 90% of the time.

@SerhiyShkolyarenko
Copy link
Contributor

@KevinMace (and everyone else) which payment and shipping methods are enabled for you?

@KevinMace
Copy link
Member

@SerhiyShkolyarenko We've seen the issue using multiple payment and shipping methods.
Payment Methods: Braintree, Ebizmarts SagePay Extension
Shipping Methods: Flat Rate, Table Rates.

There doesn't seem to be a specific method or combination of methods that triggers this issue.

@Loxzibit
Copy link
Contributor

Loxzibit commented Nov 24, 2016

@SerhiyShkolyarenko We have the following setup and it seems to only be happening for guest.

Payment Methods:

  • Ebizmarts Sage Pay Suite 1.1.8
  • Paypal Express Checkout

Shipping Methods:

  • WebShopApps Matrix Rate

@SerhiyShkolyarenko
Copy link
Contributor

SerhiyShkolyarenko commented Nov 25, 2016

@KevinMace @Loxzibit thanks!
Ebizmarts Sage Pay Suite is the only common extension you have. Is the issue reproducible when you uninstall it?
Here I mean complete removal from the code base and running bin/magento setup:upgrade if it doesn't have uninstallation procedure.

@miro91
Copy link
Author

miro91 commented Nov 25, 2016

@SerhiyShkolyarenko I am also using Ebizmarts SagePay Suite and Paypal same as @Loxzibit I think that we had this issue before installing SagePay extension but I am not sure. I need to remove it and try again to confirm on 100%.

@SerhiyShkolyarenko
Copy link
Contributor

@miro91 thanks!

@Flipmediaco
Copy link

Flipmediaco commented Feb 7, 2017

We have also been experiencing this issue or a very similar issue.

Chrome & Firefox
Magento 2.1.3

  • Paypal Express Checkout
    Ebizmart SagePay 1.1.7

The issue is at Payment Selection the loader does not disappear. I note that there appears to be 2 loaders in use!

I can set the loader that fails to clear to be hidden using CSS (display none) and can continue checkout without issue. The problem appears to be purely that one of the the loaders is not being removed.

Once loader is stuck it tends to persist. Refreshing payment section #payment causes loader to disappear. Clearing browser cookies resolves problem.

The stuck loader is initiated on the shipping section, then a second loader appears briefly over the top of the stuck loader once the payment section is loaded.

When loading is stuck the following markup is present in the page.

<div id="checkout-loader" data-role="checkout-loader" class="loading-mask" data-mage-init='{"checkoutLoader": {}}'>

At this point I want to understand what is initiating the loader and I will eliminate our theme by using Luma and the SagePay extension by disabling this.

As a work around I have added the following css to the "Scripts & Style Sheets" configuration as a work around / quick fix (hides all loading masks for the checkout):-

<style> body.checkout-index-index .loading-mask { display:none !important; } </style>

Thanks

Side Point: I have noted that the Pinterest Chrome Extension appears to conflict with the page causing an error when I experience the issue. I will post details of this error found in console when i recreate it.

@magento-engcom-team magento-engcom-team added the Issue: Clear Description Gate 2 Passed. Manual verification of the issue description passed label Sep 18, 2017
@magento-engcom-team
Copy link
Contributor

@miro91, thank you for your report.
We were not able to reproduce this issue by following the steps you provided. If you'd like to update it, please reopen the issue.
We tested the issue on 2.1.9

@magento-engcom-team magento-engcom-team added the Issue: Cannot Reproduce Cannot reproduce the issue on the latest `2.4-develop` branch label Sep 26, 2017
@pkm32
Copy link

pkm32 commented Sep 27, 2017

This issue didn't start for me until I added shipping options (UPS/USPS). I was able to test for weeks using flat rate shipping, with no issues. Even after I added PayPal checkout, I still did not have the loader issue.

I added the CSS snippet Flipmediaco mentioned and it stopped the loader, now checkout loads in 2.5 seconds.

The only problem with this, is that now the success page doesn't have the loader. This will be an issue with impatient people who want to click the checkout button multiple times.

@onepack
Copy link

onepack commented Oct 17, 2017

I have it on my testing environment after an update from 2.1.4 to 2.2.0
It happens in Chrome and I have the default matrix rate enabled on dev and the MSP payment provider.
However, disabling MSP doesn't change a thing. It still hangs on checkout.
Refreshing seems to help it forward in rendering the screen but the loading never stops.

@onepack
Copy link

onepack commented Oct 17, 2017

I did some javascript debugging and fixed the issue.
I was getting: Cannot read property 'top' of undefined and in my custom javascript I had:
var topposnow = $('.nav-sections').offset().top
I fixed it by checking for the availability of the .nav-sections before setting the var topposnow.
As the checkout doesn't have the top menu the undefined was showing up there.
After this fix the continuous loading stopped and all is working fine now.

@RX-78-2GetRich
Copy link

I also encountered this problem in magento2.4.6, is there any solution?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug report Component: Checkout Issue: Cannot Reproduce Cannot reproduce the issue on the latest `2.4-develop` branch Issue: Clear Description Gate 2 Passed. Manual verification of the issue description passed Issue: Format is valid Gate 1 Passed. Automatic verification of issue format passed
Projects
None yet
Development

No branches or pull requests