Open Bug 1895673 Opened 5 months ago Updated 10 days ago

www.outbackequipment.com.au - "Express" check out option (Gpay) is missing from the payment page header

Categories

(Web Compatibility :: Site Reports, defect, P2)

Firefox 127
Other
Android

Tracking

(firefox125 affected, firefox127 affected)

Tracking Status
firefox125 --- affected
firefox127 --- affected

People

(Reporter: rbucata, Unassigned)

References

(Depends on 1 open bug, )

Details

(Keywords: webcompat:platform-bug, webcompat:site-report)

User Story

platform:android
impact:feature-broken
configuration:general
affects:all

Attachments

(1 file, 1 obsolete file)

Attached image Screenshot_9.png (obsolete) —

Environment:
Browser / Version: Firefox Release 125.3.0 (2016017559-🦎125.0.3-20240425211020🦎)/ Firefox Nightly 127.0a1 (2016019535-🦎127.0a1-20240507214419🦎)/ Chrome Mobile Version 124.0.6367.82
Operating System: Google Pixel 3 (Android 12) -1080 x 2160 pixels, 18:9 ratio (~443 ppi density)
Operating System: Oppo Find X5 (Android 13) - 1080 x 2400 pixels, 20:9 ratio (~402 ppi density)

Steps to reproduce:

  1. Navigate to: https://www.outbackequipment.com.au/_mycart?fn=payment&ts=1715123007205030
  2. Select a product from the page and add it to the cart.
  3. View the item in the cart and proceed with the checkout process.
  4. Observe the payment page header, above the "Billing information" section.

Expected Behavior:
The express checkout option is present

Actual Behavior:
The express checkout option is missing

Notes:

  • Reproducible regardless of the status of ETP.
  • Reproducible on the latest build of Firefox Nightly and Release.
  • Works as expected using Chrome.
  • Attachment provided.
Severity: -- → S3
User Story: (updated)
Priority: -- → P2

I do see "Express checkout" briefly try to load on Firefox, and also in Chrome in its responsive design mode, but it then simply goes away.

They're using Stripe, which seems to support Apple and Google pay in the code:

expressWebPaymentSetup: function() {
                        var e = nStripeElements.vars.stripe
                          , t = nStripeElements.func.paymentRequestInstance(e);
                        t.canMakePayment().then((function(e) {
                            if (e) {
                                var a = document.createElement("button");
                                a.classList.add("btn", "btn-dark", "btn-web-payments"),
                                "shopping_cart" == nCheckoutGlobals.pageName && a.classList.add("btn-block"),
                                e.applePay ? (a.classList.add("btn-apple-pay"),
                                a.setAttribute("aria-label", "Apple Pay"),
                                a.innerHTML = 'Check out with <i class="fab fa-apple"></i> Pay') : (a.classList.add("btn-google-pay"),
                                a.setAttribute("aria-label", "Google Pay"),
                                a.innerHTML = 'Check out with <i class="fab fa-google"></i> Pay'),
                                a.addEventListener("click", t.show),
                                $("#" + nStripeElements.vars.expressWebPaymentBtnId).html(a)
                            } else
                                $("#" + nStripeElements.vars.expressWebPaymentBtnId).remove(),
                                $(nStripeElements.vars.webPaymentFormId).remove(),
                                (0,
                                r.displayExpress)()
                        }              

It relies on the window.PaymentRequest API.

Depends on: paymentrequest
No longer depends on: 1905969
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: