Gatenox

Apply to the Gatenox Beta now (limited slots only)!

API documentation

Introduction

The implementation guides below will assist you with integrating Gatenox services within your products. The
guides presents how to setup and use Gatenox to:

  1. Register clients using Gatenox application and user’s identity stored in mobile application.
  2. Login to your portal using Gatenox mobile application as a user authenticator.

If you have any questions regarding our implementation guides, please contact support@gatenox.com.

Registration with Gatenox

Requirements
To integrate with process partner is required to:

  1. Contact support@gatenox.com to provide partner’s id.
  2. Generate and provide public_key. The key will be used to encrypt data send by mobile application user.

Process flow
The following sequence diagram show registration steps during registration process.

xRegistration flow 2

Flow description
In order to begin registration procedure you are required to upload public_key via API call. Registration
process itself comes down to exchange of user personal data through secure channel. It is your responsibility
to specify:

  • what data are required by your process,
  • where aforementioned data should be routed to by Gatenox BE system.

To do so, you will issue API call(s) providing adequate information in the form of JSON object, eg.:

POST http://{{ gatenox-be }}/partner/register
Content-Type: application/json


{
“data”: “name,selfie,passport”,
“address”: “http://{{ partner-be }}/register”
}


where:

  • data – comma-separated values specifying data required (full list of supported data types can be found
    below),
  • address – URL of your choice where requested data should be sent to.

During actual registration process, after user consent, data will be posted at provided address as multipart
/form-data where each subpart contains portion of user’s identity. Subparts can be distinguished by
examining form’s name value, which will relate to data type from 
identity pieces table.

Finally, data can be decrypted using your private_key corresponding to public_key provided during
integration process. Upon successful completion, user_id wrapped in JSON object needs to be returned to
Gatenox BE system
.

How to prepare QR code for registration process?

QR code presented to the Gatenox mobile user allowing him to register using Gatenox must contain the
following data:

  1. information about service to be used: http://lgy.85d.myftpupload.com/register
  2. mark: ?
  3. your partner_id: partner_id={value}
  4. mark &
  5. information about session_id: session_id={value}
  6. mark &
  7. information about data types required by your portal data_types={values separated by comma}

The complete URL, which should be encoded in QR code is: http://lgy.85d.myftpupload.com/register?partner_id={value} &session_id={value}&data_types={values_separated_by_comma}

 

Here you can find example of QR generated based on the following data:

  • partner_ID=PartnerX
  • session_id=47f18b-60b4-835-1574-5de5f66e86
  • data_types=name,surname,date_of_birth,nationality,passport

Result: http://lgy.85d.myftpupload.com/register?partner_id=PartnerX&session_id=47f18b-60b4-835-1574-
5de5f66e86&data_types=name,surname,date_of_birth,
nationality,passport

xRegster 1.png.pagespeed.ic .rac9heuErX

Supported identity pieces:

Personal data:

The following pieces of user’s identity are available to obtain by the partner in Gatenox:

  • first_name
  • last_name
  • date_of_birth
  • nationality
  • email
  • phone_number

ID documents:

  • passport
  • passport_selfie
  • id_card
  • id_card_selfie
  • driving_licence_front
  • driving_licence_back
  • driving_licence_selfie
  • residence_permit_front
  • residence_permit_back
  • residence_permit_selfie

Address data:

  • address_part_1
  • address_part_2
  • province_state
  • zip_code
  • country
  • proof_of_address

Login with Gatenox

Requirements

To integrate with process partner is required to:

  • use public_key for partner login data encryption (same as for registration).
  • implement registration process with own portal / backend.

Process flow

The following sequence diagram show registration steps during registration process.

Flow description

To integrate with login procedure the only piece of information Gatenox BE system requires is address where
encrypted login data (user_id, session_id) should be routed to. To register such address following API has
been provided:

POST http://{{ gatenox-be }}/partner/login
Content-Type: application/json

{
“address”: “http://{{ partner-be }}/login”
}

During actual login process, data (decrypted using your private_key corresponding to public_key provided
during integration process) will be posted at provided address. Upon successful decryption and validation, HTT
P 204 No Content needs to be returned to Gatenox BE system.

How to prepare QR code for login process?

QR code presented to the Gatenox mobile user allowing him to login using Gatenox must contain the
following data:

  1. information about service to be used: http://lgy.85d.myftpupload.com/login
  2. mark: ?
  3. your partner_id: partner_id={value}
  4. mark &
  5. information about session_id: session_id={value}

The complete URL, which should be encoded in QR code is: http://lgy.85d.myftpupload.com/login?partner_id={value}
&session_id={value}

Here you can find example of QR generated based on the following data:

  • partner_ID=PartnerX
  • session_id=c1fccd-1e48-7825-1611-80300a5023

Result:
http://lgy.85d.myftpupload.com/register?partner_id=PartnerX&session_id=c1fccd-1e48-7825-1611-80300a5023