The CSV Importer can be used to import different kinds of data into your Spektrix system. For example, you might want to bulk import data about Tickets, Customers, Donations, Memberships, Mailings, Events or Instances.
In this article, we’ll explain the key concepts associated with importing and how to prepare to make a CSV Import.
What are imports?
Data is held in your Spektrix system in the form of data tables. These data tables are accessed when you run a Customer List or Report, which retrieves data from your system.
Imports can be used to upload data into your system. Once the data is uploaded, it is held in your system and you can view it or extract it alongside your existing data.
The different types of data that can be imported are:
- Tickets
- Customers
- Donations
- Memberships
- Mailings
- Events
- Instances
TIP: The items you import can be included as chargeable sales as per your agreement with Spektrix.
How is data stored in Spektrix?
To understand more about importing data into Spektrix, it’s first important to know how data is stored in the system.
The data in your system is stored in a database, which is a collection of tables. Each table consists of rows, columns and fields.
- Each table holds data about a certain item. For example, the Customer table only contains data which can be held against a Customer such as Name, Address, Date of Birth.
- Each row is an individual item. For example, one row per Seat, per Customer, per Donation or per Event.
- Each column represents a property of that item (such as Seat Status, First Name, Fund Name or Date).
- The intersection between a row and a column contains specific data about a single item. For example, Sold would be populated in the field under the Seat Status property or the name Julia would be under the First Name column.
Importing Concepts
Next, we’ll cover some of the key concepts related to importing and what they mean.
- Input file
The data you import into your system needs to be in the format of a .CSV file. The CSV file you upload inputs the data into your system.
- Column
A column of the CSV input file. Each column has a column name. Below the column name, going downwardscontains the same type of data.
- Row
A row in a CSV input file. Each row represents a record of the item type you are importing. For example, in a Customer import, there is a row per Customer record.
- Field
A specific cell in a CSV input file. Fields are at the intersection of a row and a column.
- Property
Depending on what you are importing (for example, Tickets or Memberships), the associated Properties will make up the column names of your import file.
For each type of Import, there are a number of required and optional properties.
For example, if you are importing Tickets, one of the required properties is Price.
REMINDER: It’s not possible to include properties that are unrelated to the import type. For example, Seat Status is not a property of the Customer item (because Customers don’t have a Seat Status).
CSV files
To compile and transform your data into the correct format for import, you could use a CSV editor such as Excel or third-party tools like Rons Data Edit (if approved by your IT team).
Your imports must be uploaded in the UTF-8 encoding format.
CSV files which are uploaded in other formats may cause incorrectly formatted data to be uploaded to your system.
WARNING: Imports uploaded in any other encoding formats may cause unexpected characters to be imported.
-
- In your CSV editor program, go to File > Save As
- Choose the file type from the dropdown:
- Click Save
Column Names
The column name should be entered into the first cell in a column. This defines which property the values in that column are imported to.
For each type of Import, there are required and optional properties.
Column names must match exactly, including capitalisation and spaces.
For example, the column name TransactionDate must appear as listed in the column names table.
Transaction Date or transactiondate will cause the Import to fail with the error message: VALIDATION FAILED WITH CsvHeaderException Unrecognised headers: ‘transactiondate’.
Field types & conventions
Properties have different field types based on the type of data being stored or uploaded.
For example, FundName is a text field, and IsAnonymous is a Yes/No field.
Each field type requires that data is input in a certain way. If the conventions of the field type are not followed, the import will fail with an error message.
For example, when the date format is wrong, you'll see the following error message:
VALIDATION FAILED WITH CsvDataException
Error processing row 1. Invalid date. Dates must be in the format yyyy-MM-dd. '20/03/2025' is not valid.
The types of fields covered in this section are:
Text fields
A text field is a string value which can be a combination of letters and numbers. You can leave a text field blank (except required fields) and no data will be imported.
In the table below we’ve included properties and example text field values:
Column Name | Example |
EventName | The Color Purple |
OwnerSpektrixId | I-TM00-JMER |
EmailAddress | julia@email.com |
FirstName | Julia |
REMINDER: All text fields will be imported exactly as they are written in the input file so they must match exactly, including capitalisation, symbols and spaces. For example, if the WebEventId is FL1098 and you import WebEventId as fl1098 the import will fail.
Yes/no fields
A yes/no field is a boolean value which can be a true or false.
There are three different ways to format a yes/no field:
- Y
A Y value is used to signify yes or true.
- N
An N value is used to signify no or false.
- Leave blank
You are not required to enter a value for a yes/no field when importing.
If there is data already in the field then leaving a Yes/No field blank means that no value is imported.
If you are importing data into a new field then the value will default to No.
In the table below we’ve included properties and example yes/no field values:
Column Name | Example |
Printed | N |
IsReservation | Y |
IsAnonymous | Y |
Currency Field
A currency field requires a numerical value of more than 0 and up to two decimal places. For example, 5.00.
Do not include the currency symbol as this will cause the import to fail. For example, inputting £5.00 will cause the import to fail.
In the table below we’ve included properties and example currency field values:
Column Name | Example |
Price | 5.00 |
Commission | 1.25 |
Date Field
A date field is strictly required in the format yyyy-mm-dd (2025-07-01).
In the table below, we’ve included properties and example date field values:
Column Name | Example |
TransactionDate | 2025-07-01 |
DateOfBirth | 1980-09-01 |
TIP: If you use Excel to edit your CSV files, you’ll need to set the date format to yyyy-mm-dd every time you open the file.
Attributes
The type of Attribute you are importing informs how the data should be formatted.
- Dropdown List Attributes are formatted the same way as Text Fields.
- Text Field Attributes are formatted the same way as Text Fields.
- Date Attributes are formatted the same way as Date Fields.
- Currency Attributes are formatted the same way as Currency Fields.
-
Check Box Attributes are similar to yes/no fields but instead use 1/0.
- 1: A 1 is used to signify that a checkbox Attribute is checked.
- 0: A 0 is used to signify that a checkbox Attribute is not checked.