HR import CSV file available fields
  • 12 Jan 2023
  • 11 minutes to read

HR import CSV file available fields


This page covers the values you can add to your CSV files for HR import. For guidance on configuring the CSV upload settings on your Totara site, please see the HR import CSV site settings page. 

CSV source file format

Comma-separated values (CSV) files store tabular data in plain text. Each line of the file is a data record. Each record consists of one or more fields, separated by commas (or other characters).

It's possible to save files in the CSV format using all major spreadsheet applications and text editors. You may have to take care when using double-quote characters ("), so refer to your application manual if there is any doubt.

For text values that include anything other than letters or numbers (special characters), the value should be within double-quotes. If the value itself contains double quotes, an additional double quote should be added in front of each, e.g.:

Desired textInput to CSV file
There are "quotes" within this value."There are ""quotes"" within this value"
If you are updating existing information and leaving any fields blank then you may want to check that Empty string behaviour in CSV is not set to Empty strings erase existing data.

Competencies

The aggregationmethod field can only be used in Totara Learn-only sites. The assignavailability field can only be used in sites that use both Totara Learn and Perform. In Totara Perform achievement is determined either using migrated achievement from existing Totara Learn competencies that have been migrated or by the achievement paths set up in Totara Perform competencies. For Totara Perform there is a new setting in the competency admin screen called Non-admin assignment availability, which makes the competency available for direct assignment to a user via their competency profile (by either a user with permission to assign to themselves or another user who has permission to assign to them).
HeadingFormatNotes

idnumber

1-100 characters

Unique for each hierarchy item. This item ID must not match the ID of any competency items in other competency frameworks. If an item ID is shared between two items in different frameworks, the item may not be added, or the original idnumber may be moved to the framework used in the CSV file.

timemodified

Unix timestamp

Last time item detail changed. If a Unix timestamp is provided in the source file, the timemodified value must not be equal to the previously imported timemodified value or the item will not be updated. If left empty or set to 0, the record will be updated.

frameworkidnumber

1-100 characters

idnumber matching an existing hierarchy framework.

shortname

0-100 characters

This field can be empty. 

fullname

1-1000 characters

The competency name.

parentidnumber

0-100 characters

Matches the identifier field of another hierarchy item. Empty for the top level.

description

Up to 1000 characters

This field can be empty.

typeidnumber

0-100 characters

Matches the identifier of an existing item type.

deleted

0 or 1

Required when only competencies to create, update or delete are provided, otherwise not necessary. 0 means do nothing, and 1 means delete. No action is assumed if empty.

customfield_[shortname]
(optional)

Up to 1000 characters

Custom field data. Multiple columns are allowed, where the column heading matches the type's custom field shortname. If no match, nothing will be updated.

If the custom field type is Date format then the data in the field needs to match the format defined under Location > Location settings > CSV import date format.

aggregationmethod

1, 2 or 3

For Learn-only sites
For competencies in a Learn-only site, the aggregation method sets how the system will calculate the competency achievement.

  • 1 is the All aggregation method.
    • If the aggregation method is set to All then every child competency will have to be achieved for the parent competency to be declared achieved.
  • 2 is the Any aggregation method.
    • If the aggregation method is set to Any then only one of the child competencies needs to be met to successfully achieve the parent competency.
  • 3 is the Off aggregation method.
    • If the aggregation method is set to Off then automatic achievement will be deactivated for this competency (it may still be marked achieved manually).

assignavailability

0, 1, 2 or 3
none, self, other, any

For Learn + Perform sites 
Competency assignment is a new feature added for competencies in Totara Perform. Rather than using learning plans to assign competencies in Perform, administrators can assign using organisations, positions, and audiences. 

  • none or 0: No non-admin assignment of competencies, only administrators can assign this imported competency via Quick-access menu > Competencies > Create assignments
  • self or 1: Users can self-assign competency from their competency profile
  • other or 2: Users can assign competency to others e.g. a manager may assign to their team members

Please note that to assign competencies to another user the assigning user will require the Manage competency assignments permission.

Job assignment

See Configure HR Import sources to see how to add multiple job assignment fields in the HR import file.

For multiple job assignments, just put two (or more) lines in your CSV per user. The user fields need to be identical in both lines. The job assignment fields contain one job assignment per line. For example:

useridnumber,jobassignmentnumber,positionidnumber,manageridnumber
n123,jobid1,pos1,manager1
n123,jobid2,,manager2

HeadingFormatNotes

fullname (optional)

Up to 100 characters, space, ampersand, parentheses, forward slash

Job assignment title.

useridnumber

1-100 characters

The user's ID number.

timemodified

Unix timestamp

Last time item detail changed. If a Unix timestamp is provided in the source file, the timemodified value must not be equal to the previously imported timemodified value or the item will not be updated. If left empty or set to 0, the record will be updated.

deleted

0 or 1

Required when only job assignments to create, update or delete are provided, otherwise not necessary. 0 means do nothing, and 1 means delete. No action is assumed if empty.

idnumber

1-100 characters

Matches valid job assignment number. Null assumed if not provided.

To assign a user a manager, the user must have a job assignment. For example, if you want to assign a managerid of 1 to a useridnumber of 5, the manager needs to have a job assignment number in the file.

startdate (optional)

CSV import date format or Unix timestamp

Data in the field needs to match the format defined under Location > Location settings > CSV import date format.

enddate (optional)

CSV import date format or Unix timestamp

Data in the field needs to match the format defined under Location > Location settings > CSV import date format.

orgidnumber (optional)

1-100 characters

Matches valid organisation idnumber. Null assumed if not provided.

posidnumber (optional)

1-100 characters

Matches valid position idnumber. Null assumed if not provided.

appraiseridnumber (optional)

1-100 characters

Null or matches valid user idnumber. Null assumed if not provided.

manageridnumber (optional)

1-100 characters

Null or matches valid user idnumber. Null assumed if not provided.

managerjaidnumber (optional unless manageridnumber is enabled)

1-100 characters

The ID number for the specific job assignment involved in the manager relationship. 

Automatically required if manageridnumber is set to on and updateidnumbers is off (i.e. we're using more than just the first jobs). 

tempmanageridnumber (optional)

1-100 characters

Null or matches valid user idnumber. Null assumed if not provided.

tempmanagerexpirydate (optional unless tempmanageridnumber is enabled)

CSV import date format or Unix timestamp

Data in the field needs to match the format defined under Location > Location settings > CSV import date format.

tempmanagerjaidnumber (optional unless tempmanageridnumber is enabled)

1-100 characters

The ID number for the specific job assignment involved in the manager relationship. 

Automatically required if tempmanageridnumber is set to on and updateidnumbers is off (i.e. we're using more than just the first jobs). 

Organisations

HeadingFormatNotes

idnumber

1-100 characters

Unique for each hierarchy item. This item ID must not match the ID of any organisation items in other organisation frameworks. If an item ID is shared between two items in different frameworks, the item may not be added, or the original idnumber may be moved to the framework used in the CSV file.

timemodified

Unix timestamp

Last time item detail changed. If a Unix timestamp is provided in the source file, the timemodified value must not be equal to the previously imported timemodified value or the item will not be updated. If left empty or set to 0, the record will be updated.

frameworkidnumber

1-100 characters

idnumber matching an existing hierarchy framework.

shortname

0-100 characters

This field can be empty.

fullname

1-1000 characters

The organisation name.

parentidnumber

0-100 characters

Matches the identifier field of another hierarchy item. Empty for the top level.

description

Up to 1000 characters

This field can be empty.

typeidnumber

0-100 characters

Matches the identifier of an existing item type.

deleted

0 or 1

Required when only organisations to create, update or delete are provided, otherwise not necessary. 0 means do nothing, and 1 means delete. No action is assumed if empty.

customfield_[shortname]
(optional)

Up to 1000 characters

Custom field data. Multiple columns are allowed, where the column heading matches the type's custom field shortname. If no match, nothing will be updated.

If the custom field type is Date format then the data in the field needs to match the format defined under Location > Location settings > CSV import date format.

aggregationmethod

1, 2 or 3

Note: Competency source only.

  • 1 is the All aggregation method.
  • 2 is the Any aggregation method.
  • 3 is the Off aggregation method.

Positions

HeadingFormatNotes

idnumber

1-100 characters

Unique for each hierarchy item. This item ID must not match the ID of any position items in other position frameworks. If an item ID is shared between two items in different frameworks, the item may not be added, or the original idnumber may be moved to the framework used in the CSV file.

timemodified

Unix timestamp

Last time item detail changed. If a Unix timestamp is provided in the source file, the timemodified value must not be equal to the previously imported timemodified value or the item will not be updated. If left empty or set to 0, the record will be updated.

frameworkidnumber

1-100 characters

idnumber matching an existing hierarchy framework.

shortname

0-100 characters

This field can be empty.

fullname

1-1000 characters

The position name.

parentidnumber

0-100 characters

Matches the identifier field of another hierarchy item. Empty for the top level.

description

Up to 1000 characters

This field can be empty.

typeidnumber

0-100 characters

Matches the identifier of an existing item type.

deleted

0 or 1

Required when only positions to create, update or delete are provided, otherwise not necessary. 0 means do nothing, and 1 means delete. No action is assumed if empty.

customfield_[shortname]
(optional)

Up to 1000 characters

Custom field data. Multiple columns are allowed, where the column heading matches the type's custom field shortname. If no match, nothing will be updated.

If the custom field type is Date format then the data in the field needs to match the format defined under Location > Location settings > CSV import date format.

aggregationmethod

1, 2 or 3

Note: Competency source only

  • 1 is the All aggregation method.
  • 2 is the Any aggregation method.
  • 3 is the Off aggregation method.

Users

When the suspended field has a default value then erasing existing data in the field will mean the default value will be stored in the field.
OptionFormatNotes

idnumber

1-100 characters

Unique for all users and never changes for a given user. Use the value shown in the user's profile ID number optional field. Check the ID number value exists for existing users if you want to update existing users' profile fields.

username

1-100 characters

Unique for all users.

timemodified

Unix timestamp

Last time item detail changed. If a Unix timestamp is provided in the source file, the timemodified value must not be equal to the previously imported timemodified value or the item will not be updated. If left empty or set to 0, the record will be updated.

deleted

suspended

0 or 1

0 or 1

Required when only users to create, update or delete/suspend are provided, otherwise not necessary. 0 means do nothing, and 1 means delete/suspend. No action is assumed if empty. However, when an empty suspended field is included in the user source for new records and the Empty strings erase existing data option has been chosen, the added user gets the default value of Active. The erasing of the data doesn't mean there is no value in the field if the field has a default value.

firstname

1-100 characters

No leading or trailing space characters.

lastname

1-100 characters

No leading or trailing space characters.

firstnamephonetic (optional)

1-100 characters

No leading or trailing space characters.

lastnamephonetic (optional)

1-100 characters

No leading or trailing space characters.

middlename (optional)

1-100 characters

No leading or trailing space characters.

alternatename (optional)

1-100 characters

No leading or trailing space characters.

email

Valid email address, max 100 chars

Unique for each user.

emailstop

0 or 1

Disables non-essential system-generated email notifications. Note that this does not affect the welcome email for new or reactivated users.

country

2 character ISO 3116 country code (e.g. NZ for New Zealand)

-

city

120 characters

-

timezone (optional)

1-100 characters

A location-based time zone identifier, e.g. America/New_York, Europe/London, Asia/Singapore, etc. See http://us.php.net/manual/en/timezones.php for a list of all location-based time zones.

lang (optional)

1-30 characters

Two-char ISO 639-1 code or a specific language pack code (e.g. en_us for US English).

description (optional)

1-1000 characters

-

url (optional)

1-200 characters

-

institution (optional)

1-40 characters

-

department (optional)

1-30 characters

-

phone1 (optional)

1-20 characters

-

phone2 (optional)

1-20 characters

-

address (optional)

1-70 characters

-

tenantmember (optional)

The ID number of the tenant the user should be a member of.

Note that you can't include the same tenant ID for both the tenantmember and tenantparticipant columns, as a user can't be a member and participant in the same tenant.

tenantparticipant (optional)

The ID number of the tenant the user should be a participant in.

You can assign each user as a participant to multiple tenants using the tenantparticipant column to add a comma-separated list of tenant idnumbers.

Note that you can't include the same tenant ID for both the tenantmember and tenantparticipant columns, as a user can't be a member and participant in the same tenant.

auth (optional)

This is the list of default authentication types in Totara. Make sure the plugin is enabled before using. If using a custom authentication plugin then use the name of that plugin for this field.

Format:

Authentication type:

manual

Manual accounts

nologin

No login

email

Email-based self-registration

cas

CAS server (SSO)

db

External database

fc

FirstClass server

gauth

Google Openid Authentication

imap

IMAP server

ldap

LDAP server

mnet

MNet authentication

nntp

NNTP server

none

No authentication

pam

PAM (Pluggable Authentication Modules)

pop3

POP3 server

radius

RADIUS server

shibboleth

Shibboleth

webservice

Web services authentication

oauth2

OAuth 2

password (optional)

0-32 characters

If the password column is included and the CSV file has an empty password field (or if the password column is not included) then a welcome email is sent allowing the user to create their own password. Note that this only works when adding new users.

If you are adding a large number of new users without passwords please note that this will result in a large number of emails being sent.

customfield_[shortname] (optional)

1-1000 characters

Custom field data. Multiple columns allowed, where the column heading matches an existing user custom field shortname. If no match, nothing will be updated.

If the custom field type is Date format then the data in the field needs to match the format defined under Location > Location settings > CSV import date format.

Export

When exporting competencies, positions, organisations or goals, the behaviour of custom field types is as per the table below.

Hierarchy exports are available when viewing all competencies, positions, organisations or goals frameworks, or when viewing a specific framework.

Custom field typeExportImport

Checkbox

1 for checked, 0 for not checked.

Same as export.

Date/time

A timestamp.

Either a timestamp, or a date in a format given by the csvdateformat config setting.

File

The name of the file.

File custom fields cannot be imported.

Location

The address.

Same as export.

Menu

The text of the selected value.

Same as export.

Multi-select

Within quotes, a comma-separated list of the selected values.

Same as export.

Text area

The full value, including HTML tags.

Same as export.

Text input

The value itself.

Same as export.

URL

The URL itself. The display text or checkbox value for opening in a new window are not included.

Same as export.

© Copyright 2022 Totara Learning Solutions. All rights reserved.


Was this article helpful?

What's Next
Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.