Submit KYC
POSThttps://api.cleverhub.co/api/v2/contacts/submit_kyc
This API allows you to submit the necessary KYC documents for a specific contact. The KYC documents include the contact's identity proof (e.g., ID card, passport), a selfie, and relevant document images. You must provide the correct contact email
.
Request
- multipart/form-data
Body
The contact's email used for verification.
The type of identification document (e.g., passport, id_card).
Possible values: [passport
, id_card
, driving_license
]
The identification number on the document.
The name as shown on the identification document.
The issue date of the identification document in format 'yyyy-mm-dd'.
The expiry date of the identification document in format 'yyyy-mm-dd'.
The country that issued the identification document (ISO 3166-1 alpha-2).
The country of nationality of the contact (ISO 3166-1 alpha-2 code).
A selfie image of the contact for identity verification should be in JPEG
format.
The front side image of the identification document should be in JPEG
or PNG
format.
The back side image of the identification document should be in JPEG
or PNG
format.
webhook_notification object
Responses
- 200
- 400
- 401
- 422
KYC submission successful
- application/json
- Schema
- Example (auto)
- Example
Schema
{
"status": "string"
}
{
"status": "Ok"
}
Bad Request
Unauthorized
- application/json
- Schema
- Example (auto)
- Example
Schema
errors object
{
"errors": {
"code": "string",
"message": "string"
}
}
{
"errors": {
"code": "REQUIRE_LOGIN",
"message": "Not Authorised"
}
}
Unprocessable Entity
- application/json
- Schema
- Example (auto)
- Example
Schema
errors object
{
"errors": {
"message": "string"
}
}
{
"errors": {
"message": "Email can't be blank"
}
}
Callbacks
- POST KYCStatusChanged
POST{$request.body#/endpoint_url}
When the KYC status changes, Hello Clever will call the endpoint_url
provided in the Submit KYC request.
The call will be made using the HTTP POST method.
The notification will include detailed KYC information for the contact, including the updated status (pending, approved, failed), and other relevant details.
- application/json
Bodyrequired
Contact's email
Contact's first name
Contact's last name
The type of contact (e.g., individual or organization)
Possible values: [individual
, organization
]
individual
Contact date of birth format 'yyyy-mm-dd'
Contact's phone
+61-412345678
Contact registration number.
Contact's gender
Possible values: [male
, female
]
male
The primary name of an address's street.
Name of an address's city or town.
The address's postcode
The address's state / province / county.
ISO 3166-1 alpha-2 country code.
identity object
kyc_statuses object[]
Callbacks Responses
- 200
The merchant's server should return this code
Authorization: app-id
name: app-idtype: apiKeydescription: The app-id is registered and secured inside Hello Clever system and only required when client has initiated or in the middle of the transaction.in: header
name: secret-keytype: apiKeydescription: The secret-key is our client's secret of the source. Required if a publishable key is used to retrieve the source.in: header
- csharp
- curl
- dart
- go
- http
- java
- javascript
- kotlin
- c
- nodejs
- objective-c
- ocaml
- php
- powershell
- python
- r
- ruby
- rust
- shell
- swift
- HTTPCLIENT
- RESTSHARP
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://api.cleverhub.co/api/v2/contacts/submit_kyc");
request.Headers.Add("Accept", "application/json");
request.Headers.Add("app-id", "<app-id>");
request.Headers.Add("secret-key", "<app-id>");
var content = new StringContent(string.Empty);
content.Headers.ContentType = new MediaTypeHeaderValue("multipart/form-data");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());