Developer Centre
Platform LoginStatus
  • Getting started
    • Integration types
    • Generating an authentication token
    • Using basic authentication
  • Applicants
    • Creating an applicant
    • Generating a verification link
    • Uploading documents to an applicant
      • Supported Documents and Types
    • Requesting to start the verification process
  • Applicant Results
    • Retrieving applicant verification results
      • Understanding applicant rejection labels
      • Setting up a webhook
    • Downloading verified documents
  • Entities
    • Check types and coverage
    • Creating an entity
    • Generating a verification link
    • Uploading documents to an entity
      • Supported Documents and Types
    • Linking a UBO to an entity
    • Requesting to start the verification process
  • Entity Results
    • Retrieving entity verification results
      • Understanding entity rejection labels
      • Setting up a webhook
    • Retrieving entity ownership structures
    • Retrieving entity questionnaire answers
  • Anti-Money Laundering
    • Retrieving AML results
  • Database Verification
    • Applicants
      • Verifying applicant identity data
    • Entities
      • Verifying entity information
  • Pages
    • Overview
    • Creating a Page
    • Verifying with Pages
  • Domain Names
    • Overview
    • Linking your domain
  • Flow Logic
    • Overview
  • Workspaces
    • Switching Workspaces
  • Modules
Powered by GitBook
On this page

Was this helpful?

  1. Database Verification
  2. Applicants

Verifying applicant identity data

Verify identity data against government and commercial data sources.

With database verification, you only need to use this endpoint. Applicants are created and submitted for processing automatically. A lot of the data below is optional, but the match accuracy is increased when more data is provided.

Make sure you pass the correct sourceCountry when calling this endpoint. This tells us the relevant data sources to check within the country.


Verify identity data

POST /api-database-verification

Create the applicant, match and verify the identity data, and request verification.

Name
Value

Content-Type

multipart/form-data

Authorization

Bearer YOUR_TOKEN

Body

Name
Type
Description

flowName

string

The name of the flow your Account Manager has provided

(required)

email

string

The applicant's email address (optional)

phone

string

The applicant's phone number (optional)

firstName

string

The applicant's first name (required)

middleName

string

The applicant's middle name (optional)

lastName

string

The applicant's last name (required)

dob

string

The applicant's date of birth, formatted as YYYY-MM-DD (optional)

idNumber

string

The applicant's document number (optional)

sourceCountry

string

The applicant's country, used to check relevant sources, formatted in alpha-3 (required)

street

string

The applicant's street number and name (optional)

city

string

The applicant's town or city (optional)

stateTerritory

string

The applicant's state or territory (optional)

postCode

string

The applicant's postcode (optional)

country

string

The applicant's address country,

formatted in alpha-3 (optional)

Request

curl --location 'https://enterprise.personr.co/api/1.1/wf/api-database-verification' \
--form 'flowName="Database Verification"' \
--form 'email="example@personr.co"' \
--form 'phone="0400000000"' \
--form 'firstName="SIMONE"' \
--form 'middleName="LEE"' \
--form 'lastName="HARDING"' \
--form 'dob="1985-10-27"' \
--form 'idNumber="1234567A"' \
--form 'sourceCountry="AUS"' \
--form 'street="123 EXAMPLE LANE"' \
--form 'city="PERTH"' \
--form 'stateTerritory="WESTERN AUSTRALIA"'
--form 'postCode="6000"' \
--form 'country="AUS"'
var axios = require('axios');
var FormData = require('form-data');
var data = new FormData();

data.append('flowName', 'Database Verification');
data.append('email', 'example@personr.co');
data.append('phone', '0400000000');
data.append('firstName', 'SIMONE');
data.append('middleName', 'LEE');
data.append('lastName', 'HARDING');
data.append('dob', '1985-10-27');
data.append('idNumber', '1234567A');
data.append('sourceCountry', 'AUS');
data.append('street', '123 EXAMPLE LANE');
data.append('city', 'PERTH');
data.append('stateTerritory', 'WESTERN AUSTRALIA');
data.append('postCode', '6000');
data.append('country', 'AUS');

var config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://enterprise.personr.co/api/1.1/wf/api-database-verification',
  headers: { 
    ...data.getHeaders()
  },
  data : data
};

axios(config)
.then(function (response) {
  console.log(JSON.stringify(response.data));
})
.catch(function (error) {
  console.log(error);
});
var form = new FormData();
form.append('flowName', 'Database Verification');
form.append('email', 'example@personr.co');
form.append('phone', '0400000000');
form.append('firstName', 'SIMONE');
form.append('middleName', 'LEE');
form.append('lastName', 'HARDING');
form.append('dob', '1985-10-27');
form.append('idNumber', '1234567A');
form.append('sourceCountry', 'AUS');
form.append('street', '123 EXAMPLE LANE');
form.append('city', 'PERTH');
form.append('stateTerritory', 'WESTERN AUSTRALIA');
form.append('postCode', '6000');
form.append('country', 'AUS');

var settings = {
  "url": "https://enterprise.personr.co/api/1.1/wf/api-database-verification",
  "method": "POST",
  "timeout": 0,
  "processData": false,
  "mimeType": "multipart/form-data",
  "contentType": false,
  "data": form
};

$.ajax(settings).done(function (response) {
  console.log(response);
}).fail(function (error) {
  console.error(error);
});
require "uri"
require "net/http"

url = URI("https://enterprise.personr.co/api/1.1/wf/api-database-verification")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Post.new(url)
form_data = [
  ['flowName', 'Database Verification'],
  ['email', 'example@personr.co'],
  ['phone', '0400000000'],
  ['firstName', 'SIMONE'],
  ['middleName', 'LEE'],
  ['lastName', 'HARDING'],
  ['dob', '1985-10-27'],
  ['idNumber', '1234567A'],
  ['sourceCountry', 'AUS'],
  ['street', '123 EXAMPLE LANE'],
  ['city', 'PERTH'],
  ['stateTerritory', 'WESTERN AUSTRALIA'],
  ['postCode', '6000'],
  ['country', 'AUS']
]
request.set_form form_data, 'multipart/form-data'

response = https.request(request)
puts response.read_body
import requests

url = "https://enterprise.personr.co/api/1.1/wf/api-database-verification"

payload = {
    'flowName': 'Database Verification',
    'email': 'example@personr.co',
    'phone': '0400000000',
    'firstName': 'SIMONE',
    'middleName': 'LEE',
    'lastName': 'HARDING',
    'dob': '1985-10-27',
    'idNumber': '1234567A',
    'sourceCountry': 'AUS',
    'street': '123 EXAMPLE LANE',
    'city': 'PERTH',
    'stateTerritory': 'WESTERN AUSTRALIA',
    'postCode': '6000',
    'country': 'AUS'
}

response = requests.post(url, data=payload)

print(response.text)

Response

{
    "status": "success",
    "response": {
        "applicantId": "4242424242424242x42424242424242",
        "flow": "Database Verification",
        "status": "Pending"
    }
}
{
    "statusCode": 400,
    "message": "Error: incorrect flowName provided"
}
PreviousApplicantsNextEntities

Last updated 10 months ago

Was this helpful?

Use ISO 3166-1 A3 format for sourceCountry and country. See for country codes.

here