Appendix 2 - Apple User Experience

Requirements

The following appendix details Apple’s User Experience Requirements. An app must
demonstrate it follows these requirements in order to receive publishing entitlements.

There are four (4) main parts to the Tap to Pay on iPhone user journey:

  • Onboarding merchants
  • Enabling Tap to Pay on iPhone
  • Educating merchants
  • Checking out

General requirements

General requirements are provided below. Specific requirements are listed for each part of
the user journey. The requirement number corresponds to the code listed in the
requirements checklist you complete for the app review with Apple.

IMPORTANT

An app that uses Tap to Pay on iPhone must be able to function without the need of any
additional secondary apps. For example, a merchant must be able to open your app and
progress through the Tap to Pay on iPhone onboarding and checkout flow without the need
for other apps.

If you are considering allowing third party apps to invoke your app for Tap to Pay on iPhone
functionality, you must also offer an SDK that these third parties can integrate directly into
their application.

If your Tap to Pay on iPhone app provides the ability to accept payment when the checkout
flow is started from another device such as iPad or a website, the user must be able to
complete payment acceptance with the iPhone app as a standalone app and not require
another device or interface to function.

RequirementStatusDescription
1.1RequiredYour app must offer Tap to Pay on iPhone to compatible devices only (that is, iPhone XS and later).
1.2RequiredIf Tap to Pay on iPhone is the main feature of your app, you must set the iOS Deployment Target in Xcode to the minimum version supporting your Tap to Pay.
1.3RequiredFor iOS versions prior to 16.4, your app must handle the PaymentCardReaderError.osVersionNotSupported error by displaying a message to inform the user they must update to the latest version of iOS.
1.4RequiredYour app must trigger initial preparation/warming up of Tap to Pay on iPhone at launch of your app or when your app comes into the foreground. Check with your PSP for implementation details.
1.5ConditionalIf your app supports Tap to Pay on iPhone as the sole payment acceptance method, ensure that only compatible devices can download the app by requiring iphone-ipad-minimum-performance-a12 with UIRequiredDeviceCapabilities.
1.6RequiredThe status of whether a merchant has accepted Tap to Pay on iPhone Terms & Conditions should be retrieved from Apple rather than a local variable in your app. Check with your PSP for implementation details.
1.7ConditionalApps on the public App Store must adhere to the Human Interface Guidelines.
1.8ConditionalApps on the public App Store must adhere to the Marketing Guidelines.

Onboarding merchants

Apple requires an in-app digital onboarding process for apps available on the public App
Store. During digital onboarding, the user registers as an authorized merchant to accept
payment with Tap to Pay on iPhone. While you can require additional verification for some
users (for example, through a background or risk check), ensure that most users who meet
your requirements can complete onboarding quickly and easily within your app.

If in accordance with your local regulations, ensure that the onboarding process takes on
average no longer than 15 minutes from the merchant completing the application to
accepting their first payment. If merchant approval isn’t instant for a user, provide
confirmation of approval through multiple channels, such as push notifications, email, SMS,
and so on, to have the user return to the app to complete merchant onboarding.

Allow existing users, such as merchants, business account owners, consumer account
owners, and so on, to access Tap to Pay on iPhone with their existing login credentials. If a
merchant can’t use their existing login credentials, provide in your app a path to create the
credentials required to use Tap to Pay on iPhone. When possible, reduce the need for
multiple login credentials, such as one login credential for app authentication and a separate
login credential for the PSP and payment services.

If location services are required for your app to accept payment, provide communication to
the user during onboarding on why location services are necessary with a pre-alert screen.

REQUIREMENTS

The Onboarding Merchants requirements are applicable for all apps on the public App
Store.

If there is no mechanism for a user to onboard within your app you must distribute your app
with programs such as Unlisted apps, Custom apps, or the Apple Developer Enterprise
Program (ADEP).

Requirement

Status

Description

2.1

Required

The process to create an account and/or gain access to Tap to Pay on iPhone must be easily discoverable to a new user who has just downloaded your app.

2.2

Required

The process to create an account and/or gain access to Tap to Pay on iPhone must have a digital onboarding experience triggered from your app that can be fully completed on an iPhone.

2.3

Required

Digital onboarding must take less than 15 minutes_ for most of your users from information submission (or access request for existing merchants) to accepting payment with Tap to Pay on iPhone.

_In compliance with local merchant onboarding regulations.

Enabling Tap To Pay on iPhone

The app must provide at least one in-app awareness moment to all eligible users to let both
new and existing users know that Tap to Pay is available in your app.

As a best practice, provide the awareness moment as a full-screen modal. In addition to a
full-screen modal, you can provide other awareness moments using in-app notifications,
information cards, or notification badges within the app.

For new users, enabling Tap to Pay on iPhone must be part of the digital onboarding flow
after the merchant is approved for in-person payment acceptance. For example, after a new
merchant is approved, present a full-screen modal to allow the merchant to enable Tap to
Pay on iPhone immediately. While your app isn’t required to make enabling Tap to Pay on
iPhone mandatory, ensure that the merchant has the opportunity to enable the feature as
soon as possible. This helps avoid the merchant waiting to enable Tap to Pay on iPhone
during a critical moment (for example, right before they accept a payment from a customer).

For existing users, your app must provide at least one communication to let them know that
Tap to Pay on iPhone is available. As best practice, provide multiple communications in
addition to a full-screen modal on login to encourage existing users to enable Tap to Pay on
iPhone.

REQUIREMENTS

The Enabling Tap to Pay on iPhone requirements are applicable for all apps on the public
App Store.

If you distribute your app with programs such as Unlisted apps, Custom apps, or the Apple
Developer Enterprise Program (ADEP) the Enabling Tap to Pay on iPhone requirements are
applicable if users are expected to accept terms and conditions using an Apple ID on the
iPhone.

RequirementStatusDescription
3.1RequiredYour app implements a highly-visible and easily discoverable communication for Tap to Pay on iPhone.
3.2RecommendedYour app implements a full-screen modal for Tap to Pay on iPhone.
3.3RequiredYour app displays communications for Tap to Pay on iPhone to all eligible users at least once.
3.4RequiredYour app displays an obvious way to enable Tap to Pay on iPhone at the end of every new merchant onboarding flow.
3.5RequiredYour app must provide communications for Tap to Pay on iPhone. You must have a clear action to trigger acceptance of Tap to Pay on iPhone Terms and Conditions.
3.6RequiredYour app provides a way to enable Tap to Pay on iPhone outside of the communications and the checkout flow (for example, in your app settings).
3.7RequiredYour app must provide a trigger to enable Tap to Pay on iPhone within your checkout flow or requires Tap to Pay on iPhone enablement prior to checkout flow.
3.8RequiredTap to Pay on iPhone Terms and Conditions must only be accepted by an administrator user or otherwise authorized party for the merchant.
3.8.1RequiredIf a non-admin type user is attempting to enable Tap to Pay on iPhone, a message must inform the user to contact their admin.
3.8.2ConditionalFor enterprise deployments e.g. Custom App, Unlisted App, or Apple Developer Enterprise Program, you must support the ability to accept Terms and Conditions outside of the app. Check with your PSP for implementation details.
3.9RecommendedOnce Terms and Conditions are accepted, and the user has gone through the education or tutorial on how to use Tap to Pay on iPhone, your app presents a dedicated screen prompting the user to try out Tap to Pay on iPhone.
3.9.1RequiredYour app must provide a configuration progress indicator using PaymentCardReader.Event.updateProgress(_:) (or the equivalent call from your PSP SDK). This screen will display the progress of Tap to Pay on iPhone readiness as the device is being configured. This screen will inform the user if Tap to Pay on iPhone is not yet ready for use both in initial setup and typical usage while the reader is preparing.

Educating Merchants

Your app must provide merchant education as a part of the in-app user experience.

Begin the merchant education after the merchant accepts the Tap to Pay on iPhone Terms
and Conditions.

The merchant education must include clear instructions on how to accept payments with Tap
to Pay on iPhone from contactless cards, Apple Pay, and digital wallets as well as which
types of payment are accepted (for example, Visa, Mastercard etc).

Use the visual assets and copy available on the Marketing Guidelines page to help you
create the merchant education experience for your app. Consider using the
Merchant Education video as a simple way to provide this education moment.

REQUIREMENTS

The Educating merchants requirements are applicable for all apps on the public App Store.

If you distribute your app with programs such as Unlisted apps, Custom apps, or the Apple
Developer Enterprise Program (ADEP) the Educating merchants requirements are strongly
recommended but not required if merchant education is provided through other
communications.

Your app must provide educational content based on the region you plan to deploy. For
more details refer to Appendix C: Regional Requirements of this document.

RequirementStatusDescription
4.1RequiredYour app must present education screens immediately after successfully enabling Tap to Pay on iPhone and accepting Terms and Conditions.
4.2RequiredYour app must make merchant education screens accessible for reference in either Settings or Help section.
4.3RequiredYour merchant education screens must align with marketing guidelines for visual assets and copy.
4.4RequiredMerchant education must demonstrate how to accept contactless cards with Tap to Pay on iPhone.
4.5RequiredMerchant education must demonstrate how to accept Apple Pay and other digital wallets with Tap to Pay on iPhone.
4.6Conditional on RegionMerchant education must demonstrate support for PIN Entry with explicit mention of accessibility options available on the PIN screen if the region you deploy to supports PIN entry. Check with PSP SDK for this feature and see Regional Requirements for more details.
4.7Conditional on RegionMerchant education must demonstrate fallback to an alternate payment method in case Tap to Pay on iPhone is unable to read a payment card (e.g. Payment Link) if the region you deploy to requires a Fallback Payment Method.

Checking Out

Provide a fast, seamless transaction experience for users.

Ensure that Tap to Pay on iPhone is prepared for the merchant to accept payments without
delays.

Check with your PSP for guidelines on how to prepare Tap to Pay on iPhone when the user
opens the app or when your app transitions to the foreground.

See Apple’s Human Interface Guidelines (HIG) and Localization strings for Tap to Pay on
iPhone within Appendix C for details on how to display the Tap to Pay on iPhone button in
your app. Display the Tap to Pay on iPhone button prominently during payment acceptance
and use the appropriate copy to reflect the number of payment acceptance methods.

REQUIREMENTS

RequirementStatusDescription
5.1RequiredUsers must have an obvious, prominent button to invoke a Tap to Pay on iPhone payment during checkout.
5.2RequiredThe button that invokes Tap to Pay on iPhone must be in a visible location (without scrolling) for the user to select at the time of checkout. Tap to Pay on iPhone should be at the top of the list when there are multiple payment acceptance options.
5.3RequiredThe button that invokes Tap to Pay on iPhone must never be altered, grayed out, or otherwise hidden based on whether the user has enabled Tap to Pay on iPhone or not. If the user has not yet enabled Tap to Pay on iPhone, the button will invoke that path.
5.4ConditionalIf there are multiple payment options, the button that invokes Tap to Pay on iPhone must use the proper copy for your region. Refer to Localization strings for Tap to Pay on iPhone in Appendix C for more details.
5.5ConditionalIf using iconography in the button, the symbol used must be wave.3.right.circle or wave.3.right.circle.fill from SF Symbols.
5.6RequiredWhen the Tap to Pay on iPhone screen closes after a successful read of the card, there must be a “processing” screen indicating that the transaction is being processed.
5.7RequiredThere must be clear communication of the outcome after the processing screen to the user. This would highlight approved, declined, or timed out transactions to the user.
5.8RequiredWhen the transaction is processed regardless of outcome (approved or declined), it must be possible to send a digital receipt to the customer in a confidential way. For example, the digital receipt may be sent by SMS, email, QR code, or using Activity views.
5.9Conditional on RegionComply with regional requirements based on where you deploy your app. See Appendix C: Regional Requirements for more details.
5.10ConditionalIf the user is not authorized to accept Tap to Pay on iPhone Terms and Conditions, display a message telling them to contact an admin to enable Tap to Pay on iPhone.