Redcarpet Card SDK

Redcarpet Card sdk is devided in to four parts

  1. Coustomer Onboarding SDK

  2. Redcarpet Card Managemet SDK

  3. Money Management SDK

  4. Bill/Emi Payment SDK

Redcarpet Android Sample Application

You can refer to the Redcarpet Android Sample App to learn how the SDK has been integrated.  

Sample App

Redcarpet Android SDK Integration


  • You need redcarpet API Key to initilize redcarpet sdk. You can use the Test Keys for a sandbox experience. please user Production keys when going live with application  


Integration Steps

Step 1: Install Redcarpet Android Standard SDK

  • Currently We distribute our SDK to the approved partenr. Download the latest versions of the SDK from shared url by redcarpet and place the aar file inside the libs folder.

  • To add the SDK to your app, add the following dependency in your app's build.gradle file:

repositories {
dependencies {
    implementation "com.redcpt:sdk:0.0.1"
    implementation "com.redcpt:sdk-expensemanager:0.0.1"
    implementation "com.redcpt:sdk-otp:0.0.1"
    implementation "com.redcpt:sdk-permissions:0.0.1"
    implementation "com.redcpt:sdk-utilitiessdk:0.0.1"
    implementation "com.redcpt:sdk-verification:0.0.1"
    implementation "com.redcpt:sdk-services:0.0.1"
    implementation "com.redcpt:sdk-appwisesdk:0.0.1"

Step 2: Initialize Redcarpet Android SDK

  • Initialize Redcarpet android SDK in app application class.

class SampleApplication : Application() {

    lateinit var sdk: RedCpt
        private set

    override fun onCreate() {
        sdk = RedCpt.init(this, "<API KEY>")

  • Enable debug mode to see the debug logs
  • Now Redcarpet SDK initilize successfully.

Step 3: Integrate OTP services

  • Integrate otp services, verify otp to signup new user and login old user.

  • Check OTP verified or Not

sdk = (application as SampleApplication).sdk
var isOtpVerified = sdk.isOtpVerified() // return boolean true/false
  • Send OTP
otp = sdk.getOtpInstance()
otp.signup(phoneNumber, <otp_send_retry_count>, object : Otp.SignupCallback {
    override fun onError(response: SignUpResponse?, error: Throwable?) {
        when {
                error != null -> phoneNumberErrorState(error.message)
                response != null -> phoneNumberErrorState(response.message)
    override fun onSuccess(response: SignUpResponse) {
  • Verify OTP
 otp.verify(phoneNumber, password, object : Otp.VerifyCallback {
    override fun onError(response: VerifyResponse?, error: Throwable?) {
            when {
                 error != null -> otpErrorState(error.message)
                    response != null -> otpErrorState(response.message)

    override fun onSuccess(verifyResponse: VerifyResponse) {
        loginRoot.postDelayed(1000) {

Step 4: Signup User

  • After the successful otp verification, submit user personl info
    "<User Name>",
    "<User Email>",
    "<User DOB>",
    "<Referral code>",
    object :
        VerificationCallback.Callback<com.redcpt.onboardingsdk.models.GenericResponseModel> {
            override fun onFail(
                t: com.redcpt.onboardingsdk.models.GenericResponseModel?,
                    throwable: Throwable?
                ) {
                    Log.e("error response ", t.toString())
                    Log.e("error response ", throwable.toString())
            override fun onSuccess(t: com.redcpt.onboardingsdk.models.GenericResponseModel) {
                if (t.result.equals("success")) {
                   Log.e("Funnel", t.message.toString())