Announcement

Collapse
No announcement yet.

Payment methods do not appear

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Payment methods do not appear

    Recently an issue has been seen where all payment methods on the final checkout page may disappear. This occurs because there is a dependency on an externally-hosted JavaScript library that may not load correctly.

    The library was included to support IE11, and was added in versions 18.0.4 and 16.0.6. It is no longer needed as IE usage is extremely low. The external hosting server has become unreliable.

    It is highly recommended that you remove references to this library to ensure that your customers always have a way to pay for their orders.

    You can easily check if your site is using the library:
    1. Open the site
    2. Navigate to a product page. This will show you the folder where Sellerdeck Desktop files are stored on the server, usually acatalog
    3. Amend the URL and add "/order02.html" after the folder - e.g. "https://www.mysite.co.uk/acatalog/order02.html".
    4. Open the page. You will see the template used for your checkout payment page, with lots of placeholders for the order details.
    5. View the source of the page. This varies by browser, but try right-clicking on the page and selecting 'View Source' from the menu. This should open another tab with the page source.
    6. In the page source look for 'callback=polyFillsLoaded'. Normally you use ctrl+F to open the 'Find' box.
    If the text is present then the script call is there and needs removing.

    To fix this, please go to ‘Design | Library | Layouts’ and scroll down to the ‘Javascript Header Functions’ group and expand it.

    Open the layout ‘Standard Javascript Header Functions’ and move down the code until you see the line: -
    Code:
    <script defer crossorigin="anonymous" src="https://polyfill.io/v3/polyfill.min.js?flags=gated&callback=polyFillsLoaded&features=fetch%2CPromise"></script>

    Remove this code and replace it with the following: -
    Code:
    <script type="text/javascript">
    $(document).ready(function() {
    $(".usesFetch").show();
    });
    </script>

    And click ‘OK’ to save the layout.

    Once you have done this Publish the site for the changes to take place online.
    Last edited by G.W.Green; 26-Mar-2024, 12:27 PM.
Working...
X