Implement contactless payment
Last updated
Was this helpful?
The NFC Wallet SDK supports multiple contactless payment entry points on iOS:
Double-click: The end user double-clicks the device side button to open the default digital wallet application.
Field detect: The end user brings the device close to a point-of-sale (POS) terminal. When iOS detects an NFC field, it opens the default digital wallet application.
Manual mode: The end user opens your digital wallet application and starts a payment from the in-app UI.
Choose the experience that matches your digital wallet application UX.
The end user presses the device side / lock button twice. The OS then launches the default digital wallet application. The application displays the default digital card for payment.
To support double-click, the end user must set your digital wallet application as the default contactless payment application in iOS Settings.
The end user brings the device near a POS terminal. When the NFC field is detected, the OS launches the default digital wallet application. The application displays the default digital card for payment.
To support field detect, the end user must set your digital wallet application as the default contactless payment application in iOS Settings.
In this experience, the end user starts the payment from within your digital wallet application. You implement the UI and the action that triggers the payment flow.
Whatever triggers the payment, the flow is typically:
The end user initiates a payment (select pay button).
The end user authenticates (CDCVM).
iOS presents the NFC modal UI inviting end user to TAP.
The end user taps the device on the POS terminal.
After a successful tap:
iOS shows a success state.
Your digital wallet application can display the transaction context.
Your digital wallet application receives the authorization result (approved/declined) and displays it to the end user (transaction notification)
After you choose the contactless payment experience for your digital wallet application, implement contactless payment in this order:
including the Apple HCE entitlement
For an end-to-end walkthrough, see the full implementation example.
Apple HCE entitlement: When submitting your digital wallet application to the App Store or TestFlight, provide the following:
Access to a pre-release TestFlight build of your issuer application.
Test login credentials.
At least one test payment credential that can be provisioned and used to perform an NFC transaction.
Screenshots or a video of an NFC transaction at a terminal.
A video demonstrating your implementation of the Presentment Intent Assertion API.
Refer to HCE-based contactless transactions for apps in the European Economic Area (EEA) for more details.
Last updated
Was this helpful?
Was this helpful?