Collect online payments with Paytm Payment Gateway (2024)

Paytm Standard Checkout provides a secure and PCI-compliant way to accept payments on both website and App through different payment sources like Credit/Debit Card, Net-Banking, UPI, and Paytm Wallet from your customers.

Note:

This checkout flow has been deprecated. Please refer to our new amazingly fast JS checkout solution for seamless experience

Demo for Paytm Standard Checkout

Overview of payment processing

The payment process starts at the click of the pay button on the merchant order summary page. On this click, you need to:

  1. Create an order in your order system and then generate a transaction token byInitiate Transaction API.

  2. Submit the request as HTML form POST. This will redirect the customer to Paytm's ShowPaymentPage.

  3. Customer fills payment details and completes the payment authentication. Once the payment is complete, theresponse is posted as HTML form POST on your app/website's callback URL.

  4. Verify checksumhash received in response to ensure that it has not been tampered with.

Integration steps for Payments processing

  1. At the click of Payment button by the customer on your website, create an order in your system and generate transaction token byInitiate Transaction API.

  2. Customer fills the payment details and is redirected to bank page for authorization. Once the transaction is authorized, Paytm receives the response from the bank and returns a status to your website via your callback URL. Response attributes description and samples HTML form post is provided below:

    Response AttributesDescription

    MID

    String(20)

    This is a unique identifier provided to every merchant by Paytm

    TXNID

    String(64)

    This is a unique Paytm transaction ID that is issued by Paytm for each transaction

    ORDERID

    String(50)

    Unique reference ID for a transaction which is generated by merchant and sent in the request

    BANKTXNID

    String

    The transaction ID sent by the bank. In the case of Paytm proprietary instruments too, there is a unique reference number generated by Paytm's system. In case the transaction does not reach the bank, this will be a NULL or empty string. The primary reason for this is user dropping out of the payment flow before the transaction reaches to the bank to servers.

    TXNAMOUNT

    String(10)

    Amount paid by the customer in INR

    CURRENCY

    String(3)

    Currency in which the transaction has taken place. Currently, only "INR" is the supported currency of the transaction.

    STATUS

    String(20)

    This contains the transaction status and has only three values: TXN_SUCCESS, TXN_FAILURE and PENDING

    RESPCODE

    String(10)

    Codes refer to a particular reason for payment failure/success. List in thisPDF.

    RESPMSG

    String(500)

    Description message is linked with each respcode. List in thisPDF.

    TXNDATE

    DateTime

    Date and Time of transaction in the format "yyyy-MM-dd HH:mm:ss.S"Example: "2015-11- 02 11:40:46.0"

    GATEWAYNAME

    String(15)

    Gateway used by Paytm to process the transactions. By paymodes, the details are provided below:
    • Credit, debit cards UPI - Gateway used to process the transaction. For example, if HDFC gateway has been used to process SBI credit card transactions, the value will be HDFC
    • Net banking - Netbanking transactions are not routed via a gateway. Hence issuing bank name is passed in this field
    • Paytm Wallet - The value will be 'WALLET'
    • Paytm Postpaid - The value will be 'PAYTMCC'

    BANKNAME

    String(500)

    Name of issuing bank of the payment instrument used by the customer. By paymodes, the details are provided below:
    • Credit, debit cards, net banking - Name of the issuing bank. Example in case the customer uses SBI's credit card, the value will be "SBI"
    • Paytm Wallet - Wallet
    • Note that in the case of UPI - This parameter will not be present in the response

    PAYMENTMODE

    String(15)

    The payment mode used by the customer for a transaction.
    • Credit card – CC
    • Debit card - DC
    • Net banking - NB
    • UPI - UPI
    • Paytm wallet – PPI
    • Postpaid - PAYTMCC

    CHECKSUMHASH

    String(108)

    Security parameter to avoid tampering. Verified using server-side checksum utility provided by Paytm. Utilities to generate checksumhash is availablehere.
    <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Paytm Secure Online Payment Gateway</title></head><body><table align='center'><tr><td><STRONG>Transaction is being processed,</STRONG></td></tr><tr><td><font color='blue'>Please wait ...</font></td></tr><tr><td>(Please do not press 'Refresh' or 'Back' button</td></tr></table><FORM NAME='TESTFORM' ACTION='YOUR_CALLBACK_URL' METHOD='POST'><input type='hidden' name='CURRENCY' value='PAYMENT_CURRENCY'><input type='hidden' name='GATEWAYNAME' value='GATEWAY_USED_BY_PAYTM'><input type='hidden' name='RESPMSG' value='PAYTM_RESPONSE_MESSAGE_DESCRIPTION'><input type='hidden' name='BANKNAME' value='BANK_NAME_OF_ISSUING_PAYMENT_MODE'><input type='hidden' name='PAYMENTMODE' value='PAYMENT_MODE_USED_BY_CUSTOMER'><input type='hidden' name='MID' value='YOUR_MID_HERE'><input type='hidden' name='RESPCODE' value='PAYTM_RESPONSE_CODE'><input type='hidden' name='TXNID' value='PAYTM_TRANSACTION_ID'><input type='hidden' name='TXNAMOUNT' value='ORDER_TRANSACTION_AMOUNT'><input type='hidden' name='ORDERID' value='YOUR_ORDER_ID'><input type='hidden' name='STATUS' value='PAYTM_TRANSACTION_STATUS'><input type='hidden' name='BANKTXNID' value='BANK_TRANSACTION_ID'><input type='hidden' name='TXNDATE' value='TRANSACTION_DATE_TIME'><input type='hidden' name='CHECKSUMHASH' value='PAYTM_GENERATED_CHECKSUM_VALUE'></FORM></body><script type="text/javascript"> document.forms[0].submit();</script> </html>
  3. Checksumhash received in response of transaction needs to be verified on merchant server using Paytm library with all the parameters in key-value pairs. Code snippets and Github links for the checksum utility are providedhere.
  4. Validate transaction response via server-side request usingTransaction Status API. This API requires checksumhash in request and its verification in response. The status should be treated as the final status of the transaction.

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.

  1. Attempt a test transaction usingtest paymodes credentials.

  2. Ensure you re-verify transaction response withTransaction Status APIvia server to server call in payment flow and not separately as a one time activity.

  3. See the transaction details in “Test Data” mode on yourdashboard.

Once the test transaction is complete, move your code to live environment with production account details. Note that production accounts details are available after you haveactivated your accounton the dashboard.

Lastly, it's recommended that you read aboutManaging Refundsandlate payment notifications.

In case of any issues with integration, pleaseGet in touch.

Collect online payments with Paytm Payment Gateway (2024)
Top Articles
Discover thousands of collaborative articles on 2500+ skills
How Many Homes Will It Take to Find 'The One'?
Lakers Game Summary
Tabc On The Fly Final Exam Answers
Find All Subdomains
Jennette Mccurdy And Joe Tmz Photos
Craigslist Mexico Cancun
Imbigswoo
What is IXL and How Does it Work?
Craigslistdaytona
Tcu Jaggaer
Aces Fmc Charting
Alaska: Lockruf der Wildnis
Bowlero (BOWL) Earnings Date and Reports 2024
5 high school volleyball stars of the week: Sept. 17 edition
Procore Championship 2024 - PGA TOUR Golf Leaderboard | ESPN
Aldi Sign In Careers
Niche Crime Rate
CANNABIS ONLINE DISPENSARY Promo Code — $100 Off 2024
Watch The Lovely Bones Online Free 123Movies
Alfie Liebel
Jail View Sumter
Kingdom Tattoo Ithaca Mi
Hdmovie2 Sbs
Kroger Feed Login
Blackboard Login Pjc
Royalfh Obituaries Home
Penn State Service Management
Weather Underground Durham
Armor Crushing Weapon Crossword Clue
Clearvue Eye Care Nyc
Salons Open Near Me Today
15 Downer Way, Crosswicks, NJ 08515 - MLS NJBL2072416 - Coldwell Banker
Workboy Kennel
Lowell Car Accident Lawyer Kiley Law Group
Poster & 1600 Autocollants créatifs | Activité facile et ludique | Poppik Stickers
Haley Gifts :: Stardew Valley
Vitals, jeden Tag besser | Vitals Nahrungsergänzungsmittel
The 38 Best Restaurants in Montreal
Zero Sievert Coop
Craigslist List Albuquerque: Your Ultimate Guide to Buying, Selling, and Finding Everything - First Republic Craigslist
Bismarck Mandan Mugshots
Felix Mallard Lpsg
Paperless Employee/Kiewit Pay Statements
Craigs List Palm Springs
Best Restaurants Minocqua
Craigslist Odessa Midland Texas
Sofia With An F Mugshot
Pike County Buy Sale And Trade
Mychart University Of Iowa Hospital
Ferhnvi
Port Huron Newspaper
Latest Posts
Article information

Author: Amb. Frankie Simonis

Last Updated:

Views: 6116

Rating: 4.6 / 5 (76 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Amb. Frankie Simonis

Birthday: 1998-02-19

Address: 64841 Delmar Isle, North Wiley, OR 74073

Phone: +17844167847676

Job: Forward IT Agent

Hobby: LARPing, Kitesurfing, Sewing, Digital arts, Sand art, Gardening, Dance

Introduction: My name is Amb. Frankie Simonis, I am a hilarious, enchanting, energetic, cooperative, innocent, cute, joyous person who loves writing and wants to share my knowledge and understanding with you.