Select your platform and then browse by platform category

Who are you and what section are you in?

Add a contractor on Payroll classic

You can add a contractor to your Payroll classic platform with the help of the simplified employee wizard. You can also add them by importing them via a CSV or an Excel file.

Getting started

Before you can add a contractor to your business, you first need to enable contractor management on your Payroll classic platform.

Enable contractor management

  1. Click the Business menu.
  2. Click the Payroll Settings submenu.
  3. Under Advanced, click Advanced Settings.
  4. Tick the Enable contractor management checkbox. 
    screenshot of Advanced settings page, highlighting Enable contractor management checkbox

Add a contractor via the employee wizard

Step 1: Enter the contractor's personal details

Once you have enabled the contractor management function, when you add a new employee, you can specify if they are an independent contractor.

  1. Click the Employee menu.
  2. Click the Add a New Employee submenu.
    screenshot of Employee submenu, highlighting Add a New Employee button
  3. Enter their personal information:

    • Title - Optional.
    • First name.
    • Middle name.
    • Surname.
    • Date of birth.
    • Gender - This field will auto-populate with "Unspecified" and can be changed.
    • Make sure you tick the checkbox for Employee is working as an independent contractor receiving schedular payments.

    where you select that the employee is working as an independent
  contractor. The option is listed below the 'Date of Birth' and 'Gender' fields,
  as shown below

  4. Enter their contact information:
    • Residential Address Line 1 - Auto-complete suggestions may appear. If the suggestions are not adequate, please enter the address manually.
    • Residential City.
    • Email Address, if "Employee Notifications" = Email.
    • Mobile Phone, if "Employee Notifications" = SMS. Mobile number must have a maximum of 11 digits and start with a prefix of '02'.
    • Postal address if the same as residential address.
    • Employee Notifications - This dictates if and how the employee will be notified about pay slips, leave and expense requests, rostering, and other things. 
      • Select "None" if you do not want the contractor to receive notifications. 
      • If you choose "Manual," employees will not receive any notifications, but payroll will be able to view/download pay slips easily for 'manual notification' employees, so they can then print these pay slips only and issue them to those employees.
    • Self-service - This controls whether the employee will have access to their employee portal, where they can view their pay slips, apply for leave, action shift requests, and other things. If you select "Yes," the employee will be sent an email or SMS (depending on their notification setting) with instructions on how to set up their password and log into their portal.
  5. Click the Next button to proceed to Step 2, the Banking section.

Step 2: Enter the contractor's banking details

The second step of the wizard only contains the banking details because KiwiSaver does not apply to independent contractors. The contractor's banking details are required.

  1. Enter the following details:
    • Band details - Under this field heading, there is a dropdown with 3 options: Electronic (via a bank file), Manual deposit, or Cash/Cheque.
    • Account Name - This is auto-filled from the employee's name. You can manually edit this field if needed.
    • Account Number - This needs to be 15 or 16 digits, which consist of the bank code, account number, and suffix.
  2. Click the Next button to proceed to Step 3, the Employment Details section.

Step 3: Enter the contractor's employment details

This section is where you can configure the contractor's pay details, like their pay rate, pay schedule, and primary location.

  1. Enter the following:

    • Start Date - Required.
    • Primary Location - Required. This will be assigned as the employee's default location. If the employee will be working in more than one place, you can select multiple locations after completing the employee wizard. You can attach more than one location to an employee via the Locations screen within their employee details file. You can also create a new location from the Primary Location field by clicking on + Add New in the dropdown.
    • Pay Schedule - Required. The pay schedule can be Weekly, Fortnightly, Monthly, or Twice Monthly. You can set up your pay schedules via your business pay schedule settings, which will then appear in the Employee Wizard to select from.
    • Pay Rate - Required. If you are paying an employee an annual salary, ensure you enter the annual salary in the Pay Rate field. Then, change "per Hour" to "per Annum." This also goes for the per-day pay rate, where you need to change "per Hour" to "per Day."
    • Primary Pay Category - Required. Pay Categories are used to define the rates that employees are paid. Primary default pay category options are generally: Permanent Ordinary Hours, Casual Ordinary Hours, and a list of Leave pay categories. You can set up different pay categories based on your company's structure and requirements.
    • Leave Allowance Template - Optional. Leave allowance template defaulted to "No leave entitlement" for contractors.
    • Leave Year Starts - This field will appear where you have selected a Leave Allowance Template that includes the "Based on employee's leave year setting" and if you are using the platform default leave allowance templates. Leave year start options are "Employee's start date" or "A specified date."
      • If you choose "A specified date," you need to pick the correct date to ensure accurate calculation of leave entitlements for the employee. If you are using the platform default leave allowance templates, select "A specified date," then enter the date 6 months after the employee's start date. This is so that Sick Leave and Domestic Violence Leave entitlements reflect in the employee's leave balance at the correct time.
    • Timesheets - Optional. Timesheet options are "Do not use timesheets" and "Use timesheets." If the employee is not required to submit timesheets to get paid and/or is paid their set number of hours by default, select "Do not use timesheets." This will activate the setting for the employee to be paid the number of hours set in their file by default in the pay run.
    • The employment type and ESCT Rate % have been removed as they are not required for independent contractors.

    screenshot of Add Employee page and its Employment details form

  2. Click the Next button to proceed the Step 4, the Tax Code declaration section.

Step 4: Enter the contractor's tax code declaration

  1. Enter the following:
    • IRD Number - Required. Enter ‌the employee's 9-digit IRD Number.
    • Tax Code - This is where you will enter the WT tax code.
    • Tax Rate - Required. Enter the tax rate the contractor has provided you with. This will be used to calculate the PAYE.
    • Date Signed - Optional. Enter the date the employee signed the Tax Code Declaration form in the Date Signed field.
  2. Click the Done button.
    screenshot of Add Employee page and its Tax code declaration form

At this stage, the basic payroll setup for the contractor is complete. The contractor can now be included in pay runs.

There are additional customisation options available once the employee has been added to the platform. Click on the <employee's name> Details button if additional configuration is required for the contractor, such as:

  • Configuring additional pay rates.
  • Configuring and adding leave allowances.
  • Adding additional locations.
  • Adding additional bank accounts.
  • Setting up deductions or adjustments.

Import a contractor via Excel / CSV

Import a contractor via a CSV or an XSLX file

As a side note, importing via these file types is also a quick way to perform bulk updates of employee data. 

To get started, you first need to export the CSV/XSLX template file:

  1. Click the Employee menu.
  2. Click Import Employees.
  3. Click the Export button.
    screenshot of Import Employees page, highlighting Export button.jpeg
  4. Click the down arrow, then choose Empty Template.
  5. Choose whether you want an XSLX or a CSV file. This file contains the column headers for the import. You simply need to add a row for each employee that you wish to import. 
  6. Make sure to save your file.

Please do not delete any of the columns in your XLSX/CSV file. If you delete or remove columns in your XLSX/CSV file and upload it into the platform, this will result in clearing some of your data on the platform too. This will lead to errors and affect your records and platform.

To import your filled-in and saved CSV/XSLX:

  1. Click the Employee menu.
  2. Click Import Employees.
  3. Click Import.
  4. Click the Select file button.
  5. Choose the file you filled in and saved.
  6. Click Upload File.
  7. Click Confirm Upload to begin the import. Once the process is complete, you will see a display saying the employee has been created.

Minimum required fields

To set up an employee to be processed in a pay run, the following fields are required as a minimum:

  • FirstName.
  • Surname.
  • DateOfBirth.
  • ResidentialStreetAddress.
  • ResidentialSuburb.
  • ResidentialState.
  • ResidentialPostCode.
  • PostalStreetAddress.
  • PostalSuburb.
  • PostalState.
  • PostalPostCode.
  • EmploymentType - Required to be set to "Independent Contactor" to configure the employee correctly.
  • StartDate.
  • PaySchedule.
  • PrimaryPayCategory.
  • PrimaryLocation.
  • PaySlipNotificationType.
  • Rate.
  • RateUnit.
  • HoursPerWeek.
  • BankAccount1_BSB.
  • BankAccount1_AccountNumber.
  • BankAccount1_AccountName.
  • BankAccount1_AllocatedPercentage.
  • TaxCodeDeclaration_IrdNumber.
  • KiwiSaver_EnrollmentStatus.
  • KiwiSaver_EmployeeContribution.
  • KiwiSaver_EmployerContribution.

Once an employee is set up in the platform, import files may contain a smaller subset of fields. However, the following must always be included in order to be able to identify the employee to update:

EITHER:

  • IRD Number.

OR:

  • First Name.
  • Surname.
  • Date of Birth.

File specification

There are quite a few fields in the file. However, they are broken into sections as shown below and not all sections need to be present. The most important field when adding a contractor is the Employment Type. This needs to be set to "Independent Contractor" to correctly configure the employee.

Core Data

Either the IRD Number or First Name+Surname+Date of birth must be present in the file to uniquely identify the employee.

Field Name Data Type Notes
EmployeeId Number

This should be kept blank unless you're updating an existing employee in the system. If this is the case, then use the system generated Employee ID. 

N.B. If an external Id is used that has been used before you won't be able to save it if the 'unique external Id' setting is switched on. This setting is located on the Payroll settings > Advanced settings page. See here for more information. 

Title Text Valid values: Mr, Mrs, Miss, Ms, Dr
PreferredName Text  
FirstName Text  
MiddleName Text  
Surname Text  
DateOfBirth Date  
Gender Text Valid values: Male, Female, Unspecified
ExternalId Text Can be the id of the employee used in an external system (eg: HR)
ResidentialStreetAddress Text  
ResidentialAddressLine2 Text  
ResidentialCity Text  
ResidentialRegion Text  
ResidentialPostCode Number  
ResidentialCountry Text This field is compulsory when ResidentialAddressIsManuallyEntered = True 
ResidentialAddressIsManuallyEntered Text Valid values: True, False
PostalStreetAddress Text  
PostalAddressLine2 Text  
PostalCity Text  
PostalRegion Text  
PostalPostCode Number  
PostalCountry Text This field is compulsory when PostalAddressIsManuallyEntered = True 
PostalAddressIsManuallyEntered Text Valid values: True, False
EmailAddress Text  
HomePhone Text

Landline phone numbers must contain 9 digits, including the area code. The area codes are:

-03: South Island and the Chatham Islands, including Christchurch, Dunedin, Invercargill, Nelson, Timaru, and Westport.
-04: Wellington region.
-06: Southern and eastern North Island, including Manawatu-Wanganui, Hawkes Bay, Taranaki, Gisborne, New Plymouth, and Palmerston North.
-07: Waikato, The Bay of Plenty, Hamilton, Rotorua, and Tauranga.
-09: Auckland, and the islands of the Hauraki Gulf, Howick, and Northland.


Mobile number must have a maximum of 11 digits and start with a prefix of '02'.

WorkPhone Text

Landline phone numbers must contain 9 digits, including the area code. The area codes are:

-03: South Island and the Chatham Islands, including Christchurch, Dunedin, Invercargill, Nelson, Timaru, and Westport.
-04: Wellington region.
-06: Southern and eastern North Island, including Manawatu-Wanganui, Hawkes Bay, Taranaki, Gisborne, New Plymouth, and Palmerston North.
-07: Waikato, The Bay of Plenty, Hamilton, Rotorua, and Tauranga.
-09: Auckland, and the islands of the Hauraki Gulf, Howick, and Northland.

Mobile number must have a maximum of 11 digits and start with a prefix of '02'.

MobilePhone Text Mobile number must have a maximum of 11 digits and start with a prefix of '02'.
StartDate Date  
EndDate Date Date employment was terminated (if employee has finalised their employment)
AnniversaryDate Date eg: the date the employee received their qualifications
Tags Text Pipe (‘|’) separated list of tags to associate with this employee

Pay Run Setup

Field Name Data Type Notes
EmploymentType Text

Independent Contractor should be selected for contractors. This field determines the KiwiSaver and Tax Code declaration settings.

Valid values for regular employees: Full Time, Part Time, Casual

PreviousSurname Text  
JobTitle Text  
PaySchedule Text Corresponds to the name of a Pay Schedule that you have already created. For example ‘Weekly’
PrimaryPayCategory Text Corresponds to the name of a Pay Category that you have already created. For example ‘Permanent Ordinary Hours’
PrimaryLocation Text Corresponds to the fully qualified name of a Location that you have already created. Refer below for details on Fully Qualified Locations.
PaySlipNotificationType Text Valid values: Email, SMS, Manual, None
Rate Number How much is the employee paid (may be specified as a ‘per hour’ or ‘per annum’ value)
RateUnit Text Valid values: Hourly, Annually, Daily
OverrideTemplateRate Text Valid values: True, False. Select True where an employee has been assigned a PayRateTemplate but you want to pay a different base rate of pay.
HoursPerWeek Number Standard number of hours per week for this employee
HoursPerDay Number Standard number of hours per day for this employee
AutomaticallyPayEmployee TrueFalse Determines whether the employee's “standard weekly hours” are automatically added as earnings lines to a new pay run
LeaveTemplate Text Name of the Leave Allowance Template to apply to this employee
PayRateTemplate Text Name of the Pay Rate Template to apply to this employee
PayConditionRuleSet Text Name of the pay condition rule set to assign to this employee
IsEnabledForTimesheets Text Valid values: Enabled, Disabled, EnabledForExceptions
WorkTypes Text Pipe (‘|’) separated list of work types to enable this employee to submit timesheets for

Emergency Contacts

Field Name Data Type Notes
EmergencyContact1_Name Text  
EmergencyContact1_Relationship Text  
EmergencyContact1_Address Text  
EmergencyContact1_ContactNumber Text  
EmergencyContact1_AlternateContactNumber Text  
EmergencyContact2_Name Text  
EmergencyContact2_Relationship Text  
EmergencyContact2_Address Text  
EmergencyContact2_ContactNumber Text  
EmergencyContact2_AlternateContactNumber Text  

Bank Accounts

  • Up to 3 bank accounts may be specified however only 1 is required.
  • Percentages across all bank accounts must total 100
  • Use an Allocated Percentage of 100 on only 1 of the bank accounts to indicate remaining balance. Note in this case percentages across all bank accounts will be greater than 100, and validation will pass if ONLY 1 bank account is allocated 100 percent
Field Name Data Type Notes
BankAccount1_BankCode Text  
BankAccount1_AccountNumber Text  
BankAccount1_AccountName Text  
BankAccount1_AllocatedPercentage Text Use 100 to nominate remaining balance
BankAccount1_FixedAmount Text Percentage or Fixed amount may be specified.
BankAccount2_BankCode Text  
BankAccount2_AccountNumber Text  
BankAccount2_AccountName Text  
BankAccount2_AllocatedPercentage Text Use 100 to nominate remaining balance
BankAccount2_FixedAmount Text Percentage or Fixed amount may be specified.
BankAccount3_BankCode Text  
BankAccount3_AccountNumber Text  
BankAccount3_AccountName Text  
BankAccount3_AllocatedPercentage Text Use 100 to nominate remaining balance
BankAccount3_FixedAmount Text Percentage or Fixed amount may be specified.

Rostering Notifications

Field Name Data Type Notes
RosteringNotificationChoices Text Valid values: Email, SMS, None

Employee Leave Year Setup

This section MUST be completed for any employee who has a leave category set up based on the employee leave year.

Field Name Data Type Notes
LeaveAccrualStartDateType Text Valid values: SpecifiedDate, EmployeeStartDate. If using system default leave allowance templates value should be 'SpecifiedDate'.
LeaveYearStart Date Keep blank unless LeaveAccrualStartDateType = SpecifiedDate. If using system default leave allowance templates value for SpecifiedDate should be 6 mths after the employee start date, ie employee start date is 10/10/18, value should be stated as 10/4/19.

KiwiSaver

Field Name Data Type Notes
KiwiSaver_EmployeeContribution Number

Not applicable for contractors, leave blank

Valid values for regular employees: 3, 4, 6, 8, 10

KiwiSaver_EmployerContribution Number

Not applicable for contractors, leave blank

Valid values for regular employees: 3 or greater

KiwiSaver_OptOutDate Date

Not applicable for contractors.

Only needed for employees whose KiwiSaver_EnrollmentStatus = OptOut

KiwiSaver_LateOptOutReason Text

Not applicable for contractors.

Only needed for employees whose KiwiSaver_EnrollmentStatus = OptOut and whose KiwiSaver_OptOutDate is 57 days after the employee's start date.

Valid values when applicable: CRIT (ie did not meet the criteria to join KiwiSaver); ERIS (ie employer did not provide an investment statement for the employer chosen KiwiSaver scheme); EVNT (ie events outside of control meant the opt-out application was unable to be submitted within the 8 week time limit); INER (ie incorrectly enrolled under the age of 18); INFO (ie employer did not provide a KiwiSaver information pack within 7 days of starting employment); IRIS (ie IRD did not send an investment statement upon allocation to a default scheme); OTHR (ie other explanation).

KiwiSaver_LateOptOutReasonOtherExplanation Text

Not applicable for contractors.

Only needed for employees whose KiwiSaver_LateOptOutReason = OTHR.

KiwiSaver_SavingsSuspensionFromDate Date

Not applicable for contractors.

Only applicable for employees whose KiwiSaver_EnrollmentStatus = SavingsSuspension

KiwiSaver_SavingsSuspensionToDate Date

Not applicable for contractors.

Only applicable for employees whose KiwiSaver_EnrollmentStatus = SavingsSuspension

KiwiSaver_EnrollmentStatus Text

Value should be: Ineligible for contractors. If not provided, value will automatically be set where employment type is independent contractor.

Valid values for regular employees: SavingsSuspension; Enroll, Ineligible, OptIn, OptOut, Unenrolled

KiwiSaver_IneligibilityReason Text

Must be completed where KiwiSaver_EnrollmentStatus = Ineligible.

Value should be: Working as an independent contractor for contractors. If not provided, value will automatically be set where  employment type is independent contractor.

Valid values for regular employees: Not a citizen/permanent resident, Not normally living in New Zealand, Under 18 years of age

KiwiSaver_PreviouslyReported Text Valid values: True, False

Tax Declaration

Field Name Data Type Notes
TaxCodeDeclaration_IrdNumber Number Valid number containing no more than 9 numbers
TaxCodeDeclaration_TaxCode Text Valid Tax code - choose from the drop down
TaxCodeDeclaration_DateSigned Date  
TaxCodeDeclaration_EsctRate Number

Not applicable for contractors.

Value will be set to 0.00% where the KiwiSaver_EnrollmentStatus = Ineligible

Valid values for regular employees: 10.5, 17.5, 30, 33

TaxCodeDeclaration_SpecialTaxCode Text

Value should be: WT for contractors. 

Valid values for regular employees: M, ME, M SL, ME SL, S, SH, SB, S SL,SH SL, SB SL, ST, NSW, CAE, EDW, STC, ND

TaxCodeDeclaration_StudentLoanRate Number Not applicable for contractors, leave blank
TaxCodeDeclaration_SpecialTaxCodeRate Number Must be completed if 'TaxCodeDeclaration_SpecialTaxCode' contains a value
TaxCodeDeclaration_StudentLoanRateEndDate Date

Not applicable for contractors, leave blank

A date is only entered here if the employee is eligible for SDR

TaxCodeDeclaration_SpecialTaxCodeRateEndDate Date A date is optional to provide for contractors 
TaxCodeDeclaration_RegisteredForGST Text

Value only needed if employment type is independent contractor

Valid values: True, False

Was this article helpful?
0 out of 0 found this helpful