Ticket Barcode Imports

Rachael Norris
Rachael Norris
  • Updated

Ticket Imports can be used to import the barcodes of tickets sold by third parties (Agents). Once imported, barcodes from Agents can be scanned using the Spektrix Scanning Interface.

This article explains how to import ticket barcode information using the Importer.

The concepts in this article require a basic understanding of imports. Before reading this article, make sure you’re familiar with:

TIP: Ticket sales you import are included as chargeable sales as per your agreement with Spektrix.

 

Why import ticket barcodes?

Agencies Offline (or non-API Agents) sometimes supply printed or digital ticket barcodes to customers. Barcodes supplied by Agents are different to Spektrix barcodes.

If a customer presents a ticket supplied by an agent, it will not scan using the Spektrix Scanning Interface. When a barcode/QR code isn’t recognised, the scanning interface will turn red and display a Barcode not found error.

To enable the scanning of third party tickets, you can request the barcode data from the non-API Agents you work with and import this information into Spektrix using a Ticket Import

The Agent barcode information will then be held against each imported ticket in an Attribute, meaning valid tickets supplied by non-API Agents will successfully scan.

 

How to request access to the Ticket Barcode Importer

To request access to the Ticket Barcode Importer, you'll need to complete an Access Request form. Please provide the following information:

  • Your name
  • Your work email address
  • Your organisation name

WARNING: On the access request form you'll need to agree that you're responsible for the data imported with this tool. Spektrix cannot undo any mistakes created by data imported by the Ticket Barcode Importer

 

How to prepare for a Ticket Import

There are several steps you’ll need to follow to import tickets and their barcodes. 

Work through the following steps in order:

  1. Create a Ticket Attribute to store the Barcode information
  2. Make the Imported Payment Custom Payment Type active
  3. Request your data
  4. Prepare your CSV file
  5. Validate your data
  6. Import your data

 

1. Create a barcode Ticket Attribute

When you import barcode data from third parties, this data will be stored against each imported ticket as a Ticket Attribute.

To be able to do this, you must first create the Ticket Attribute on your system.

TIP: You’ll only need to set up this Ticket Attribute the first time you import barcodes.

Set up your Ticket Attribute using the details in the table below. The details of your Attribute must match exactly:

Name ImportedBarcode
Description
(does not need to match exactly)
Used for barcodes imported into Spektrix from non-API agents to allow these barcodes to be scanned in the scanning interface.
Type Text
Length Up to 50 characters long
Ensure a unique value Check this box
This Attribute is visible in API integrations Leave unchecked
This Attribute is always required Leave unchecked
Ensure users enter a unique value Leave unchecked

WARNING: The name of the Ticket Attribute must match exactly as listed above, including capitalisations and without spaces.

For step by step instructions on how to set up Ticket Attributes, read our article on Ticket Attributes.

 

2. Make the Imported Payment Custom Payment Type active

Imported tickets are imported with the Imported Payment Custom Payment Type.

This payment type must be active on your system for your Ticket Import to work.

Click through the steps below to find and activate the Imported Payment Custom Payment Type.

TIP: The Imported Payment custom payment type will already be available on your system. You only need to activate this payment type once.

3. Request your data

Next, you’ll need to request an export of data from the Agent(s) you are working with. This data will form the basis of your CSV file.

Each Agent will export data differently. Click on the relevant tab below to see instructions that are specific to the Agent you are working with.

  • If you are working with Ticketmaster, you’ll need to request that they export and send you the barcode data for tickets they have sold on your behalf.

    Ticketmaster exports come formatted in a specific way. We have created a macro which can be run in Excel to help you transform the data into the correct format for your Ticket Import.

    The macro will ask you to input the required fields for the Ticket Import, so have these prepared.

    Download the Ticketmaster macro and follow along with the steps in the video to transform your data:

  • If you are working with See Tickets, you’ll need to request that they export and send you the barcode data for tickets they have sold on your behalf.

    Create your Import File following the guidance in the Preparing your CSV file section of this article.

    You can get in touch with See Tickets to ask them to change the way they format the exported data to make it easier for you to manipulate and upload.

  • If you are working with DICE, you’ll need to request that they export and send you the barcode data for tickets they have sold on your behalf.
    DICE exports should match the correct format to be uploaded directly into Spektrix.

    Check your file using the guidance in the Preparing your CSV file section of this article.

  • If you are working with AXS, you’ll need to request that they export and send you the barcode data for tickets they have sold on your behalf.

    Create your Import File following the guidance in the Preparing your CSV file section of this article.

    You can get in touch with AXS to ask them to change the way they format the exported data to make it easier for you to manipulate and upload.

  • If you are working with any other Agent, you’ll need to request that they export and send you the barcode data for tickets they have sold on your behalf.

    Create your Import File following the guidance in the Preparing your CSV file section of this article.

    You can get in touch with your Agent to ask them to change the way they format the exported data to make it easier for you to manipulate and upload.

 

4. Preparing your CSV file

Depending on which Agent you are working with, you may be required to transform the data into the correct format for the import. To do this, you should use a CSV editor program such as Excel or a third-party tool like Rons Data Edit (if approved by your IT team).

WARNING: Your CSV File must be formatted exactly as outlined in this article to work successfully. If the import file is not formatted correctly, it may cause unexpected characters to be imported. Our support team can't reverse an import you upload.

In a ticket import file, each row in the CSV file represents an individual ticket. A ticket can only be imported if the required properties about each ticket are provided in the input file in the correct format.

Each column in the CSV file represents a data field:

 

Your CSV file

For an import to be successful, your CSV file must meet the following standards:

  • All required fields must be populated with data. Read the next section of this article for details about each of the required fields.

  • Each column name must match the correct column name exactly. For more information, read the Column names section of the Introduction to the Importer.

  • Each CSV must be in the UTF-8 encoding format. Read more about UTF-8 encoding in the Introduction to the Importer.
  • Data must match the required format for the field type. For example, you cannot import free text into a Yes/No field. For more information, read the Field Types section of the Introduction to the Importer.

 

Required Data Fields

In the table below, we’ve outlined the different data fields which can be included in Ticket Imports and whether they are required.

If a field that is not required is left blank then no data will be imported into this field. 

 

Column Name Description Required
OwnerSpektrixId

Enter the Spektrix Customer Record ID that you’d like to import the tickets into.


For Ticket Barcode Imports, this is the Customer Record ID of the Agent you are importing the tickets against.

  • Max length of value: 11
  • Example: I-MN00-JMER
  • Type: Spektrix Customer Id
Yes
TransactionDate Enter the date of the import following the correct format (yyyy-mm-dd). This is usually today's date.
  • Example: 2025-09-30
  • Type: Date
Yes
SpektrixEventInstanceId

Enter the Event Instance ID. 

You can find this in the Admin Interface > Event Instance details. 

If this does not match an existing Instance ID, then the ticket will not be imported.

  • Example: 16546
  • Type: String
Yes
SeatingAreaName

Enter the Seating Plan Area Name of the ticket. The name must match exactly.

  • Example: Stalls
  • Type: String
Yes
SeatName

Enter the name or number of the seat. The SeatName is only required for tickets in Reserved Areas of Seating Plans and must match exactly.

  • Example: A12
  • Type: String
Yes for Reserved Areas of Seating Plans
No for Unreserved Areas of Seating Plans
IsReservation

Whether the ticket is a reservation (True) or a sold ticket (False).

If left blank the default value is set to False.

  • Example: Yes
  • Type: Boolean
No
Price

Enter the price of the ticket.

Must be greater than or equal to zero.

  • Example: 12.3
  • Type: Decimal
Yes
Commission

Enter the commission charged on the ticket.

This value must be greater than or equal to zero.

  • Example: 1.5
  • Type: Decimal
Yes
TicketTypeName Enter the name of the Ticket Type. This must match exactly.
  • Max length of value: 50
  • Example: Adult
  • Type: String
Yes
Printed Enter whether the ticket has been printed (true) or not (false).
  • Example: Yes
  • Type: Boolean
No
TicketCustomField:
ImportedBarcode
Enter the Agent’s barcode. This field populates this information using the Barcode Attribute you created.
  • Max length of value: 255
  • Example: 56161930452294E
  • Type: String
Yes

TicketCustomField:
{CustomFieldName}

If you need to import any other custom Ticket Attributes, then amend and populate this field.

  • Max length of value: 255 for text or dropdown
  • Example:  Press comp
  • Type: String
No
LockTypeName

 

If you need to import over Locks on an Unerserved Seating Plan, you will need to add the LockTypeName column and populate the Lock Type Names exactly as they appear in your system.

  • Max length of value: 255
  • Example:  Ticketmaster
  • Type: String
No / Yes for Unreserved Seating Plans with Locks

 

Multiple Orders

By default, tickets that are imported with the matching values in the OwnerSpektrixId, TransactionDate and SpektrixEventInstance columns will all be imported into the same Order.

If your import contains two different OwnerSpektrixId values (for two different Agent records), your Import will create a different Order under each Customer Record. 

 

Ticket Custom Field

The Ticket Custom Field column can be used to import custom Ticket Attributes.

To add a custom field, use the TicketCustomField:{CustomFieldName} column name.

Replace {CustomFieldName} with the exact name of your Ticket Attribute.

REMINDER: Attribute names are case sensitive and must match exactly (including spaces) to be successfully imported. You'll also need to remove the curly brackets.

For example, if your Ticket Attribute is "Comp reason" then your column header would be:

TicketCustomField:Comp reason

If your custom Ticket Attribute is a dropdown list, then the data in the column must match the dropdown values exactly.

 

For example:

TicketCustomField:Comp reason
Staff comp
Customer service comp

 

  • To see the name of your Ticket Attribute, navigate to Settings Interface > Attribute Definitions > Ticket.

    You can see the name of your Ticket Attribute in the name column:

    Attribute name.png

    From the menu on the left, click Attribute Values to see the list of your values:

    Attribute values.png

WARNING: If you have Ticket Attributes set up on your system which are marked as required, you will need to import these alongside your data. Your import will fail if you do not supply values for required Attributes.

 

Example

Click the image below to see a detailed example of a Ticket Import. This example has been formatted correctly with all the required headings and is ready to be uploaded.

 

REMINDER: Don’t forget to save your CSV in the UTF-8 encoding format.

 

5. Validate your data

The Importer is found in the Settings interface.

TIP: To access the Settings Interface, you’ll need the Settings Administrator Role. If you don’t have this Role, ask the Settings Administrator in your organisation to add this Role to your User Account.

Each import type has two processes that can be run against it: Validate and Import.

All imports must be validated before they are imported. 

The validation process checks the data in the input file against validation rules to identify any issues in the CSV file. It does not check against data already in Spektrix (for example, customer data) so you may still get data-specific errors when running your import.

WARNING: Do not run your import until you have received a successful validation CSV.

 

How to use the Validator

  1. Select the Import Type: Tickets:

  2. Click Validate:

  3. Upload your CSV and click Run Validator:

    REMINDER: CSV files must be in the UTF-8 format and contain all of the required information for your import.

Once you’ve clicked Run Validator, you’ll see a Job Submitted icon in the top left of the screen:

Hover your mouse over the green check mark and click to download the CSV file to see the results:

 

Reading the validation document

The validator will give one of two types of responses:

  • Validation error found 

If the validation is unsuccessful, the CSV will contain a message explaining the failure. 

For example: VALIDATION FAILED WITH CsvHeaderException
Unrecognised headers: ‘seatname’ 

In this example, the validation failed due to an incorrect column header.

Another example of a failed validation error message is:

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.

In this second example, the validation failed due to an incorrect date format.

  • No validation error found 

If the validation is successful, the CSV will contain a message which reads: Validation completed successfully.

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. Even if you save the file with the correct date format, when you open the file again, you’ll need to update the date format again.

 

6. Import your data

If your CSV file passes validation, then you can continue to import the file.  

REMINDER: A successful validation of your CSV file does not always lead to a successful import of your data.

 

How to run an Import

  1. Select the Import Type: Tickets:

  2. Click Import:

  3. Complete the Import CSV details:

  4. Foreign Id Customer Custom Field Name: Leave blank
  5. Foreign Id Event Instance Custom Field Name: Leave blank
  6. Foreign Id Order Custom Field Name: Leave blank
  7. Upload the CSV file: Click select file and browse to the location on your computer where the CSV file is saved

After clicking Run Importer, you will see a pop up asking you to confirm the number of rows in the import file:

Click Confirm to continue with the import, or click Cancel to go back.

Once you’ve clicked Confirm, you’ll see a Job Submitted icon in the top left of the screen:

Hover your mouse over the green check mark and click to download the CSV file to see the results:

TIP: You’ll also receive an email notification to let you know the import is complete. This will be sent to the email address registered to your User Account.

WARNING: DO NOT run the importer again until you have checked the CSV log and cross-referenced any successfully imported data.  

 

Import results

A CSV report will be generated and available to download with the result of your import.

If the import is successful, you will see Import completed successfully:

If the import fails, you’ll see a message with an error reason. 

For example: The following seating areas do not exist: Stalls. No tickets in the transaction have been imported.

The CSV report will contain a row for each record that had an error. 

Each row explains:

  • On what record the error occurred
  • The details of the error
  • The contents of the object that caused the error (in a single cell, with line breaks between properties)

Any rows not listed as having errors will have been imported successfully. 

Depending on the error in the log file you may want to amend the data and re-attempt to import for those specific rows.

WARNING: Always spot check your imported data by viewing imported orders in the Sales Interface before attempting to re-upload all or part of your failed import.

 

Troubleshooting Ticket Import errors

In this section, we’ll cover what to do if the data you have successfully imported is incorrect or if you need to return an imported ticket.

In this section:

 

How to change a single barcode

If one of the barcodes you have imported is incorrect, you can manually change the barcode.

Click through the steps below:

 

If all the barcode data is incorrect

If all of the barcode data you have uploaded is incorrect, you will need to return each Ticket and remove each Ticket Attribute value before you are able to re-upload the import.

Repeat this process for each of the Orders in the import:

 

Repeat this process for every ticket in each of the Orders. Once complete, follow the steps earlier in this article to re-upload your import.

WARNING: You will not be able to re-upload your import unless all Ticket Attributes are cleared and all tickets are returned.