moov-android

The Moov SDK provides tap-to-pay functionality via an Android app

Requirements

Device Support

  • Android 10.0 (API 29) minimum

  • Google Play Services v11+

Tooling

  • AGP version >=8.6.0

  • Gradle version >=8.7

App Permissions

  • android.Manifest.permission.NFC – the SDK uses the NFC feature of the Android device to communicate with the payment card/mobile wallet. Without this permission the Tap on Phone solution will not work.

  • android.Manifest.permission.VIBRATE – the SDK uses the Vibrate feature of the Android device for the required Haptics and to indicate a card has been read.

  • android.permission.INTERNET – the SDK requires access to internet to communicate to backend services – assumption is that all partner applications will be online so it should not be an additional permission for most partners.

  • android.permission.ACCESS_NETWORK_STATE – ensures that the SDK can communicate before attempting a transaction.

Miscellaneous

  • Applications should prevent the screen from sleeping while waiting to accept a tap.

  • Device must pass Google Play Strong Integrity Checks

Application registration

Applications utilizing this SDK must be registered via the Moov API. This process enables device integrity checks as well as authorizing specific merchants to utilize the Tap to Pay SDK. The process for application registration is as follows:

  1. Create a TerminalApplication via POST /terminal-applications

  2. Wait for the application to move to enabled. This can be detected via the terminalAppRegistration.updated webhook and will happen asynchronously

  3. Link the TerminalApplication to a merchant via POST /accounts/{accountID}/terminal-applications

  4. When a new version of the application is published to Google Play, register this version via POST /terminal-applications/{terminalApplicationID}/versions

The terminalConfig value referenced in the examples below is the output of the terminalConfigurations API. This is an opaque string which contains information necessary for the Terminal to operate properly.

Packages

Link copied to clipboard

Applications should prevent the screen from sleeping while waiting to accept a tap.

Link copied to clipboard

Models for use in the Moov SDK