API Reference
Search…
Proof of Address Check

Run a proof of address check

To run a Proof of Address Check, you must create a check with type set to proof_of_address_check.
This check can only be performed on a client of type person. Furthermore, the documentId provided must have associated image attachments that adhere to our image specifications.
We will use the front side of the document for the Proof of Address Check.

Proof of address check request

Attribute
Type
Description
clientId
string
The ID of the client associated with this check. (Required)
type
string
This must be set to proof_of_address_check. (Required)
documentId
string
The ID of the document. (Required)

Example request

cURL
Node.js
Python
PHP
.NET
1
curl -X POST https://api.complycube.com/v1/checks \
2
-H 'Authorization: <YOUR_API_KEY>' \
3
-H 'Content-Type: application/json' \
4
-d '{
5
"clientId":"CLIENT_ID",
6
"documentId":"DOCUMENT_ID",
7
"type": "proof_of_address_check"
8
}'
Copied!
1
const check = await complycube.check.create("CLIENT_ID", {
2
documentId: "DOCUMENT_ID",
3
type: "proof_of_address_check"
4
});
Copied!
1
check = cc_api.check.create('CLIENT_ID',
2
'proof_of_address_check',
3
documentId='DOCUMENT_ID')
Copied!
1
$result = $ccapi->checks()->create('CLIENT_ID',
2
['type' => 'proof_of_address_check',
3
'documentId' => 'DOCUMENT_ID',
4
'addressId' => 'ADDRESS_ID']);
Copied!
1
var checkRequest = new CheckRequest
2
{
3
clientId = "CLIENT_ID",
4
documentId = "DOCUMENT_ID",
5
addressId = "ADDRESS_ID",
6
type = "proof_of_address_check"
7
};
8
9
var check = await checkApi.CreateAsync(checkRequest);
Copied!

Result object

The result object is only returned when the status of the check is complete . It has two components - outcome and breakdown.

Outcome

The outcome attribute represents the overall check result. Returned values include:
  1. 1.
    clear: Indicates every analysis conducted returned a successful result, and hence the proof of address document is valid.
  2. 2.
    attention: Indicates at least one of the analysis results requires attention.

Breakdown

The breakdown comprises the following objects:

extractedData object

The data extracted using Optical Character Recognition (OCR). It has the following constituents:
  • documentDetails: Data relating to the document.
    • documentType: The detected document type. Values include:
      • bank_statement
      • driving_license
      • utility_bill
      • tax_document
    • issuer: The document issuing vendor.
    • issuingDate: The issuing date of the document. This will be a structured date.
  • holderDetails : Data relating to the document holder.
    • entityName: The full extracted name of the document holder.
  • addressDetails : Data relating to the extracted address.
    • addressLine: The extracted address line as a string.
    • addressCountry: The address country. This will be the two-letter country ISO code.
    • address: This will be the structured address, which includes the following:
      • propertyNumber: The property number.
      • building: The building name.
      • line: The address line.
      • city: The address city.
      • state: The address state.
      • postalCode: The address postal code.
      • country: The address country. This will be the two-letter country ISO code.
      • latLong: The address latitude and longitude geographic coordinates.

Analysis

For each conducted analysis, the returned values include:
  1. 1.
    clear: Indicates the analysis returned a successful result.
  2. 2.
    attention: Indicates a potential falsified or fraudulent document.
  3. 3.
    not_processed: Returned when ComplyCube is not able to process the document. This can occur due to a number of reasons, including:
    • The document image is invalid
    • The document image is of poor quality and therefor unreadable

clientValidation object

The client validation results. It has the following constituents::
  • firstName: Indicates whether the client provided first name matches the extracted entity name.
  • lastName: Indicates whether the client provided last name matches the extracted entity name.
  • address: Indicates whether any of the client provided addresses match the extracted address.

contentAnalysis object

The content analysis results. It has the following constituents:
  • documentAge: Indicates the document had expired (when it's a Driving License) or is older than 3 months when it's a Bank Statement, Utility Bill, or Tax Document.

geolocationAnalysis object

The geolocation analysis results. It has the following constituents:
  • ipInAddressCountry: Indicates the geolocation of the client IP address resides in the extracted address country.
  • ipProximityToAddress: Indicates the geolocation of the client IP address is within a reasonable distance from the extracted address country.

Sample Response

1
{
2
"id": "614cfa9460fe4700098f3af9",
3
"entityName": "John Doe",
4
"type": "proof_of_address_check",
5
"clientId": "5e94b75d01bce00008c86f02",
6
"documentId": "6149f415cb31190008991526",
7
"status": "complete",
8
"result": {
9
"outcome": "clear",
10
"breakdown": {
11
"extractedData": {
12
"holderDetails": {
13
"entityName": "John Doe"
14
},
15
"documentDetails": {
16
"documentType": "bank_statement",
17
"issuer": "Barclays Bank",
18
"issuingDate": {
19
"day": 25,
20
"month": 1,
21
"year": 2021
22
}
23
},
24
"addressDetails": {
25
"address": {
26
"propertyNumber": "323",
27
"line": "Common street",
28
"city": "Aldgate",
29
"state": "London",
30
"postalCode": "W99 0RD",
31
"country": "GB",
32
"latLong": "51.5136,-0.077188"
33
},
34
"addressLine": "323 Common Street Aldgate London W99 0RD",
35
"addressCountry": "GB"
36
}
37
},
38
"clientValidation": {
39
"firstName": "clear",
40
"lastName": "clear",
41
"address": "clear"
42
},
43
"contentAnalysis": {
44
"documentAge": "clear"
45
},
46
"geoLocationAnalysis": {
47
"ipInAddressCountry": "clear",
48
"ipProximityToAddress": "clear"
49
}
50
}
51
},
52
"createdAt": "2021-04-04T17:25:21.116Z",
53
"updatedAt": "2021-04-04T17:25:33.116Z"
54
}
Copied!