Individual Module

The Individual Module provides a streamlined interface to interact with Know Your Customer (KYC) APIs, enabling you to create, update, and verify individuals during your platform’s onboarding process.

Quick Implementation

Initialize the Module
1// Create an instance of the Individual module
2const individual = oneSdk.individual();
3
4// Add required user consent
5individual.addConsent("general");

Core Methods

Use individual.access() to manage core user properties:

1const { setValue, getValue } = individual.access('name');
2
3// Example: Setting user name properties
4setValue({
5 givenName: 'Albert',
6 familyName: 'Einstein',
7 middleName: 'J',
8 displayName: 'Albert Einstein',
9});

Available properties:

PropertyDescription
addressesUser’s addresses
addressTypeRESIDENTIAL1 for primary address; RESIDENTIAL2 for additional address
buildingNameBuilding name
dateOfBirthUser’s date of birth
documentsIdentity documents
emailContact email address
entityIduser’s entityId (Note: there’s no setValue on this property)
longFormUser’s long form address
- Only fill this data if you do not have broken down address
- Make sure to fill out data.longForm along with `longForm
- The address will be broken down by FrankieOne system upon running checks
nameUser’s name information
phoneNumberContact phone number
postalPostal address
profileUser profile details
stateUser’s state
streetNameUser’s street name
streetNumberUser’s street number
streetTypeUser’s street type, for example, *Road, St., Ave, Circuit, and others
suburbUser’s suburb
unitNumberUser’s unit number

Document Management

1const document = {
2 documentId: "doc123",
3 idType: "PASSPORT",
4 country: "AUS",
5 idNumber: "P123456",
6 idExpiry: "2025-12-31"
7};
8
9individual.addDocument(document);
Identity Documents
  • PASSPORT
  • DRIVERS_LICENCE
  • NATIONAL_ID
  • MILITARY_ID
Proof Documents
  • UTILITY_BILL
  • BANK_STATEMENT
  • PROOF_OF_ADDRESS
  • TAX_STATEMENT

To read more about document types, go here.

Address Management

1individual.addAddress({
2 addressType: 'RESIDENTIAL',
3 buildingName: 'Noida',
4 country: 'AUS',
5 postalCode: '224400',
6 state: 'ACT',
7 streetName: 'Mock Street',
8 streetNumber: '123',
9 suburb: 'Mock suburb',
10 unitNumber: '1',
11});

Profile Management

1

Set Profile Type

1individual.setProfileType('standard_kyc');
Standard
  • standard_kyc
  • gov_id
  • safe_harbour
Enhanced
  • international
  • safe_harbour_plus
  • full
Specialized
  • under18
  • devicecheck
  • aml_only
2

Add Reference (Optional)

1individual.addReference("customer-id", "REF123");
3

Set Contact Information

1individual.setPhoneNumber("+61412345678");
2individual.setEmail("user@example.com");
4

Submit Profile

1await individual.submit();

Add Extra KVP

If you want to set an additional KVPs to an entity, you can use .setExtraData Read more about KVP here. .setExtraData accepts an object with key of string and value of string

Setting up KVPs
1individual.setExtraData({
2 key: 'value',
3 extraInformation: 'foo-bar'
4})
Best Practice

Always validate required fields and ensure user consent is captured before submitting the profile.

Built with