• Getting Started
    • Website Integration
      Mobile Integration (Android/IOS)
      Enterprise Solutions
      Accept Payments
      Process Payments
      Disbursals
      API References
      Webhooks
      Testing
      Refunds
      Guides
      Other Processes

      Paytm Assist

      Paytm assist helps in achieving frictionless payments by reducing manual intervention by customers for cards and net banking transactions. It works on reducing following transaction frictions:

      1. OTP in card transactions : Assist automatically reads the OTP and fills it on assist window.
      2. Non mobile optimized netbanking pages : Assist mobile optimizes net banking pages which enables users to transact with ease.
      3. User credentials : Assist makes payment process simple by remembering internet banking user ID which removes manual entry effort for all subsequent transactions.

      Demo for Card Payments

      Paytm Assist demo

      Overview of card payment via Paytm Assist

      1. User enters card number, CVV and expiry date on payment page of merchant.
      2. Merchant app invokes Paytm assist SDK.
      3. Issuer bank sends OTP to customer's registered mobile number.
      4. SDK automatically reads the OTP and fills it on Assist window.
      5. Once user submits OTP on Paytm assist, it is validated by issuer bank.
      6. Money is deducted from user account once OTP validation is successful.
      Find the detailed interaction of each system component in case of card payments in the flowchart below:

      paytm-assist-overview card

      Steps to Integrate Paytm Assist SDK

      Step 1 : SDK installation and set up

      1. Add the following as a dependency in your app-level build.gradle
      2. Implementation 'com.paytm.easypay:easypay:8.5.0-RC-2'
      3. Paytm Assist requires SMS Permission to process OTPs, add following lines in your manifest file:

        <uses-permission android:name="android.permission.RECEIVE_SMS" />
        <uses-permission android:name="android.permission.READ_SMS" />
        
      4. Runtime permission can be accessed via:

        if (ContextCompat.checkSelfPermission(this@MainActivity, Manifest.permission.READ_SMS) != PackageManager.PERMISSION_GRANTED) {          
            ActivityCompat.requestPermissions(this@MainActivity, arrayOf(Manifest.permission.READ_SMS, Manifest.permission.RECEIVE_SMS), 101)
        }
        

      Step 2 : Initialization of Paytm SDK

      To initialize the Paytm SDK, use below classes:

      • To start Paytm assist one needs to make a singleton object of PaytmAssist:

        PaytmAssist mPaytmAssist = PaytmAssist.getAssistInstance();
        

      Step 3 : Initiate Payment

      To invoke Paytm assist following code is required

      mPaytmAssist.startConfigAssist(this, true, true, R.id.framelayt, mWebView, mActivity, orderId, "TESTMID"); 
      mPaytmAssist.startAssist();
      

      In which params of startConfigAssist is as follows :

      ATTRIBUTEDESCRIPTION
      configContext ContextContext object (above it's referred as this ).
      isEasyActive BooleanFlag to enable /disable Assist (above it's referred as true ) for app has preference in app.
      isEasyEnabled BooleanFlag to enable/disable assist (above it's referred as true ) if to be decided.
      viewID IntegerFrame layout id where pop up is placed(above it's referred as R.id.framelayt ).
      webView1WebViewinstance of webview where PG page will be loaded (above it's referred as mWebView )
      activity ActivityInstance of Activity ( above it's referred as mActivity )
      orderIDStringOrderID of the txn ( above it's referred as orderId )
      mid StringMID of merchant ( above it's referred as TESTMID )

      Add following line in your activity's onDestroy

      mPaytmAssist.removeAssist(); 
      

      Testing Assist SDK

      Assist SDK features will work whenever a real bank page is loaded and doesn't depend on your development environment. Just add above lines of code and it will start working.