Back to help

Guides

Short, honest instructions for the things you'll actually do in Realtime.

Track time with the timer

Everyone
  1. Click Start timer in the header or on the Timesheet page.
  2. Pick a project (only projects you're assigned to appear) and a task.
  3. Elapsed time counts in your browser β€” no need to keep the tab focused.
  4. Click Stop when you're done. If you forget, an amber warning appears the next day so you can stop and fix it.
  5. Only one timer runs at a time β€” starting a new one stops whatever was running.

Edit your week on the Timesheet

Everyone
  1. Click any cell to edit it. Type a value like 1:30, 1.5, or 45m and press Enter.
  2. Tab moves to the next cell β€” the grid is keyboard-navigable like a spreadsheet.
  3. Locked cells (πŸ”’) belong to an invoice already pushed to Xero and can't be edited until that invoice is voided.
  4. Use β€˜Add row’ to log time against a project/task you haven't used yet this week.

Log an expense

Everyone
  1. Go to Expenses β†’ Log expense.
  2. Pick a project, category, amount, and date.
  3. Attach a receipt: upload a file directly (JPEG/PNG/WebP/PDF, max 10 MB) if your admin has connected receipt storage, or paste a link instead.
  4. Toggle Billable if the client should be charged for it.

Set up a client and project

Everyone
  1. Clients β†’ New client. Set their default invoice line grouping and whether hours round when invoiced.
  2. Projects β†’ New project. Pick the client, a colour, and optionally a budget (hours or $).
  3. Open the project's detail page to assign team members and set budget alert thresholds β€” any %, as many as you like.
  4. Only assigned people can track time against a project.

Set rates

Admin only
  1. Settings β†’ Rates.
  2. Billable rates resolve project override β†’ client override β†’ default. Add whichever level you need.
  3. Cost rates are separate and only used internally for profitability reports β€” clients never see them.
  4. Click any rate's dollar amount to edit it in place, or use Add rate for a new one.

Draft and push an invoice

Admin only
  1. Invoices β†’ New invoice. Pick the client and a line grouping (project, task, person, or every time slot).
  2. Review the unbilled time and expenses that come up β€” you can deselect anything you don't want on this invoice.
  3. Create draft. That attaches the selected entries so they leave the unbilled pool, but they stay editable until you push to Xero.
  4. Push to Xero from the invoice list once you're ready. That locks the time and expenses. Status (draft / awaiting payment / paid / voided) syncs back via webhook, then shows on GET.
  5. If a Xero invoice is voided or deleted, its Realtime entries unlock automatically. If Xero isn't configured, drafts never lock β€” the lock path stays honest.

Connect Xero

Admin only
  1. Requires XERO_CLIENT_ID and XERO_CLIENT_SECRET set in the app's environment β€” ask whoever deployed Realtime if you don't see a Connect button.
  2. Settings β†’ Integrations β†’ Connect Xero, then approve access in the Xero popup.
  3. Once connected, invoice drafts get a Push to Xero button. Nothing is pushed automatically.

Import from Harvest

Admin only
  1. Requires HARVEST_ACCESS_TOKEN and HARVEST_ACCOUNT_ID set in the environment.
  2. Settings β†’ Integrations β†’ Import from Harvest. Status is idle, queued, running, failed, or succeeded β€” it survives a reload.
  3. Imports people, clients, projects, tasks, assignments, rates, time entries, expenses, and invoice history one page at a time (Harvest's 100 req / 15s limit, 429 retries). Running timers are skipped.
  4. Safe to re-run β€” Harvest IDs are kept as external references so nothing gets duplicated. A dead leftover 'running' job is marked failed so you can retry. Only one job at a time.