The Yuno Android SDK supports running 3-D Secure (3DS) challenges natively inside your app using Netcetera’s 3DS SDK. Native 3DS gives a smoother UX than the WebView-based fallback (no in-app browser jump) and is required by some acquirers for frictionless authentication.Documentation Index
Fetch the complete documentation index at: https://docs.y.uno/llms.txt
Use this file to discover all available pages before exploring further.
Native 3DS is opt-in: you only need to install the provider module if your integration runs 3DS challenges in-app. If you are not enabling 3DS, you can skip this guide.
Requirements
- Android API level 21 (Lollipop) or higher.
- Yuno Payments SDK 2.16.0 or higher already installed in your app (
com.yuno.payments:android-sdk). - The Netcetera 3DS provider module (
com.yuno.payments:yuno-sdk-3ds-netcetera), installed via Gradle (see below).
Compatibility
Each release of this module is built and tested against a minimum version of the Yuno Payments SDK. The module’s POM does not pin a specific core version, leaving you in full control of whichcom.yuno.payments:android-sdk version your app runs against — but versions below the minimum may not expose the APIs this module relies on and can fail at runtime with NoSuchMethodError / NoSuchFieldError.
| Yuno 3DS Netcetera | Requires Yuno Payments SDK |
|---|---|
1.0.1 | ≥ 2.16.0 |
Step 1: Declare the Netcetera Maven repository
The Netcetera 3DS SDK is hosted on Netcetera’s public Maven server. Because Gradle does not propagate transitive repositories through POM metadata, your app must declare the repo explicitly so it can resolve the Netcetera SDK dependency. Add the entry to your project’s settings file insidedependencyResolutionManagement.repositories:
- Groovy DSL
- Kotlin DSL
In
settings.gradle:If you are using the legacy
allprojects { repositories { … } } block in your root build.gradle, add the same Netcetera maven { url "…" } line there instead.Step 2: Add the dependency
Add the Yuno 3DS Netcetera dependency to your app module’s build file:- Groovy DSL
- Kotlin DSL
In
build.gradle:androidx.startup dependency are pulled in transitively — you don’t need to declare them yourself.
Activating the 3DS provider
The module auto-registers with the Yuno Payments SDK when your app process starts (via Jetpack App Startup). No extra code is required — just initialize the Yuno SDK as usual:Permissions
android.permission.INTERNET is declared by the module’s manifest and merged into your app automatically — no action required.