Paytm Pre-Auth is a one-click payment experience for your website or mobile app which enable payments via user’s Paytm account. Your customers just need to once authorize and link their Paytm account with your application and later enjoy superfast checkout every time.
This is an ideal solution for cases where the delivery of service or order fulfilment is not immediate. You can block the order amount from your customer’s Paytm account and debit it later when the order is complete, ensuring successful order placement and payment post-delivery.
Note: Paytm Pre-Auth is only available to select enterprise customers with high transaction volumes and established businesses. Get in touch to request access to Paytm Pre-Auth payment solution.
Demo of Paytm Pre-Auth
Overview of payment processing via Paytm Pre-Auth
User visits your website or mobile application.
You ask the user to link their Paytm account with your website or mobile application for seamless payments.
Once the user account is successfully linked, Paytm shares the user SSO_TOKEN with you.
User adds goods/services into the shopping/order cart.
You calculate the total amount and call the Paytm Check Balance API.
Paytm returns if the user has sufficient balance for the transaction. If not, you initiate the Add Money process with the differential amount.
Call the Paytm Pre-auth API to block amount from the user's account.
Paytm blocks the amount in user’s account and returns the Preauth ID.
You proceed with order/service fulfilment.
Once the fulfilment is complete, call Capture API with the final amount to capture the amount from user's Paytm account and then notify the payment status to the user.
Steps in processing payments via Paytm Pre-Auth
STEP 1: Get your authentication keys
Note: Paytm Pre-Auth is only available to select enterprise customers with high transaction volumes and established businesses. Get in touch to request access to Paytm Pre-Auth payment solution.
Client ID: A unique alphanumeric identifier issued by Paytm for your account
Client Secret: A unique alphanumeric key issued by Paytm for your account
MID: A unique merchant identifier issued by Paytm for your account
Merchant Key: This is a unique secret key used to secure encryption of every request. This needs to be kept on server side and should not be shared with anyone.
Note: Client Secret and Merchant Key are secret keys used for encryption so never share these with anyone.
STEP 2: Link a user’s Paytm account with your application
Demo of Paytm Account Linking
Use the following APIs to link a user’s Paytm account, validate the linked account, and remove a linked account.
Please find below the list of APIs and their use cases with respect to the Paytm account linking on merchant App/website.
Paytm validates if the given amount exists in any Paytm proprietary payment instrument (Paytm Balance and Paytm Postpaid).
If any of the proprietary payment instruments don’t have sufficient balance then API returns the differential Amount.
For example A user has Rs.100 in their Paytm Wallet and Rs.150 in Paytm Postpaid. The transaction amount for the order is Rs. 220. In this case, no payment method has sufficient funds so the API returns the differential amount (transaction amount - wallet amount) i.e Rs.120. You have to prompt the user to add money in their Wallet.
In case a user needs to add money to pay for an order, you initiate the Add Money process.
STEP 4: Debit amount from user’s Paytm account and confirm a transaction
STEP 5: Managing Refunds
If you need to cancel or refund a successful transaction, simply send a Refund API request and ensuring success using the Refund Status API.
On completion of your integration
Post completion of integration on your staging environment, do a complete transaction from order summary page on your website or mobile app.
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.
See the transaction details in the “Test Data” mode on your dashboard.
Once the test transaction is complete, move your code to live environment with production account details, which you would have received from Paytm.