On this page, you'll find what data Spencer needs in our CSV, how to input them, and some additional information, best practices, or questions asked by customers.


  1. What?
  2. How?
  3. Additional information
    1. Formatting
    2. Multilingual columns
    3. Required fields
    4. Best Practices/additional information


When your company doesn't have a centralized system or a system of record (SOR) or your system of record can't communicate with Spencer. We provide the option to use A CSV which you can:

  • Upload in the back-office
  • Sync through an SFTP

Spencer expects the following conditions when you complete a user in the CSV:

  • New users that should be created in the database
  • Updating information of users
  • Archiving users

Attached you'll find: 

  • A pdf with all the user fields that can be used in Spencer accompanied with information about those fields. 
  • A template CSV with some dummy content inserted (it is possible that not all fields are in there).


You can update the CSV as preferred, you can leave columns out or add them manually. 

important: When Spencer imports the CSV we expect column headers. 

Additional information


character set - UTF-8

Field delimiter - 

String delimiter - "

Multilingual columns

Below the fields that require a column per language

  • tags
  • contract_type
  • Departement
  • division
  • subdivision
  • job_title
  • domain
  • region
  • zone

Example is shown below

Required fields 

All fields that have a green checkmark ✅ in the pdf are the required fields for Spencer to process a user. This is the bare minimum:

  • external_id
  • first name
  • last name
  • authentication_type (method in the CSV)
  • authentication_id (if the method is company_account).This field expects the UPN value to identify the user in your SOR.
  • Alias (IF the method is username_passwor AND only a private phone number is provided)
  • *archived_at - Y-m-d H:i:s => 2021-01-01 14:40:34

* applicable when you want to archive a user 

To successfully login we need at least 1 of the following fields: 

  • Alias
  • Phone (business or private)
  • E-mail (business or private)

In Spencer, the user has the option to complete an Alias, mail, or phone number. With this information, we check if the user exists in our database and depending on the authentication_method we use the extenal_id to start login in the 

system of record fo the customer.

Best Practices/additional information

  • external_id - length 256 characters
  • Column headers - needs to be lower case.
  • Authentication Type- inside Spencer, we support 2 ways of authentication, depending on the preferred login you pick 1 of the values.  
    • username_password - an account inside spencer
    • company_accountthe account of the user exists in your system of record.
  • manager  - the value inserted is going to be the external_id 
  • default_site - requires the external_id of a site. it isn't possible to add multiple sites.
  • phone numbers- phone numbers should be formatted as follow
    • country code with (+)
    • all numbers without space
    • ex - +32488063309
  • tags - tags are being used to as additional information attached to the user. You can use tags to create specific userlists. a tag exists of the following:
    • ID : value - below some examples 
      • mkt:marketing
      • sexem:male
    • you can't give multiple values to an ID so no sexe:male and sexe:female or Gender:m or Gender:f
    • if you want to add multiple tags to a user you can separate them with a , 
      • mkt:marketing,sexem:male
      • streetfood:Tony’s Street Food,mkt:marketing
    • The order of the tags should be the same for every language tab: 
      • OK tag 1,tag 2,tag 3
      • NOK - tag 2,tag 1,tag 3
  • country:  ISO 3166-1-alpha-2 -
  • preferred_language- is a combination (language-country) of the following ISO standards: 
  • Dates 
    • YYYY-MM-DD
      • 2020-03-06