💳# 1 National Id

it will be your First step and you can chose to upload image or capture your id. you should start with front of Id then back following these APIs.

Upload Front Image

post
Authorizations
Body
imagestringRequired

This attribute is base64 front-side, back-side or passport image.

Responses
200

Success

application/json
post
/Onboarding/api/v1/onboarding/NationalIdKyc/UploadFrontImage
POST /Onboarding/api/v1/onboarding/NationalIdKyc/UploadFrontImage HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "image": "text"
}
{
  "isSuccess": true,
  "message": "text",
  "errorCode": "text",
  "customerData": {
    "customerId": "A9C3E5D7-4B2F-47AC-9D61-3F1B1A1E87C6",
    "idFrontScan": "XXXXXXXXXXXXXX(14 digits)",
    "idBackScan": "XXXXXXXXXXXXXX(14 digits)",
    "photo": "string path",
    "fullName": "text",
    "fullNameEn": "text",
    "firstName": "text",
    "firstNameEn": "text",
    "familyName": "text",
    "familyNameEn": "text",
    "address": "text",
    "state": "text",
    "birthdate": "2025-10-27T12:35:55.351Z",
    "idNumber": "text",
    "idNumberBack": "text",
    "documentNumber": "text",
    "documentTypeId": "text",
    "documentTypeCode": "text",
    "issueDate": "2025-10-27T12:35:55.351Z",
    "profession": "text",
    "maritalStatus": "text",
    "religion": "text",
    "gender": "text",
    "nationality": "text",
    "detectedAge": 1,
    "detectedGender": "text",
    "expirationDate": "2025-10-27T12:35:55.351Z"
  }
}

Upload Back Image

post
Authorizations
Body
imagestringRequired

This attribute is base64 front-side, back-side or passport image.

Responses
200

Success

application/json
post
/Onboarding/api/v1/onboarding/NationalIdKyc/UploadBackImage
POST /Onboarding/api/v1/onboarding/NationalIdKyc/UploadBackImage HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "image": "text"
}
{
  "isSuccess": true,
  "message": "text",
  "errorCode": "text",
  "customerData": {
    "customerId": "A9C3E5D7-4B2F-47AC-9D61-3F1B1A1E87C6",
    "idFrontScan": "XXXXXXXXXXXXXX(14 digits)",
    "idBackScan": "XXXXXXXXXXXXXX(14 digits)",
    "photo": "string path",
    "fullName": "text",
    "fullNameEn": "text",
    "firstName": "text",
    "firstNameEn": "text",
    "familyName": "text",
    "familyNameEn": "text",
    "address": "text",
    "state": "text",
    "birthdate": "2025-10-27T12:35:55.351Z",
    "idNumber": "text",
    "idNumberBack": "text",
    "documentNumber": "text",
    "documentTypeId": "text",
    "documentTypeCode": "text",
    "issueDate": "2025-10-27T12:35:55.351Z",
    "profession": "text",
    "maritalStatus": "text",
    "religion": "text",
    "gender": "text",
    "nationality": "text",
    "detectedAge": 1,
    "detectedGender": "text",
    "expirationDate": "2025-10-27T12:35:55.351Z"
  }
}

Approve front image

post
Authorizations
Body
fullNameEnstring | nullableOptional

Client english full name. Attribute is used when translation feature was enabled from admin panel configuration. If the english full name has no changes you can pass the same value of OCR translated result. It is mandatory if trasnslate feature was enabled.

Example: Ahmed Mohamed Ali
firstNameEnstring | nullableOptional

Client english first name. Attribute is used when translation feature was enabled from admin panel configuration. If the english first name has no changes you can pass the same value of OCR translated result. It is mandatory if trasnslate feature was enabled.

Example: Ahmed
familyNameEnstring | nullableOptional

Client english family name. Attribute is used when translation feature was enabled from admin panel configuration. If the english family name has no changes you can pass the same value of OCR translated result. It is mandatory if trasnslate feature was enabled.

Example: Mohamed Ali
fullNamestring | nullableOptional

Client english full name. Attribute is used when translation feature was enabled from admin panel configuration. If the english full name has no changes you can pass the same value of OCR translated result. It is mandatory if trasnslate feature was enabled.

Example: Ahmed Mohamed Ali
idNumberstring | nullableOptional

Client National Id Number and it contains from 14 digit.

Example: 29874532145698
documentNumberstring | nullableOptional

Client Factory Number that taken From National Id

Example: Gm2134524
addressstring | nullableOptional

Client Address From National Id

Example: 15 st elgnainy
statestring | nullableOptional

the second Part Of Address.

Example: hadaek el koba - Cairo
birthdatestring | nullableOptional

Client Date of Birth that took from National Id

Example: 19/09/1998
Responses
200

Success

application/json
Responseboolean
post
/Onboarding/api/v1/onboarding/NationalIdKyc/ApproveFrontImage
POST /Onboarding/api/v1/onboarding/NationalIdKyc/ApproveFrontImage HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 258

{
  "fullNameEn": "Ahmed Mohamed Ali",
  "firstNameEn": "Ahmed",
  "familyNameEn": "Mohamed Ali",
  "fullName": "Ahmed Mohamed Ali",
  "idNumber": "29874532145698",
  "documentNumber": "Gm2134524",
  "address": "15 st elgnainy",
  "state": "hadaek el koba - Cairo",
  "birthdate": "19/09/1998"
}
true

Approve Back Image

post
Authorizations
Responses
200

Success

application/json
Responseboolean
post
/Onboarding/api/v1/onboarding/NationalIdKyc/ApproveBackImage
POST /Onboarding/api/v1/onboarding/NationalIdKyc/ApproveBackImage HTTP/1.1
Host: 
Authorization: YOUR_API_KEY
Accept: */*
true

Last updated