Migrating from TESS

Last updated May 28, 2026

Migrating from TESS

If you're coming over from TESS (Travel eSolutions), you don't have to leave eight years of clients and trips behind. JourneyFuse has a dedicated TESS importer that reads the multi-sheet workbook TESS hands you and auto-detects each tab — clients, trips, bookings, payments, commissions, documents — with a side-by-side preview so you see exactly what's about to land in your workspace.

Nothing imports until you click Confirm. The whole first step is showing you what we found.

Before You Start

  1. Export from TESS. In TESS, generate a full data export — most teams use the "Master Export" or per-section CSV/XLSX exports. Save the workbook somewhere you can find it.
  2. Be the workspace owner or admin in JourneyFuse. The importer is owner/admin only.
  3. Make sure you're in the right workspace. Imports land in whichever workspace is active when you upload — check the workspace switcher in the top-left.

The Walkthrough

1. Open the importer

Go to Settings → Data Import and click Open TESS importer in the green callout card at the bottom. Or visit /imports/tess directly.

2. Drop your file

Drag your TESS .xlsx onto the upload card, or click Choose file. The importer parses every sheet client-side — your file never leaves your browser until you confirm.

3. Review the auto-detected sheets

We classify each tab by name pattern. You'll see a totals strip at the top (Clients, Trips, Bookings, Payments, Commissions, Documents) with row counts per category, and below it one card per sheet with:

  • Sheet name + the JourneyFuse category we mapped it to (color-coded badge)
  • Detected columns — the first dozen header names from your sheet
  • Row count — total rows in the sheet
  • Sample rows — the first 5 rows shown as a table so you can sanity-check the data

Sheets we don't recognize show up as Unmapped with a gray badge — they'll be skipped on import. If you see something important marked unmapped, the sheet name probably doesn't match our patterns; rename it in Excel and re-upload, or tell us what to add.

4. Confirm

A sticky bar at the bottom shows Preview only — nothing is imported until you confirm. Hit Confirm import when you're ready. We'll process and show a success bar listing exactly what landed.

What Gets Imported (MVP Scope)

In this first version we fully import:

  • Clients — first/last name, email, phone, address, birthday, anniversary, passport number, passport expiry, notes
  • Trips — name, destination, start/end dates, total price, status

We acknowledge but skip on import (for now):

  • Bookings — visible in the preview with row counts, but they need confirmation-number or trip-FK resolution that we want to get right rather than fast. Bring them across by talking to support so we can map your supplier names cleanly.
  • Payments — same reasoning. Visible in preview.
  • Commissions — visible in preview. Migrating historical commissions is usually a CSV-into-/commissions/imports step after you've imported clients/trips.
  • Documents — file references show up in the preview; actual file copying needs us to fetch them from your old storage. Send the export with documents bundle to support and we'll handle.

If your migration only needs clients and trips, the importer is end-to-end. If you need the rest, finish the client/trip pass yourself and email support with the workbook — we'll do the booking and document side for free as part of onboarding.

Column Mapping Heuristics

The importer recognizes common header variants without you mapping them by hand. For clients, any of these work:

  • first_name / first / fname / given_name
  • last_name / last / lname / surname
  • email / email_address / primary_email
  • phone / phone_number / mobile / cell
  • birthday / date_of_birth / dob
  • passport_number / passport
  • passport_expiry / passport_expiration

For trips:

  • name / trip_name / description / title
  • destination / location
  • start_date / travel_start / departure / depart_date
  • end_date / travel_end / return / return_date
  • total / total_price / package_price / amount

Dates are auto-handled — both ISO strings (2026-05-28) and Excel serial numbers come through correctly. Dollar signs and commas are stripped from numbers before parsing.

Sheet Name Patterns

We detect what kind of data a tab holds by matching its name (case-insensitive):

Pattern matchesImports as
client, contact, guest, travelerClients
trip, reservationTrips
booking, saleBookings
payment, deposit, checkPayments
commissionCommissions
document, attachment, fileDocuments

Anything else lands in Unmapped.

After the Import

  1. Spot-check a few clients. Open /clients and look up a recent traveler by name. Verify their passport, birthday, and notes came over.
  2. Trip ownership. Imported trips are assigned to you (the person who ran the import). If you want them split across the team, go to /trips and reassign — or use the bulk reassign action on /settings/agents.
  3. Document your trip history. TESS-imported trips arrive with status='lead' (because we don't know their lifecycle). Bulk-update statuses on /trips if you want them to feel "closed" for prior travel.
  4. Re-run for documents/bookings. Once you've validated the clients + trips, contact us and we'll mop up the rest of the workbook.

Pitfalls

  • Reversed date columns. If TESS exports MM/DD/YYYY and your spreadsheet locale is DD/MM/YYYY, dates can flip. Spot-check one or two trips after import. If they look off, send us the file — we'll re-import with the right format.
  • Duplicate clients. If you've imported partial data before, re-running the importer will create duplicates (we don't yet dedupe on email). Use Clients → Find Duplicates afterward to merge.
  • Excel serial dates pre-1900. Excel can't represent dates before 1900; if a client's birthday is listed as 1899-12-31, it's a default value in the source file, not real data.

Getting Help

The importer covers most cases — but if your TESS export has unusual sheet shapes (custom fields, branded templates, decade-old archive sheets), don't fight it solo. Email us your export at support@journeyfuse.com and we'll do the whole migration manually as part of onboarding. Free, no time limit.

FAQ

Will my passport scans and insurance docs come over? Not in this MVP. The importer brings client fields (passport number, expiry) but not attached files. Send your TESS document bundle to support and we'll handle the upload as a one-time service.

Can I re-import the same file twice? You can, but you'll get duplicate clients (we don't yet dedupe on email). If you need to re-run, talk to us first.

What if my TESS sheet uses different column names than your heuristics? Two paths: rename the columns in Excel before uploading (fastest), or tell us the headers and we'll add them to the matcher.

Does this work for non-TESS exports? Mostly yes — anything with similar sheet names (Clients / Trips / Bookings) will be detected. ClientEase and Tres Technologies exports usually map cleanly. For Tern, use Settings → Data Import → CSV which has Tern-specific auto-detection.

Can support staff or agents run the importer? No — owner or admin only. The importer creates new records workspace-wide, which is a privileged operation.