Skip to content
Upclient
Esc
↑↓navigate↵open⌘Jpreview
On this page

Contracts

Write reusable contracts or start from the library, send them on tasks, collect legally binding e-signatures, and track every sent contract from one page.

Contracts let you send agreements to clients and get them signed without leaving Upclient. You write a contract once, attach it to a task, and your client reviews and signs it in the portal. Signed contracts are locked and available as a PDF for both sides.

How contracts work

  • Contracts: the Contracts tab of the Contracts page holds your workspace’s reusable contracts. A contract has a title, an optional description, the agreement text, and a Require countersign setting. You can write your own or add one from the Library.
  • Sent contracts: adding a contract to a task as a Contract action creates that project’s own copy, the sent contract. Later changes to the contract don’t affect copies you’ve already sent.
  • Smart fields: placeholders such as {{contact.name}} or {{project.dueDate}} fill in with the project’s details. In the editor they show as labelled chips, such as Client name, so you can see what each one fills in. They’re fixed when the first client signs, so every signer sees the same text.
  • Blanks: text in square brackets, such as [total fee], is a blank only you can fill in. Library contracts use blanks only for what Upclient can’t know, like your fees. See Blanks to fill in.
  • Signing: the client types their full legal name (and can draw a signature), agrees to sign electronically, and clicks Sign. Upclient records the time, IP address, browser, and a fingerprint of the exact text that was signed.
  • Countersign: if the contract requires a countersign, a workspace Owner or Admin signs after the client, or before as a pre-sign. The contract is fully executed once both sides have signed.
  • Locking: a fully executed contract can’t be edited, voided, or removed from its task. You and your client can download the signed PDF.

The Contracts page

Open Contracts in the sidebar. The header always has Browse library and New contract. Owners and Admins see two tabs; other team members see only the list of contracts.

  • Contracts (the default tab) lists your reusable contracts in a table with how often they’ve been sent (for example “Sent 6 · 2 awaiting signature”), how many blanks are left (for example 2 blanks to fill in), and when they were last updated. A contract with no agreement text yet is marked Empty, and a retired one Archived; use Filters to show only those. Use the row menu to Edit, Duplicate, Archive or Restore, or Delete a contract.
  • Sent lists every contract sent on a task across all your projects, newest first. Each row shows the contract, its project, the client, its signing status, and when it was sent and signed.

The Forms page works the same way: a form with no questions is Empty, and an archived form is Archived.

How to find and follow up on a sent contract

  1. Open the Sent tab.
  2. Use Filters to narrow the list by status (Draft, Awaiting client, Awaiting countersignature, Signed, or Voided) or by project, and the search box to find a contract by name.
  3. Use Display to change the sort order or hide columns.
  4. Click a contract’s name, or choose Open task in its row menu, to open its task without leaving the page. From there you can countersign, edit, or void it.
  5. For a fully executed contract, choose Download PDF in the row menu to get the signed PDF.

Contract statuses

Status Meaning
Sent The contract is on a task and waiting for the client.
Viewed The client opened it in the portal.
Signed The client signed. If no countersign is required, the contract is fully executed.
Countersigned The client and your team have both signed.
Voided You cancelled the contract. It stays on record but can no longer be signed.

How to start from the library

The library holds ready-made contracts for common client work, such as service agreements, retainers, engagement letters, change orders, and NDAs.

  1. Open Contracts and click Browse library.
  2. Pick a contract from the list on the left. The preview shows its full text, and the footer shows whether it needs only the client’s signature or your countersign too.
  3. Click Use this. Upclient adds a copy to your contracts and opens it in the editor.
  4. Fill in the blanks listed beside the agreement, such as your fees, review and adapt the text, then save it.

You can also add a library contract straight from a task: see How to send a contract to a client.

Blanks to fill in

Smart fields fill in themselves, but some details only you know, such as [total fee], [monthly fee], or [deposit percentage]. These are blanks: any text in square brackets in the agreement.

When a contract has blanks, they’re highlighted in amber in the agreement and listed under Blanks to fill in in the panel beside it, with the count. Each blank is listed once, with how many times it appears.

  1. Type the wording to use next to a blank.
  2. Click Fill in. Every place that blank appears is replaced at once.
  3. Click Find to jump to a blank in the agreement text instead, for example when it spans formatting and has to be edited by hand.
  4. Save the contract.

Fill blanks in once on the contract, and every client gets a copy that’s ready to sign. Upclient reminds you when blanks are left:

  • The Contracts list and the Select a contract picker show the count, for example 2 blanks to fill in.
  • Attaching a contract with blanks to a task shows a warning that each client’s copy will be held for your review.

How to create a contract

  1. Open Contracts and click New contract (or press C).
  2. Enter a Title (and optionally a Description), then click Create contract.
  3. Write the contract in the editor (see The contract editor).
  4. In Settings, turn on Require countersign if your team must sign too.
  5. Click Save.

A contract is ready to attach to tasks as soon as it has agreement text; there’s nothing to publish. Until then it’s marked Empty and can’t be attached. Use Archive in the ⋯ menu to retire a contract and Restore to bring it back. An archived contract stays on the tasks that already use it but can’t be attached anywhere new. Use Duplicate to start from an existing contract. A contract that has been sent can’t be deleted until its sent copies are voided; archive it instead. If you chose a starter when you set up your workspace, it added contracts you can adapt: fill in their blanks, such as your fees, before you send them to real clients. They stay when you remove the sample client.

The contract editor

Click a contract’s name on the Contracts page to open it. The agreement is laid out as a page, with a panel beside it (below it on a phone).

  • Header: click the title to rename it in place. Next to it you see Empty or Archived when that applies, whether your changes are saved, and how many tasks use the contract (“Used on 3 tasks”). Save (or ⌘S / Ctrl+S) saves your changes. The ⋯ menu has Duplicate and Archive (or Restore). Leaving with unsaved changes asks you first.
  • Toolbar: Insert field opens the list of smart fields to place at the cursor. Then come the text style (Paragraph, Heading, Subheading), bold, italic, underline, bulleted and numbered lists, quote, divider, link, undo and redo. You can also type @ to pick a smart field, or type a placeholder such as {{contact.name}} and it turns into a chip.
  • Chips: smart fields show as blue chips with their label, such as Client Name. Blanks are highlighted in amber. A placeholder Upclient doesn’t recognise, such as {{client.billing_email}}, shows as a red chip; it would be left out of client copies.
  • Signatures: the line at the bottom of the page says who signs, “Client signs” or “Client signs, then you countersign”, following Require countersign. The signature boxes are added when the contract is sent on a task.

The panel lists, in order:

  1. Needs fixing: each unrecognised placeholder. Click Find to jump to it, Replace with field to swap every copy for a smart field, or Remove to delete it.
  2. Blanks to fill in: see Blanks to fill in.
  3. Fields: every smart field, grouped by Client and Project. Click one to insert it at the cursor.
  4. Settings: the description and Require countersign.

Links in the agreement work in the portal; the signed PDF shows the link text without the address, so write out any address the client must keep, such as https://junipergoods.com/terms.

How to send a contract to a client

  1. Open a project task assigned to the client (or create one). Only workspace Owners and Admins can add a contract to a task.
  2. In the task’s Actions, click Add action, choose Contract and open Select a contract. A task can have one contract. The list has three groups:
    • Your contracts: your contracts that aren’t archived. Empty ones are shown greyed out with “Empty — add the agreement text to use”.
    • From the library: library contracts you haven’t added yet. Picking one adds a copy to your contracts and selects it in one step.
    • Create new: write a new contract without leaving the task.
  3. Click Preview as client in the contract action to read the contract text the client will sign.
  4. Turn on Show in portal and publish the task so it’s Active.

If the contract was emptied, archived, or deleted in the meantime, saving the task fails with a message naming the contract, so a client never gets a task with nothing to sign.

Duplicating a task with a contract gives the copy a fresh, unsigned contract from the same contract. If that contract has since been archived or deleted, the task is still copied, but its contract action has no contract: the task says “No contract is attached. Edit the task to choose one.”, and the client sees “This contract is being prepared” until you pick one.

When a client’s copy is held

A client never sees an unfinished contract. The client’s copy is held as a draft instead of being sent when it still has blanks, uses a placeholder Upclient doesn’t recognise, or uses a smart field with no value and no fallback, for example {{contact.name}} on a project without a client contact.

Date smart fields such as today’s date are written in the project’s time zone, or the workspace’s when the project doesn’t override it, so a contract sent late in the evening shows the date your client sees on their calendar. See Workspace Settings.

Missing project dates don’t hold a contract. A {{project.startDate}} or {{project.dueDate}} with no date reads “a date to be confirmed”, and you see a note on the contract with a Set project dates link so you can add them before the client signs.

Held contracts are listed at the top of the project’s Tasks tab under “1 contract has not been sent”, with what’s missing.

  1. Click Fill in to open the task and complete the contract, or fill in the missing project details.
  2. Owners and Admins click Send once it’s ready, or Send anyway to send it as it is.

The client sees the contract only after it’s sent.

What the client is told

The client gets one notice per contract, in the portal and by email:

  • When you publish a task with a contract, the “Task assigned” email is the notice, and the contract is on the task in their portal.
  • When you send a held contract, or add a contract to a task that is already active and visible to them, they get a “Contract ready to sign” email and portal notification.

Only clients assigned to the task who have portal access are told. A task that’s still a draft or hidden from the portal sends nothing until it’s published.

How clients sign

  1. The client opens the task in the portal and reads the contract.
  2. They type their full legal name in the signature box, or draw their signature.
  3. They click Sign. The consent text above the box explains that the electronic signature is legally binding.

After signing, the client sees who signed and when. When the contract is fully executed, they see Contract fully executed with a Download PDF button. If your team still needs to countersign, they see a note that you’ll countersign next.

How to countersign, edit, or void a contract

Open the task in your workspace to see the contract, its signatures, and Audit details for each signature.

  • Pre-sign or countersign: when a countersign is required, a workspace Owner or Admin types their name in the business signature box and clicks Sign.
  • Edit: update the contract text while it’s still waiting for signatures. If anyone has already signed, saving clears their signatures and the client must sign again.
  • Void contract: an Owner or Admin can cancel a contract that isn’t fully executed yet, optionally with a reason. The client sees that it was voided, and existing signature records are kept.
  • Download PDF: available once the contract is fully executed. The PDF includes the signed text, signatures, and signing details. Each signing time is printed in the project’s time zone (or the workspace’s, when the project doesn’t override it) with the zone’s abbreviation, for example “Signed: November 14, 2026 at 9:41 AM PST”. The file is named after the contract and the client, for example “Website Development Agreement - Juniper Furniture - signed.pdf”.

To replace a contract that was sent by mistake, void it first. A task action with an active contract can’t be removed, and a task with an active contract can’t be deleted.

Notifications

  • The project team and the task’s assignees are notified when a contract is signed, countersigned, edited, or voided.
  • A client’s signature gives your team one notification that names the client. When the signature completes the task or sends it for review, that notification is the task one and says what happened in plain words, for example “Maya Okafor signed the Website Development Agreement, so the task is complete.”
  • The project team is notified the first time a client opens a contract.
  • Emails about a fully executed contract include the signed PDF.

Automating follow-ups

Use the Contract signed trigger in Workflows to act as soon as a contract is fully signed (after your countersign, when one is required), for example to add the client to the portal, send a welcome email, or start the next task.

Was this page helpful?