Specifications & Capabilities

This page describe all the features and capabilities for the First Tech TTP SDK

Product Features

Below are the key features of the product, covering hardware, software, certifications, and applicable business use cases:

Hardware
  • Supported Devices: No restrictions, as long as the device has an active NFC chip.

  • Operating Systems: Android (iOS support available upon request).

  • NFC Requirement: NFC must be enabled for reading and transmitting payment data. Any smartphone with an active NFC chip can use the product, regardless of the manufacturer.

  • TEE or Secure Element: The smartphone must have a dedicated processor or a security chip for cryptographic key management. This is required to use Android Keystore and Key Attestation APIs. Any Android device running version 10 or later with Google Play Store access meets these requirements.

  • Chip & Magnetic Stripe Reading: The SDK does not support chip or magnetic stripe card readers. Only contactless-enabled cards can be used.

  • Network Connectivity: Requires Wi-Fi or mobile data with at least 3G coverage for terminal activation and transaction processing.

Software
  • Programming Languages: The SDK is developed in Java but can be used with hybrid technologies such as React Native, Flutter, or any language that supports native library bridging.

  • Mandatory permissions for the apps builded with SDK:

    • (NFC) android.Manifest.permission.NFC

    • (Vibrate) android.Manifest.permission.VIBRATE

    • (Internet) android.permission.INTERNET

    • (Network State) android.permission.ACCESS_NETWORK_STATE

    • (Notification Policy) android.permission.ACCESS_NOTIFICATION_POLICY

  • Minimum Android Version: Android 10 or later.

  • Android API: Level 29 or later.

  • Google Play Services Version: Play Services 11 or later.

Permissions

Required permissions

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.NFC"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
Certifications

Security & Compliance: PCI HSM, PCI PIN, PCI DSS, PIN on Glass, Visa Security 1.8.1, MPOC 1.1, ISO 27001.

Usage Restrictions in Production

The SDK will not function on smartphones that:

  • Have jailbreak/root mode enabled.

  • Have developer options enabled (debug mode).

  • Have malicious apps installed.

  • Have any debugger connected.

  • Have manual date and time settings (must be set to automatic).

  • Have the app installed from sources outside Google Play.

SDK Capabilities
  • Terminal Creation: The terminal is automatically created when a transaction request is initiated. A security check is performed to ensure system integrity before terminal creation.

  • Session Creation: A session is automatically created upon a new transaction request. The terminal runs a full security validation with the central server before processing any transaction.

  • Transaction Processing: Supports credit (single and installment payments) and debit transactions.

  • Prepayment Support: Not provided by the SDK.

  • Instant Refunds (D0): Not provided by the SDK.

  • Refunds (D+1 or later): Can be processed via API or through the acquiring bank.

Use Cases
  • Mobile POS: A new application must be developed using the SDK. User control, business logic, CNPJ context switching, additional payment method integrations, UI customization, and other specific functionalities must be implemented by the company using the SDK.

  • Online-to-Offline Transaction Transfers (E-commerce): The application must be developed with approval from the participating card networks under the Tap to Everything / Tap to Own Device program. Merchants’ reports must be submitted monthly, and adjustments to ISO 8583 messaging must be made to properly flag transactions that originated online but were processed offline.

  • Prepayment Support: If embedded within an app, the SDK can capture prepayments. The prepayment mode must be communicated to the payment gateway, and the acquiring bank must provide methods for modifying, canceling, or converting prepayments into standard payments.

  • User Identification via Card: NFC-captured data can be used to create a fingerprint of the credit card and link it to a customer database. This enables the SDK to identify users beyond just payment collection, facilitating loyalty program integration and improving login flows where traditional authentication is ineffective.

  • Tap to Fill & Digital Wallet Enrollment: In digital wallet or e-commerce apps, NFC technology can automatically capture the card number and expiration date, simplifying the checkout process and eliminating manual entry—similar to scanning a credit card using a camera.

Last updated