Halo's built-in spreadsheet importer lets you load clients, users, assets, tickets, SLAs, and 20+ other record types in bulk — no scripting, no API calls. Fill in the template, upload, done.
From client records to SLA priorities and recurring invoices — Halo covers every major data type you need to populate before go-live, or migrate from your old platform.
Types marked Import Only create new records — they cannot be used to update existing ones.
Core Platform
Clients & Sites
Organisations and their site locations. Supports create and update via a configurable matching field. Custom fields and site-specific fields (prefixed "SF") are supported.
Users
End users and contacts linked to clients and sites. Match on email or username to update existing users. Custom fields are supported.
Agents
Staff members who work tickets in Halo — name, email, team, role, and job title. Used to pre-populate your agent directory before go-live.
Tickets
Import Only
Historical or migrated tickets. Linked to existing clients and users — import those first. Include the ticket ID column to match to existing records.
Categories
Ticket category hierarchy. Use ">" as a separator for nested levels — e.g. Hardware>Laptop>Battery. The Type ID links to the correct ticket type.
Service Level Agreements
SLA definitions including name, work hours calendar, response tracking, fix-by targets, and optional auto-release settings.
Priorities
Priority levels tied to SLAs — response and resolution targets in hours or days, colour codes, and auto-extend end-of-day settings.
Actions
Import Only
Notes, updates, and time entries against existing tickets. The ticket must already exist in Halo — reference it by its Request ID. Custom fields are supported.
Addresses
Physical address records linked to users or sites. Includes primary/inactive flags, active date ranges, and lat/long coordinates.
Assets
Assets
Hardware and software assets linked to clients and users. Includes warranty dates, supplier SLA, and support for asset fields (prefixed "AF") and custom fields.
Asset Types
Categories for classifying assets — e.g. Laptop, Server, Mobile, Software. Controls which fields appear on assets and how they are grouped in reports.
Knowledge & Content
Knowledge Base Articles
Import Only
Articles with summary, full details, resolution text, author, and date. Assign to multiple FAQ lists by comma-separating values in a single cell.
Canned Text
Saved response templates for agents — stored with a name, group, and HTML body. Agents insert them into ticket actions to speed up replies.
Distribution List Users
Assign users to Halo distribution lists by list name plus user ID or email address — for group notifications and shared ticket visibility.
Projects & Scheduling
Project Tasks
Tasks within Halo projects, linked to milestones, clients, users, budgets, and agents. Project milestones must exist before task rows can reference them.
Appointments
Calendar entries with subject, attendees, type, start/end dates, and optional ticket linkage. Supports all-day and timed appointments with agent reminders.
Services
Service catalogue entries linking a service name and category to ticket types or templates. Controls what users see when raising a request through the portal.
Opportunities
CRM opportunity records with contact details, company name, pipeline status, and agent assignment. Used to seed a new Halo CRM instance with existing pipeline.
Custom Tables
Rows in custom-built data tables. Can be linked to any Halo entity using a key column. Supports custom field columns and a configurable matching key for updates.
Suppliers & Stock
Suppliers
Vendor records including contact name, phone numbers, email domain, website, address, and accounts ID. Supports create and update via a configurable matching field.
Supplier Contracts
Import Only
Contracts with suppliers — reference number, description, start/end dates, linked SLA, and up to three named key contacts.
Items
Products and billable items with sales price, cost price, group, asset type linkage, supplier, and supplier part code. Supports create and update.
Item Stock
Stock quantities by item, location, and bin. A separate tab handles serialised asset imports — linking individual serial numbers to stock records.
Billing & Finance
Customer Contracts
Import Only
Billing agreements with clients — hours, billing period, charge rate, invoice description, contract reference, and next invoice date.
Recurring Invoices
Scheduled invoices across two sheets: headers (client, dates, repeat period) and line items (item, quantity, price, tax). Lines reference the header by position number.
Quotation Lines
Line items on existing quotations — item name, quantity, unit price, tax name, nominal code, and comment. The quotation must already exist in Halo.
How It Works
Five Steps from Spreadsheet to Live Data
No API setup. No scripting. Download the template, fill it in, and upload it via Configuration in Halo.
1
Download the Template
Download the example spreadsheet for the data type you need from the templates section below.
2
Fill In Your Data
Add records to the IMPORT DATA sheet. Don't alter blue column headings. Format dates as yyyy-MM-dd.
3
Navigate to the Import
Each data type has its own import location inside Configuration. See the navigation reference below.
4
Preview & Select Rows
Halo shows a preview of every row before importing. Select or deselect individual rows, then click Start.
5
Check the Results
The Result column updates per row — successful rows are live immediately. Fix any failures and re-upload those rows.
Configuration Navigation
Where to find each import inside Halo
Data Type
Configuration Path
Tickets
Configuration → Tickets → General Settings → Import Tickets
Actions
Configuration → Tickets → General Settings → Import Actions
Assets
Configuration → Asset Management → General Settings → Import Assets
Configuration → Items and Stock Control → Import Items
Item Stock
Configuration → Items and Stock Control → Import Stock
Knowledge Base Articles
Configuration → Knowledge Base → Import Articles
Appointments
Configuration → Calendars and Appointments → General Settings
Suppliers
Configuration → Suppliers → Import Suppliers
Services
Configuration → Services → Import Services
Import Rules
Things to Know Before You Start
These rules apply to every import type. Get them right first time and your import will be clean.
Don't alter blue column headings
Columns highlighted in blue in the template map directly to Halo's field names. Leave them exactly as they are — even capitalisation matters. If you don't have data for a blue column, leave the rows blank rather than removing it.
Format dates as yyyy-MM-dd
Using yyyy-MM-dd (e.g. 2026-01-15) is unambiguous and works regardless of how your Halo instance date format is configured.
Custom fields use a cf prefix
To import custom field values, add a column named after the custom field as it appears in Halo's custom field list — typically prefixed with cf, e.g. cfamountdue. The custom field must already exist in Halo before importing.
Matching fields control create vs. update
For types that support updates — Assets, Users, Clients & Sites, Suppliers, Items, and others — set a unique identifier in the import setup screen. If Halo finds a matching record it updates it; if not, it creates a new one.
Quick Reference
CREATELeave matching field blank — every row becomes a new record
UPDATESet unique identifier in import setup — matches to existing record
DATESyyyy-MM-dd
BOOLEANSUse 1 for true, leave blank for false
MULTIComma-separate multiple values in one cell (e.g. FAQ lists)
If you need to import to a field that isn't on the template, you can reveal every field name in Halo by appending ?showfieldnames=true to any Halo URL. This shows the API field name alongside each label — copy it exactly as your column header.
For failed rows, open your browser's developer console (Fn + F12) to see the exact error from the API.
Example Templates
Download the Import Spreadsheets
Each spreadsheet includes an IMPORT DATA sheet (fill this in) and an INSTRUCTIONS sheet (read this first). All 26 templates in one zip.
All Import Templates
26 spreadsheets covering every Halo data type. Each includes column definitions, instructions, and example data.
Which data types support updates, and which are import-only?
Most types support both create and update — Assets, Users, Clients & Sites, Suppliers, Items, Addresses, and others. Five types are import-only and cannot update existing records: Tickets, Actions, Customer Contracts, Supplier Contracts, and Knowledge Base Articles. For types that support updates, set a unique identifier in the import setup screen so Halo can match incoming rows to existing records.
What happens if a row fails to import?
Halo processes each row independently — failed rows don't block successful ones. After clicking Start, the Result column updates per row showing success or failure. For rows that fail without an obvious reason, open your browser's developer console (Fn + F12), go to the Console tab, and you'll see the specific API error message. Fix those rows and re-upload just the failed rows.
Do I need to prepare the data files myself?
Data migration is a joint activity. Your organisation owns the data — you'll need to extract it from your current platform and populate the Halo import templates. This page exists to make that as straightforward as possible. Allied ESM handles the import itself: we review your completed files, advise on any issues, and load the data into Halo. We won't ask you to figure out the upload process on your own.
How do I import custom field values?
Add an extra column to the spreadsheet named after the custom field as it appears in Halo's custom field list — typically prefixed with cf, e.g. cfamountdue. The custom field must already exist in your Halo configuration before you run the import. This works for Tickets, Assets, Users, Clients & Sites, Opportunities, Customer Contracts, Items, Services, and Custom Tables.
Is there a limit to how many rows I can import at once?
Halo doesn't publish a hard row limit, but large imports are best broken into batches of a few thousand rows. This makes failures easier to diagnose and avoids long processing times. For large-scale migrations, Allied ESM plans the import in sequenced batches as part of the project plan.
Let Allied ESM Handle Your Data Migration
Every Allied ESM Halo implementation includes full data migration. We review your files, handle the import sequencing, and validate everything before go-live.