Data Transfer Format
Overview
A snapshot of people in an organisation can be exported as a CSV file. The first row of the file is a header row containing the column names and each subsequent row contains data for a person. The file is encoded in UTF-8 and uses a comma (,
) as the delimiter.
An export can either be a “full export” containing a row for every person in the account or a “partial export” containing a row for every person that has been added or updated since the last export.
The order of columns in the export file is not guaranteed — you must use the column names to identify each column. New columns may be introduced at any time.
Each column is explained in detail on this page and has been grouped into the following sections for ease of reference:
Metadata
System information about the person.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
id | uuid |
| No | Internal Worknice ID for this person. |
employee_code | string |
| Yes | An optional code used to identify this person. This will typically be an ID from an external payroll system. |
role | person_role |
| No | The role the person has in Worknice. |
status | person_status |
| No | The status of the person in Worknice. Typically, only people with an |
archived | boolean |
| No | If |
created_at | date_time |
| No | The moment when the person was created in Worknice. |
invited_at | date_time |
| Yes | When the person was invited to Worknice and their status was transitioned to |
activated_at | date_time |
| Yes | The moment when the person completed onboarding and their status was transitioned to |
updated_at | date_time |
| No | Most recent date that any part of this person's record was updated (this includes changes to bank accounts, current job etc). |
Profile
The person's profile information. This is information is visible to all members of the organisation.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
display_name | string |
| No | The name this person uses day-to-day. Should not be used for legal purposes. |
profile_bio | string |
| Yes | A self-written bio of the person. |
profile_email | string |
| Yes | The person's work email address. Visible to all members of the organisation. |
profile_phone | string |
| Yes | The person's work phone address. Visible to all members of the organisation. |
profile_pronouns | string |
| Yes | The person's preferred pronouns. Visible to all members of the organisation. |
Date of birth
The date of birth of this employee.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
date_of_birth | date |
| Yes | The person's date of birth. |
Full name
The full name of the employee used for legal purposes.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
given_name | string |
| Yes | The person's legal given name (a.k.a. "first name"). |
other_given_names | string |
| Yes | Any other given names the person has (a.k.a. "middle names"). |
family_name | string |
| Yes | The person's legal family name (a.k.a. "last name" or "surname"). |
Gender
The stated gender of this employee.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
gender | gender |
| No | The person's stated gender. |
Personal email
This employee's personal email address.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
personal_email | string |
| Yes | The person's personal email. |
Personal phone
This employee's personal phone number.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
personal_phone | string |
| Yes | The person's personal phone number. This could be either a mobile or landline phone. |
Residential Address
A residential address for this person.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
residential_address_line_1 | string |
| Yes | First line of the address that will typically include the street name and number. |
residential_address_line_2 | string |
| Yes | An optional second line for the address. |
residential_address_city | string |
| Yes | The city/suburb/town of the address. |
residential_address_state | state |
| Yes | If the address is in Australia this will be one of the Australian state/territory codes, otherwise this will be freeform text for the subdivision appropriate for the country. |
residential_address_postcode | string |
| Yes | If the address is in Australia this will be a 4-digit postcode, otherwise this should be an appropriate code for the country (such as a ZIP Code) or null if no code is appropriate. |
residential_address_country | country_name |
| Yes | The country of the address. |
Postal Address
The postal address for this person. If the person have not provided a postal address, this will be the same as their residential address.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
postal_address_line_1 | string |
| Yes | First line of the address that will typically include the street name and number. |
postal_address_line_2 | string |
| Yes | An optional second line for the address. |
postal_address_city | string |
| Yes | The city/suburb/town of the address. |
postal_address_state | state |
| Yes | If the address is in Australia this will be one of the Australian state/territory codes, otherwise this will be freeform text for the subdivision appropriate for the country. |
postal_address_postcode | string |
| Yes | If the address is in Australia this will be a 4-digit postcode, otherwise this should be an appropriate code for the country (such as a ZIP Code) or null if no code is appropriate. |
postal_address_country | country_name |
| Yes | The country of the address. |
Emergency Contacts
If an emergency contact is provided, all 3 fields for that contact will not be null.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
emergency_contact_1_name | string |
| Yes | The name of the emergency contact. May be either a full name or a given name. |
emergency_contact_1_relationship | string |
| Yes | A freeform description of the emergency contact's relationship to the person. |
emergency_contact_1_phone | string |
| Yes | A phone number for the emergency contact. |
emergency_contact_2_name | string |
| Yes | The name of the emergency contact. May be either a full name or a given name. |
emergency_contact_2_relationship | string |
| Yes | A freeform description of the emergency contact's relationship to the person. |
emergency_contact_2_phone | string |
| Yes | A phone number for the emergency contact. |
Tenure
Details about the person's pay.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
start_date | date |
| No | The date the person started working for the organisation. |
Remuneration
Details about the person's pay.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
employment_basis | employment_basis |
| Yes | The basis on which the person is employed for their current primary job. |
pay_rate | decimal |
| Yes | The rate of pay in the |
pay_period | pay_period |
| Yes | The period used for the |
Tax Details
Information required specifically for tax purposes.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
tax_file_number_exemption | tax_file_number_exemption |
| Yes | Either |
tax_file_number | tax_file_number |
| Yes | Present only if |
residency_status | residency_status |
| Yes | The person's residency status for tax purposes. |
has_loan_or_student_debt | boolean |
| Yes | Does the person have Higher Education Loan Program (HELP), VET Student Loan (VSL), Financial Supplement (FS), Student Start-up Loan (SSL) or Trade Support Loan (TSL) debt. |
tax_free_threshold_claimed | boolean |
| Yes | Whether the person is claiming the tax free threshold from this payer. |
Super Funds
Note: Worknice does not currently capture information for self-managed superannuation funds. If the super_nomination
is self_managed
the details for the self-managed fund will need to be gathered manually.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
super_fund_1_nomination | super_nomination |
| Yes | The person's superannuation nomination choice. |
super_fund_1_usi | string |
| Yes | The USI of the person's chosen super fund. This will only be included if the person has chosen |
super_fund_1_member_name | string |
| Yes | The name used for the person's superannuation membership. |
super_fund_1_member_number | string |
| Yes | The person's membership number as provided by the superannuation fund. |
Bank Accounts
The person's bank accounts to pay into. The allocation method fields are used as sentinels to indicate the presence of the other bank account fields. All other fields will be present for a bank account if the allocation method is not null (excluding the allocation field for the "remainder"
allocation method). Across the accounts there can be a mix of "fixed_amount"
, "per_long_hundred"
and "remainder"
allocation methods.
- If any account has the
"fixed_amount"
allocation method there will also be an account with the"remainder"
allocation method. - If there are no accounts with a
"fixed_amount"
allocation method and the total of the"per_long_hundred"
allocations does not equal120
, there will be an account with a"remainder"
allocation method. - There will never be more than 1 account with the
"remainder"
allocation method.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
bank_account_1_allocation_method | allocation_method |
| Yes | The method used to allocate the payment to this account.
|
bank_account_1_allocation | decimal |
| Yes | If the allocation method is |
bank_account_1_bsb | bsb |
| Yes | The BSB of the bank account. |
bank_account_1_name | string |
| Yes | The name of the bank account. |
bank_account_1_number | string |
| Yes | The number for the bank account as entered by the user (may include whitespace). |
bank_account_2_allocation_method | allocation_method |
| Yes | The method used to allocate the payment to this account.
|
bank_account_2_allocation | decimal |
| Yes | If the allocation method is |
bank_account_2_bsb | bsb |
| Yes | The BSB of the bank account. |
bank_account_2_name | string |
| Yes | The name of the bank account. |
bank_account_2_number | string |
| Yes | The number for the bank account as entered by the user (may include whitespace). |
bank_account_3_allocation_method | allocation_method |
| Yes | The method used to allocate the payment to this account.
|
bank_account_3_allocation | decimal |
| Yes | If the allocation method is |
bank_account_3_bsb | bsb |
| Yes | The BSB of the bank account. |
bank_account_3_name | string |
| Yes | The name of the bank account. |
bank_account_3_number | string |
| Yes | The number for the bank account as entered by the user (may include whitespace). |
bank_account_4_allocation_method | allocation_method |
| Yes | The method used to allocate the payment to this account.
|
bank_account_4_allocation | decimal |
| Yes | If the allocation method is |
bank_account_4_bsb | bsb |
| Yes | The BSB of the bank account. |
bank_account_4_name | string |
| Yes | The name of the bank account. |
bank_account_4_number | string |
| Yes | The number for the bank account as entered by the user (may include whitespace). |
bank_account_5_allocation_method | allocation_method |
| Yes | The method used to allocate the payment to this account.
|
bank_account_5_allocation | decimal |
| Yes | If the allocation method is |
bank_account_5_bsb | bsb |
| Yes | The BSB of the bank account. |
bank_account_5_name | string |
| Yes | The name of the bank account. |
bank_account_5_number | string |
| Yes | The number for the bank account as entered by the user (may include whitespace). |
Job/Position
Details about the current job and position held by the person. If the person has multiple positions their "primary" position will be used.
Column | Type | Examples | Nullable | Description |
---|---|---|---|---|
job_id | uuid |
| Yes | Internal Worknice ID for the person's primary job. |
job_title | string |
| Yes | Title of the person's primary job. |
position_id | uuid |
| Yes | Internal Worknice ID for the person's primary position. |
position_code | string |
| Yes | An optional code used to identify the person's primary position. |
manager_position_id | uuid |
| Yes | Internal Worknice ID for the position of the person's manager. A person might have a managing position that is not currently filled. In that case this value will be present, but the |
manager_person_id | uuid |
| Yes | Internal Worknice ID for the person's manager. A person might have a managing position that is not currently filled. In that case this value will be null, but the |