All guides

Settings

Import data from your old system

Migrate with Excel templates: upload services, team and appointment book, review the preview, disable online booking during import and undo an import.

In the dashboard

Menu
Account & data → Bring your data
Who
Managers with the “Import Customer and Appointment Lists” permission. The appointment book template only loads for users who also have “Export Customer Lists (GDPR-sensitive).” Works in the Complete plan and higher.
Open in the dashboard

Import data: Services, team, and appointment book from the old system

If you're switching to Terminz from another program, a paper calendar, or an Excel list, you can transfer your data using Excel templates. You'll find the page in the menu under Account & data → Bring your data (/manager/migration). Terminz only reads its own templates. The page does not accept exports from other programs: You download the template, copy your data into it, and upload it again.

There is no list of customers available for upload. Terminz does not create customer accounts for other people; your customers register themselves via the registration link (see “Invite customers via the registration link”). Names in the appointment book that haven't been registered by anyone yet are included as walk-in customers.

When you open the app for the first time, the instructions “How to move to Terminz” appear. After that, you can open them by clicking the signpost icon next to the page title.

The Overview: Four Levels

At the top it says: “Tap what you want to bring over. Top to bottom works best: an appointment only finds its service, person and customer if they are already here.”. Below that are four lines. One line shows how many are already there; the others display their respective notes. The next level that's still open is marked with the symbol “Next”.

  • Services (“With duration and price, via Excel template”): opens “Import services”.
  • Team (“Who works with you, via Excel template”): opens “Import team”.
  • Customers (“Sign up themselves through your link”): opens “Invite customers”. This row counts the registrations.
  • Appointment book (“Your appointments from the old calendar”): opens “Import appointments”. This row counts the transferred appointments.

Below that is a sample row “A row from your appointment book”. It tells you in one sentence what's currently missing from your appointment book—for example, no service or no one on the team.

At the very bottom is “Rather hand it over? Send us the export from your old system and we will transfer it for you.” with the link Write to us. It opens a new message to support (see “Messages”). If the page fails to load its numbers, it will display “The data could not be loaded” with Try again.

In the top right corner, Import history (on a mobile device, just the icon) takes you to the list of all previous imports.

Importing Services and Team

Both processes follow the same three-step procedure: “Template file” (Download, fill out, upload), “Check” (View the results), and “Take over” (Review and apply).

Template Step

  1. Download services template or Download team template. The template is set up for your location. A separate “Instructions” sheet explains each column.
  2. Enter your data row by row. Do not rename columns; use the drop-down lists.
  3. Upload the filled-in template: Tap “Choose the filled-in template”. Only the Terminz template is allowed as .xlsx, with a maximum size of 5 MB. Terminz rejects any other file with “This is not the template”, and any file that is too large with “The file is too large”.

If you prefer to work individually, select Rather add them one by one. This takes you to the services list or the staff member list.

The columns in the Performance Template (sheet “Services”): “Name” and “Duration (min)” are required. In addition, there are “Category”, “Price (EUR)”, “Description”, “Tax rate”, “Buffer Before (Min)”, “Buffer After (Min)”, “Resource 1”, “Resource 2”, and “Staff”. A second sheet “Resources” creates the rooms and equipment you list in “Resource 1” and “Resource 2.” The price may be entered as “25,” “25.50,” or “1,250.00.” The import creates any category that does not yet exist.

The columns of the team template (sheet “Staff”): “First name” and “Email” are required, along with “Last name” and “Experience (years).”

Check Step

Terminz reads the file and displays under “This is how your file arrives” what happens before anything is saved. The heading lists the number, for example, “3 skills will be transferred” or “2 people will join the team.”

  • What happens to existing entries if a benefit is already there: “Leave as is” (default; existing entries remain as is), “Overwrite” (values from the file replace the previous ones; empty cells remain unchanged), or “Fill empty fields” (only empty fields are filled in from the file).
  • This option is not available for the team. Anyone who is already on your team with the same email address will be skipped and left unchanged.
  • Rows with errors are skipped. They appear under “To Be Reviewed (2)” with the row number and the reason. Correct them in the file and upload it again.
  • The 3 Apply button starts the import. Below it, you'll see that you can undo the import immediately afterward or within the next 30 days in the import history under “Apply Data.”

If you leave the page without applying the changes, Terminz will cancel the prepared import. In that case, nothing will be applied.

Apply Step

The import runs in the background (“Importing your data...”). Afterward, the page displays “Rows imported” and “Rows skipped”. There are four buttons:

  • Download error report: a file with a line and error message for everything that didn't import.
  • Import more: Return to the first step.
  • Rollback import: Deletes what this import created. “You can undo this import within 30 days.”
  • Continue to the team or Continue to customers: The next step after a successful import. The text reads: “Import done. If nothing is missing, carry on with the next step.”

If the import is canceled, you can choose between Start over and Upload a different file. If the connection was lost before it was clear whether the import had started, the message there is: Check the status with Check status before uploading the file again; otherwise, everything will be imported twice.

What Happens to Imported People

A person from the team template receives a staff member entry with the default permissions for team members. They do not receive dashboard access or an invitation email. If you want them to log in, open the person's profile under Staff members → Edit and enable “System access” (see “Create and Manage Staff members”).

The import will not add an email address that already has an account associated with it to your team. Only a person you previously removed from this location will be restored. All others will appear as errors in the report.

Importing the Appointment Book

Step “Import appointments” imports your existing appointments from the old calendar. First, services and the team must be set up; otherwise, an appointment entry won't be able to find its service or person. If any of these are missing, a warning will appear at the top. If no customers are registered yet and no appointments have been imported, a note will appear stating that the names will be treated as walk-in customers.

The process consists of three steps: “File”, “Review”, and “Import”.

1. Retrieve the template, upload the file

Under “1 · Get the template”, you upload the “Template for your appointment book” using Download template. You select the customer, service, and staff member from lists. A separate sheet explains each column. The customer list in the template shows only the name and an unrecognizable identifier, for example, “Anna Müller (…4567).” Because of the customer list, the download requires both permissions, and Terminz logs every download.

Under “2 · Upload the filled-in file”, drag the .xlsx onto the field or tap it. Maximum 5 MB. Check file starts the validation. If it fails, “The file could not be checked” will appear there. This is usually due to a different template or renamed columns.

The Columns (sheet “Appointments”):

ColumnRequiredWhat to enter
“Date”yesDate, preferably as 15.03.2026. 2026-03-15, 15/03/2026, and 15-03-2026 are also accepted.
“Start”yesTime, for example 09:00. Also 09:00:00 and 09:00 AM.
“End”noTime. If missing, Terminz adds the duration of the service (30 minutes if the service has no duration). If an end time is specified, that applies.
“Client”noThe name from the drop-down list.
“Service”yesThe name of a service, exactly as it appears in Terminz.
“Staff”yesFirst and last name of a person on your team. A first name alone is sufficient only if it is unique within the team.
“Note”noFree text; appears as a note on the appointment.

The times are based on the time zone of your location.

2. Test

At the top, a bar displays the numbers: “Will import”, “Already known”, “Needs a look”, and “Errors”. Below that is the table with the template's columns and a column labeled “What happens”:

  • “Already on file — will be linked”: The customer is recognized; the appointment is added to their account.
  • “Booked as a walk-in — no customer account”: The name cannot be reliably assigned to anyone. The appointment still blocks the time slot.
  • “Cannot be imported”: for example, an unknown service, an unknown person, a time that Terminz cannot read, or an end time that does not follow the start time. If, upon import, the appointment overlaps with another appointment for the same person, the import report will also flag this as an error.
  • “Edited — will be re-checked”: you have edited the row.

How Terminz recognizes a customer: A name from the template's drop-down list is a sure match. Terminz can only reliably recognize what you type yourself if you include a phone number or email address in parentheses. A name alone never triggers an automatic link; the appointment is treated as a walk-in. If a name resembles a customer's, a warning appears, but the entry is included anyway.

What you can do during the review:

  • Switch to Problems only (default) or All rows.
  • Search by name, phone, or email (field “Name, phone, email”). The table displays 50 rows per page.
  • Edit cells directly. Nothing is saved until you select Check 1 Row Again (or the number of rows you've changed).
  • Leave as is removes a row from the import; Import after all restores it.
  • Continue to summary takes you to the last step.

Rows with a warning are imported; rows with errors are not. An appointment that already exists (same time, same person, same customer, or same last name) counts as “Already known” and is skipped. Uploading the same file again will not duplicate anything.

3. Import

The summary says “12 appointments will be created,” and “Nothing is saved yet. The click below is what creates the data.” rows with errors are listed as “… rows will be skipped”.

Disable online booking. The “Switch online booking off for the import” toggle is on. Otherwise, while you're entering your appointments, someone else could book the exact time slot online that you've already assigned. When the switch is on, Terminz disables online booking with Import now. Your public page will then display the phone number instead of the booking form. The page remains disabled until you turn it back on yourself. This does not happen automatically.

  • If online booking was already disabled, it will show “Your online booking is off anyway”, and Terminz won't make any changes.
  • If you leave the toggle off even though appointments starting today are already in the file, Terminz will issue a warning. When you confirm, a window will appear asking “Really leave online booking on?”, with Import anyway.

Import now starts the import in the background. Afterward, it displays “Import running” (“We are creating the data in the background. You can follow it in the import history.”). If you've turned off online booking, it displays “Online booking is off now” with the link Go to online booking (to the booking rules). Check the dates in the calendar and then turn online booking back on. To do this, use “Your appointments are in. Now your customers can fill in their contact details themselves.” with Invite customers and Go to import history.

Below the flowchart is block “Online appointment booking”. It shows whether online booking is currently on or off, with links Switch off and Switch back on to the booking rules.

What Happens to the Appointments

  • An appointment in the past is assigned status “Completed”; one from now on is assigned status “Confirmed”.
  • The price is derived from the service. The payment status remains open; an import does not record a payment.
  • If the customer is recognized and the appointment is in the past, it counts as a visit in that customer's file (visits, revenue, last visit).
  • Appointments created by the import are marked with the booking method “Import.”
  • The import itself does not send any emails to customers.

Import History

The import history (/manager/migration/history) lists every import for the location, with the most recent one first. Refresh reloads the page. Each row shows:

  • the type (e.g., services, team, products, appointments), date and time, the file name, and the number of rows,
  • the status: “Pending”, “Validating”, “Ready”, “Will import”, “Completed”, “Failed”, “Canceled”, or “Rolled back”,
  • and for “Failed”, the reason.

If there are no imports, it displays: “No imports yet. Every import from a Terminz template shows up here afterwards, with its numbers.” with the Bring your data button.

Rollback appears only for an import with status “Completed”, as long as the 30-day undo period is still active. The “Rollback this import?” window displays a warning: “This will permanently remove all records created by this import. This action cannot be undone.” You start it with Yes, rollback. For appointments, Terminz only removes those that remain unchanged: An appointment that now has a payment, an invoice, or a rating associated with it remains. Afterward, the import appears as “Rolled back” in the list.

Frequently Asked Questions

Can I upload a customer list? No. Customers register themselves via the registration link. Names in the appointment book without an account are treated as walk-in customers.

Can I upload the export from my old program directly? No. Terminz only reads its own templates. Copy your data into the template, or send the export to support via Write to us.

In what order should I proceed? Services, Team, then the appointment book. An appointment can only be matched to a service and a person if they're already in Terminz.

Why does my appointment show as “Walk-in”? Terminz was unable to reliably match the name to any registered customer. Select the customer from the list in the template, or leave the appointment as a walk-in—it won't affect the booked time.

Why does an imported staff member lack dashboard access? The import creates users without a login. Enable “System access” in Staff Member Management.

Why does “This is not the template” appear? The file is not a Terminz template or has renamed columns. Download the template again and enter the data there.

Why is my online booking disabled after import? The “Switch online booking off for the import” toggle was enabled. Re-enable it in the booking rules.

Can I delete an import? Yes, in the import history using Rollback, for 30 days. After that, it's no longer possible.

Where can I find an import I started earlier? In the import history. There you can see the progress and, if something went wrong, the reason.

Your question isn't here?

Write to us in the dashboard under Help → Messages. The answer arrives in the same place.