---
title: Contracts & e-signing
id: contracts
description: Set up your services agreement once, and let couples review and e-sign it online — with a signed copy kept for both of you.
category: Features
order: 22
tags: [contracts, e-sign, agreement]
related: [per-event-view, payments]
updated: 2026-07-29
---

SpinBook includes a contract you can edit once and reuse for every event. Couples review
and **e-sign** it online; a snapshot of the exact signed text is kept for both of you.


## See it before they do

Under the template editor there's a **live preview** — the contract rendered exactly
as a couple sees it, updating as you type. It uses the same renderer that produces the
signed document, so what you see is what gets signed.

By default it fills every merge field with **sample data** (a fictional couple, venue,
and amounts) so you can read the whole agreement without gaps. Your business name and
your own settings — minimum hours, governing law — are substituted in, so it reads as
yours.

You can also switch the preview to one of your **recent events** to check it against
real details. Anything still showing `__________` is a merge field with no value yet
for that event; it fills in automatically once the detail exists.



## Draft one with AI

Under the editor there's **Draft one with AI**. It gives you a prompt already tailored
to your business — your company name, your governing-law state, your minimum hours —
and, crucially, the exact list of merge fields your template can use.

**SpinBook doesn't send anything to an AI service.** You copy the prompt, take it to
Claude or ChatGPT yourself, and paste the markdown back. Nothing about your business or
your clients leaves SpinBook unless you paste it.

Paste the result into the box, press **Use this as my template**, and it drops into the
editor — where the preview shows you what it looks like *before* you press Save.

### If a merge field is wrong

The editor watches for merge fields that don't exist. An AI sometimes invents one, or a
typo slips in — `{{couple_nmaes}}` looks fine at a glance but prints as a blank line in
a signed contract with nothing to explain why. You'll get an amber warning naming the
field so you can fix the spelling. It's a warning, not a block; you can still save.

You'll also see a quieter note if your new template stopped using a field the old one
had — usually deliberate, occasionally a surprise.

> A generated contract is a **starting point, not legal advice**. Read it properly, and
> have a lawyer review it before you send it to clients.

## What the couple sees while signing

Before signing, the contract on the couple's page **fills in as they type**. If your
template asks them for something — their address, most commonly — the blank in the
agreement closes while they're entering it, rather than after they've signed. They can
read exactly what they're agreeing to before agreeing to it.

Clearing a field puts the `__________` back, so nothing is silently left half-filled.

Once signed, the page shows the stored copy of the contract exactly as it was presented
at signing, with the signature underneath. That copy never changes.

## Set up your template

In **Settings → Contract template**, edit your DJ services agreement. New accounts start
from a complete DJ services agreement, and it uses **merge fields** that fill in
automatically per event — e.g. the couple's names, event date, time, venue, package, and
amounts. Edit the wording to match how you work.

The editor shows a palette of every available merge field. **Click any field to copy it**,
then paste it into your template. Each field shows who supplies its value:

- **auto** — fills from the event automatically (couple's names, date, venue, amounts…).
- **couple** — the couple types it on their contract page before they sign (e.g. their
  address). If your template uses a required couple field, it must be filled before signing.
- **you fill** — you set it once here in Settings. Right below the palette, fill in
  **Minimum hours** and **Governing-law state**; they merge into `{{minimum_hours}}` and
  `{{governing_law}}` and read like an auto field to the couple.

Any field left without a value prints as a blank line, so the document always reads correctly.

## How couples sign

On the event's contract page the couple first completes any required details (like their
address) — the contract can't be signed until those are filled in, and you can watch them
merge into the live preview. They then read the agreement and sign by drawing their
signature. SpinBook records the typed name, a timestamp, and the signature image, and
stores a snapshot of the signed text so the agreement can't change after the fact.

## Signed on paper?

If a contract was signed offline, you can mark the bound checklist item done with a note
(see [Checklists & forms](/checklist-and-forms)) — or sign on the couple's behalf from the
contract page for a clean digital copy.

## Checklist

- [ ] Edit your contract template in Settings
- [ ] Set your minimum hours and governing-law state in Settings
- [ ] Confirm the merge tokens fill in correctly on a real event
- [ ] Send the couple to their contract page to e-sign
- [ ] Keep the signed snapshot on file (it stays in the event)
