Contracts

Goal: draft, save, and send a pre-shoot service contract to a client, then collect their e-signature and export a PDF.

Prerequisites

  • Contracts is off by default for new companies. An admin must turn it on first — go to Settings → Company Info → Contracts and check Enable Contracts. This adds Contracts to the sidebar and a Contracts tab on client and project pages.
  • Only users with the admin role can access Contracts.
  • A client must exist — contracts are always saved against a client. See Add, edit & delete clients.
US only, not legal advice. The generator produces US-only contract templates and uses US state law for the governing-law clause. It's a template to get you started — have a licensed attorney review any contract before you rely on it.

How it works

A contract is the agreement you and your client sign before a shoot — it covers what you'll shoot, the fee and deposit, cancellation, what you'll deliver, and who owns the work. This is different from the licence builder on Tools, which governs what a client can do with media after you've delivered it.

Every contract you save gets its own permanent e-signing link automatically. Fill in the form, save, then share the signing link or its QR code — the client reviews the contract in their browser and signs it with a typed name and a drawn signature, the same way model releases work.

Create a contract

  1. Go to Contracts in the sidebar and click New Contract — or click New contract from a client's Contracts tab (pre-fills that client), or from a project's Contracts tab (pre-fills the client and project).
  2. Choose a Client — this can't be changed once the contract is saved.
  3. Optionally choose a Project to link the contract to, and override the client's name, address, or email for this contract only.
  4. Fill in the Title, Contract type (Photo, Video, or Both), and a Shoot type — the list adapts to the contract type; choose Other to type a custom description.
  5. Enter the Shoot date, Location / venue, and a US state for the governing-law clause.
  6. Enter Total fee and Deposit / retainer (as an amount or a percent) — the balance owing is calculated for you automatically.
  7. Describe Deliverables, the Delivery timeline, and the Scope of services.
  8. Toggle optional clauses: Cancellation & rescheduling, Copyright & usage, and Model / property release.
  9. Optionally add free-form Additional terms.
  10. Click Save Contract.
Filling in your company address, phone, and website on Settings → Company Info makes the generated contract text more complete.

MILO Assist

Instead of filling in each field by hand, click Describe your shoot to MILO and type a plain-English description — e.g. "Wedding for Sarah & Tom on June 15 at The Grand Estate, Austin TX. $3500 total, $1000 deposit, deliver ~600 photos within 8 weeks." MILO fills in the matching fields for you; it never overwrites a field you've already typed into. If the contract is linked to a project, MILO can draft its starting description from that project's own AI summary. MILO only sets the US state when the description actually names one — it no longer guesses a default.

Details, Wording & Signing tabs

Once a contract is saved, its edit page splits into three tabs: Details (the form above), Wording (the generated preview and the hand-edit editor), and Signing (the signing link, QR code, and signed-on-paper controls). Saving, reverting, or regenerating from one of these tabs brings you back to that same tab. A brand-new, unsaved contract just shows the Details form — the other tabs appear after the first save.

Templates

Save time on repeat contract types:

  • Click Save as template on the edit form, give it a name, and save — it captures every field currently filled in (except the client).
  • On a new contract, use the Start from a template dropdown at the top of the form to apply a saved template, then review and adjust before saving.

Signing link & QR code

Once a contract is saved, a Signing link card appears on its edit page:

  • Click the link token to copy the signing URL to your clipboard.
  • Click Show QR to open a scannable QR code, with a Download button to save the PNG.
  • Click the regenerate button to issue a new link — the old link and QR code stop working immediately. Use this if a link was shared with the wrong person.

The client opens the link, reviews the contract text under your branding, and signs with a typed legal name plus a drawn signature. Signing automatically marks the contract Signed and freezes the exact wording they agreed to — if you edit the contract's fields afterward, the signed copy on file never changes.

The sign page also offers Download PDF to print & sign by hand for clients who want to mail a paper copy — that version has blank signature lines. After signing online, the confirmation page gives them a signed PDF to keep.

Sending from the client page

A client's Contracts tab (on their client page) lists every contract for that client with Copy link, QR code, and Send buttons, so you don't need to open the contract's own edit page to share it. Send emails the signing link to the client's active portal login(s) directly and records when it went out; the button relabels to Resend and the tab shows the last-sent date once a contract has gone out at least once. If the client has no active portal login yet, add one first — Send is disabled with a tooltip until then, but Copy link and QR code still work so you can share the link another way.

A contract's signing link works regardless of its status (except Void), even if Contracts is later turned off for your company — a link you've already shared keeps working.

Signed on paper

If a client printed the contract and signed it by hand, record that on the contract's edit page under Signed on paper? → Mark signed on paper. You can attach the scanned copy in the dialog — it's filed in that client's Client Assets.

Marking it signed on paper behaves exactly like an e-signature: it freezes the current wording, sets the status to Signed (recorded under your name and the date), and the public signing link stops accepting signatures. It can't be undone — only Voided.

Editing wording by hand

The Preview panel on a saved contract's Wording tab shows the exact document text generated from the form fields. Click Edit wording by hand to switch to a rich-text editor pre-seeded with that same text — useful for one-off clauses the form doesn't cover. You can format the wording (bold, headings, lists) before saving. Once you save, changes to the Details tab no longer update the document; click Regenerate from form to reseed the editor from the current field values, or Revert to generated wording to discard the hand edits entirely and go back to the auto-generated text.

Exporting

From a contract's edit page, the Contracts hub, or a client/project's Contracts tab, click the PDF or .txt icon to download that contract in either format. The client can get a PDF too, straight from the signing link — a blank copy to print before signing, and a signed copy from the confirmation page afterward.

Statuses

Every contract has a status: Draft (just created), Sent (you've shared it with the client), Signed (set automatically when the client e-signs, or when you mark it signed on paper), or Void (no longer active; its signing link stops working). Change a contract's status from the dropdown in its row on the Contracts list — note you can't pick Signed by hand, since a signature (online or on paper) is what sets it.

The Contracts hub

The main Contracts page lists every contract for your company.

  • Search by title or client, and filter by status or client using the dropdowns.
  • Each row shows the client, linked project (if any), status, shoot date, fee, and last-updated date.
  • Duplicate a contract to start a new one from its saved fields.
  • Delete a contract permanently — you'll be asked to type DELETE to confirm.

Contracts on clients & projects

A client's page and (if Projects is enabled) a project's page each get a Contracts tab listing the contracts saved against them. From a project's Contracts tab you can also attach an existing contract for that client that isn't linked to any project yet, or start a new contract already scoped to that project.

See Create & assign projects for more on how galleries, video collections, releases, and contracts all attach to a project.

Related