1. Documentation /
  2. WooCommerce Payments /
  3. Accepting Apple Pay with WooCommerce Payments

Accepting Apple Pay with WooCommerce Payments

WooCommerce Payments provides your store with Apple Pay, which makes it easier for customers to checkout using their Touch/Face ID on Apple devices. This document describes how to set up, test and troubleshoot the Apple Pay feature with WooCommerce Payments.

Apple Pay Setup ↑ Back to top

Apple Pay is automatically setup and ready to accept payments after setting up WooCommerce Payments.

If you need to manually enable Apple Pay:

  1. Go to Payments > Settings
  2. Enable express checkouts
  3. Click Save changes.

On the Payments > Settings screen, you can use Customize appearance to change the appearance of the Apple Pay button.

Enabling express checkouts also adds support for other wallets like Google Pay and Microsoft Pay, as well as the Payment Request API browser standard, which supports paying with a credit card saved to the browser.

Requirements ↑ Back to top

  • Your entire site must be served over HTTPS.
  • Your domain must have a valid SSL certificate.
  • Your server must support the TLS 1.2 protocol or later.
  • Your server must have the port 443 enabled.
  • WooCommerce Payments version 2.3.0 or newer.

Purchasing with Apple Pay ↑ Back to top

Apple Pay is only available for eligible devices with an active Apple Wallet when using the Safari browser. Apple Pay will not be presented as a payment option on Chrome, Firefox and other browsers.

When Apple Pay is enabled, the Apple Pay button appears on the product page, above the “Add to cart” button.

On the cart page, it appears above the “Proceed to checkout” button.

The button can also be displayed on the checkout page by configuring this location under Payments > Settings > Show express checkouts on.

By checking out with Apple Pay, customers don’t need to go through the regular checkout process and spend time filling in shipping, billing, and card details. Everything is handled from the Apple Pay interface, where customers can select their billing and shipping details, as well as which Apple Wallet card to use.

Once the transaction is authorized via Touch/Face ID, WooCommerce Payments then processes the transaction and redirects the customer to the “Order received” page.

Product compatibility ↑ Back to top

The express checkouts integration in WooCommerce Payments is compatible with all of these product types:

  • Simple Product
  • Variable Product
  • Subscription
  • Variable Subscription
  • Booking

Testing Apple Pay ↑ Back to top

Test Apple Pay by making purchases in test mode using a real Apple ID with a real Apple Wallet card.

To enable Test Mode:

  1. Go to Payments > Settings
  2. Enable Test Mode
  3. Click Save changes

As long as you have test mode enabled in settings, you can make test transactions with a real card in your Apple Pay wallet without incurring a real charge.

To set up Apple Pay on your device, you need a supported card from a participating card issuer. See the full list of requirements for Apple Pay users.

FAQ ↑ Back to top

Can I authorize charges with Apple Pay and capture them later? ↑ Back to top

Yes! If you checked the Issue an authorization on checkout, and capture later option in Payments > Settings, you can manually capture authorized charges, like other credit card transactions.

Can I issue refunds with Apple Pay? ↑ Back to top

Yes! WooCommerce Payments allows you to issue refunds for Apple Pay transactions too. To issue a refund, go to WooCommerce > Orders, and click the refund via WooCommerce Payments button.

Can I allow Apple Pay for Subscriptions and Pre-Orders? ↑ Back to top

Yes! As long as you allow customers to create an account at checkout, and enable automatically generating a username and password when creating an account under WooCommerce > Settings > Accounts & Privacy, the Apple Pay button will be visible on the product page for subscription and pre-order products.

Is Apple Pay available in my country? ↑ Back to top

Apple Pay is available for all countries supported by WooCommerce Payments.

Troubleshooting ↑ Back to top

Apple Pay button does not appear at any location ↑ Back to top

This can happen for several reasons, but here are the most common troubleshooting steps:

  • Make sure the express checkouts setting is enabled under Payments > Settings.
  • Make sure your store is configured with a live WooCommerce Payments account. An account created in Dev Mode won’t work for Apple Pay.
  • Make sure your website is served over HTTPS and the port 443 is enabled on your server.
  • Make sure you’re testing in Safari, with an eligible device and Apple Pay is enabled.
  • Make sure “Allow customers to place orders without an account” is enabled under WooCommerce > Settings > Accounts & Privacy. Or “Allow customers to create an account during checkout” and automatically generating an account username/password are enabled.

To ensure this isn’t a problem with your browser and device combination, try using the Apple Pay button in another website which implements it. You can try this demo for that purpose.

If you are able to see the button on other websites, but not on your own website, that probably means WooCommerce Payments was unable to verify your domain with Apple.

Before troubleshooting further, ensure you have Debug Log enabled under Payments > Settings > Advanced settings, so you can see any error logs in WooCommerce > Status > Logs.

In order for your store to accept Apple Pay transactions, WooCommerce Payments automatically registers your domain as a verified Apple Pay merchant. Our plugin hosts the .well-known/apple-developer-merchantid-domain-association file under your domain root, e.g: https://example.com/.well-known/apple-developer-merchantid-domain-association.

Please check if this file is available from your own domain. If it’s not available, make sure you have your permalinks set to anything other than “Plain”. After you do that, trigger domain registration again and test if the button appears for you.

Triggering domain registration

WooCommerce Payments automatically registers your store domain with Apple when you first enable express checkouts or whenever your domain name changes, but you can also do it manually for troubleshooting.

To trigger domain registration manually:

  1. Go to Payments > Settings
  2. Disable express checkouts
  3. Click Save changes
  4. Re-enable express checkouts
  5. Click Save changes again

If the buttons still do not show up, check the error logs under WooCommerce > Status > Logs and see if there are domain registration related errors. If you see an error, it can be either that your WooCommerce Payments account is not a live account, or the apple-developer-merchantid-domain-association file is not publicly available from your domain root.

If WooCommerce Payments cannot automatically write the file to your server, you may need to add it manually. You can download the file manually, then use FTP to upload it to the .well-known directory, as .well-known/apple-developer-merchantid-domain-association. Create a .well-known directory in the root directory of your site if none exists. Once uploaded, follow the above steps to trigger domain registration.

If you don’t see any errors in Logs, but are still unable to see the Apple Pay button. Try temporarily switching your theme to Storefront, and opening a simple product page URL.

Apple Pay button does not appear at a specific location ↑ Back to top

This can happen for a number of different reasons, but here are the most common ones:

  • Product is not compatible with express checkouts. In some cases, the button will not show up on the product page, but will appear on the cart or checkout page.
  • Theme does not support WooCommerce hooks necessary for the Apple Pay button to show. Try temporarily switching to Storefront and see if the button shows up.

Other issues ↑ Back to top

If you experience any other issues with Apple Pay, please take the following steps:

  • Please enable logging under Payments > Settings > Debug Log.
  • Attempt an Apple Pay transaction and review the logs.
  • If you see any payment errors, please get in touch with support and provide logs for review.


The most customizable eCommerce platform for building your online business.

  • 30 day money back guarantee
  • Support teams across the world
  • Safe & Secure online payment