• Resolved cycloneuk

    (@cycloneuk)


    Since upgrading from 3.3.108 to 4.0.11, the express checkout buttons, particularly Google Pay, take around 3–4 seconds to render. By the time they appear, most customers will have long since scrolled past them.

    I rolled back to 3.3.108 and they render pretty much instantly. The problem started with 4.0.0 and seems to have got worse with the later versions.

    Is anyone else experiencing this issue?

Viewing 11 replies - 1 through 11 (of 11 total)
  • Plugin Author Clayton R

    (@mrclayton)

    Hi @cycloneuk

    Thank you for contacting Payment Plugins. In 4.0+ the buttons are rendered via an iFrame using Stripe’s JS SDK. This is what makes it possible to offer Apple Pay on browsers other than Safari and iOS devices. Similarly, this is why Google Pay no longer requires the merchant approval process.

    seems to have got worse with the later versions.

    It’s the same code from 4.0.0 – 4.011. If you’re using the checkout block, the rendering actually got faster because of internal improvements made in the plugin.

    Can you share a product page url to your site so it can be reviewed?

    Kind Regards

    Thread Starter cycloneuk

    (@cycloneuk)

    Well 3.3.108 renders it very fast and the 4.0.0 versions are very slow, so something is causing an issue. I have updated to the latest version so you can see, let me know when you are done so I can roll back.

    have a look at https://sweetsdirect.co.uk

    • This reply was modified 3 weeks, 6 days ago by cycloneuk.
    Plugin Author Clayton R

    (@mrclayton)

    so something is causing an issue

    Everything looks fine when testing your checkout page and there aren’t any errors with the Stripe plugin.

    You do have what appears to be some custom code that’s triggering the following Javascript error:

    Uncaught TypeError: $ is not a function
    at HTMLDocument.<anonymous> (checkout/:2939:31)

    The integration for Apple Pay and GPay is different in 4.0.0+. In the past, an HTML button was rendered to the page where as now an iFrame is used. That is because Stripe deprecated the old integration and their recommendation is to use the design we’re currently utilizing.

    I would recommend you try a standard theme with Funnelkit disabled. Does that make a difference? Their checkout page templates have some code that relies on MutationObservers and that can cause a delay in the rendering of the express payment buttons.

    Thanks

    Thread Starter cycloneuk

    (@cycloneuk)

    If it worked fine with 3.3.108, then its not Funnelkit causing it, the rendering is occurring much later in the process in 4.0.0+. If you test it with Chrome on mobile, the Google Pay button is slow to render.

    Plugin Author Clayton R

    (@mrclayton)

    If it worked fine with 3.3.108, then its not Funnelkit causing it

    As stated in previous replies to this thread, the way the buttons render has changed in 4.0.0+ and the MutationObserver used by Funnelkit might be causing some delay. My recommendation is to try a standard theme to rule that out as a possibility as part of normal troubleshooting.

    Thread Starter cycloneuk

    (@cycloneuk)

    Just tried the flatsome theme and the issue still persists.

    Plugin Author Clayton R

    (@mrclayton)

    I don’t think it’s accurate to characterize it as an issue. As stated previously, the buttons now render via an iFrame where as previously, Google Pay rendered directly as HTML on the page. Directly rendering HTML on the page will always be faster than the iFrame path.

    However, direct rendering has been deprecated by Stripe and they are only supporting the new design going forward.

    You can continue to use 3.3.108 if you prefer that version of the plugin.

    We do have plans to add a loading UX to the express checkout section so there is immediate feedback that express checkout is supported while the buttons load.

    Thanks

    Just wanted to add my voice to this thread. I agree that the delay is very long. It takes several seconds to appear, at which point a lot of people will have either bounced or scrolled down without realising Apple/Google Pay is available.

    I appreciate this isn’t a bug with the plugin itself, and is caused by the slowness of the iframe of a 3rd party. However I believe this is still an issue that deserves attention. Is there a workaround? E.g. preloading the iframe or delaying the load of checkout until the iframe as had a couple of seconds to load.

    Plugin Author Clayton R

    (@mrclayton)

    Hi @seanpipdig

    We’re working on a skeleton loader for the express checkout which I believe will resolve any concerns with the express buttons loading. Here is an example of it:

    Feedback is appreciated.

    Kind Regards

    @mrclayton the example looks good and would solve the issue in my opinion.

    Plugin Author Clayton R

    (@mrclayton)

    @seanpipdig if you would like to test this new UX feature you can reach out via the support widget within your WordPress Admin.

    Kind Regards

Viewing 11 replies - 1 through 11 (of 11 total)

You must be logged in to reply to this topic.