KYC

Verify phone verification code

This second step allow LinkCy to verify that the phone number and country code provided by the consumer is valid and he controls the SIM.

If the consumer does not provide a valid code, he will not get access to the KYC step which is also mandatory.

The SMS code is a 6-digits and valid for 10 minutes and the consumer has 5 attempts. Once the delay of the number of attempts is reached, you have to ask for another code by using: Send consumer verification code Endpoint here.

Note: You can simulate that step in a Sandbox environment. Code is always 123456.

SecurityLinkcy-Auth
Request
Request Body schema: application/json
Any of:

For Consumer.

consumerId
string <uuid>

The id of the verified consumer.

Mandatory if not authenticated as consumer.

code
required
string^[0-9]{6}$

The code received by the consumer.

In play environment code is always 123456.

Responses
204

Phone was successfully verified

400

Bad Request

401

Unauthorized

403

Forbidden

409
500

Internal Server Error

post/api/partner/verifications/phone/verify
Request samples
application/json
{
  • "consumerId": "9e675a24-20d6-4913-9836-f861cd23e89e",
  • "code": "string"
}
Response samples
application/json
{
  • "errorCode": "PERSON_ID_REQUIRED",
  • "status": 400,
  • "details": [
    ],
  • "error": "linkcy.bad.request",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Send phone verification code by sms

This Endpoint allows you to send a verification code to your user. This code is a 6-digit code. The code sent will have the following expeditor: “AUTHMSG” and the following content:

“Your partner name verification code is: 818101” The language used will be according to your user phone number country code.

If you want to personalize the brand name in the text, please contact your customer care.

SecurityLinkcy-Auth
Request
Request Body schema: application/json
Any of:

For Consumer.

consumerId
string <uuid>

Id of the consumer verifying.

Mandatory if not authenticated as consumer.

Responses
200

Message sent

400

Bad Request

401

Unauthorized

403

Forbidden

409
500

Internal Server Error

post/api/partner/verifications/phone/send
Request samples
application/json
{
  • "consumerId": "9e675a24-20d6-4913-9836-f861cd23e89e"
}
Response samples
application/json
{
  • "ttl": "PT10M"
}

Send an email verification link by email

This Endpoint allows you to send an email verification to your user. The user will receive a link by email in order to verify his current email.

SecurityLinkcy-Auth
Request
Request Body schema: application/json
Any of:

For Consumer.

consumerId
string <uuid>

Id of the consumer verifying its email (Will be ignored and deducted from current authenticated user if consumer).

emailSubject
string [ 0 .. 255 ] characters

Subject of the verification email, by default is '[{partnerName}] Please verify your email address'.

urlOnSuccess
string

Redirect url on email verified.

urlOnFailure
string

Redirect url on email verification failed.

Responses
200

Verification email sent

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

409
500

Internal Server Error

post/api/partner/verifications/email/send
Request samples
application/json
{
  • "consumerId": "9e675a24-20d6-4913-9836-f861cd23e89e",
  • "emailSubject": "[{partnerName}] Please verify your email",
  • "urlOnSuccess": "https://google.com",
  • "urlOnFailure": "https://google.com"
}
Response samples
application/json
{
  • "ttl": "PT48H"
}

List KYC applications

Fetch all KYC applications based on parameters. More options will be added in the near future.

SecurityLinkcy-Auth
Request
query Parameters
sortAttribute
string
Enum: "CREATION_DATE" "UPDATE_DATE"
personType
string
Enum: "CONSUMER" "CORPORATE_RELATED_PHYSICAL_PERSON"
personId
string <uuid>
kycStatus
string
Enum: "NOT_STARTED" "CREATED" "PROCESSING" "PENDING_REVIEW" "ABORTED" "VALIDATED" "DECLINED" "NOT_REQUIRED"
pageSize
integer <int32> [ 0 .. 100 ]
Default: 20

The size of the page to be returned.

page
integer <int32> >= 0
Default: 0

The page number.

sortDirection
string
Enum: "ASC" "DESC"
Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

409

Conflict

500

Internal Server Error

get/api/partner/kyc
Request samples
Response samples
application/json
{
  • "content": [
    ],
  • "totalElements": 1,
  • "page": 0,
  • "pageSize": 0
}

Create a KYC for a consumer or a corporate-related person

Physical users need to complete a due diligence (KYC), this step is mandatory to be able to use banking features. Due diligence is performed with the local language of your users.

Once the field "phoneValidated" is in "true" state, you will be able to request a KYC for you consumer by link or by SDK.

BY LINK:

The link is valid for 720H. Do not ask for multiple links, this can delay the onboarding of the consumer and trigger security thresholds on our side.

By default, for performance reasons related to pictures, we oblige the consumer to do the KYC on a mobile phone, if you want to allow them to use the computer, please ask your consumer care.

For a fully embedded experience, we suggest you provide us with a success and a failure URL.

BY SDK:

We will provide you a SDK token valid for 24H that will allow one your user to perform its KYC via SDK. Do not hesitate to contact us for more information.

Note: We do not allow consumers to download pictures from the gallery.

SecurityLinkcy-Auth
Request
Request Body schema: application/json
Any of:
consumerId
string <uuid>

Id of the consumer doing the KYC (Will be ignored and deducted from current authenticated user if consumer).

required
object

Configure the access type of the KYC.

Responses
201

KYC successfully created

400

Bad Request

401

Unauthorized

403

Forbidden

409
500

Internal Server Error

post/api/partner/kyc
Request samples
application/json
{}
Response samples
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "token": "string",
  • "kycApiUrl": "string",
  • "flowName": "string",
  • "ttl": "string"
}