Create Wallet/Card API

The Create/Wallet API will create a virtual prepaid card or a wallet basis the customer details shared in the API. The client will also share the KYC status of the customer along with the corresponding document type and number.

Before creating the card/wallet, this API will also check if the customer ID (entityCIF) and mobile number shared by the client are unique within the Client program. It will throw an error in case if it already exists.

Environment: https://domain/mob1/api/issuance/v1/createCard

HTTP Method: POST

📘

Note:

The domain will be shared once this move to respective environment.

Request parameters

Body

Parameter

Description

Example

Encrypted

token
mandatory

String Token is the Encrypted body of the below request AES-192-CBC bits Encryption

Pl8F5kDZcvADIiursiA
vvbHNuL9Wv5eaFdorGV
FU6FKfIEnV/YskkzJlA
ov2ZHJWnqGNLOXfBq4S
Qqw8Ep4sK0gCAAkRXAT
Cb1nSY6s=

Decrypted

messageCode
mandatory

Numeric Code to Identify load card request type. ```

Character Limit - 4

</td>

<td>
1080
</td>
</tr>

<tr>
<td>
clientTxnId\
**mandatory**
</td>

<td>
`String` Unique ID generated by the client for each transaction. ```

Character Limit - 14

GOUd789hhhjfscs

firstName
mandatory

String First Name of the cardholder. Character Limit - 50

Ashish

lastName
mandatory

String Last Name of the cardholder. Character Limit - 50

Kumar

mobile
conditional

Numeric Mobile number of the cardholder. Conditional with customer id and Urn i.e either one of them should be present. Please append 91 at the beginning of this field for India international code.
Character Limit - 13

919888888888

customerId
conditional

String Customer Id (entityCIF), which uniquely identifies the cardholder in the client system. It is conditional with mobile number and URN, i.e., either one of them should be present. ```

Character Limit - 20

</td>

<td>
11001188721
</td>
</tr>

<tr>
<td>
sorCustomerId\
**optional**
</td>

<td>
`String`Customer ID (entityCIF), which uniquely identifies the cardholder in the client Issuer system. This is not required for MGL. ```

Character Limit - 20

7dsfhhabc

cardprofileId
optional

Numeric It contains any of the following simple CDD:

  • 150-full CDD,
  • 30-Simple CDD ,
  • 300- No CDD.
    Character Limit - 3

150

kitNo
optional

String if Cards need to be generated basis pre-created card no. Character Limit - 20

2938648

dateOfBirth
optional

Numeric Date of Birth of the Customer in YYYYMMDD format. Character Limit - 8

19951201

gender
optional

String Gender Of the cardholder. Character Limit - 20

Male/Female/Transgender

email
optional

String Email Address of the cardholder. Character Limit - 50

[email protected]

cardProfileId
mandatory

Numeric Present KYC Profile Id. 150-full CDD,30-Simple CDD , 300- No CDD. Character Limit - 3

300

docType
optional

String Document Type Of the CardHolder. One Card Holder can have many Documents. This is not required for MGL. Character Limit - 20

Aadhar , Pancard, VoterId, Driverlicense, Passport, jobcard

docCountry
optional

String The Country Name On which document is issued. This is not required for MGL. Character Limit - 20

India ,U.S,Argentina

docExpiry
optional

Numeric The Expiry Time for Document. In case of Full KYC this is required. This is not required for MGL. Character Limit - 38

20231201

docNumber
optional

String OVD No need to be passed. like adhar Number ,Pan card Number. This is not required for MGL. Character Limit - 20

3675 9834 6015

cKycDocNo
optional

Numeric This is the cKyc No for the user shared by client to Prepaid system. At least one KYC related OVD detail is mandatory. This is not required for MGL. Character Limit - 120

123456

docConsent
optional

Boolean The consent of the card holder .In Case of Adhar validation of Full Kyc user consent is required. This is not required for MGL.

true

kycDateStamp
optional

Numeric Date Time when KYC is created for customer.at the time of Full KYC it will require.YYYYMMDDHHMMSS is format. Character Limit - 14

20161031214559

sourceAccountType
optional

Numeric This will be handle from beneficiary part. This is not required for MGL. Character Limit - 30

emailId, mobile, address, city, state, country, zipcode

sourceAccount
optional

String Source account is the account from which funding is happening. Not required for MGL.

20161031214559

addressline1
optional

String Postal Address of the cardholder. Character Limit - 50

2,Meena Nilaya

addressline2
optional

StringPostal Address of the cardholder. Character Limit - 50

2nd Cross, Tejewswini Nagar

addressline3
optional

String Postal Address of the cardholder. Character Limit - 50

Near Meenakshi Temple

deliveryAddress
optional

String Postal Address of the cardholder. This will be referred to in case a customer wants physical card shipment.
Character Limit - 50

Koramangala, Bangalore

cardholderCity
optional

String City of the cardholder. ```

Character Limit - 10

</td>

<td>
Bangalore
</td>
</tr>

<tr>
<td>
cardholderState\
**optional**
</td>

<td>
`String` State of the cardholder. ```

Character Limit - 10

Karnataka

cardholderCountryoptional

String Country of the cardholder. ```

Character Limit - 50

</td>

<td>
India
</td>
</tr>

<tr>
<td>
cardholderZipCode**optional**
</td>

<td>
`String` Zip Code of the cardholder. `Character Limit - 6`
</td>

<td>
560020
</td>
</tr>

<tr>
<td>
newCardStatus**mandatory**
</td>

<td>
`String` The status of the newly created wallet . Either it can be activated instantly or can be activated later. ```

Character Limit - 10

[email protected]

loadAmountoptional

Numeric Load amount for which card has been activated. It is in implied. ```

Character Limit - 10

</td>

<td>
10000
</td>
</tr>

<tr>
<td>
createQR**optional**
</td>

<td>
`Boolean`Decimals of two digits. For ex. INR 5.25 is 525 in implied decimal format.
</td>

<td>
true
</td>
</tr>

<tr>
<td>
eventId\
**mandatory**
</td>

<td>
`Numeric`newcardstatus = “active” – eventId 303001 for card activation. ```

Character Limit - 10

303001

Sample request

Packet sample (Encrypted)

{
“token”: “h/0YSUdGzgNsMcmfYAvIIPgF3Z80/kMJkW/7l9wG9L+bXt//P/HBG0NsuoPtbn6ugjzNOLl/wQPJFb
CKMqQJtSSQs4JVYBohia1TPP1yJULHN+TLIVKFRZsg0GokTPI+ZKpNPcrKrQSa70qV/RtVWMv6Cmq RHaG1gQvgAYKjNyOpip7G3Io5IDEF4b2cXOlH4G1hbOtjAHQ/7ZS9KrkmJA==”
}

Packet sample (Decrypted)

{
"messageCode": "1010",
"productId": "1",
"clientTxnId": "wibffgjkfdfgffg7f321", "requestDateTime": "2023050914729", "firstName": "SandeepKvP", "lastName": "S",
"mobile": "919888888888", "customerId": "625778hj4fff", "dateOfBirth": "11-07-1993",
"cardProfileId": "30", "sourceAccountType": 11, "docList": [
{
"docType": "Pancard", "docCountry": "India", "docExpiry": "20231201",
"docNumber": "ABCDE1234A" },
{
"docType": "VoterId", "docCountry": "Argentina", "docExpiry": "20231201", "docNumber": "YCV0189823"
},
{
"docType": "Aadhar",
"docCountry": "India,U.S,Argentina", "docExpiry": "20231201", "docNumber": "3849 9070 1992", "cKycDocNo": "123456", "docConsent": "true"
}, {
}, {
"docType": "Passport", "docCountry": "India", "docExpiry": "20231201", "docNumber": "A1234567"
"docType": "Driverlicense", "docCountry": "U.S",
"docExpiry": "20231201", "docNumber": "DL14 20110012345"
} ],
"newCardStatus": "Active",
"loadAmount": "0",
"eventid": 303001 
}

Response parameters

Parameter

Description

Example

messageCode

Code to Identity create card response type

1011

clientTxnId

Value copied from the request

20150701235959xhstiesqfds

responseDateTime

Response date time in the format YYYYMMDDHHMMSS with time in 24 hr format

20161031214559

customerId

Customer Id(entityCIF), which uniquely identifies the cardholder in the client system.

9712938648

accosaTransactionId

Unique id for a particular transaction generated in Prepaid

3591893

responseCode

Contains the status of the transaction. 201 indicates CREATED. Please refer Appendix for other response codes

201

responseMessage

Response message based on response code will be sent

Card creation successful

description

Reserved field to send information to client

Card Creation response

urn

A unique reference number for the generated card/wallet by Prepaid system

70000000008

cardNumber

Encrypted card number

Dj2Y0ikRWp2B9n4271
vnBH5o7Rzn5RYnuG4V
Il0rd3ZZcIHFU6JpeHc3KjBAJKip

cardExpiry

Expiry of the card in format MMYY

0X21

cardCVV2

Encrypted CVV for the card

Si1Z3ikRWp2B9n4271vn
BH5o7Rzn5RYnuG4VIl0r
d3ZZcIHFU6JpeHc3KjBAJKip

cardProfileId

Card Profile Id shared with the client for the product

150

loadAmount

Load amount for which card has been activated. It is in implied decimals by two digits

50000

availableBalance

Card available balance (implied decimals)

50000

availableCashLimit

Available Cash Limit on the card (implied decimals)

0

accosaRefNo

Auto generated sequence number.

4565166

loginProfileId

A user profile is created for the customer. Customer will be authenticated using this ID while logging into any customer portal provided by WIBMO prepaid (optional feature). Not required for MGL.

541

clientId

Unique ID for the client

2000

SubwalletDetails. subwallet_id

Subwallet id of the subwallet

Mob497d9a_1

SubwalletDetails. default_wallet

Whether this subwallet is default subwallet or not.

  • 1 – Default Wallet
  • 0 – Not a Default Wallet

0/1

SubwalletDetails. available_balance

Total available balance of the subwallet

20000

SubwalletDetails. account_number

Account number of the subwallet

9150101002858

SubwalletDetails. account_status

Account status of the subwallet

9 – pre-active

SubwalletDetails. subwallet_name

Subwallet name of the subwallet

“MGL gpr wallet”

SubwalletDetails. ledger_balance

Ledger balance linked to the subwallet

10000

API error codes

Error CodeDescription
00SUCCESS
10CARD_ALREADY_CREATED
1030INVALID_MESSAGE
1033ERROR_CARD_CREATION
1034INVALID_MOBILE_NUMBER
1050INVALID_PRODUCT
1055MALFORMED_REQUEST
1058INVALID_WALLETS
1088INVALID_DATE_FORMAT
1091INVALID_CARDPROFILE_ID
1237DUPLICATE_MOBILE_NUMBER_WITH_MULTIPLE_ACCOUNT
1238INVALID_VOTERID_NUMBER
1239INVALID_PASSPORT_NUMBER
1240INVALID_ADHAR_NUMBER
1241INVALID_DRIVING_LICENCE_NUMBER
1242INVALID_PAN_NUMBER
1245CUSTOMER_ID_CAN_NOT_BE_EMPTY
1283LOGIN_SERVICE_INTEGRATION_CALL_FAILURE
1289PROGRAM_NOT_ALLOWED_FOR_PRODUCT
1290FIRSTNAME_CANNOT_BE_BLANK
1291LASTNAME_CANNOT_BE_BLANK
1292CARD_STATUS_CANNOT_BE_BLANK
1293INVAILD_CARD_STATUS
1295PRDUCT_ID_CANNOT_BE_BLANK
1296CARDPROFILE_ID_CANNOT_BE_BLANK
1297MOBILE_NUMBER_CANNOT_BE_BLANK
1298INVALID_SRC_ACCT_TYPE
1300DOC_TYPE_CANNOT_BE_BLANK
1301DUPLICATE_MOBILE_NUMBER
1305AML_NOT_CONFIGURED_FOR_PRODUCT
1308INVALID_EVENT_TYPE_FOR_CARD_CREATION
1317DATE_OF_BIRTH_IS MANDATORY
1320REQUEST_DATETIME_IS_MANDATORY
8004DUPLICATE EMAIL ID

HTTP status code

HTTP Status CodeHTTP Status Description
201Created
404Not Found
500Internal Server Error
403Forbidden
400Bad Request
401Unauthorized
503Service Unavailable

Sample response

Packet sample (Encrypted)

{
      “token”: “h/0YSUdGzgNsMcmfYAvIIPgF3Z80/kMJkW/7l9wG9L+bXt//P/HBG0NsuoPtbn6ugjzNOLl/wQPJFbCKMqQJtSSQs4JVYBohia1TPP1yJULHN+TLIVKFRZsg0GokTPI+ZKpNPcrKrQSa70qV/RtVWMv6CmqRHaG1gQvgAYKjNyOpip7G3Io5IDEF4b2cXOlH4G1hbOtjAHQ/7ZS9KrkmJA==”
} 

Packet sample (Decrypted)

{
"urn": 70000000128,
"customerId": "62508mob34908", "description": "Card Creation", "responseCode": "201",
"messageCode": 1011,
"clientTxnId": "Sreekumar0000ram119",
“responseDateTime”: "20230803120640", "clientId": "2000",
"accosaTransactionId": 2995,
"responseMessage": "CARD_CREATED_SUCCESSFULLY", "bankId": 7000,
"accosaRefNo": "41394",
"cardNumber": "5427800000046711",
"cardExpiry": "0828",
"cardCVV2": "047",
"cardProfileId": 300,
"loadAmount": 0,
"availableBalance": 0,
"availableCashLimit": 0,
"loginProfId": 0,
"subwalletListDetails": [
{
"subwallet_id": "2008daa1640_1",
"default_wallet": 1, "available_balance": "0", "account_number": "700003005498", "account_status": "0", "subwallet_name": "GPR Single Wallet", "ledger_balance": "0"
}