search

POSTSave Card Bulk API

Use Case

This API is used to save cards in bulk along with the card details for a given user. The purpose is to migrate existing cards from merchant servers to Card Vault.

Request Attributes

Content Type : JSON

Head

AttributeDescription
version
string
mandatory

Version of the API.

Example: v1

requestId
string
mandatory

Unique reference ID which is given in request payload

requestTimestamp
string
mandatory

EPOCH timestamp of the time at which request is being sent.
Example: 1588402269

token
string
mandatory

Authorization string corresponding to the tokenType used.

Example: 739816707d7444XXXXXXXX6cb4264d0a1590145379323

tokenType
string
mandatory

This parameter identifies whether the API works on checksum authentication. The value to be sent in tokenType is 'JWT' for this API.

Body

AttributeDescription
mid
string
mandatory

Paytm provides MID as a unique identifier to each merchant. For your staging MID, click here. You get the production MID post the account activation.

Example: INTEGR7769XXXXXX9383

saveCardRequests
object
mandatory

List of AddCardRequestInfo

SaveCardRequestInfo
+
AttributeDescription
itemId
string
mandatory

Unique item ID to be generated by merchants for each item within a list to match item response list.

custId
string
mandatory

Unique user ID maintained by the merchant 

mcin
string
optional

Unique reference ID of the card maintained by a merchant

encryptedCardNumber
string
mandatory

Encrypted card number

expiryYear
string
mandatory

Card Expiry Year

expiryMonth
string
mandatory

Card Expiry Month

Format: MM, Example: 01, 02 ,12

customerName
object
optional

Name of the card holder.  

Format: {"firstName":"san", "lastName":"zhang"}

CustomerName
+
AttributeDescription
firstName
string
optional

First name of the customer

lastName
string
optional

Last name of the customer

Response Attributes

Content Type : JSON

Head

AttributeDescription
version
string

Version of the API passed in the request.
Example: v1

responseTimeStamp
string

EPOCH timestamp of the time at which response is being sent.
Example: 1588402269

Body

AttributeDescription
resultInfo
object

This parameter gives the information about the result of the API response.

ResultInfo
+
AttributeDescription
resultCode
string

This is the resultCode corresponding to a particular message and is returned to the merchant. It's maximum length is 64. The different result codes corresponding to this API are mentioned below.

resultStatus
string

This parameter indicates the status of API call.

Possible Values: SUCCESS, FAILURE

resultMsg
string(256)

This parameter is the result message which contains information about the result.The different result messages corresponding to this API are mentioned below.
 

saveCardResults
object

List of Card Details. The API supports 100 cards in one request.

SaveCardResults
+
AttributeDescription
itemId
string

Unique item Id within a list to match item response list

resultInfo
string

This parameter gives the information about the result of the API response

ResultInfo
+
AttributeDescription
resultCode
string

This is the resultCode corresponding to a particular message and is returned to the merchant. It's maximum length is 64. The different result codes corresponding to this API are mentioned below.

resultStatus
string

This parameter indicates the status of API call.

Possible Values: SUCCESS, FAILURE

resultMsg
string(256)

This parameter is the result message which contains information about the result.The different result messages corresponding to this API are mentioned below.
 

cardIndexNumber
string

Unique Card Index Number of a card generated by Paytm.

Payload for JWT Token

{
    "mid": "{mid}",
    "requestId": "1234",
    "iat": {current-unix-epoch-time}
}

Error Codes and Messages

ErrorCode ErrorStatus ErrorMsg
0000 S Success
4001 F Card doesn't exist for given parameters
4002 F MID doesn't exist
4003 F JWT Token is invalid
4004 F Request Parameters are not valid
4005 F Mandatory Parameters missing
4006 F Update on card not supported
4007 F Card Decryption failed
4008 F Internal Server error
4009 F Card already exists
4100 F Either mcin or cin should be passed.
4101 F System error
4102 F Mid/RequestId in the query param doesn't match with the Mid/RequestId send in the request.
4103 F Duplicate itemId found in request
00000900 U Unknown Error
Staging
Production
https://securegw-stage.paytm.in/theia/api/saveCardBatch?mid={mid}&requestId={request-id}copy icon
REQUEST
RESPONSE
CURL
curl --location --request POST 'https://securegw-stage.paytm.in/savedcardservice/vault/cards/saveCardBatch?mid={mid}&requestId=1234' \
    --header 'Content-Type: application/json' \
    --data-raw '{
        "head": {"version": "v1","requestTimestamp": "1544614590000","requestId":"1234","token": "eyJhbGciOiJIUzI1NiIsInR5cXXXXXXXXXXXXXXXXXXXljbWL7BshADPIWYxo_cC_JEaTenhOrs","tokenType": "JWT"},
        "body": {"mid":"{mid}","saveCardRequests": [{"itemId": "1","custId":"CUST_001","mcin":"1234","encryptedCardNumber":"obkE6ByZHmXYXXXXXXXXXXXX+OB1AmU5USgGw==","expiryYear":"2027","expiryMonth":"02","customerName":{"firstName":"lok", "lastName":"nath"}}]}}'
copy icon