Free set up for all new subscriptions before Nov 30th 2023. Save $1,000. Book a demo now

KYC Integration Finder

Karbon Contact Fields — API & Form Integration Guide

How IdentityCheck works with Karbon Contact Fields — API & Form Integration Guide


This is the complete reference for Karbon contact fields available via the Karbon API. It covers every field you can read from or write to a Karbon contact record — including identity fields, address data, entity types, registration numbers (ABN, ACN, TFN), and accounting detail.

If you’re building an intake form, a client onboarding workflow, or an integration that creates or updates contacts in Karbon, this page tells you exactly what fields are available, what values they accept, and which ones are required.

IdentityCheck uses these fields to write verified identity data back to Karbon automatically when a client completes a KYC check — no re-keying, no manual reconciliation. If you’re evaluating how identity verification integrates with Karbon, get in touch or see our Karbon integration overview.

📌 Platform: Karbon
🗂 Topic: API fields reference
👤 For: Developers & Practice Managers
🕐 Last updated: March 2026

🔗 See it in action — sample IdentityCheck intake forms

These forms collect the identity and entity data that maps directly to the Karbon fields listed below. On submission, IdentityCheck writes the verified data back to the contact record automatically.

Required field
Optional field
Nested object / array

1. Top-Level Fields

FirstName and LastName are the only required fields when creating a new Karbon contact via the API. All other fields are optional and can be added on creation or updated later.

Field Type Description
FirstName* string The first name of the Contact

↳ Written by IdentityCheck from verified ID document
MiddleName string The middle name of the Contact
LastName* string The last name of the Contact

↳ Written by IdentityCheck from verified ID document
PreferredName string The preferred name of the Contact
Salutation string The title to address the Contact
Suffix string The suffix of the Contact
RestrictionLevel enum Privacy level for this Contact

Default: Public
PublicPrivateHidden
ClientOwner string Team member who looks after the client relationship. Use the UserKey or email of an existing team member.
ClientManager string Team member who manages the work. Use the UserKey or email of an existing team member.
ContactType string The Contact Type (must match an existing type from the TenantSettings endpoint)
UserDefinedIdentifier string A unique key for identifying this Contact in external systems
BusinessCards array[obj] Business cards — contact details, addresses, phone numbers. See section below.
EntityDescription object Contains a single Text field (string) — free-form info about the Contact
AccountingDetail object Identity, entity type, registration numbers and tax fields. See section below.
ClientTeam array[obj] Client team members. See section below.

2. BusinessCards array of objects

Business cards hold contact details — email addresses, phone numbers, addresses, and social links. A contact can have multiple business cards. Use IsPrimaryCard: true to designate the default.

Field Type Description
IsPrimaryCard boolean True if this is the primary business card for the entity
OrganizationKey string | null Links the Contact to an Organization. Always null for Organization cards.
WebSites array[string] Websites associated with this Business Card
EmailAddresses array[string] Email addresses for this Business Card

↳ Used by IdentityCheck to send the verification request
RoleOrTitle string | null Business role or title of the contact
FacebookLink string URL to the entity’s Facebook profile
LinkedInLink string URL to the entity’s LinkedIn profile
TwitterLink string URL to the entity’s Twitter/X profile
SkypeLink string URL to the entity’s Skype profile
Addresses array[obj] Addresses — see nested table below
PhoneNumbers array[obj] Phone numbers — see nested table below
Addresses

Field Type Description
AddressLines string Street address

Max 200 chars
City string City

Max 100 chars
StateProvinceCounty string State / Province / County

Max 100 chars
ZipCode string Postcode / Zip

Max 20 chars
CountryCode string Two-letter ISO country code (e.g. AU for Australia)
Label enum Address type

PhysicalMailingLegalHome
PhoneNumbers

Field Type Description
Number string The phone number

Max 20 chars
CountryCode string Phone country code (e.g. 61 for Australia)
Label enum Phone number type

WorkMobileOfficeFaxHomeOther

3. AccountingDetail object

AccountingDetail holds the identity and compliance-relevant data for a contact — date of birth, entity type, registration numbers (ABN, TFN, ACN), and tax fields. This is the section most relevant to KYC, AML, and client onboarding workflows in Australian accounting firms.

🔒 IdentityCheck writes to these fields automatically
Fields marked ↳ IdentityCheck are populated when a client completes a KYC check — no manual data entry needed. This includes name, date of birth, entity type, and registration numbers extracted from the verified ID document and intake form.
Field Type Description
ContactPermaKey string | null Karbon-generated key identifying a person Contact
OrganizationPermaKey string | null Karbon-generated key identifying a business/organization Contact
BirthDate datetime | null Date of birth (person contacts)

↳ Written by IdentityCheck from verified ID document
DeathDate datetime | null Date of death (person contacts)
Salutation enum | null Title

MrMrsMsMissDrProfRev
Sex enum | null Gender

MF
FinancialYearEndDay integer | null Day of month the fiscal year ends
FinancialYearEndMonth integer | null Month the fiscal year ends (0-indexed: Jan=0, Dec=11)
IncorporationDate datetime | null Date of incorporation (business/org contacts)
IncorporationState string | null State of incorporation
LegalName string | null Legal name of the contact

↳ Written by IdentityCheck from verified ID document
LineOfBusiness string | null Industry the contact is associated with
EntityType enum | null Entity type — used for AML risk assessment and KYB workflows

↳ Mapped by IdentityCheck from intake form submission
CorporationClub or SocietyEstate or TrustExempt OrganizationPartnershipPrivate FoundationS CorporationPersonSole ProprietorLimited LiabilityCharitable Incorporated OrganisationCompany Limited by GuaranteeCommunity Interest CompanyLimited Liability PartnershipLocal AuthorityNon Departmental Public BodyPension SchemeRoyal CharterUnincorporated AssociationOther/None
TaxCountryCode enum | null Country where the contact pays tax

AUUSUKNZCAZAHKFRSGIESEFIDKNOINCH
TradingName string | null Trading name (business/org contacts)
AnnualRevenue number | null Total annual revenue
BaseCurrency string | null 3-letter currency code (e.g. AUD)
GstBasis enum | null GST/BAS accounting method

CashAccrualsNoneClose
GstPeriod string | null GST period
IncomeTaxInstallmentPeriod enum | null Income tax installment period

MonthlyQuarterlyYearly
IsVATRegistered boolean | null Whether the entity is VAT registered
OrganizationValuation number | null Present value of the company
PaysTax boolean | null Whether the contact pays tax
PrepareGST boolean | null GST preparation flag
ProvisionalTaxBasic string | null Provisional tax (basic)
ProvisionalTaxRatio string | null Provisional tax (ratio)
RevenueModel enum | null Revenue model

AdvertisingCommissionE-CommerceFee for ServiceLicensingMarkupProductionSubscription
SalesTaxBasis enum | null Sales tax method

CashAccrualsNoneClose
SalesTaxPeriod string | null Sales tax period
Sells enum | null Primary supply type

ServicesProductsProducts and ServicesOther
DateSignedEngagement datetime | null Date the engagement letter was signed
Bank array[string] Banks the client uses
Payroll array[string] Payroll services the client uses
BillPay array[string] Bill payment services the client uses
Benefits array[string] Benefits services the client uses
Revenue array[string] Revenue management services the client uses
Expenses array[string] Expense management services the client uses
FileManagement array[string] File management services the client uses
Accounting array[string] Accounting tools the client uses
RegistrationNumbers array[obj] ABN, ACN, TFN and other registration numbers — see nested table below

↳ Written by IdentityCheck from intake form submission
LegalFirm object | null Legal firm representing the client. Contains Name (string) and optional OrganizationKey.
TaxProvider object | null Tax provider. Contains Name (string) and optional OrganizationKey.
Notes array[obj] Notes — see nested table below
RegistrationNumbers — ABN, ACN, TFN and more

Field Type Description
RegistrationNumber* string The registration number value

Max 50 chars
Type* enum Registration type. Australian firms typically use ABN, ACN, and TFN.

Australian Business Number (ABN)Australian Company Number (ACN)Tax File Number (TFN)SSNTax IDVAT NumberCompany Registration NumberPAYE Reference NumberUTRNZ Business NumberGST NumberIRD NumberBusiness NumberSINIncome Tax NumberCompany NumberBusiness Registration NumberCharity NumberGSTINPAN
Notes

Field Type Description
Body* string Free-form text content of the note
Type* enum Section of the contact record where the note appears

BasicTaxSystemOwnerOfficer

4. ClientTeam array of objects

Assigns team members to a contact in specific roles. Use MemberKey with the UserKey or email of an existing Karbon team member.

Field Type Description
MemberKey string Unique key of the user or team assigned to this role
MemberType enum Type of member

UserTeam
RoleType enum | null Role assigned (null if no specific role)

ClientOwnerClientManagerUserDefinedRole1UserDefinedRole2

Frequently asked questions

What Karbon contact fields does IdentityCheck write to automatically?

When a client completes a KYC verification through IdentityCheck, the following fields are written back to their Karbon contact record automatically: FirstName, LastName, BirthDate, LegalName, EmailAddresses, EntityType, and RegistrationNumbers (including ABN, ACN, and TFN where collected). No manual data entry is required.

Can I use Karbon intake form data to pre-populate IdentityCheck?

Yes. If your intake form collects data that maps to Karbon contact fields, IdentityCheck can read those fields from the contact record and use them to pre-populate the verification session — reducing friction for the client and avoiding duplicate data entry.

Which entity types does Karbon support for AML purposes?

Karbon’s EntityType field supports 20 values including Person, Sole Proprietor, Partnership, Corporation, Trust, and Limited Liability. For Australian AML compliance, the most commonly used are Person, Sole Proprietor, Partnership, Corporation, and Estate or Trust. IdentityCheck maps entity type from your intake form to the correct Karbon value automatically.

How do I store a client’s ABN or TFN in Karbon via the API?

Use the RegistrationNumbers array inside AccountingDetail. Each entry requires a RegistrationNumber (the value, max 50 chars) and a Type enum. Use “Australian Business Number (ABN)” or “Tax File Number (TFN)” as the exact string values. You can include multiple registration number types in a single contact record.

Does IdentityCheck integrate directly with Karbon?

Yes. IdentityCheck is embedded natively into Karbon. Your team can trigger a KYC verification, track its status, and view compliance results directly inside the Karbon contact record — no separate login, no extra tabs, no manual reconciliation. See the Karbon integration overview.

Try IdentityCheck free — no credit card required
KYC and AML verification embedded directly into Karbon, HubSpot, Xero and more.

Start free trial →

Questions about field mapping or building a custom workflow? Get in touch →

About Karbon Contact Fields — API & Form Integration Guide