Java SDK

A powerful Java plugin to integrate Card, UPI, and Net Banking payments with full native UI. Supports both Production and Test transactions, making it ideal for production apps as well as developer testing and QA environments.

Features

  • Complete UI-based payment flow
  • Supports Card, UPI, and Net Banking
  • Built-in Test Mode with mock transactions
  • Secure hash-based verification
  • Callbacks for success, failure, or cancellation

Prerequisites

Before proceeding with the integration of the **JPSL Payment SDK **into your native Android application, it is essential to ensure that your development environment, tools, and application configurations are appropriately set up.

1. Android Studio: Arctic Fox (2020.3.1) or Newer

The integration process and SDK functionalities are optimized for recent versions of Android Studio. Using Arctic Fox or newer ensures compatibility with the latest Android Gradle Plugin features, Kotlin/Java interoperability, and improved build performance. Older versions might not fully support the SDK or may lack critical debugging and rendering capabilities.

📝 Tip: Updating Android Studio also helps avoid compatibility issues with new dependencies and Jetpack libraries.

2. Minimum SDK Version: API Level 24 (Android 5.0 Lollipop)

The JPSL Payment SDK supports a wide range of Android devices starting from API Level 24 (Lollipop). This means your application must target at least Android 5.0 or higher to be eligible for integration.

  • Why API 24? It introduced support for newer security APIs, UI rendering improvements, and enhanced app lifecycle controls — all essential for secure and smooth payment processing.
  • Setting a minSdkVersion lower than 24 will cause runtime crashes or build-time errors during SDK compilation.

Recommended in your build.gradle:

android {
compileSdk 35
defaultConfig {
	minSdkVersion 24
...
}
}

3. Java Version: Java 8 or Above

The SDK leverages modern language features such as lambda expressions, functional interfaces, and improved type inference, all of which are part of Java 8+. Make sure your Android project supports Java 8 bytecode to ensure proper compilation and execution.

  • Add this to build.gradle to enable Java 8 compatibility:
  • compileOptions {
      sourceCompatibility JavaVersion.VERSION_1_8
      targetCompatibility JavaVersion.VERSION_1_8
    }
⚠️

Note: Some Android projects may use Kotlin, which is compatible. However, Java-based projects must strictly use Java 8 or higher.

4. Permissions: INTERNET

As the Jio Payment SDK facilitates real-time transactions, the application must have internet access to communicate with secure payment gateways, fetch transaction statuses, and interact with banking APIs.

  • Add the following permission to your AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET"/>
🛡️

Important: This permission is mandatory even in testing environments (UAT), as all payment interactions are conducted via secure web-based APIs.

5. Merchant Credentials (Merchant ID & Secret Key)

To use the SDK in either UAT (Test) or Production mode, you need valid merchant credentials, which consist of:

  • Merchant ID: A unique identifier provided to you by the Jio Payment team.
  • Secret Key: A private string used to securely validate and authorize payments via hash-based mechanisms.