Tier 2 — Business Setup

Import customers, suppliers, price book items and jobs from a spreadsheet

Bring your existing customers, suppliers, price book and booked jobs into AxiomBlue from a spreadsheet instead of typing them in. AxiomBlue checks every row and shows you what will happen before anything is added.

Applies to: all plans. Importing customers needs erp:finance:customers:create, and updating existing customers from the file also needs erp:finance:customers:edit. Importing suppliers needs erp:finance:suppliers:create, and updating them needs erp:finance:suppliers:edit. Importing price book items needs erp:inventory:items:create, and updating them needs erp:inventory:items:edit. Importing jobs needs erp:operations:jobs:create. On the free plan, customers count towards its customer limit and jobs towards its weekly job limit.

Prerequisites: a spreadsheet saved as CSV, with one customer, supplier, item or job per row and a heading row. Import customers before the jobs that belong to them. See Customers, Suppliers and Products & Services for what each field means.

Save your spreadsheet as CSV

AxiomBlue reads CSV files, not Excel workbooks. In Excel, choose File > Save As and pick CSV UTF-8. In Google Sheets, choose File > Download > Comma-separated values. A contact export from Xero is already a CSV and its column headings are recognised, for customers and suppliers. So is the file the Suppliers page exports.

To start from a blank file, open the import and select Download a template with the expected columns. It has every column and an example row.

Import the file

Go to Sales > Customers for customers, Inventory > Suppliers for suppliers, Inventory > Products & Services for price book items, or Jobs & Crews > All Jobs for jobs.

  1. Select Options > Import CSV, then drop the CSV file in or select Choose a file. A file can have up to 2,000 rows.
  2. Match the columns. Each column in your file is matched to a field where the heading makes it clear. Change any match with the list beside it, or choose Don’t import to leave a column out. Name is required for customers and suppliers; SKU and Name for items; Title and Customer for jobs.
  3. Select Check the rows. Every row is listed as New, Already exists or Needs fixing, with the reason.
  4. Choose what happens to records that already exist: Leave them as they are, or Update them from this file. When updating, a blank cell leaves that value unchanged. Jobs are never updated by an import: one that already exists is left as it is.
  5. Select Import.

How rows are checked

  • Existing customers are matched on customer number first, then email, then name. Existing suppliers are matched on ABN first, then email, then name. Existing items are matched on SKU. Existing jobs are ones for the same customer with the same title on the same day, so importing a file twice does not book its jobs twice.
  • Two rows for the same record (the same customer number, email, ABN, supplier name or SKU twice in the file) are flagged; only the first is used. Supplier names must be unique, so a row that matches one supplier by ABN or email but carries another supplier’s name is flagged too.
  • Customer details are checked the way the Add Customer form checks them: email format, the ABN checksum, and an address that has a suburb, state and four-digit postcode if any part of it is filled in.
  • Supplier details: email format, the ABN checksum and the ACN check digit. The BSB must be 6 digits and the account number 5–9 digits. Currency must be AUD, USD, EUR, GBP or NZD. A state and postcode are checked for an Australian address. A BSB and account number together in one cell, as Xero exports them, are split. Active must be yes or no.
  • Item details: prices and quantities must be numbers ($ signs and commas are fine), Type must be product, material, consumable or service, and GST must be yes or no.
  • Job details: the Customer column holds the customer number, email or name of a customer already in AxiomBlue; if two customers share that name, use the number. Dates are written 2026-10-01 or 1/10/2026 (day first), and times 08:00 or 8am, in your business’s time zone. A date with no times is booked 8am to 5pm, and a start with estimated hours but no finish ends that many hours later. Status is pending, scheduled, in progress, on hold, completed or cancelled; Priority is low, medium, high or critical. A site address needs its street, suburb, state and postcode, in separate columns or in one cell such as 42 Enoggera Road, Newmarket QLD 4051.
  • The free plan limits: rows past the number of customers, or jobs this week, your plan has room for are flagged, in file order.

A row that needs fixing is never imported. Select Download rows to fix to get those rows with the reason beside each one, correct them, and import that file.

What you should see

A summary of how many records were added, updated and left as they were, and the new customers, suppliers or items in the list. If a row could not be saved (for example an address that could not be found), it is listed with the reason and you can download it to fix and import again.

Tip: Imported customers and jobs do not trigger workflows that start when a customer or job is created, so a welcome email or booking confirmation will not go to everyone in your file. Updating an item never changes its stock on hand; use a stock adjustment for that.