- Netbanking- 30 Banks supported. List of Bank Codes
- UPI- Supported across UPI push, collect and Intent flows
One time payments- Integration Steps
1. As part of Initiate Transaction request please add the following parameters:
Name |
Description |
Required |
Schema |
requestType |
This parameter is used to identify the transaction flow
Possible Values: NATIVE_MF, NATIVE_ST |
Yes |
string |
aggMid |
Parent Merchant unique Identifier, Unique Id for merchants provided by Paytm |
No |
string |
validateAccountNumber |
The flag to tell whether to match user's registered account number to the one which is being used for the payment
Possible Values: true, false |
Yes |
string |
allowUnverifiedAccount |
This flag tells to proceed for the transaction even if account number mismatched
Possible Values: true, false |
Yes |
string |
accountNumber |
User account number to validate |
Yes |
string |
enablePaymentMode |
List of the payment modes which needs to enable. If the value provided then only listed payment modes are available for transaction.
Possible Values: [{"mode" : "NET_BANKING", "channels" : ["HDFC"}}] |
No |
array of object |
PaymentMode
Name |
Description |
Required |
Schema |
mode |
Mode of Payment
Possible Values: NET_BANKING, UPI |
No |
string |
channels |
Channel associated with mode
Possible Values: For UPI: UPI, UPIPUSH, UPIPUSHEXPRESS
For NET_BANKING: SBI, PNB, HDFC, ICICI. List of Bank Codes |
No |
string |
|
Request
curl -X POST 'https://securegw-stage.paytm.in/theia/api/v1/initiateTransaction?mid=INTEGR7769XXXXXX9383&orderId=ORDERID_98765' \
--header 'Content-Type: application/json' \
--data '{"body":{"requestType":"NATIVE_MF","mid":"INTEGR7769XXXXXX9383","orderId":"ORDERID_98765","websiteName":"WEBSTAGING","validateAccountNumber":"true","allowUnverifiedAccount":"false","accountNumber":"6298XXXX4220","txnAmount":{"value":"1","currency":"INR"},"userInfo":{"custId":"CUST001"},"callbackUrl":"https://merchant.com/callback"},"head":{"signature":"{signature}"}}'
Response
{
"head": {
"responseTimestamp": "1597923613075",
"version": "v1",
"signature": "uXJ0IX888MWU2taGAOMxERMiCG6u4Lp+w4fSoIDsxrhucewW2k9TehYBp+FaURz6Ik4+oromvi6s8iXsQUjVRdGBqkUV0QejHX+H1tpcO7s="
},
"body": {
"resultInfo": {
"resultStatus": "S",
"resultCode": "0000",
"resultMsg": "Success"
},
"txnToken": "7a6cda2abf82439ba5416e10763551d51597923386883",
"isPromoCodeValid": false,
"authenticated": false
}
}
2. Optional: Now as part of Fetch Payment options API only UPI and registered bank NB would be available for the customers to pay.
3. In case of Custom checkout flow, call the Process Transaction API, after the user has selected the payment option.
4. In case at the time of payment account validation does not happen the following error code and response would be returned as part of Process Transaction API, Transaction Status API, Payment Status Webhook
Response Attributes
ATTRIBUTE |
DESCRIPTION |
EXAMPLE |
ORDERID |
Unique reference ID for a transaction which is generated by merchant and sent in the request |
ORDERID_98765 |
MID |
This is a unique identifier provided to every merchant by Paytm |
INTEGR7769XXXXXX9383 |
TXNID |
This is a unique Paytm transaction ID that is issued by Paytm for each transaction |
20200XXXXXXXX800110168357341774707 |
TXNAMOUNT |
Amount paid by customer in INR |
1 |
PAYMENTMODE |
The payment mode used by customer for transaction |
NET_BANKING |
CURRENCY |
Currency in which the transaction has taken place. Currently only "INR" is the supported currency of transaction |
INR |
TXNDATE |
Date and Time of transaction in the format "yyyy-MM-dd HH:mm:ss.S"Example: "2015-11- 02 11:40:46.0" |
2020-08-20 19:11:31 |
STATUS |
This contains the transaction status |
TXN_SUCCESS |
RESPCODE |
Codes refer to a particular reason of payment failure/success |
01 |
RESPMSG |
Description message is linked with each respcode. |
Txn Success |
GATEWAYNAME |
Gateway used by Paytm to process the transactions. Issuing bank name is passed in this field eg ICICI |
ICICI |
BANKTXNID |
The transaction ID sent by the bank. In 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 NULL or empty string. Primary reason for this is user dropping out of the payment flow before the transaction reaches to bank to servers |
23309276638 |
CHECKSUMHASH |
Security parameter to avoid tampering. Verified using server side checksum utility provided by Paytm. |
2Lvtj3jpbT2jC+iKS/AVPH84/T73siq7mwifcU6jwTptpZAo8mNaQCvFdb4u7crSoIF+RUwc/KOCw0cJPNOV8hbO
|