Merchant Features
Discover the benefits, enablement steps, and
resources to get started.
Apple Pay Eligibility APIs
Surface and default Apple Pay across your e‑commerce journey
Apple Pay Eligibility APIs let you validate specific criteria across your website and your app to surface Apple Pay upstream on your product detail page (PDP) and cart with confidence. They also let you default consumers directly into Apple Pay when they check out in your app on iOS and iPadOS — reducing friction and avoiding payment dead ends at every step of the shopping journey.
Business impact
Displaying the Apple Pay button before the checkout page can help increase conversion rates. Merchants report an average 2x increase in conversion rates when offering Apple Pay upstream, compared to when it is displayed only at the end of the checkout experience, according to a Stripe study.1
Validation criteria
The Apple Pay Eligibility APIs are designed to validate two fundamental criteria before showing the Apple Pay button at PDP and cart or defaulting it at checkout:
- the consumer’s device can support Apple Pay, and
- the consumer has at least one provisioned card in Apple Wallet.
By performing these checks, merchants can confidently place the Apple Pay button across their consumer journey.
Get started.
To ensure a smooth user experience, only display the Apple Pay button to eligible devices. You can also display Apple Pay upstream on PDP or cart pages when the API indicates that credentials are available, or default Apple Pay to accelerate checkout.
Enable Apple Pay Eligibility APIs on the web
Plan
- Review applePayCapabilities documentation. Assess where to call
applePayCapabilitieson your site based on where you wish to display the Apple Pay button. - Review the Acceptable Use Guidelines for Apple Pay on the Web.
- Ensure the device being used for development/testing has network rules that allow access to Apple servers.
applePayCapabilitiesasynchronously contacts Apple Pay servers.
Build
- Use the latest version of the Apple Pay SDK.
- Call canMakePayments to check whether the user is on an Apple Pay capable device.
- If you plan on upstreaming or defaulting Apple Pay, call
applePayCapabilitiesto determine if the user has a card provisioned. Display the Apple Pay button according to the API’s response. - Ensure you have an active Merchant ID, Payment Processing Certificate, and Merchant Identity Certificate and have verified the domain where the Apple Pay button is being presented. Note: for Apple Pay Sandbox Cards, domains do not need to be verified and you should set the environment variable to “sandbox” (refer to “Test” below).
- Include your Merchant ID in the
applePayCapabilitiescall. - For web integration, review the Apple Pay APIs section in Acceptable Use Guidelines for Apple Pay on the Web.
Test
- If using Apple Pay Sandbox cards, follow Apple Pay Sandbox Testing to configure your environment.
- On the web when using Apple Pay Sandbox cards, set the environment variable to
“sandbox”usingApplePayWebOptionsso that the expected result will be returned in third‑party browsers, like the following:{{ApplePayWebOptions.set({ “environment” :“sandbox”})}}. Refer to Apple Pay Sandbox Testing for additional details on Apple Pay testing. - Test your webpage in both Safari and a third‑party browser to check the expected status is being returned. Use Web Inspector or Browser Developer Tools to view the status returned from the API.
Launch
Optimize
Enable Apple Pay Eligibility APIs in an app
Plan
- Assess Apple Pay button placement and functionality, including which networks and card types will be accepted (for example, credit or debit and disbursements).
- Review the API documentation, including the section Determining whether the user can make payments.
Build
- If the canMakePayments() API returns false, the consumer may not be able to make payments for a variety of reasons. For example, this functionality may not be supported by their hardware or it may be restricted by parental controls.
- Assess whether a user has a card provisioned with a supported card network using either
canMakePayments(usingNetworks:)orcanMakePayments(usingNetworks:capabilities:). These methods return true if the device is capable and the user has at least one active card from the specified payment networks. - If supporting disbursements, use supportsDisbursements() to check whether the device can process disbursement requests.
Test
Launch your app on a real device to ensure the expected response is being returned from the APIs above.
Launch
Optimize
Explore the resources
Documentation
Web
App
Frequently asked questions
The Apple Pay Eligibility APIs enable merchants to display the Apple Pay button upstream, across product detail pages and cart, on the web and in apps. They also allow merchants to default Apple Pay at checkout, on iOS and iPadOS apps.
The APIs check for two criteria:
- Whether the consumer’s device can support Apple Pay
- Whether the consumer has at least one payment card in Apple Wallet
Yes, the Apple Pay Eligibility APIs can be integrated by merchants across any market where Apple Pay is available today.
This feature can be enabled as part of a new or existing Apple Pay implementation. As with other Apple Pay features, Apple does not charge implementation fees for its enablement.
No, consumers do not need to do anything to make Apple Pay Eligibility APIs work. The Eligibility APIs check automatically whether both eligibility criteria are met: the consumer’s device supports Apple Pay and they have an eligible payment card in Apple Wallet. Consumers can turn off the eligibility check within Safari’s advanced settings.
For web‑based implementations of the Apple Pay Eligibility APIs, merchants should use applePayCapabilities. This API replaces canMakePaymentsWithActiveCard, which has been deprecated.
For app implementations of the Apple Pay Eligibility APIs, merchants should use the following Passkit methods:
- canMakePayments() for device capable only
- canMakePayments(usingNetworks:) for device and card on specific networks
- canMakePayments(usingNetworks:capabilities:) for device and card that matches merchant networks and capabilities
Yes. By integrating the Apple Pay Eligibility APIs, merchants can place the Apple Pay button on product pages and carts. Merchants should use the API return values to determine when to show the Apple Pay button across these placements.
The Apple Pay Eligibility APIs verify on Safari and third‑party browsers that the Apple device is capable of making payments with Apple Pay. It also verifies on Safari browsers that the consumer’s device is capable of making payments with Apple Pay, and has at least one payment card provisioned in Apple Wallet.
No, the Apple Pay Eligibility APIs only report whether the two validation criteria have been met to present the Apple Pay button earlier in the shopping journey.
Join the Apple Pay platform.
Continue to maximize your Apple Pay integration
- Monitor key metrics, including:
- Payment sheet presentation success rate
- Authorization completion rate
- Error rates by type
- Payment success rate
- Follow Apple Pay partner news and updates for the latest:
- Announcements
- Features
- Success stories
- Tech notes
More resources
Apple Pay Demo
in an interactive playground.
Apple Developer
build apps for Apple platforms.
Apple Business
presence across Apple apps.
-
-
In the US, Apple Pay is a service provided by Apple Payments Services LLC, a subsidiary of Apple Inc. Neither Apple Inc. nor Apple Payments Services LLC is a bank. Any card used in Apple Pay is offered by the card issuer.
-
Apple Pay is not available in all markets. View Apple Pay countries and regions.
-
Features are subject to change. Some features, applications, and services may not be available in all regions or all languages and may require specific hardware and software.