search

EMI Subvention through All-in-One SDK

EMI subvention on All-in-One SDK solution can be integrated with minimal effort at your end by just sending one extra object in the Initiate transaction API. This object is required to be passed whenever you intend to offer EMI subvention as payment mode to your users.
Paytm backend will configure the banks and EMI plans on which you want to offer EMI subvention. Once this configuration is done then Paytm would manage the eligibility during the transaction.

Overview of payment processing via EMI subvention payment

  1. User visits your mobile application and adds goods/services into the shopping/order cart.
  2. Your backend server calls Initiate Transaction API with an additional simplifiedSubvention object to get the transaction token.
  3. Launch Paytm All-in-One SDK with the transaction token received in step 2.
  4. In case the Paytm app is installed on a user's device, the user completes the payment on invoked Paytm app else the transaction will be processed via web view within the All-in-One SDK(Paytm hosted redirection flow).
  5. Paytm backend server processes the transaction and returns the transaction response to your app.
  6. Your backend server calls the Transaction Status API to verify the transaction response.
  7. After the successful validation of the transaction, order status is shown to the user on the app.

Pre-requisites

Before you begin the integration, make sure you follow the steps below:

  1. Create an account on Paytm as a merchant. Click on how to create an account. Note: Save the MID and merchant key generated in the above step.
  2. Go through the checksum logic to understand how to generate and validate the checksum.
  3. Get the staging android or iOS Paytm app for integration testing on the merchant staging environment.
  4. Get the EMI subvention plans configured for your products. You can collect the data as explained in the section Configuration of EMI subvention plans and send the email with details to your account manager or contact us.

Integration Steps

Note: You need to send an additional “simplifiedSubvention”object in the Initiate Transaction API to enable EMI subvention on All-in-One SDK and non SDK based flows.
  1. Once the user adds the item in the cart and in case you want to give the EMI subvention as a payment option to the user, call Initiate Transaction API from your backend to generate a Transaction Token.


    Below example shows the “simplifiedSubvention” object required to be added to the initiate transaction API call based on the subvention strategy.

    In case you want to integrate an amount based EMI subvention, you need to pass the simplifiedSubvention Object as explained in the example below. In this example, the total cart amount is of Rs. 2000 out of which you want to offer EMI Subvention on Rs. 1100.
     

    "simplifiedSubvention":{ 
          "customerId": "1234",
          "subventionAmount": "1100.00", //amount eligible for EMI subvention
          "selectPlanOnCashierPage": true  
    }
    

    In case you want to integrate an item based EMI subvention, you need to pass the simplifiedSubvention Object as explained in the example below. In this example, there is 1 item in the cart and you want to give EMI subvention on it, then you pass the identifier of the item in the simplifiedSubvention Object. You need to send the same identifiers as you have got configured at Paytm Subvention engine.
     

    "simplifiedSubvention": {
        "customerId": "1234",
        "items": [
           { 
             "verticalId": "51", 
             "isEmiEnabled": true, //whether EMI is enabled for the product
             "isPhysical": true,
             "quantity": 1, //quantity of the product.quantity
             "productId": "321067334", //unique product identifier for the merchant
             "price": 6000, //cumulative price of the product
             "categoryList": [ "66781" ], //Product category identifiers for the merchant
             "merchantId": "1152435", 
             "id": "1" //unique identifier for one item in the request
          } 
        ],   
       "selectPlanOnCashierPage": true 
    }
    
    
  2. Launch Paytm All-in-One SDK with the transaction token received as the response of Initiate Transaction API from step 1. Please refer All-in-One SDK integration document for detailed steps.

  3. In case the Paytm app is installed on a user's device, they complete the payment on Paytm app using their login credentials, else the transaction will be processed via web view within the All-in-One SDK(Paytm hosted redirection flow).

  4. User selects the EMI as a payment instrument and fills the details of the credit card. User selects one of the different subvention plans available and proceeds for the payment.

  5. Paytm backend server processes the transaction and returns the transaction response to your app.

  6. Your backend server calls the Transaction Status API to verify the transaction response.

  7. After the successful validation of the transaction, order status is shown to the user on the app.

Post Integration Steps

Post completion of integration on your staging environment, do a complete transaction from order summary page on your mobile app.

  1. Attempt a test transaction using the test paymodes credentials.
  2. Ensure you re-verify transaction response with Transaction Status API via server to server call in payment flow and not separately as a one-time activity.
  3. See the transaction details in the "Test Data" mode on your dashboard.

Once the test transaction is complete, move your code to a live environment with production account details, which you would have received from Paytm.
 
In case of any issues with integration, please get in touch.