Account Opening

To open account, verify CNIC and Mobile Number using encrypted OTP.

AccountOpening

POST

Account Opening

 

 

Description

 

Account Opening API will be used to open new wallet account after account info and OTP validation. The account information will be sent to JS bank Wallet System for account opening.

 

 

Version


V1


Resource URL

https://sandbox.jsbl.com/v2/ accountopening-blb


Header


Name Type Values Description Length

Authorization

String Bearer
Example: Bearer xxxxxxxxxxxxx
Access Token will be generated through OAuth API NA

Content-Type

String Example:
application/json
Only “application/json” Content-Type is supported. NA


 

 

Request Parameters

 

Name Description Parameter Type Sample Value

MerchantType

Merchant Type String 0088

TraceNo

Trace No Only numbers are allowed 211102

CNIC

CN String 4310598523277

DateTime

Date Time YYYYMMddHHmmss 20210105201527

MobileNumber

Mobile Number string 03346578999

CompanyName

Company Name String XYZ

CnicIssuanceDate

Cnic Issuance Date String 20200324

MobileNetwork

Mobile Network String Telenor

EmailId

Email Id String [email protected]

Sample  Request

{
"AccountOpeningRequest":{
"MerchantType" : "0088",
"TraceNo" : "211093",
"CompanyName" : "XYZ",
"DateTime" : "20210105201527",
"CNIC" : "4210114939091",
"CnicIssuanceDate" : "20140624",
"MobileNo" : "03345838445",
"MobileNetwork" : "UFONE",
"EmailId": "[email protected]"
}
}
 

Response Parameters

 

Name Description Parameter Type Sample Value

MerchantType

Merchant Type String  0088

TraceNo

Trace No Only numbers are allowed  211093

CompanyName

Company Name String  BIFILER

DateTime

Date Time YYYYMMddHHmmss  20210105201527

MobileNetwork

Mobile Network String  Ufone

ResponseCode

Response Code Only numbers are allowed  97

ResponseDetails

Response Details String

 
Unknown Error

Sample  Response

{
    "AccountOpeningResponse": {
        "MerchantType": "0088",
        "TraceNo": "211093",
        "CompanyName": "XYZ",
        "DateTime": "20210105201527",
        "MobileNetwork": "UFONE",
        "ResponseCode": "97",
        "ResponseDetails": [
            "Unknown Error"
        ]
    }
}
 

Response Code Details


{
"requestId": "3091741309081",
"errorCode": "01",
"errorMessage": "Bad Request - Invalid Authorization Header"
}



{
"requestId": "3091741309081",
"errorCode": "03",
"errorMessage": "Bad Request - Invalid Request Payload"
}



{
"requestId": "3091741309081",
"errorCode": "04",
"errorMessage": "Bad Request - Resource not found"
}



{
"requestId": "3091741309081",
"errorCode": "05",
"errorMessage": "Bad Request - Invalid Access Token"
}
{
     "ResponseCode": "00",
    "ResponseDescription": "Successful",
    "Rrn": "",
    "MobileNumber": "03464991719",
    "Cnic": "3520214402765",
     
}


Try-out yourself

Header Parameters


Name Values Description
Authorization
(required)

Auth2.0 verification. "Bearer" keyword followed by a space and generated Access Token from OAuth API.Like "Bearer xxxxxxx"

Content-Type
(required)

Content Type applciation/json is supported

Body Parameters


Name Values Description
Request Body
(required)

Add values in JSON Body

Request Body

HTTP Basic

OAuth 2.0

API Key

Clear Request

Make a request and see the response.

Make a request and see the response.

Make a request and see the response.

Code examples

  • var request = require('request'),
    oauth_token = "YOUR_ACCESS_TOKEN",
    url = "https://sandbox.jsbl.com/mb/verifyaccount/v0/request"
    auth = "Bearer " + oauth_token;
    request(
    {
    method: 'POST'
    url : url,
    headers : {
    "Authorization" : auth
    }, json : {
    
    "MerchantType" :"",
    "TraceNo" :"",
    "CompanyName" :"",
    "DateTime" :"",
    "CNIC" :"",
    "CnicIssuanceDate" :"",
    "MobileNo" :"",
    "MobileNetwork" :"",
    "EmailId" :"",
    
    
    
    
    
    } }, function (error, response, body) {
    // TODO: Use the body object to extract the response
    console.log(body)
    }
    )
    
  • <?PHP
    
    $url = 'https://sandbox.jsbl.com/mb/verifyaccount/v0/request';
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_HTTPHEADER, 
    array('Content-Type:application/json','Authorization:Bearer 
    ACCESS_TOKEN')); //setting custom header $curl_post_data = array(
    //Fill in the request parameters with valid values
    'MerchantType' => ' ',
    'TraceNo' => ' '
    'CompanyName' => ' ',
    'DateTime' => ' '
    'CNIC' => ' ',
    'CnicIssuanceDate' => ' '
    'MobileNo' => ' '
    'MobileNetwork' => ' '
    'EmailId' => ' '
    
    ); $data_string = json_encode($curl_post_data);
    
  • require 'net/http'
    require 'net/https'
    require 'uri'
    uri = URI('https://sandbox.jsbl.com/mb/verifyaccount/v0/request')
    http = Net::HTTP.new(uri.host, uri.port)
    http.use_ssl = true
    http.verify_mode = OpenSSL::SSL::VERIFY_NONE
    request = Net::HTTP::Get.new(uri)
    request["accept"] = 'application/json'
    request["content-type"] = 'application/json'
    request["authorization"] = 'Bearer '
    request.body = "{
    
    
    \"MerchantType\":\" \",
    \"TraceNo\":\" \"
    \"CompanyName\":\" \",
    \"DateTime\":\" \"
    \"CNIC\":\" \",
    \"CnicIssuanceDate\":\" \"
    \"MobileNo\":\" \"
    \"MobileNetwork\":\" \"
    \"EmailId\":\" \"
    
    
    
    }"
    response = http.request(request)
    puts response.read_body
    
  • curl -X POST --header "Authorization: 
    Bearer " --header "Content-Type: 
    \"MerchantType\":\" \",
    \"TraceNo\":\" \"
    \"CompanyName\":\" \",
    \"DateTime\":\" \"
    \"CNIC\":\" \",
    \"CnicIssuanceDate\":\" \"
    \"MobileNo\":\" \"
    \"MobileNetwork\":\" \"
    \"EmailId\":\" \"
    
    }" "https://sandbox.jsbl.com/mb/verifyaccount/v0/request"
    
  • OkHttpClient client = new OkHttpClient();
    MediaType mediaType = MediaType.parse("application/json");
    RequestBody body = RequestBody.create(mediaType, "{
    \"MerchantType\":\" \",
    \"TraceNo\":\" \"
    \"CompanyName\":\" \",
    \"DateTime\":\" \"
    \"CNIC\":\" \",
    \"CnicIssuanceDate\":\" \"
    \"MobileNo\":\" \"
    \"MobileNetwork\":\" \"
    \"EmailId\":\" \"
    
    
    }");
    Request request = new Request.Builder()
    .url("https://sandbox.jsbl.com/mb/verifyaccount/v0/request")
    .post(body)
    .addHeader("authorization", "Bearer YOUR_OAUTH_TOKEN")
    .addHeader("content-type", "application/json")
    .build();
    Response response = client.newCall(request).execute(); 
    

{
    "requestId": "848624438861",
    "errorCode": "01",
    "errorMessage": "Invalid Authorization Header"
}


{ "requestId": "848624438861", "errorCode": "02", "errorMessage": "Bad Request - Invalid Cnic" }
{ "requestId": "3091624162362", "errorCode": "02", "errorMessage": "Bad Request - Invalid MobileNumber" }
{ "requestId": "3091626060511", "errorCode": "02", "errorMessage": "Bad Request - Invalid ConsumerName" }
{ "requestId": "3091726063961", "errorCode": "02", "errorMessage": "Bad Request - Invalid AccountTitle" }
{ "requestId": "848726338311", "errorCode": "02", "errorMessage": "Bad Request - Invalid BirthPlace" }
{ "requestId": "848726338312", "errorCode": "02", "errorMessage": "Bad Request - Invalid PresentAddress" }
{ "requestId": "848726341341", "errorCode": "02", "errorMessage": "Bad Request - Invalid CnicStatus" }
{ "requestId": "848726341342", "errorCode": "02", "errorMessage": "Bad Request - Invalid CnicExpiry" }
{ "requestId": "848626346341", "errorCode": "02", "errorMessage": "Bad Request - Invalid DOB" }
{ "requestId": "848626346342", "errorCode": "02", "errorMessage": "Bad Request - Invalid FatherHusbandName" }
{ "requestId": "848726349851", "errorCode": "02", "errorMessage": "Bad Request - Invalid MotherMaiden" }
{ "requestId": "848726349852", "errorCode": "02", "errorMessage": "Bad Request - Invalid Gender" }
{ "requestId": "3091726083901", "errorCode": "02", "errorMessage": "Bad Request - Invalid AccountType" }
{ "requestId": "3091726083901", "errorCode": "06", "errorMessage": "Bad Request - Invalid OTP" }
{ "requestId": "3091726083901", "errorCode": "03", "errorMessage": "Invalid Request Payload" }
{ "requestId": "3091726083901", "errorCode": "04", "errorMessage": "Resource not found" }
{ "requestId": "3091726083901", "errorCode": "05", "errorMessage": "Invalid Access Token" }
{
    "ResponseCode": "00",
    "ResponseDescription": "Successful",
    "Rrn": "3091723912433",
    "MobileNumber": "03354522607",
    "Cnic": "3578414402451"
    
}

FAQs

You need to go through the section "How it Works".

Prerequisite(s)

1. (1.1)Authentication Bear OAuth access token

1.2. Account Verification

1.3. NADRA Biometric Verification as per State Bank Pakistan regulation

2.Generate OTP

3.Verify OTP

Resource Summary

Security

Authentication

Content Type

application/json

Working...