Tapaya

Device Security

Learn how Tapaya Accept SDK secures transactions against threats using advanced device integrity checks and data protection mechanisms.

Tapaya Accept SDK transforms consumer off-the-shelf (COTS) devices into secure payment terminals. Because these devices are not dedicated payment hardware, the SDK implements rigorous security measures to mitigate threats and ensure compliance with PCI standards.

Device Attestation

To ensure the payment environment is secure, the SDK performs continuous health checks on the host device. If any security violation is detected, the SDK will refuse to initialize or process transactions.

Root and Jailbreak Detection

The SDK monitors the environment for indicators of privilege escalation. This includes detecting root binaries or privilege management frameworks such as Magisk or SuperSU. It also verifies unauthorized read or write access to protected system directories. In addition, it identifies non-standard operating system builds, including custom ROMs or modified kernel signatures.

Debugging Detection

To prevent reverse engineering and unauthorized testing, the SDK detects whether a debugger is attached to the application and verifies that it is running on a physical device. Execution is restricted in emulator or virtual environments.

Google Play Integrity API

On Android, the SDK leverages the Play Integrity API to validate that the device binary is recognized by Google and hasn't been tampered with.

Application Security

Code Obfuscation

The Tapaya Accept SDK uses advanced obfuscation techniques to reduce the risk of reverse engineering. Code symbols are renamed to non-descriptive identifiers, program logic is deliberately obscured, and sensitive strings or embedded keys are encrypted.

Anti-Tampering

The SDK verifies its own integrity at runtime. It checks the digital signature of the application and the SDK libraries. If the APK has been modified or repackaged by a third party, the SDK will fail to start.

Data Protection

End-to-End Encryption (E2EE)

Card data is encrypted as soon as it is read from the NFC controller. Strong industry-standard encryption is used, and decryption keys are stored only within secure HSMs. The mobile device never has access to raw card data.

Secure Input

For PIN-based transactions, the SDK ensures secure entry. The PIN screen is protected from overlay attacks, the keypad layout is randomized, and all touch input is validated to come from the physical device.

Environment Monitoring

Screen Recording Prevention

To protect sensitive data, the SDK blocks screenshots, screen recordings, and screen sharing by enforcing secure display controls on the device.

Accessibility Services

Malicious apps often abuse Accessibility Services to read screen content or inject inputs. The SDK detects active accessibility services. While it allows standard services for visually impaired users (like TalkBack), it may block unknown or suspicious services during the payment flow.

Developer Responsibilities

While the SDK handles the heavy lifting, you as the integrator must ensure:

  1. Do not disable security warnings: Do not attempt to bypass SSL pinning or root detection in production builds.
  2. Keep the SDK updated: Security patches are released regularly. Ensure your app uses the latest version of the Tapaya Accept SDK.
  3. Obfuscate your app: Use ProGuard or R8 on your own application code to prevent exposure of API keys or logic that interacts with the SDK.
proguard-rules.pro
# The Tapaya Accept SDK includes its own consumer rules, but ensure you do not strip them
-keep class com.tapaya.** { *; }

On this page