> 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/finances-invoices-and-payments/pre-pay-invoicing.md).

# Pre-pay invoicing

Pre-pay invoicing lets you collect payment from a customer in advance to cover all services during a specified date range. Once the pre-pay invoice is paid, any work completed within that coverage period is automatically marked as covered — no additional invoices are generated for those visits.

***

## Overview

Pre-pay is ideal for customers who prefer to pay up front for a season or a defined block of service. Instead of receiving an invoice after each visit, the customer pays once and all work during the coverage window is included.

**How it works at a high level:**

1. You create a pre-pay invoice for a customer with a dollar amount and coverage dates.
2. The customer pays the invoice.
3. Every time a job is completed for that customer during the coverage period, Shortcut links it to the pre-pay invoice instead of creating a new invoice.
4. Your crew sees a **Prepaid** badge on those jobs so they know the customer has already paid.

***

## Creating a Pre-Pay Invoice

1. Open the customer's profile.
2. Click **⋯** at the top right and choose **Prepay**. The **Create prepay invoice** window opens. (For offline-payment customers, the menu item reads **Record prepay** and the window is **Record prepaid payment**.)
   * **Prepay** is greyed out until the customer has a job for the prepay to cover.
3. Fill in the details:
   * **Covers** — choose what the prepay covers (specific jobs or the whole account).
   * **Amount** — the total prepaid amount (up to $1,000,000).
   * **Description** (required, up to 200 characters) — e.g., "2026 Full Season Lawn Care".
   * **Coverage start** — when the coverage period begins.
   * **Coverage end** — when the coverage period ends.
4. Click **Send prepay invoice** (**Record prepaid payment** for offline-payment customers). The window closes, and the prepay invoice appears in the customer's **Invoices** list.

<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>Prepay sits near the top of the ⋯ menu on the customer's profile.</p></figcaption></figure>

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-87457e76a86987a480fd417a0a752ededa237919%2Fcreate-prepay-invoice.png?alt=media" alt="Create prepay invoice modal"><figcaption><p>Create a prepay invoice from the customer profile.</p></figcaption></figure>

<figure><img src="https://2299783971-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOhi7KtJ4vY1pDKwWu5SV%2Fuploads%2Fgit-blob-121e901ffdd74f6975bebd3d0b61f60297bfc81c%2Fprepay-coverage-dates.png?alt=media" alt="The Create prepay invoice window filled in over a customer profile: Covers set to Weekly Lawn Mowing, Amount 1500, Description 2026 Mowing Season June-October, Coverage start 06/01/2026 and Coverage end 10/31/2026, with Cancel and Send prepay invoice"><figcaption><p>Coverage dates decide which completed work the prepay can cover.</p></figcaption></figure>

Shortcut then:

* Creates a pre-pay invoice for the amount you entered.
* Applies sales tax (if you've set it up).
* Adds any processing fee (if you've set one up).
* Sends the invoice to the customer by email and/or text.

{% hint style="warning" %}
**Coverage periods can't overlap.** If a customer already has a pre-pay invoice (active or awaiting payment) whose dates overlap the ones you're entering, Shortcut shows an error and won't create it. Void the existing pre-pay invoice first, or choose dates that don't overlap.
{% endhint %}

***

## Pre-Pay Invoice Lifecycle

| Status      | Meaning                                                                                                          |
| ----------- | ---------------------------------------------------------------------------------------------------------------- |
| **Unpaid**  | The invoice has been sent but not paid. Jobs are **not** covered yet.                                            |
| **Paid**    | Customer has paid. Coverage is now active — jobs completed within the date range will be linked to this invoice. |
| **Expired** | The coverage end date has passed. No further jobs will be covered.                                               |

{% hint style="info" %}
Pre-pay coverage only activates **after the invoice is paid**. If a customer has a pre-pay invoice that hasn't been paid yet, their jobs will be billed normally according to their billing mode (on completion, offline, or scheduled).
{% endhint %}

***

## How Coverage Works

### Automatic Matching

When your crew completes a job, it's covered by the prepay if all three are true:

1. The customer has a pre-pay invoice.
2. That invoice is **paid**.
3. The job is completed between the **coverage start** and **coverage end** dates.

If so, the job is linked to the pre-pay invoice and marked **covered by prepay**. No new invoice is created. If not, the job is billed normally under the customer's billing mode.

{% hint style="info" %}
**Field add-ons are billed separately.** If a worker adds an extra service during a covered visit, that add-on is invoiced normally — prepay covers the scheduled work, not on-site extras. [Products](/readme/products.md) added to a covered visit work the same way: they're invoiced when the visit is completed.
{% endhint %}

### What your crew sees

* In the **Today** view, prepaid jobs display a green **Prepaid** badge.
* When completing a job, the visit summary shows a **Prepaid coverage active** message.
* On the **Schedule Board**, completed prepaid jobs show the pre-pay invoice number for reference.

### What you'll see on the profile

The line under the numbers on the customer's profile shows their prepay:

* **Prepaid · \[what it covers] · \[dates]** — the prepay invoice is paid and coverage is active.
* **Prepay pending** — the prepay invoice has gone out but isn't paid yet, so their jobs are still billed normally.

In **Current jobs**, a job whose next visit falls inside paid coverage shows **Prepaid** in its details.

Prepay invoices show in the customer's **Invoices** list with the same statuses as any other invoice (**Sent**, **Paid**, **Overdue**, and so on). Click one to see which completed visits it has covered.

<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 numbers on a customer&#x27;s Overview tab (Next visit Oct 6th, Balance $0, 12 month spend $1,500, Total spend $1,500), the billing line under them reading Prepaid · Weekly Lawn Mowing · Jun 1-Oct 31, and the Weekly Lawn Mowing row in Current jobs ending in • Prepaid"><figcaption><p>A paid prepay shows under the customer's numbers: what it covers and the coverage dates.</p></figcaption></figure>

***

## Pre-Pay and Billing Modes

Pre-pay takes priority over every billing mode (on completion, offline, or scheduled). If paid coverage is active for the job date, the job is covered by the prepay. If not, the customer's normal billing mode applies.

So a customer who is normally on offline billing can prepay, and their jobs are covered during the coverage period without any action from you.

***

## Multiple Pre-Pay Periods

You can create sequential (non-overlapping) pre-pay invoices for the same customer. For example:

* **Winter 2026**: January 1 – March 31
* **Spring/Summer 2026**: April 1 – September 30
* **Fall 2026**: October 1 – December 31

Once a coverage period ends, later jobs go back to the customer's normal billing mode until the next pre-pay period begins.

***

## Ending a pre-pay arrangement early

Pre-pay invoices can't be voided like standard invoices. If a prepaid arrangement needs to end early, refund the payment (see [Refunds & credit memos](/readme/finances-invoices-and-payments/refunds-and-credit-memos.md)) and contact support at **<hello@shortcutco.com>** to close out the coverage. Jobs already completed under the coverage stay linked for history.

***

## Refunds

If a pre-pay period ends with unused value, choose **⋯ → Refund…** on the pre-pay invoice in Invoices and enter the amount. A card or bank payment goes back to the customer through Stripe; a payment you recorded by hand is recorded as refunded and you return the money yourself. If the invoice is linked to QuickBooks, you can issue a credit memo instead. See [Refunds & credit memos](/readme/finances-invoices-and-payments/refunds-and-credit-memos.md).

***

## Frequently Asked Questions

### Does pre-pay include sales tax?

Yes. Sales tax is added to the pre-pay amount when the invoice is created, at your company's tax rate.

### What if a customer has autopay enabled?

Autopay works with pre-pay invoices. When the pre-pay invoice is created and sent, autopay charges the customer's saved payment method.

### Can I create a pre-pay invoice for a single visit?

Yes. Set the coverage start and end dates to the same day (or a narrow range). Any job completed on that date will be covered.

### How do I know which jobs were covered by a pre-pay invoice?

Jobs linked to a pre-pay invoice show the pre-pay invoice number in the job history and on the schedule board. You can also open the pre-pay invoice to see which visits were completed during the coverage period.
