Spreadsheet setup guide

Turn a repair spreadsheet into useful customer updates.

Start with a clean table, decide whether you need a one-time import or ongoing synchronization, then test with a record you control. Your source should be understandable to the person at the counter before you automate it.

1. Give every job a stable reference

Use one header row and one job per row. BenchPing’s mapping screen lets you match your own column names to its fields. Reference, customer name, customer email and item are required. A reference identifies the job on later syncs; do not recycle it or change it just because the status changes.

  • Reference — a unique value such as BP-2001, kept for the whole job.
  • Customer name, customer email and item — who owns the job and what is on the bench.
  • Status and customer note — the current stage and a short explanation safe for the customer to read.
  • Internal note — workshop-only context, not the customer update.
  • Estimated completion — a date, or an ISO date/time with a UTC offset to avoid timezone ambiguity.
  • Phone, notification preference and SMS consent — map these if you intend to send SMS, with valid contact details and permission.

2. Choose a file import or a live source

A CSV or XLSX upload is a one-time copy of the selected rows. It is available on Free and does not require a publicly readable customer list. Later edits to that file are not automatically synchronized.

For ongoing synchronization on Solo or Shop, a Google Sheet must open without signing in: Share → General access → Anyone with the link → Viewer. This is read-only access, not a private Google OAuth connection. Anyone with the sheet link may be able to read its contents; use file import instead if the data must not be publicly accessible.

Choose the intended tab, review the preview and map the columns before confirming. BenchPing reads your sheet; it does not write workshop edits back into Google Sheets.

Compare import and sync plans

3. Match the meanings of your statuses

An unfamiliar status label should not silently mean something different to your team. Review status mapping during setup, and use Shop settings for custom labels mapped to the underlying workflow stages. Decide which stage means approval is needed and which means the item is ready for pickup.

For sheet-managed jobs, keep status and customer notes current in the source sheet. Avoid treating both the app and sheet as competing sources for the same field. Use a record with your own email to check how the result appears to a customer.

Example, not a customer result

Sample source row: BP-2001 · Jamie Example · jamie@example.com · Trek FX 3 · Waiting for parts · Replacement brake rotor ordered. We’ll confirm timing after it arrives.

4. Know when synchronization sends a notification

The initial import establishes your existing queue without sending item-added messages to every customer. New jobs added manually can send their normal notifications. A new row found during a later synchronization can also notify the customer; subsequent status changes follow the configured update channels.

Synchronization runs at the interval configured for the connection, not instantly when a Google Sheets cell changes. Check that the connection is enabled, your paid plan permits sync, the correct tab is selected and the most recent run succeeded. The preview screen alone does not mean the source has been imported.

If a status email is missing, first check whether the new status reached the job in BenchPing. If it did not, inspect sync and mapping. If it did, inspect delivery history, the email address, selected notification channel and failure details. A note-only edit is not the same thing as a status change and should not be relied on to trigger a status notification.