NFC off-host payment synchronization

Android supports NFC card emulation with a secure element for off-host card emulation. (For more information, see Host-based card emulation overview.) However, on the Android platform, the preferred payment service specified in the Tap & pay setting isn't always synchronized with the app in the secure element. This means it's possible that a nonpreferred payment service in the secure element is used instead of the preferred payment service.

In Android 11, the off-host payment synchronization feature provides a mechanism that lets you synchronize the payment configuration in Tap & pay, the routing configuration on the contactless frontend (CLF), and the app-selected state in the secure element.

The following diagram illustrates the design architecture of the off-host payment synchronization feature.

Off-host payment synchronization design architecture
Figure 1. Off host payment synchronization design architecture

Implementation

To implement the off-host payment synchronization feature, the device must have an NFC controller that supports the NCI 2.0 standard and must use the Android Open Source Project NFC and Open Mobile Application Programming Interface (OMAPI) frameworks.

Framework APIs

To implement off-host payment synchronization, use the following framework APIs found in the Android Open Source Project:

Validation

To validate your implementation of the off-host payment synchronization feature, install secure element apps with corresponding secure elements and then check for appropriate responses from an NFC reader in different conditions.