Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

This API is used to onboard a customer via eKYC by authorized entities associated with Lulu. The API provides encrypted HTML page content with a unique eKYC request Id as a response. The sequence diagram below provides further insight into the rich customer onboarding experience.

 

Customer onboarding

API

/api/v1_0/ras/onboarding

Authorization

 Bearer Token

Method

POST

Headers

Content-Type:application/json

sender : <<sender_name>>
channel: <<channel_name>>

company: <<company_code>>

branch: <<branch_code>>

 

Payload

{
    "salutation": "Mr",
    "first_name": "rahul",
    "middle_name": "krishna",
    "last_name": "kumar",
    "nationality": "IN",
    "date_of_birth": "1986-12-10",
    "country_of_birth": "IN",
    "visa_type_code": "101",
    "gender": "M",
    "mobile_number": "+96858792858",
    "email": "rahul.k2754@gmail.com",
    "profession_code": "547",
    "country_code": "IN",
    "country_of_residence":"OM",
    "sender_id": [
        {
            "id_code": "9",
            "id": "225522338",
            "issued_country_code": "IN",
            "issued_by": "Govt.",
            "issued_on": "2010-12-10",
            "valid_through": "2030-12-10",
            "id_front": {
                "base64_data": "....",
                "content_type": "application/pdf",
                "document_type": "passport front page"
            },
            "id_back": {
                "base64_data": ".....",
                "content_type": "application/pdf",
                "document_type": "passport back page"
            }
        }
    ],
    "sender_address": [
        {
            "address_type": "PERMANENT",
            "building_number": "123/5",
            "street_name": "Chittatumukk",
            "address_line": "abc",
            "country_code": "IN",
            "country_subdivision": "KOKOKOKOKK",
            "town_name": "THRISSUR",
            "post_code": "695301"
        },
        {
            "address_type": "PRESENT",
            "building_number": "102/6",
            "street_name": "Chittatumukk",
            "address_line": "abc",
            "country_code": "OM",
            "country_subdivision": "KOKOKOKOKK",
            "town_name": "Test town",
            "post_code": "695301"
        }
    ],
    "customer_classification": {
        "annual_income_range_id": "1",
        "employer_name": "Lulu",
        "income_type": 1,
        "txvol_month": 100,
        "txn_count_month": 10
    }
}

 

Response

{
    "status": "success",
    "status_code": 200,
    "data": {
        "customer_number": "1000001220000001",
        "customer_status": "ACTIVE",
        "aml_scan_status": "Accepted"
    }
}

Header

Name

Data Type

Max Length

Mandatory

Description

Content-Type

String

36

Yes

Content type

sender

String

60

Yes

Agent / Partner name.

channel

String

30

Yes

Ripple / Direct

company

String

6

Yes

Will be shared

branch

String

6

Yes

Will be shared

Ocp-Apim-Subscription-Key

String

32

Yes

Subscription key

Payload

Name

Data Type

Max Length

Mandatory

Description

salutation

String

 3

Yes

Customer salutation

first_name

String

255

Yes

Customer first name

middle_name

String

255

No

Customer middle name

last_name

String

255

Yes

Customer last name

nationality

String

2

Yes

Customer nationality

date_of_birth

String

-

Yes

Customer date of birth

country_of_birth

String

2

Yes

Customer country of birth

visa_type_code

String

 3

Yes

 Sender visa type code

gender

String

1

Yes

Customer gender. Possible values are M and F

mobile_number

String

20

Yes

Customer mobile no

email

String

30

Yes

Customer email

profession_code

String

 4

Yes

 Profession code

country_code

String

2

Yes

Customer Country code

country_of_residence

String

2

Yes

 Country of residence

sender_id

object

 -

Yes

 Sender details

id_code

String

3

Yes

Customer id type code. Example : 4 for emirates ID

id

String

30

Yes

Customer ID / number. Example : Emirates ID

issued_country_code

String

2

Optional

Customer id issued country

issued_by

String

255

Optional

Customer id issued by

issued_on

String

-

Optional

 YYYY-MM-DD format

valid_through

String

-

Optional

 YYYY-MM-DD format

id_front

Object

 -

Optional

 

base64_data

String

-

Yes

PDF content base 64 data

content_type

String

30

Yes

Content type. application/pdf

document_type

String

255

Yes

Document type description

id_back

Object

-

Optional

 

base64_data

String

-

Yes

PDF content base 64 data

content_type

String

30

Yes

Content type. application/pdf

document_type

String

255

Yes

 

sender_address

Object

 -

Yes

Data object

address_type

String

20

Yes

Sender address type like Present, Permanent

address_line

String

70

Yes

Building name

street_name

String

70

Yes

Street name

country_code

String

2

Yes

Country

country_subdivision

String

35

Yes

Sender country sub division

town_name

String

35

Yes

Sender town name

post_code

String

12

Yes

Sender postal area code. Example: Zipcode, Pincode

customer_classification

Object

 -

Yes

Data object

annual_income_range_id

String

3

Yes

Customer annual income range id

employer_name

String

255

Yes

Employer name(eg:LULU)

income_type

Integer

-

Yes

Customer Income Type

txvol_month

Integer

 -

Yes

Transaction volume per month

txn_count_month

Integer

-

Yes

Transaction count per month

Response

Name

Data Type

Max Length

Name

Description

Name

Data Type

Max Length

Name

Description

status

String

255

Yes

status description

status_code

Int

 -

Yes

Status code

data

Object

-

Yes

Data object

customer_number

String

16

Yes

Customer unique identification number

customer_status

String

20

Yes

Customer status. Possible status : "ACTIVE", "KYC_PENDING" "INACTIVE" "BLOCKED"

aml_scan_status

String

20

Yes

AML status. Possible Status : "Accepted" , "Under Investigation" , "Rejected"

 

EKYC Presentation Request

API

/api/v1/request

Authorization

 Bearer Token

Method

POST

Headers

Content-Type:application/json

Payload

{
  "channel": "BRANCH",
  "agentLocationId": "784101",
  "ekycProvider": "EFR",
  "ecrn": "123456789",
  "primaryMobileNumber": "+971502106707",
  "emailId": "irfanmtp1@gmail.com"
}

Success Response

{
    "status": "success",
    "statusCode": 200,
    "data": {
        "ekyc_request_id": "4e41d40a-6f16-4874-977b-017798d1e583",
        "ekyc_request_data": {
            "ekyc_portal_html": "<<encrypted_base_64_ekyc_portal_html_if_any>>"
        }
    }
}

Authentication Failure

{
  "timestamp": "2022-12-05T13:44:31.557+00:00",
  "status": 401,
  "error": "Unauthorized",
  "path": "/api/v1/request"
}

Other Failure Response

{
  "status": "failure",
  "statusCode": 400,
  "errorCode": 40000,
  "message": "Payload not readable or corrupt"
}

 

Header

Name

Data Type

Max Length

Mandatory

Description

Content-Type

String

36

Yes

Content type

 

Payload

Name

Data Type

Max Length

Mandatory

Description

channel

String

20

Yes

Channel

agentLocationId

String

6

Yes

Unique Identifier to identify the requester

ekycProvider

String

30

Yes

EKYC Provider

ecrn

String

255

Yes

Customer Number

primaryMobileNumber

String

20

No

Primary Mobile Number

emailId

String

120

No

Email ID

 

Response

Name

Data Type

Max Length

Description

Name

Data Type

Max Length

Description

status

String

255

status description

status_code

Int

 -

Status code

message

String

255

Message

data

Object

-

Data object

ekyc_request_id

String

50

EKYC Request unique identification number

ekyc_request_data

Object

-

Data object

ekyc_portal_html

String

4000

Base 64 Encrypted EKYC Portal Html content

 

Lookup

API to be used to look up customer information by id type, id number and mobile number.

API

/api/v1_0/ras/lookup

Authorization

 Bearer Token

Method

POST

Headers

Content-Type:application/json

sender : <<sender_name>>
channel: <<channel_name>>

company: <<company_code>>

branch: <<branch_code>>

 

Payload

{
    "mobile_number": "+96864313460",
    "id_code": "15",
    "id": "225522319"
}


 

Response

{
    "status": "success",
    "status_code": 200,
    "data": {
        "customer_number": "5121121220000006",
        "first_name": "CHOCKY",
        "middle_name": "NAIR",
        "last_name": "DO",
        "mobile_number": "+96864313460",
        "email": "CHOCKY.96864313460@gmail.com",
        "customer_status": "ACTIVE",
        "aml_scan_status": "Accepted",
        "id_status" : "Active",
        "id_details": [
            {
                "id_code": "15",
                "id": "225522319",
                "valid_through": "2030-12-10"
            }
        ]
    }
}


Response (No customer found)

{
    "status": "failure",
    "status_code": 404,
    "error_code": 40100,
    "message": "Customer not found"
}

Response (Mobile number NOT matched)

{
    "status": "failure",
    "status_code": 404,
    "error_code": 40100,
    "message": "ID matched, but mobile number not matched"
}

Header

Name

Data Type

Max Length

Mandatory

Description

Content-Type

String

36

Yes

Content type

sender

String

60

Yes

Agent / Partner name.

channel

String

30

Yes

Ripple / Direct

company

String

6

Yes

Will be shared

branch

String

6

Yes

Will be shared

Ocp-Apim-Subscription-Key

String

32

Yes

Subscription key

Payload

Name

Data Type

Max Length

Mandatory

Description

mobile_number

String

20

Yes

Customer mobile no

id_code

String

3

Yes

Customer id type code

id

String

30

Yes

Customer id/Number

Response

Name

Data Type

Max Length

Name

Description

Name

Data Type

Max Length

Name

Description

status

String

255

Yes

status description

status_code

Int

 -

Yes

Status code

data

Object

-

Yes

Data object

customer_number

String

16

Yes

Customer unique identification number

first_name

String

255

Yes

Customer first name

middle_name

String

255

Yes

Customer middle name

last_name

String

255

Yes

Customer last name

mobile_number

String

20

Yes

Customer mobile no

email

String

30

Yes

Customer email

customer_status

String

20

Yes

Possible values : "ACTIVE", "KYC_PENDING", "INACTIVE", "BLOCKED", "DISABLED", "SUBSCRIPTION_PENDING"

aml_scan_status

String

20

Yes

Possible values : "Accepted" , "Under Investigation" , "Rejected", "Failed"

id_status

String

20

Yes

Possible values : "Active", "Expired"

id_details

Object

 

Yes

id details

id_code

String

3

Yes

Customer id type code

id

String

30

Yes

customer id/Number

valid_through

String

 

Yes

YYYY-MM-DD format

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous. You may want to Log In if you already have an account.