Skip to content

Move from Harvest

If your company tracks time in Harvest, Admin → Import data → From Harvest brings it over: clients, projects, tasks, who works on which project, and time entries with their notes. You can run it as often as you like. Each run brings only what’s new, so Harvest and Sandly can run side by side while people get used to Sandly.

You need to be an admin in Sandly, and an Administrator in Harvest.

  1. Add your people first

    Sandly matches Harvest people to employees by work email. Add your employees first (by hand or with the people import), with the same work emails they use in Harvest. The time of anyone without a match stays in Harvest until you add them.

  2. Create a token in Harvest

    In Harvest, open Developers and create a personal access token. Copy the token and the account ID shown with it. Sandly uses the token for the check and the import only, and doesn’t keep it.

  3. Check

    Enter the account ID and the token, and choose from when to bring time. Leave the date empty to bring everything. Check reads your Harvest account and shows what the import would do: how many entries and hours, the new clients and projects, the people whose time stays behind, and the time by month. Nothing is saved yet.

  4. Import

    When the plan looks right, Import. You can leave the page while it runs. A large account takes a few minutes.

  • Clients and projects that aren’t in Sandly yet. A project is matched by its code, or by its name when it has no code in Harvest, and a client by its name. New projects keep their Harvest code, billable and fixed-fee settings, budget in hours, and project manager. Projects archived in Harvest come in closed.
  • Tasks on each project, billable as in Harvest.
  • Assignments for the days each person logged time on a project. Their share of the time becomes the allocation, and the latest billable rate becomes the bill rate. If someone still works on a project in Harvest, the assignment stays open, so they can go on logging time in Sandly.
  • Time entries, each with its day, project and task, hours, note, and billable flag.

Import the time as approved is on by default, for history that’s already billed and paid. Turn it off to keep each entry’s status from Harvest: entries that weren’t submitted come in as a draft week, the rest wait for approval in Sandly.

The plan lists what isn’t brought over, and why:

  • the time of people who aren’t employees in Sandly;
  • entries with a timer still running in Harvest, or without hours;
  • months that are closed in Sandly;
  • weeks the person has already logged in Sandly, so their own time is never mixed with Harvest’s;
  • time on an existing Sandly project outside the dates people are assigned to it.

Expenses, invoices, and estimates stay in Harvest.

Entries that came over before are skipped, so a second run brings only new time, and nothing is doubled. During a parallel period, run it whenever you like, for example each Monday, until everyone logs in Sandly. Once someone logs a week in Sandly, Harvest’s time for that week is left alone.