Industry Payment Guides

Apple Pay Not Showing on WooCommerce? Fixes That Actually Work

WooCommerce Apple Pay not showing? Fix domain verification, caching, theme and checkout block issues so wallet buttons appear for your shoppers.

Silver laptop keyboard beside a black smartphone and pen resting on a dark notebook on a gray desk

Photo: Pixabay

On this page 9 sections
  1. How Apple Pay and Google Pay Buttons Load in WooCommerce
  2. WooCommerce Apple Pay Domain Verification: The Most Common Culprit
  3. Device, Browser and Wallet Requirements Customers Must Meet
  4. Caching, CDN and Security Plugins That Block Wallet Files
  5. Theme and Checkout Block Conflicts
  6. Which Pages Can Show Express Buttons, and Whether They Should
  7. Testing Wallets Before You Announce Them
  8. Choosing a Gateway Setup That Fits Your Store
  9. Next Steps

Key takeaways

  • Wallet buttons appear only when several layers work at once: gateway settings, domain verification, unmodified scripts, theme support and the shopper's own device.
  • If Google Pay shows but Apple Pay doesn't on a qualifying iPhone, start with Apple domain verification and the /.well-known/ file.
  • Caching, script-delay, CDN firewall and security plugins often break wallet buttons, so exclude checkout pages, gateway scripts and the verification path.
  • Test on real devices in every button location, logged in and logged out, before you tell customers wallets are available.

You turned on Apple Pay, opened your store on an iPhone, and there's no button. WooCommerce Apple Pay not showing is one of the most common wallet problems store owners hit. It almost always comes down to a short list of causes. This guide explains how wallet buttons load in WooCommerce and how to fix domain verification. It also covers the device requirements shoppers must meet, how caching and security tools interfere, and how themes and checkout blocks can hide buttons. It ends with a testing routine to run before you announce wallets to customers.

How Apple Pay and Google Pay Buttons Load in WooCommerce

Express wallet buttons aren't static images. Your gateway plugin loads a script, and the script asks the shopper's browser whether this person can pay with a wallet. The button renders only if every check passes.

That means several layers all have to work at the same time:

LayerWhat Must Be TrueTypical Symptom When It Breaks
Gateway accountWallets are enabled at the account levelButtons never appear anywhere
Plugin settingsApple Pay or Google Pay is toggled on for the right pagesButtons missing on some pages only
Domain verificationYour exact domain is registered with the providerGoogle Pay works, Apple Pay doesn't
Page deliveryGateway scripts load uncached and unmodifiedButtons flicker, vanish or fail on click
Theme and checkoutThe page has a place for the buttons to renderButtons work on one theme, not another
Shopper's deviceA supported browser with a card in the walletWorks for you, not for a customer

This is why "it works on my phone" tells you very little. Work through the layers in order.

Start With the Gateway Settings

  • WooPayments: Open the WooPayments settings and find the express checkout section. Confirm Apple Pay and Google Pay are enabled, and check which locations (product page, cart, checkout) are selected. If the WooPayments Apple Pay button is missing everywhere, look here first.
  • Stripe plugin: Enable express checkout buttons in the plugin. Then confirm that Apple Pay and Google Pay are turned on as payment methods in your Stripe Dashboard.
  • Other gateways: Wallet support varies widely between plugins, and some require separate setup with the processor. Check your plugin's documentation.

If you're still choosing between the two most common options, our comparison of WooPayments vs. Stripe for WooCommerce covers how each handles setup and features. If your WooPayments account shows a review status, see our guide to why WooPayments payouts stop during an account review and what to do. If you use PayPal instead, see our guide to setting up the WooCommerce PayPal Payments plugin.

WooCommerce Apple Pay Domain Verification: The Most Common Culprit

Apple Pay on the web only works on domains that are registered with your payment provider. During registration, the provider checks for a domain association file at a path like:

https://yourstore.com/.well-known/apple-developer-merchantid-domain-association

Many gateway plugins place this file and register your domain automatically when you enable Apple Pay. When that step fails, it often fails silently. Your settings say Apple Pay is on, but the button never appears.

Common failure points:

  • The file isn't reachable. It returns a 404, a 403, a login page or your theme's "not found" page instead of plain text.
  • Domain mismatch. The www and non-www versions of your site are treated as different domains, and so is every subdomain. Each one that shows Apple Pay must be registered.
  • Domain changes. You moved from staging to live, rebranded or switched domains, and nobody re-registered the new one.
  • Leftover files from an old gateway. The verification file is specific to your provider. A file left behind by a previous gateway plugin won't verify with a new one.
  • SSL problems. Apple Pay requires HTTPS. An expired certificate or mixed-content warnings can block verification or the button itself.

How to Fix Domain Verification

  1. Open the verification file URL in a private browser window. You should see a text string or get a file download, not a web page or an error.
  2. Check your gateway dashboard for the domain's registration status.
  3. Re-trigger registration. Toggle Apple Pay off and back on in the plugin, or use its re-verify option if it has one.
  4. Read the plugin's logs under WooCommerce > Status > Logs for registration errors.

Stripe Apple Pay WooCommerce Setups

If you use the Stripe plugin directly, your Stripe Dashboard lists the domains registered for wallet payments. Confirm your live domain appears there and shows as verified. If it doesn't, add it and make sure the verification file is reachable first.

Quick diagnostic: If Google Pay appears on Android in Chrome but Apple Pay doesn't appear on a properly set up iPhone, suspect Apple domain verification before anything else. Google Pay doesn't depend on the Apple file.

Device, Browser and Wallet Requirements Customers Must Meet

Sometimes nothing is wrong with your store. Most implementations hide the button when the shopper's browser reports it can't make a wallet payment.

For Apple Pay, the shopper generally needs:

  • An Apple device that supports Apple Pay
  • A supported browser. Safari has historically been required. Apple has expanded options in some cases, so check Apple's current documentation.
  • Apple Pay set up with at least one card in Wallet
  • A region and card issuer that support Apple Pay

For Google Pay, the shopper generally needs:

  • Chrome or another browser your gateway supports for Google Pay
  • A card saved to their Google account or Google Pay

Your store needs:

  • HTTPS on every page where buttons appear
  • A store currency and country your gateway supports for wallets

When WooCommerce Google Pay Is Not Showing

Shoppers usually see the wallet that matches their device and browser, not both. An iPhone user in Safari typically sees Apple Pay. An Android user in Chrome typically sees Google Pay. Beyond that, check:

  • Whether the shopper actually has a card saved to Google Pay
  • Whether Google Pay is toggled on separately from Apple Pay in your plugin
  • Your account settings. Some gateway plugins hide express buttons from logged-out shoppers when your store requires an account and doesn't allow account creation at checkout. Our guide to guest checkout vs. forced accounts covers that trade-off.

Before you change anything on your site, test from a device you know has a working wallet. It rules out the most common false alarm.

Caching, CDN and Security Plugins That Block Wallet Files

Performance and security tools are built to modify pages and block unusual requests. Wallet buttons depend on unmodified scripts and on a file in a hidden directory, so these tools are frequent culprits. For more on securing plugins and checkout scripts on a self-hosted store, see our guide to WooCommerce PCI compliance when you host the store. To learn the warning signs of malicious checkout scripts, read our guide to detecting and stopping WooCommerce credit card skimmers.

Tool TypeWhat Can BreakFix
Page cachingCached cart or checkout pages serve stale scripts or session dataExclude cart, checkout and account pages from page cache
JavaScript optimizationMinifying, combining, deferring or "delay until interaction" breaks gateway scriptsExclude your gateway's scripts and its third-party script domains
CDN or web firewallBot challenges or rules block the verification requestAllowlist the /.well-known/ path
Security pluginsRules deny access to hidden directories or dotfilesAdd an exception for the verification file
Server rules (.htaccess, Nginx)Blanket denial of dot-prefixed foldersAllow /.well-known/ specifically
Redirect pluginsTrailing-slash or catch-all redirects on unknown pathsExclude the verification file from redirects

After any change, purge every layer of cache: the plugin, your host's server cache and your CDN. Then retest in a private window. Many "fixes that didn't work" were really fixes hidden behind an old cached page.

Theme and Checkout Block Conflicts

WooCommerce supports two checkout styles, and they place wallet buttons differently:

  • Cart and Checkout blocks include a dedicated express payment area at the top. Your gateway plugin must support blocks for its buttons to appear there.
  • Classic (shortcode) checkout relies on WooCommerce hooks. Gateway plugins attach their buttons to specific points on the page.

Problems arise when:

  • Your theme overrides WooCommerce templates and removes the hooks the gateway uses.
  • Page builders or one-page checkout plugins build a custom checkout layout without the expected hook or express payment area.
  • CSS hides the container. A rule sets the button wrapper to hidden or zero height. Use your browser's inspect tool to check whether the button exists but can't be seen.
  • Two plugins compete for wallets. If more than one gateway plugin offers express buttons, they can conflict. Let one plugin manage wallets.

Isolating the Conflict

On a staging copy of your site, switch to a default WooCommerce-compatible theme such as Storefront and deactivate non-essential plugins. If the buttons appear, reactivate items one at a time until they disappear again. Re-register the staging domain first, or Apple Pay won't show there for unrelated reasons.

Which Pages Can Show Express Buttons, and Whether They Should

Most gateway plugins let you choose where buttons appear. More placements aren't automatically better.

LocationGood FitWatch For
Product pageSingle-item, mobile-heavy and impulse purchasesSkips the cart, so cart upsells and coupon fields may be bypassed
CartMulti-item ordersShipping and tax must calculate correctly inside the wallet sheet
CheckoutEvery storeLowest risk. Use it at a minimum

Some product types may not support express buttons, depending on your plugin:

  • Variable products before the shopper selects options
  • Products with custom fields from add-on plugins, such as engraving text or uploads
  • Subscriptions, pre-orders or bundles, where support varies by plugin

If a product needs information the wallet sheet can't collect, the plugin may hide the button on purpose. That's expected behavior, not a bug. To control which payment methods appear by your own rules, see our guide to WooCommerce conditional payment methods.

Also confirm that your shipping zones cover the addresses shoppers will choose in their wallet. Gaps usually cause errors inside the payment sheet rather than missing buttons, but customers experience both as a broken checkout.

Testing Wallets Before You Announce Them

Run this routine before you add "Now accepting Apple Pay" to your site or emails:

  1. Verify the live domain. Staging registration doesn't carry over to production.
  2. Test on real devices. Use an iPhone with Safari and an Apple Pay card, a Mac with Safari, an Android phone with Chrome, and desktop Chrome with Google Pay.
  3. Cover every enabled location. Test the product page, cart and checkout with a simple product and a variable product.
  4. Test logged in and logged out. Account settings can change what guests see.
  5. Place a real low-value order and refund it. Confirm the order shows the correct shipping, tax, email and phone number. How wallets behave in test mode varies by gateway, so check its documentation.
  6. Purge caches and retest after any plugin, theme, caching, SSL or domain change.

If buttons appear but payments fail, the problem has moved from display to authorization. Our guide to fixing WooCommerce payment failed errors covers that next step. If an order lands in WooCommerce but never moves past pending, see our guide to WooCommerce orders stuck on pending payment. Wallets also don't replace fraud monitoring, so review your defenses against card testing and fake WooCommerce orders.

Choosing a Gateway Setup That Fits Your Store

If wallet problems keep recurring, or your current plugin doesn't support the checkout style you want, it may be time to review your gateway itself. Our store owner's checklist for picking a WooCommerce gateway walks through the questions to ask. If you're also considering charging extra for certain payment methods, read our guide to adding a fee for card payments in WooCommerce first. If you also sell in person, see our guide to WooCommerce card readers and POS options. To keep counter and online sales in step, read our guide to syncing online and in-store sales with Square for WooCommerce.

MannyPay provides online payment processing for e-commerce stores and supports a WooCommerce integration, along with other payment gateways such as Authorize.net and NMI. Wallet support depends on the specific gateway and setup, so ask about Apple Pay and Google Pay for your configuration.

Next Steps

When WooCommerce Apple Pay isn't showing, work from the outside in:

  • Confirm the shopper's device qualifies.
  • Check gateway and plugin settings.
  • Verify the domain and the /.well-known/ file.
  • Rule out caching, firewall and security rules.
  • Isolate theme or checkout block conflicts.

Test on real devices before you announce wallets, and retest after every major site change.

If you want a second opinion on your payment setup, you can request a free quote from MannyPay. A specialist will respond within one business day.

About the author

MannyPay Editorial Team

Beyond the Swipe's editorial desk researches the publication's guides and news and cites its sources in every article. Articles reviewed by a named MannyPay editor carry that editor's byline.

This article is for general educational purposes and is not legal, tax or financial advice. Card network rules and state laws change; confirm current requirements for your business.

Related reading