> ## Documentation Index
> Fetch the complete documentation index at: https://www.carstoragesoftware.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Attach contracts to customer workflows

> Require the right agreements during customer onboarding or customer setup.

## What you will accomplish

You will connect contract templates and required uploads to **customer onboarding** so new portal customers finish paperwork during their first sign-in—not only when staff sends a one-off email.

When this works, customers complete profile, vehicles, uploads, and signing in a sensible order, and your team can confirm the signed PDF on the customer record.

## When to use this guide

Use this guide when:

* Every new storage customer must sign the same storage agreement.
* Customers should sign before they finish portal setup.
* Your agreement uses vehicle fields and customers may need to add a car first.
* Customers must also upload insurance or registration during onboarding.
* You have already created and tested a contract template.

> [!TIP]
>
> **Not sure yet?**
>
> If you are still testing wording or fields, send contracts manually first with [Send a contract for signature](/docs/contracts/send-a-contract-for-signature.md). Turn on onboarding after one successful test.

## Before you start

* Complete [Create a contract template](/docs/contracts/create-a-contract-template.md).
* Place required signature, initials, customer, and car fields on the template.
* If uploads are required, complete [Configure document requirements](/docs/contracts/configure-document-requirements.md).
* Sign in as a team member who can open [Settings](https://www.carstoragesoftware.com/dashboard/settings).

## Manual send vs onboarding

> [!NOTE]
>
> **Customer onboarding** is best when **every** new customer should sign the same agreement during portal setup.
>
> **Manual send from a customer record** is best when only some customers need the agreement or staff must review each case first.

| Situation | Use |
| - | - |
| Every new portal customer signs the same agreement | This guide — **Customer app onboarding** |
| One customer needs an agreement today | [Send a contract for signature](/docs/contracts/send-a-contract-for-signature.md) |
| Same agreement for several vehicles, one email | [Send multiple contracts in one signing link](/docs/contracts/send-multiple-contracts-in-one-signing-link.md) |

## Step 1: Confirm the template is ready

**1. Open Contracts & Documents**

Go to [Settings > Contracts & Documents](https://www.carstoragesoftware.com/dashboard/settings/contracts-and-documents).

**2. Check the template list**

Confirm your agreement appears and is **Active**. Only ready templates should be connected to onboarding.

![Contracts and Documents settings showing active contract templates](https://mintcdn.com/carstoragesoftware/Y2uxZmzRWHSqQdJO/images/contracts/contracts-settings-overview.webp?fit=max\&auto=format\&n=Y2uxZmzRWHSqQdJO\&q=85\&s=4c14c6c0e0181c94ecdfbae8d4140bb2)

*Use a template that is fully configured and active before you attach it to onboarding.*

**Expected result:** Your team has at least one active template to select in onboarding settings.

## Step 2: Open Customer onboarding

1. In the sidebar, click **Settings**.
2. Open [Settings > Customer onboarding](https://www.carstoragesoftware.com/dashboard/settings/customer-onboarding).

The page title is **Customer onboarding**. The subtitle explains registration and what customers complete after they sign in.

For a broader settings walkthrough (registration form vs portal onboarding), see [Configure customer onboarding](/docs/settings/configure-customer-onboarding.md).

## Step 3: Turn on Customer app onboarding

**1. Find Customer app onboarding**

Scroll to the **Customer app onboarding** section.

**2. Turn the main switch on**

Turn **Customer app onboarding** **on**.

Until this switch is on, the step list stays hidden.

**Why this matters:** This is the master switch for first-time portal setup after a customer signs in.

**3. Review the Onboarding steps list**

Below the switch, find **Onboarding steps**. Your facility may show steps such as:

* **Welcome** — welcome screen with your branding
* **Accessibility** — text size preference
* **Profile** — review contact details
* **Cars** — add vehicles to the account
* **Payment** — card on file or product checkout (if billing is set up)
* **Contract Signing** — sign required agreements
* **Document Upload** — upload insurance, registration, or other files

**Expected result:** You can drag rows to reorder steps and turn each step on or off.

![Customer onboarding settings with Customer app onboarding on and Contract Signing and Document Upload steps enabled](https://mintcdn.com/carstoragesoftware/Y2uxZmzRWHSqQdJO/images/contracts/contracts-onboarding-steps-enabled.webp?fit=max\&auto=format\&n=Y2uxZmzRWHSqQdJO\&q=85\&s=4bb48bde6432bbadc95744270ccb77bc)

*Turn on **Customer app onboarding** first, then enable **Contract Signing** and **Document Upload** when your process requires them.*

## Step 4: Configure Contract Signing

**1. Enable Contract Signing**

Find **Contract Signing** in the step list. Turn its switch **on**.

The row description reads **Require contract signature during onboarding**. A **Configure** link appears when the step is on.

**2. Click Configure**

Click **Configure** next to **Contract Signing**.

**Expected result:** A window titled **Contract Step Configuration** opens.

**3. Select required templates**

Under **Required contracts**, turn on each template customers must sign. Example: **Car Storage Agreement**.

Templates with a **Car-linked** badge need vehicle details on the customer record before signing.

**Expected result:** At least one template is selected. If you map every customer type in the next step, the defaults are optional: customers with no mapped type then sign nothing.

**4. Optional: pick a contract by customer type**

Under **Contracts by customer type**, click **Add customer type** and choose a CRM customer type (for example **Storage**), then choose the contract that type signs (for example **Storage Agreement**). Repeat for other types, such as **Events** → **Social Agreement**.

Customers whose type has no contract here sign the contracts selected above (they become your **Default contracts**).

If you map two or more types, choose what happens when a customer has more than one:

* **Top of list wins** (default) — they sign one contract: the one for whichever of their types is highest in the list. Use the arrows to reorder.
* **Sign all matching** — they sign the contract for every type they have.

A new row starts with your first default contract selected. Change it to the contract that type should sign.

How the contracts are picked:

* A customer whose type is mapped signs **only** the mapped contract. They don't also sign the default contracts.
* Contracts are picked when they're created. If you change a customer's type afterwards, the contracts they already have don't change. Send them the new contract yourself.
* If a mapped contract is deleted, the customer gets the next matching type's contract, or the default contracts.
* A deactivated customer type doesn't match. Its customers sign the default contracts, or the contract for another of their types.
* Some customer types are added automatically by what the customer does. For example, a public event RSVP adds **Events**. With **Top of list wins**, a storage customer who RSVPs before their contracts are created gets the Events contract if **Events** is higher in the list. Put the type whose contract matters most at the top.
* Customers can't change their own customer type from the portal. Only staff can.

**Expected result:** A Storage customer is asked for the Storage Agreement during onboarding; a customer with no mapped type is asked for the default contracts.

**5. Close and save**

Close the configuration window. Onboarding settings save as you make changes—confirm the **Contract Signing** step stays on.

![Contract Step Configuration modal showing Required contracts with Car Storage Agreement enabled](https://mintcdn.com/carstoragesoftware/Y2uxZmzRWHSqQdJO/images/contracts/contracts-onboarding-contract-config.webp?fit=max\&auto=format\&n=Y2uxZmzRWHSqQdJO\&q=85\&s=34d7d8c6c16e561fae9596a452f4cb6a)

*In **Contract Step Configuration**, choose which templates are required during first-time portal setup.*

## Step 5: Put vehicle steps before vehicle contracts

If the contract uses car fields (year, make, model, VIN, license plate), the customer needs a car on their account before the agreement can fill in correctly.

**1. Drag Cars above Contract Signing**

In **Onboarding steps**, drag the **Cars** row **above** **Contract Signing**.

**Why this matters:** Customers who sign before adding a vehicle may see blank vehicle lines on the PDF.

> [!TIP]
>
> **The app can help with order**
>
> If a selected contract needs car information, the app may adjust the flow so the **Cars** step comes before **Contract Signing** even if the list order was different.

**Expected result:** Customers add vehicle details before they are asked to sign a vehicle-specific agreement.

## Step 6: Configure Document Upload (if needed)

If customers must upload insurance, registration, or other files during onboarding:

**1. Create document types**

Add types in [Settings > Contracts & Documents](https://www.carstoragesoftware.com/dashboard/settings/contracts-and-documents) if you have not already.

**2. Turn on Customer Access**

For each type customers should upload themselves, edit the type and turn **Customer Access** **on**.

**Why this matters:** Types without **Customer Access** are for staff-only uploads—even if the onboarding step is on.

**3. Enable Document Upload**

In **Onboarding steps**, turn **Document Upload** **on** and click **Configure**.

**4. Choose required types**

In **Document Upload Step Configuration**, turn on each type customers must provide—for example **Insurance** and **Vehicle Registration**.

**Expected result:** Only types with **Customer Access** appear in this list.

![Document Upload Step Configuration modal listing required document types for onboarding](https://mintcdn.com/carstoragesoftware/Y2uxZmzRWHSqQdJO/images/contracts/contracts-onboarding-document-upload-config.webp?fit=max\&auto=format\&n=Y2uxZmzRWHSqQdJO\&q=85\&s=3b595221104c2e0384908c9d0e407233)

*Only document types with **Customer Access** enabled can appear in **Document Upload Step Configuration**.*

> [!TIP]
>
> **Suggested step order**
>
> Many facilities use: **Welcome** → **Profile** → **Cars** → **Document Upload** → **Contract Signing** → **Payment** (if used). Put paperwork before payment when storage cannot start until documents are on file.

## Step 7: Test with a test customer

Before using this with real customers:

**1. Pick a safe test customer**

Use a customer record your team can experiment with—for example a test account from your seed data or a staff member’s personal vehicle.

**2. Invite them to the portal**

Follow your normal invite process from [Invite a customer to the portal](/docs/contacts/invite-a-customer-to-the-portal.md).

**3. Walk through onboarding**

Sign in as the test customer (or open their portal link) and complete each enabled step: profile, cars, uploads, and contract signing.

**4. Sign the test contract**

Confirm the agreement opens, vehicle details look correct, and signing finishes without errors.

![Customer signing page during onboarding with agreement details and signature area](https://mintcdn.com/carstoragesoftware/Y2uxZmzRWHSqQdJO/images/contracts/customer-contract-signing-page.webp?fit=max\&auto=format\&n=Y2uxZmzRWHSqQdJO\&q=85\&s=f419c942d34c356543b8af8602af3893)

*During onboarding, customers sign in the same browser page they would use from an email link.*

**Expected result:** The test customer can finish onboarding without staff help.

## Step 8: Confirm on the customer record (staff view)

**1. Open the test customer in Contacts**

Go to [Contacts](https://www.carstoragesoftware.com/dashboard/contacts) and open the test customer.

**2. Review Documents & Contracts**

Scroll to **Documents & Contracts** and confirm:

* Uploaded files appear with the correct document type.
* Contracts appear with status **Signed** or **Completed** after signing.
* The signed PDF can be viewed or downloaded.

![Customer record showing uploaded document in Documents and Contracts](https://mintcdn.com/carstoragesoftware/Y2uxZmzRWHSqQdJO/images/contracts/customer-documents-contract-list.webp?fit=max\&auto=format\&n=Y2uxZmzRWHSqQdJO\&q=85\&s=43400d565b72739be6f21ae3d43fa50e)

*Staff confirm onboarding worked from the customer record—uploads and contracts appear together under **Documents & Contracts**.*

## What success looks like

* **Customer app onboarding** is turned on.
* The correct template is selected in **Contract Step Configuration**.
* **Cars** comes before **Contract Signing** when the contract needs vehicle details.
* Required document uploads appear only when **Customer Access** and **Document Upload** are configured.
* A test customer completes the full flow without getting stuck.
* Staff can find signed agreements and uploads on the customer record.

## Troubleshooting

> [!WARNING]
>
> **No contract templates appear in onboarding settings**
>
> Create at least one active template in [Settings > Contracts & Documents](https://www.carstoragesoftware.com/dashboard/settings/contracts-and-documents).

> [!WARNING]
>
> **Contract Signing does not appear in the step list**
>
> Turn **Customer app onboarding** on first. The step list only appears when that main switch is enabled.

> [!TIP]
>
> **The customer is asked to add a car before signing**
>
> This usually means the contract uses car fields. The customer must add the vehicle so the agreement can include correct car details.

> [!WARNING]
>
> **Document types missing from upload configuration**
>
> Edit each type in [Settings > Contracts & Documents](https://www.carstoragesoftware.com/dashboard/settings/contracts-and-documents) and turn **Customer Access** on. Staff-only types never appear in **Document Upload Step Configuration**.

> [!WARNING]
>
> **The agreement shows the wrong vehicle**
>
> Check the customer record and confirm the correct car is linked before the customer reaches the signing step. Fix the car, then have the customer refresh or restart the signing step if needed.

> [!WARNING]
>
> **Customers are blocked during onboarding**
>
> Review each required step: missing vehicle, missing upload, location permission, incomplete payment setup, or incomplete signature fields on the template. See [Help customers complete onboarding paperwork](/docs/contracts/help-customers-complete-onboarding-paperwork.md) for front-desk coaching language.

## What to do next

After onboarding is tested:

* Share portal invites or registration links with real customers.
* Train front desk staff with [Upload a document for a customer](/docs/contracts/upload-a-document-for-a-customer.md) for email attachments that arrive outside onboarding.
* For a single customer outside onboarding, use [Send a contract for signature](/docs/contracts/send-a-contract-for-signature.md).
* When customers need help during first login, share [Help customers complete onboarding paperwork](/docs/contracts/help-customers-complete-onboarding-paperwork.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.