> For the complete documentation index, see [llms.txt](https://docs.shortcutco.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.shortcutco.com/readme/leads-prospects-customers/customers-overview-+-importing.md).

# Customers overview + importing

Customers are active clients with accepted proposals and jobs. This page walks through the Customers list and the customer profile, then covers [properties](#properties), [measuring a property](#measure-a-property), [comments](#posting-to-the-activity-feed), [deactivating a customer](#deactivate-a-customer), and [adding](#add-a-customer-manually), [exporting](#export-your-list), or [importing](#import-customers-bulk) customers. [Open Customers →](https://shortcutco.com/customers)

## What you'll see

In the [Customers list](https://shortcutco.com/customers) you can see:

* Name
* Email
* Phone
* Jobs associated with them
* Property details
* Whether they are scheduled
* Tags — your own labels like **VIP** or **Gate code** (see [Customer tags (create, apply, filter)](/readme/leads-prospects-customers/customer-tags.md))

Use the views at the top (**All / Needs estimate / Estimate pending / Needs scheduling / Scheduled**) to work your pipeline, and click anyone to open their profile.

**Needs scheduling** shows only customers you can schedule right now: someone with work waiting and nothing on the calendar for it. Customers with no jobs at all don't appear there.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-37f5c5b35a435935f536b0af757131f00d3af64b%2Fcustomers-list.png?alt=media" alt="Customers list showing customer details, jobs, property size, monthly average, and crew assignments"><figcaption><p>The Customers list shows contact info, property details, scheduled work, and customer actions.</p></figcaption></figure>

## The customer profile

Click anyone in Customers and their profile opens. Leads, prospects, and customers all get the same page. Who they are, what they've spent, and what's coming up sit in the main column on the left. A map of their property fills the top-right corner. Under it is a column with the things everyone should know: the property's photo, the pinned note, the property's details, tasks, and recent activity. Tabs across the top hold the full lists.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-8c941da3b270725355d7f39fc2980179944e6bb0%2Fcustomer-profile-tabs.png?alt=media" alt="A customer profile on the Overview tab: the header with the three-dot menu, the globe, Properties, Comment, and Create estimate; the tab row; the customer&#x27;s name with a Customer pill and tags; email and phone; a row of figures for spend, balance, visits, and properties; Upcoming visit cards, Work, and Estimates; and on the right a street map with the property&#x27;s photo as the pin and arrows either side, a pinned photo, a highlighted pinned note, the property&#x27;s details, tasks, and recent activity"><figcaption><p>The customer profile: work and money on the left, the map and the things everyone should know on the right.</p></figcaption></figure>

### The header

The buttons on the right of the top bar, in order:

* **⋯** (three dots) — everything that isn't a button of its own. See the table below.
* **Customer portal** (the globe) — customers only. See [Customer portal access](#customer-portal-access).
* **Property** — **Properties** when they have more than one. See [The Property menu](#the-property-menu).
* **Comment** — add a comment to their activity feed, from any tab. See [Posting to the activity feed](#posting-to-the-activity-feed).
* **Create estimate** — start a new estimate for them.

A lead or prospect with an estimate waiting on a decision also gets **Void** and **Approve** at the end of the bar, or **Review estimates** when there's more than one. See [Leads and prospects](#leads-and-prospects).

The **⋯** menu:

| Group                             | What's in it                                                                                                                                    |
| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| Work and billing (customers only) | **New job**, **Prepay** (**Record prepay** for offline-payment customers), **Billing**                                                          |
| Contact                           | **Send email**, **Send SMS**, then **Copy** with their email address and **Copy** with their phone number                                       |
| The record                        | **Add pinned note** (**Edit pinned note** once there is one; customers only), **Edit customer details**, **Email preferences** (customers only) |
| Account                           | **Deactivate account**, or **Reactivate account** once they're inactive                                                                         |

On a lead or prospect the menu says **Edit lead details** (**Edit prospect details**), and the last item is **Dismiss lead** (**Dismiss prospect**), or **Restore lead** once dismissed. When they have one sent estimate, **Send reminder** is at the top.

A few things worth knowing:

* **Edit customer details** — name, company, email, and phone. Also the address if they have one property or none, how a customer is invoiced (see [Billing modes](/readme/finances-invoices-and-payments/billing-modes.md)), and a lead's estimated hours.
* **Prepay** is greyed out until the customer has a job it can cover. See [Pre-Pay Invoicing](/readme/finances-invoices-and-payments/pre-pay-invoicing.md).
* **Billing** opens their saved cards and auto-pay. See [Billing](#billing). The menu shows **Auto-pay on** next to it when it is.
* **Email preferences** opens the customer's billing, marketing, and service email choices and their invoice delivery history. See [Customer email preferences and invoice delivery](/readme/finances-invoices-and-payments/customer-email-preferences.md).
* **Send email** and **Send SMS** open your own email and texting apps. To text from your company's Shortcut number, use [Messaging](/readme/messaging-inbox.md).
* The two **Copy** items show the actual email address and phone number, so you can see what you're copying.
* **Add pinned note** puts the cursor in the pinned note on the right. See [The pinned note](#the-pinned-note).

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-6d3fdf96e0118cb96fd676289c84a385173e194f%2Fcustomer-profile-overflow-menu.png?alt=media" alt="A customer&#x27;s profile with the three-dot menu open: New job, Prepay, and Billing; Send email, Send SMS, and Copy with the customer&#x27;s email address and phone number; Add pinned note, Edit customer details, and Email preferences; and Deactivate account in red"><figcaption><p>Everything that isn't a header button is in the ⋯ menu.</p></figcaption></figure>

### The Property menu

**Property** (**Properties** when there's more than one) holds what you do with their service locations:

* **Add photo** — customers only. With one property, pick a photo and it's added straight away. With more than one, the [Properties](#properties) window opens on the property the map shows, so you add it there.
* **Measure property** — opens the property the map shows straight into Measure mode. See [Measure a property](#measure-a-property).
* **Manage properties** — opens the [Properties](#properties) window on the property the map shows.
* **Add property** — customers only. Opens the Properties window with a new property card ready to fill in. See [Add a property](#add-a-property).

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-672736ebb123f26aa220584a8cafabdd709c402f%2Fcustomer-profile-properties-menu.png?alt=media" alt="The Properties button in a customer&#x27;s profile header with its menu open: Add photo and Measure property, then Manage properties and Add property"><figcaption><p>The Properties menu: photos, measuring, and the Properties window.</p></figcaption></figure>

### Customer portal access

The globe button at the top of a customer's profile (hover it and it says **Customer portal**) is where you give them access to your [customer portal](/readme/customer-portal.md). Click it and a small panel opens under it. **Access** shows where they stand:

* **Active** — they can sign in to see visits, approve estimates, and pay invoices.
* **Invite sent** — the invite is waiting in their inbox.
* **Not invited** — they don't have access yet.

Click **Invite to portal** (**Resend invite** when an invite is already out) to email them one. In the mobile app the panel shows their access but has no invite button.

**Portal settings** opens the full portal page. That page is where you check whether they've accepted, revoke access, publish their visits and service reports, and see the emails that went out. Customers who used Shortcut's earlier customer area may already have access; the full page shows it. See [Set up the portal, invite customers, and publish visits](/readme/customer-portal/customer-portal-set-up-invite-and-publish.md).

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-59f32e61e9f716eb75369fff7da3306bed8b1adf%2Fcustomer-profile-portal-modal.png?alt=media" alt="The Customer portal panel open under the globe button on a customer&#x27;s profile: Access with a Not invited badge, a line about what the portal lets them do, Portal settings, and Invite to portal"><figcaption><p>Check a customer's portal access and invite them, right from their profile.</p></figcaption></figure>

### Who they are

The profile opens on the **Overview** tab. At the top is their name, or their company name with **Contact:** and the person's name underneath. Next to it, a pill shows where they are: **Lead**, **Prospect**, **Customer**, **Inactive** after you deactivate them, or **Dismissed** for a lead you've set aside.

A red **Unhappy** pill with a date means part of the pinned note is marked as negative. See [Mark a customer as unhappy](#mark-a-customer-as-unhappy).

A customer's [tags](/readme/leads-prospects-customers/customer-tags.md) sit next to the pills. Click the **+** to add one, or the **×** on a tag to take it off.

Under the name are their **email** and **phone**. Click one, type, and press **Enter**, or just click away. **Escape** cancels. While you're editing, small buttons in the field copy the value or start an email. On the phone number they're **Call** and **Send SMS**, so on a phone you can ring someone by tapping their number and then the phone button. Both also copy with **⌘-click** (**Ctrl-click** on Windows). A long email address fades out at the edge; hover it to see the rest.

A red **Bounced** or **Paused** pill next to the email means mail to them has stopped. See [When a customer's email stops working](#when-a-customers-email-stops-working).

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-4ac1443ae4d6126448bbe094fe09b0ab6f0da1b7%2Fcustomer-profile-meta-row.png?alt=media" alt="The top of a customer&#x27;s Overview tab: the company name with Contact and the person&#x27;s name under it, the Customer pill and two tags, the email, and the phone number open for editing with its copy, call, and text buttons"><figcaption><p>Click the email or phone to change it where it sits. While you edit the phone number, its copy, call, and text buttons appear.</p></figcaption></figure>

### The map

In the top-right corner of the Overview is a street map of the property. The pin is the property's photo, or a house when it has no photo. Hover it to see the property's name. Click it to open the [Properties](#properties) window.

With more than one property, **‹** and **›** sit either side of the pin. They step through the customer's active properties: the map moves to the next one, and the photo and details under the map switch to it. Everything about a property on the right-hand side follows the map.

On a narrower screen, like a tablet or a small laptop window, the map is a strip at the top of the right-hand column.

### The details under the map

The property the map shows has its details listed under the map, one row each. Click a value to change it where it sits:

* **Address** — an address belongs to a property, so clicking it opens that property in the [Properties](#properties) window. No property yet? Clicking the address opens the **Address** window instead: pick the address from Google's suggestions and click **Save**.
* **Property size** — the square footage. Numbers only; clear it to remove it. A measured property shows the measured number.
* **Gate code** — once the customer has a property. It shows **Not set** until you add one.

Then come your [custom fields](#custom-fields). The address and gate code also copy with **⌘-click** (**Ctrl-click** on Windows), which is handy when you're pasting an address into a text. Hover any value and a hint reminds you what a click does.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-879f28140cc8eb139d11f6668341cab0013a39a8%2Fcustomer-custom-field-pills.png?alt=media" alt="The details under the map on a customer&#x27;s Overview tab: Address, Property size, and Gate code rows, then the custom-field rows: a second Gate code field reading Not set, and Pets"><figcaption><p>The property's details and your custom fields, one row each. Click a value to change it.</p></figcaption></figure>

### Custom fields

Your **custom fields** — gate codes, pets, irrigation zones, whatever you track on every customer — are the last rows in the details under the map, each with its icon and name. Shortcut starts you off with **Gate code** and **Pets**; you can rename them, give them icons, delete them, or add your own under **Settings → Data & Organization → Custom fields** (the **Manage fields** link in the **Edit customer details** window goes there too). A field without an icon of its own gets a standard one for its type. [Open Custom fields →](https://shortcutco.com/settings/custom-fields)

Click a field to fill it in. An empty one says **Not set**. **Text** and **Number** fields edit in place; **Select**, **Toggle**, and **Date** fields open a menu or a calendar, where **Clear field** empties them. Custom fields are on customer profiles only — leads and prospects don't have them. See [Custom fields](/readme/configuration/custom-fields.md).

### The numbers

A row of figures sits under a customer's email and phone:

* **Total spend** and **12 month spend** — paid invoices only, including paid invoices imported from your previous system.
* **Balance** — what they owe right now. When something is overdue, the label shows how many invoices and how late the oldest one is, for example **1 overdue · 34 days**, and the figure turns red.
* **Completed visits** — how many visits you've completed for them.
* **Properties** (**Property** when there's one) — how many service locations they have.

### Billing

When there's something to know about how a customer pays, a line under the numbers says so:

* **Auto-pay · Visa •••• 4242** — auto-pay is on, and this is the card it charges.
* **Auto-pay failed #1042** — the last auto-pay charge on that invoice didn't go through.
* **Prepaid · \[what it covers] · \[dates]** — a paid prepay covers their work. **Prepay pending** means the prepay invoice hasn't been paid yet. See [Pre-Pay Invoicing](/readme/finances-invoices-and-payments/pre-pay-invoicing.md).

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-e279abbd24cd50bdf22bb28ec00d4b08d687b2a7%2Fcustomer-profile-billing-line.png?alt=media" alt="The row of figures on a customer&#x27;s Overview tab, Total spend, 12 month spend, Balance, Completed visits, and Properties, with the billing line under them reading Prepaid · Weekly Lawn Mowing · Jun 1-Oct 31"><figcaption><p>The line under the numbers: here, a paid prepay and the dates it covers.</p></figcaption></figure>

To open the **Billing** window, click the auto-pay item, choose **⋯ → Billing**, or click **Billing** on the **Invoices** tab.

* **Saved cards.** Each card shows its expiry, who saved it (**Saved by operator** or **Saved in customer portal**), and when. An **Auto-pay** tag marks the card auto-pay charges. A card's **⋯** has **Use for auto-pay…** and **Remove card…**. You can only remove cards your team saved; a card the customer saved in the portal says **Saved by the customer**. If you remove the auto-pay card, Shortcut warns you first that auto-pay turns off with it.
* **Add card** — save a card the customer reads out to you over the phone.
* **Auto-pay.** Switch it off and it's off. Switch it on and Shortcut asks **Did \[name] authorize auto-pay?** Pick the card if they have more than one, tick **Customer authorized auto-pay over the phone**, and click **Turn on auto-pay**. Their consent is recorded. No card saved yet? You'll add one first. Customers you invoice manually can keep a card on file, but auto-pay stays off: **Manual invoicing — auto-pay can't be turned on.**
* **Auto-pay failed** — the latest declined charge: the invoice, why it was declined, the date, and **Open invoice**.
* **Consent history** — every time permission for auto-pay or a card on file was granted or revoked, whether it was **Staff (phone)** or **Customer (portal)**, and the date.

{% hint style="info" %}
**Saving cards by phone needs Stripe's approval** (Stripe calls it MOTO). Until your company has it, **Add card** is greyed out and the Billing window says so. Click **Request access…**. Shortcut copies a ready-written request and opens Stripe Support; paste it into the chat. Once Stripe confirms, come back and click **Mark approved…**. This switches on card entry by phone for every customer, not just this one.
{% endhint %}

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-0f277e47427249f97043d015b26566ed8ebfd35b%2Fcustomer-profile-billing.png?alt=media" alt="The Billing window over a customer&#x27;s profile before Stripe has approved saving cards by phone: Add card greyed out, the Auto-pay switch off, and Request access… and Mark approved… at the bottom"><figcaption><p>The Billing window while your request to save cards by phone is waiting on Stripe.</p></figcaption></figure>

### Upcoming, work, estimates, and invoices

The rest of a customer's Overview is four sections. **Work**, **Estimates**, and **Invoices** show five at a time; when there are more, **See all** (with the count) opens the matching tab. Every row has its own **⋯** menu on the right.

**Upcoming** shows booked visits as a row of cards, one per day. Each card has a small calendar page with the date (red for today), the services (plus the round, for chemical programs), the price, and the crew with its color. A discounted visit shows the original price crossed out. When there are more cards than fit, **‹** and **›** next to the heading scroll through them. With nothing booked, the section doesn't show. Hover a card for its **⋯**:

* **Add service…** — add a one-time service to that visit. See [Adding one-off services to a visit](/readme/jobs-and-scheduling/adding-one-off-services-to-a-visit.md).
* **Add discount…** (or **Edit discount…**)
* **Reschedule…** — move this visit, or this visit and every one after it. See [Reschedule a job](/readme/jobs-and-scheduling/reschedule-a-job-single-visit-vs-update-future-events.md).
* **Open in Dispatch** — opens that day in Dispatch.

**Work** shows active and paused jobs:

* the job and its cadence;
* what's next: **Next Sep 18th**, **Not scheduled**, or **Paused until Oct 1st · Mower in shop**;
* the crew;
* **Prepaid** when a paid prepay covers the next visit;
* the price.

A tag on the right flags the one thing that needs attention: **Paused**, **Needs reschedule**, or **Next visit skipped**. A job's **⋯** has:

* **Schedule…** — for a job that isn't on the calendar yet. Pick a start date in the **Schedule job** window. Seasonal chemical programs also show the **Starting round** picker. See [Scheduling chemical programs](/readme/jobs-and-scheduling/scheduling-chemical-programs.md).
* **Reschedule next visit…** — pick a new date, choose **This visit only** (the default) or **This and future visits**, and click **Save**.
* **Pause…** — until you resume it or until a date, with an optional reason. **Resume…** — now, or from a date you pick. See [Pause, resume, or cancel a job](/readme/jobs-and-scheduling/pause-resume-or-cancel-a-job.md).
* **New job** — start another job at the same property.
* **Cancel job…**

If a move puts a day over your daily capacity, Shortcut still makes it and tells you so.

**Estimates** shows each estimate as a card. Across the top: its status (**Draft**, **Sent**, **Approved**, **Declined**, **Expired**, **Replaced**, **Voided**), the property it's for and its square footage, anything that needs your attention, and the date. What needs attention:

* when a sent estimate expires, for example **Expires in 3 days** (in red when it's close);
* how many lines are optional;
* anything the customer took out, for example **Aeration removed by client**.

Under that, each line of the estimate is listed with how often it repeats and its price. Optional lines say **Optional**.

Click the top of a card to open the estimate as the customer sees it, in preview. **Approve** and **Decline** are switched off there, and your visit doesn't count as the customer opening it. An estimate's **⋯** has **View estimate** (**Open draft** for a draft), **Copy link**, and **New estimate**. While it's still open it also has **Send reminder** (sent estimates only), **Approve…**, and **Void estimate…**. See [Prospect management](/readme/leads-prospects-customers/prospect-management-approve-remind-void.md).

**Invoices** shows the invoice number, status (**Draft**, **Sent**, **Overdue**, **Paid**, **Void**), the due or paid date, and the total. Click a row to open the invoice. Its **⋯** has **View invoice**, **Collect payment…** (on sent and overdue invoices), and **Copy link**.

Moved to Shortcut from another system? The history you imported is listed with the invoices, by date, with an **Imported** tag. For example, **Invoice · Jobber #1187** with its date, status, and payment method from the old system. These rows are for reference only: you can't open or collect them in Shortcut. Their **⋯** has **Open in Jobber** (when the import kept a link) and **Copy Jobber #1187**.

### The right-hand column

Top to bottom:

* **The map** — see [The map](#the-map).
* **Photo and pinned note** — customers only. See [Property photos](#property-photos) and [The pinned note](#the-pinned-note).
* **The details** — the property's address, size, and gate code, then your custom fields. See [The details under the map](#the-details-under-the-map).
* **Tasks** — follow-ups for this person, with due dates and who they're for, including any added while they were a lead or prospect. See [Tasks](/readme/dashboard/tasks-to-dos.md).
* **Activity** — the five latest things that happened. Click **Activity** or **See all activity** for the full feed.

On a narrower screen, like a tablet or a small laptop window, this column moves below the lists.

### Property photos

Photos belong to a property: the front of the house, the gate, the side yard. Each property holds up to 12. Photos can be JPG, PNG, or WEBP, up to 5 MB each.

The first photo of the property on the map sits at the top of the right-hand column, like a print pinned to the page, with the next two peeking out behind it. It's also the pin on the map. Step to a property with no photos and the last print stays where it is; the house on the map tells you this property has none.

To add photos, choose **Property → Add photo**, or open the property in the [Properties](#properties) window and click **Upload photo…** under **Photos**.

Click a photo to pick it up: it grows where it is, with the property's name in the corner. Click it again, or press **←** or **→**, to flip through that property's photos. Click anywhere else, scroll, or press **Esc** to put it back. To remove a photo, hover it and click the **×** in its corner.

### The pinned note

The note under the photo is for the things you'd otherwise keep on a sticky note: *"Gate sticks, sprinkler heads on the north side, don't ring the bell before 9."* It looks like it was written with a highlighter, and everyone who opens the profile sees it.

* To start one, choose **⋯ → Add pinned note**. To change it, click the note (or choose **⋯ → Edit pinned note**).
* Type, then click away (or press **⌘+Enter**) to save. **Escape** puts back what was there before. It holds up to 1,000 characters.
* While you're writing, a small bar above the note has two pens: **Highlight** (yellow) and **Negative** (red). Select some text and click a pen to change its color. With nothing selected, the pen you pick is the color of what you type next.
* To remove the note, delete all of its text.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-7ca1131f802143f85f5bca5c87e645131ec105b1%2Fcustomer-profile-pinned-photos.png?alt=media" alt="The top of the right-hand column: a tilted property photo with two more peeking out behind it, and the pinned note being edited, with the Highlight and Negative pens above it and one sentence marked in red"><figcaption><p>A photo of the property and a pinned note everyone sees. The red part is what makes this customer unhappy.</p></figcaption></figure>

### Mark a customer as unhappy

Had a complaint or a rough call with a customer? Write it in their pinned note and mark it in red with the **Negative** pen. For as long as there's red in the pinned note:

* a red **Unhappy** pill with the date the red was added sits next to the **Customer** pill;
* the customer counts toward **At-risk customers** on your [Dashboard](/readme/dashboard.md).

Click the **Unhappy** pill and the page brings the pinned note into view and makes the red part pulse, so the reason is read where it's written.

Sorted it out? Delete the red text, or select it and click **Highlight** to turn it yellow. The pill goes away and the customer stops counting toward At-risk.

{% hint style="info" %}
**Comments can't be flagged as negative anymore.** Comments that were flagged as a negative interaction in the past no longer count toward At-risk. If a customer is still unhappy, mark it in red in their pinned note.
{% endhint %}

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-b782248cf0e473894b016fa4092514582bc67594%2Fcustomer-profile-unhappy-pill.png?alt=media" alt="The top of a customer&#x27;s profile with a red Unhappy pill and its date next to the Customer pill, and the pinned note on the right with one sentence highlighted in red"><figcaption><p>The Unhappy pill stays while there's red in the pinned note. Click it to see why.</p></figcaption></figure>

### Properties

Every service location the customer has lives in one window. Open it by clicking the pin on the map, clicking the **Address** under the map, or choosing **Property → Manage properties**.

The window is a satellite map with the customer's properties down the left side as cards. The open card shows one property in full. The others are folded down to a row with their photo, name, and address. Click a row, or a pin on the map, to open that property; the map moves there. The **+** and **−** buttons at the bottom right zoom, and the target button takes you back to the open property. Close the window with the **×** at the top right.

On the open card, click any value to change it. A change saves as soon as you press **Enter** or click away. **Escape** cancels.

* **Name** — the card's title, like **Main**, **Shop**, or **Rental**. Click it to rename the property. A property with no name shows as **Property 2** and so on.
* **The summary line** — when the customer has more than one property, a line under the name sums up this one: **Next visit Tomorrow · 2 open jobs · 1 open invoice**.
* **Address** — click it and pick the new address from Google's suggestions, so the map and routes land in the right place. Only a picked suggestion saves.
* **Property size** — type the square footage, or measure it with **Measure manually** and **Auto-measure**. See [Measure a property](#measure-a-property). Once the property is measured, its size is the measured number; to change it, edit the measurement.
* **Gate code**
* **Team notes** — anything the crew needs to know before they arrive: *"Park on the north side, don't ring the bell."* Click away or press **⌘+Enter** to save.
* **Photos** — up to 12 for this property. Click **Upload photo…** (or the photo tile with a **+** once there are some) to add them; you can pick several at once. Hover a photo and click its **×** to remove it. Click one to see it bigger.

The card's **⋯** menu has **Edit property name**, **Open in Google Maps**, and **New job here**, which starts a job at this property.

Properties that are no longer active come last, with an **Inactive** tag after their name. These are often ones brought over in an import. You can look at them, but you can't start a new job there, and **‹ ›** on the profile's map skips them.

On a lead or prospect, the window shows their property so you can measure it. Change their address from the details under the map.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-daa3cfb75d77df8919e1c9c40f62222cc9ad6309%2Fcustomer-property-workspace.png?alt=media" alt="The Properties window for a customer with two properties: a satellite map, and on the left the open Rental card with its summary line, Address, Property size with Measure manually and Auto-measure, Gate code, Team notes, and Photos, then a folded Primary Residence row and Add property"><figcaption><p>The Properties window: every property as a card over one map. Click any value to change it.</p></figcaption></figure>

{% hint style="warning" %}
**Moving a property clears its map.** If you change a property's address to a different place and it was already measured, Shortcut warns you first and asks you to confirm. The measured areas, and the square footage they measured, are removed, because they were drawn around the old lot. A square footage you typed yourself is kept. Measure the new address after you save. Changing the address in **Edit customer details**, or in a lead's **Address** window, clears the map the same way.
{% endhint %}

#### Add a property

Customers only. Click **Add property** at the bottom of the list (**Add another property** when there's just one), or choose **Property → Add property** in the header. A new card opens, with the other properties stacked above it.

1. Type a name in **New property name** — **Main**, **Shop**, **Rental** — so it's easy to pick out later.
2. Click **Address** and pick it from Google's suggestions. The map moves there.
3. Fill in anything else you know: size, gate code, team notes, photos.
4. Click **Save**. Or click **Measure manually** to save it and go straight into Measure mode.

**Dismiss** (or **Esc**) throws the new card away. Click the stacked cards to go back to the list.

### The tabs

* **Overview** — everything above. The profile always opens here.
* **Jobs** — every upcoming visit, then every job, including completed and canceled ones.
* **Activity** — the full timeline: visits, invoices, payments, comments, and tasks. See [Posting to the activity feed](#posting-to-the-activity-feed). A visit the office closed with **Mark handled** in Dispatch shows in the feed as **Visit closed as handled · \[job]** (*Handled outside Shortcut for \[date]*), not as canceled. See [Needs attention](/readme/dispatch/needs-attention.md#closing-out-a-stop-that-wont-be-rescheduled).
* **Estimates** — every estimate. Each one that's still open has **Void** and **Approve** buttons.
* **Invoices** — every invoice, including prepay invoices and imported history, and a **Billing** button.
* **Profitability** — internal-only revenue, cost, and margin for this customer (unlocks once labor costs are set up in [Costs](/readme/costs-and-profitability.md)).

Leads and prospects get **Overview**, **Activity**, and **Estimates** only.

The browser's **Back** button steps back through the tabs you've opened.

### Leads and prospects

Leads and prospects open the same profile, with a **Lead** or **Prospect** pill. Their profile shows only what makes sense before someone is a customer: their contact details and address, what they asked for, their estimates, tasks, comments, and the property map. Jobs, invoices, the numbers, billing, tags, custom fields, photos, the pinned note, and the portal button arrive when they become a customer.

**Request.** Under the contact details, **Request** shows what they asked for: the services they picked, their special requests in their own words (**Show more** opens a long one), and your estimated hours. Click the hours to add or change them. Next to the heading is where they came from — **Intake form**, **Added by staff**, or **CSV import** — and the date.

**Address.** Click the **Address** under the map (or **Add address**) and pick it from Google's suggestions in the **Address** window, then click **Save**.

**Estimates.** When they have one open estimate (a draft, or one you've sent), **Void** and **Approve** sit at the end of the top bar. For a sent estimate, **⋯ → Send reminder** re-sends it. With more than one open estimate, **Review estimates** takes you to the **Estimates** tab, where each one has its own buttons. See [Prospect management](/readme/leads-prospects-customers/prospect-management-approve-remind-void.md).

**Dismiss.** Not going to quote them? Click **⋯ → Dismiss lead** (**Dismiss prospect** for a prospect). Shortcut asks first. They leave your active lists, but their comments, tasks, and estimates stay. The profile then shows a **Dismissed** pill, and **⋯ → Restore lead** brings them back.

Opening a lead's or prospect's profile clears the **New** tag on their row in Customers.

### On a phone

The header buttons shrink to icons: the **⋯** menu, the globe for **Customer portal**, a house for **Property**, a speech bubble for **Comment**, and **Create estimate**. (**Void**, **Approve**, and **Review estimates** keep their labels.) Swipe the tab row sideways to reach **Profitability**. The right-hand column comes after the invoices: the map, the photo and pinned note, the details, tasks, and activity.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-c2972687b5cd118098b195c3d5671ce106152d12%2Fcustomer-profile-mobile.png?alt=media" alt="The top of a customer profile on a phone: icon-only header buttons, the tab row running off the right edge, the name with its Customer pill, the email and phone, and the row of figures"><figcaption><p>On a phone the header buttons shrink to icons. Swipe the tab row to see the rest.</p></figcaption></figure>

## Measure a property

Shortcut can measure a property from satellite imagery, so you can quote by the square foot without a site visit. You measure in the [Properties](#properties) window, and it works the same on leads, prospects, and customers.

There are two ways in:

* **Property → Measure property** in the profile header opens the property the map shows straight into Measure mode.
* In the Properties window, click **Measure manually** under **Property size** (**Edit measurement** once it's measured).

In Measure mode the window fills the screen. The panel on the left has the property's name and **Auto-measure** at the top, then the totals — **Mowable**, **Snow removal**, and **Not mowed** square feet — then every area you've drawn, grouped under **Mowing**, **Snow removal**, and **Not mowed**. A toolbar sits over the map.

### Let Shortcut measure it

Click **Auto-measure**, on the property card or in the Measure panel. Shortcut checks with you first, and if the property already has areas, it says how many of your edited ones will be replaced. While it scans the lot for lawn, structures, and driveway, the map dims and says **Measuring property…**. When it's done, the result opens in Measure mode.

Treat the result as a first draft. A **Not reviewed yet** note reminds you that estimates don't use it until you accept it. Look it over, fix anything that's off, and click **Use this measurement**. Until you do, the property card shows **Needs review** next to the size, and its button reads **Review measurement**.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-568ed2a4f17c6aff44c7d0505677e48f35610f6b%2Fproperty-auto-measure-review.png?alt=media" alt="Measure mode right after Auto-measure: lawn, driveway, and structure areas drawn on the satellite map, the Not reviewed yet note in the panel, the totals, and Use this measurement at the bottom"><figcaption><p>An auto-measurement waits for you: check the outlines, then click Use this measurement.</p></figcaption></figure>

If **Auto-measure** is greyed out, hover it to see why — usually the address can't be measured automatically. You can still draw the areas yourself.

### Draw it yourself

1. Pick what you're outlining from the toolbar over the map: **Lawn**, **Driveway**, **Sidewalk**, **Bed / mulch**, **Exclusion**, or **Structure**. (On a property with no areas yet, the panel also offers **Draw lawn**, **Draw driveway**, and **Draw bed / mulch**.)
2. Click the map at each corner of the edge. The size shows as you go. On a touch screen, move the map so the crosshair sits on the corner and tap **Drop corner**.
3. To finish, click the first corner again or press **Enter**. **Esc** finishes it too.

While you draw, you can drag the corners you've already placed, and corners snap to the lot line and to the edges of other areas.

Select an area — in the list or on the map — to work on it. A bar over the map shows its name and size, with **Cut out**, **Delete**, and **Done**.

* Drag a corner to move it, or drag the handle between two corners to add one.
* Click a corner for **Delete corner**.
* **Cut out** trims a hole out of the area, like a shed or a pool. Draw the hole, then click **Cut out** to confirm. Click a corner of a hole for **Remove cutout**.
* The area's **⋯** in the list has **Change type** and **Delete**.

Hold **Space** to drag the map around while you draw. **Undo** and **Redo** in the toolbar (or **⌘Z** and **⇧⌘Z**, **Ctrl+Z** and **Ctrl+Y** on Windows) step back through every change, one corner drag at a time.

### Name your areas

Every area gets a plain name to start — *Lawn*, *Lawn 2*, *Driveway*. Give areas names your crew will recognize: select an area, click its name in the list, and type, for example *Bermuda* or *Fescue*. Press **Enter** or click away to keep it; **Esc** puts the old name back.

A name is only a label: an area called *Fescue* is still lawn and still counts toward mowable square feet. Changing an area's type keeps its name.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-5fcbb81b9d79a56495a2e44f3859b0321691e54e%2Fproperty-measurement-editor.png?alt=media" alt="Measure mode filling the screen: two lawn areas and a driveway drawn on the satellite map; the toolbar with Lawn, Driveway, Sidewalk, Bed / mulch, Exclusion, Structure, Undo, and Redo; and on the left the panel with the Mowable, Snow removal, and Not mowed totals, the areas listed under Mowing and Snow removal with one named Bermuda, and Discard and Save at the bottom"><figcaption><p>Measure mode. Pick a type from the toolbar, click the map at each corner, then save.</p></figcaption></figure>

### Save — or walk away safely

Click **Save** to keep your work. Shortcut confirms with **Measurement saved**, the mowable square footage becomes the property's size on the profile, and you're back on the property card. If the property had a square footage typed in by hand, a note warns you before the measurement replaces it.

You need at least one **Lawn** area to save — it's the number a quote is priced from.

**Discard** throws your changes away. Leaving with unsaved changes — the back arrow next to the property's name, or **Esc** — never throws them away silently: the bottom of the panel shakes and says **Save or discard your changes**.

## Posting to the activity feed

Comments are how the office leaves a record on someone — *"Called about the drainage, they want a quote in spring."* Every comment lands in their **Activity** feed with your name on it, like **Comment · Ryan H.**, and in Recent Activity on the Dashboard, so the rest of the office sees it without being told.

Comments work the same way on leads and prospects. When a lead becomes a customer, the comments written about them are on their customer profile.

A comment is a dated entry in the feed. The [pinned note](#the-pinned-note) is different: there's one per customer, and it stays at the top of the right-hand column.

### Add a comment from anywhere on the profile

Click **Comment** in the top-right of the profile header (on a phone it's the speech bubble). It works from every tab.

A window opens with the cursor already in the box. Type your comment, then click **Save** — or press **⌘+Enter** (**Ctrl+Enter** on Windows). Plain **Enter** starts a new line.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-af7d442a4db669234923dea7c53ed0dd409d55cf%2Fcustomer-note-dialog.png?alt=media" alt="The comment window over a customer&#x27;s profile: a two-line comment, a photo and a PDF attached, Attach… at the bottom left, and Dismiss and Save at the bottom right"><figcaption><p>The Comment window. Attach photos and files, then click Save or press ⌘+Enter.</p></figcaption></figure>

When it saves, the window closes and a **Note added** message pops up in the bottom corner with your comment underneath. Click **Go to Activity** in that message to jump straight to it in the feed — it's highlighted so you can spot it.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-7ee02ed628dc4ba11fca03b076bf5c2ade209050%2Fcustomer-note-added-toast.png?alt=media" alt="The Note added message in the bottom corner of a customer&#x27;s profile, showing the comment&#x27;s text and a Go to Activity button"><figcaption><p>Go to Activity jumps to your comment in the feed.</p></figcaption></figure>

If a comment can't be saved, a message says what went wrong. Nothing you typed is lost — fix the problem and click **Save** again.

### Closed it by accident? It's still there

Press **Esc** or click outside the comment window and it closes — but your comment waits for you. Click **Comment** again and your text and attachments are right where you left them. Your text is kept even if you reload the page or come back to this customer later on the same browser; attachments are kept only while the page stays open.

To throw a comment away on purpose, click **Dismiss**. That's the only thing that clears it.

### Or write it on the Activity tab

The **Activity** tab has the same comment box at the top of the feed: **Add a comment to the activity log…**. Type, attach, and click **Save** — the comment appears at the top of the feed. This box doesn't hold on to unsent text if you leave the tab, so use **Comment** in the header for anything you might come back to.

### Attach photos and files

Click **Attach…** to add photos and files — one button for both, and you can pick several at once. Each appears as a tile under your text while it uploads. Hover a tile and click its **×** to remove it. If an upload fails, the tile turns red: click **Retry**, or remove it. **Save** waits until every upload has finished.

* **Photos:** JPEG, PNG, HEIC, or WebP, up to 10 MB each
* **Files:** PDF, Word, Excel, CSV, or plain text, up to 25 MB each
* Up to **10** attachments per comment. Video isn't supported.

A comment can be just attachments, with no text. Photos land in the feed as thumbnails you can click through; files show as a chip you can open — **PDF · 1.2 MB**. Useful for a signed agreement, a soil test, or a photo of the damage somebody's disputing.

### Fixing and removing a comment

Open the **⋮** menu on a comment in the feed and choose **Edit** or **Delete**. Any admin can edit or delete any comment.

**Edit** opens the same window. You can change the text, but not the attachments — they're shown so you know what's there, but once a comment is posted you can't add or remove them. An edited comment is marked **· Edited** rather than quietly changing.

**Delete** asks first — *Delete this comment? This can't be undone.*

### Tasks in the feed

A customer's tasks show up in their feed too, with a checkbox — tick it and it's done, right there, without opening anything. The comment box only posts comments; you add tasks from the tasks list on the profile's **Overview** tab. See [Tasks](/readme/dashboard/tasks-to-dos.md).

{% hint style="info" %}
**Green circles mean something got finished.** In the activity feed a green circle marks a completion — a job done, a task ticked. Photos and comments are gray. If you're scanning a long feed, the green dots are the work.
{% endhint %}

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-890111d72360944e435f9950099fd2964b868baa%2Fcustomer-activity-composer.png?alt=media" alt="The Activity tab: the comment box at the top with Attach… and Save, then a posted comment and a run of completed jobs marked with green circles"><figcaption><p>The Activity tab: write a comment at the top of the feed. Green circles mark finished work.</p></figcaption></figure>

## When a customer's email stops working

Sometimes email to a customer stops going through, and you find out weeks later when nobody paid. Shortcut flags it with a red pill right next to their email on the profile. While a pill is showing, invoices, reminders, proposals, and review requests to that customer are held rather than sent.

**Bounced.** A red **Bounced** pill next to the email means the address doesn't exist, or the mail server permanently rejected it. It's almost always a typo. Click the email, fix it, and press **Enter** — Shortcut starts sending again.

**Paused.** A red **Paused** pill means this customer clicked "this is spam" on one of your emails. Shortcut stops emailing them until you sort it out — usually a phone call. This applies only to *your* company, not to anyone else using Shortcut.

Hover either pill to see the reason. Correcting the address clears the pill, and the next send goes out normally.

A customer can also turn off billing, marketing, or service emails from your company. That doesn't show a pill. Check **⋯ → Email preferences**.

## Deactivate a customer

When a customer moves away or you part ways, **deactivate** them instead of deleting anything. Open their profile, click **⋯** at the top right, and choose **Deactivate account**.

Shortcut asks **Deactivate this account?** and reminds you that active jobs stop being scheduled and the customer disappears from active lists. Pick a reason — **Not sure**, **Price**, **Moved away**, or **Service issues** — and click **Deactivate**.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-5baf989ed807277f46537fd08b40b49df69efb86%2Fcustomer-deactivate-dialog.png?alt=media" alt="The Deactivate this account? window over a customer&#x27;s profile: what deactivating does, the reason list (Not sure, Price, Moved away, Service issues), and Cancel and a red Deactivate button"><figcaption><p>Pick a reason and click Deactivate. You can reactivate them later.</p></figcaption></figure>

What deactivating does:

* Pauses all their jobs, so nothing new goes on the schedule
* Stops the built-in reminders and review requests for them. Campaigns you've built don't check this on their own; add **Customer account status** **is** **active** to a campaign's start if it shouldn't reach former customers. See [Automations](/readme/automations.md#good-to-know).
* Keeps all history — visits, invoices, payments — exactly as it was
* Leaves unpaid invoices collectible; they can still pay what they owe
* Shows an **Inactive** pill on their profile, and the Customers list can be filtered to hide or show them

Changed your mind, or they came back? Open their profile, click **⋯**, and choose **Reactivate account**. Shortcut asks **Reactivate this account?**. Click **Reactivate** and their paused jobs resume from today.

{% hint style="warning" %}
**Every paused job resumes** — including any you'd paused on purpose before you deactivated them (a winter break, say). After reactivating, check **Work** on their **Overview** tab and pause those again.
{% endhint %}

## Add a customer manually

{% stepper %}
{% step %}

### Add a customer

Go to [Customers](https://shortcutco.com/customers), click **Add customer** (top right), fill in their details, then click **Save**.
{% endstep %}
{% endstepper %}

## Export your list

**Export CSV** sits in the header of the Customers page.

The export follows exactly what you're looking at — the tab you're on (leads, prospects, or customers), your saved view, your filters, and your sort order. It includes **every matching record**, not just the rows that have loaded on screen, so you don't need to scroll to the bottom first.

## Import customers (bulk)

{% stepper %}
{% step %}

### Import customers

Go to [Customers](https://shortcutco.com/customers), click **Import**.

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-aaea21b1322d131ac36616faf9ce943e83f3ec4b%2Fcustomers-import-upload.png?alt=media" alt="Import Customers modal with CSV upload area"><figcaption><p>Start imports by uploading a CSV or downloading the template.</p></figcaption></figure>
{% endstep %}

{% step %}

### Upload your CSV

Upload your CSV file. Shortcut will **detect columns and let you map them** to the correct fields.
{% endstep %}

{% step %}

### Review and confirm

Review the column mapping and confirm. Shortcut tracks import results:

* ✅ **Successfully imported** rows
* ❌ **Failed** rows (with error details)
* ⏭️ **Skipped** rows (duplicates)
  {% endstep %}
  {% endstepper %}

<details>

<summary>We can help with imports</summary>

If you're coming from another system and the import is messy, email **<hello@shortcutco.com>**. Tell us where your customers live today and, if you can, attach your CSV file. We can help you get them into Shortcut.

</details>
