Setting up contracts
Contracts is configuration-led. Nothing about pricing, thresholds, reminders or exceptions appears until an administrator turns it on, which means you can roll it out gradually, starting with the repository and adding the compliance checks later.
This guide is for administrators. For day to day use, start with the Contracts overview.
Adding the contract sections to the form
The contract form is configured like any other document type, in Settings. The sections specific to contracts are:
- Contract Pricing, the grid of agreed prices
- Contract Thresholds, the grid of spend and quantity caps
- Reminders, which exposes the reminders panel on the contract
- Notes, which is hidden by default
Add only what your team will use. A team using contracts purely as a repository does not need the pricing or threshold sections at all.
(Screenshot: the contract document type form settings)
Choosing supplier or customer matching
A contract links to one supplier or one customer, and which of the two is decided on the document type, in the contact section's Contact matching entity setting. Supplier is used when nothing is configured.
Set this per document type rather than per contract. A team handling both sides usually has a supplier agreement document type and a customer agreement document type.
Where the matched supplier or customer is set to overwrite contact details, matching also refreshes the contract's company name, tax number, email and phone from that record.
Default reminders
Reminders defined on a contract document type are applied to every new contract of that type, which is the practical way to give different kinds of agreement different lead times.
- Open the contract document type and add the Reminders extension.
- Add a reminder and give it a Name.
- Choose the type, Renewal, Expiry or Custom date. A custom date reminder also asks which date field to use.
- Set the offset, for example 30 Days Before.
- Enter a task name under On fire, create task.
- Add assignees, either named users or a Contract field such as Owners.
Use Days or Weeks for the offset. Set a reminder in months and it does not get scheduled.
This configuration is authoritative. Whenever a contract's document type, Renewal Date or Expiry Date changes, its renewal, expiry and custom date reminders are rebuilt from the document type, and any reminder that is not in the configuration is deleted along with its outstanding task.
See Contract reminders for what users see and who receives what.
Showing contracts on invoices and orders
Contract information does not appear on an invoice, requisition or order until you add the Contract impact extension to that document type.
The extension has three switches:
- Open by default, which controls whether the panel starts open
- Only show contract information to contract owners, which hides threshold figures from anyone who is not a contract or threshold owner
- Don't ask for contract exception reason on submit, which lets documents be submitted without capturing a reason
It also holds two editors that decide how serious each outcome is:
- Threshold Exceptions, for Over contract and Under contract
- Pricing Exceptions, for Within contract, Over contract and N/A
Each status is set to None, Info, Warning or Error. With nothing configured, spend over or under a threshold and a price over contract each raise a warning. An error level holds the document in review until it is resolved.
(Screenshot: the Contract impact extension settings)
Setting a status to Info, Warning or Error here is also what makes the reason modal appear on submit.
Contract exception reasons
Reasons are the list your team picks from when submitting a document that breaches a contract, and they are worth taking seriously, because they are the record of why you went outside an agreement.
- Go to Settings and open Contract Exception Reasons.
- Click Create.
- Enter a Code and a Name.
- Turn on Comment required where the reason is not self-explanatory, such as a general "other" reason.
- Optionally restrict the reason to a module and submodule, so purchasing reasons do not appear on sales documents.
Users without permission to view reasons see a message instead of the list, and cannot submit a document with an exception.
Contract configurations
A contract configuration decides which documents count towards threshold spend, and which of the five buckets each one lands in. Without a configuration covering the module and submodule of the document, nothing is counted.
- Go to Settings and open Contract Configurations.
- Click Create, then enter a Code and a Name.
- Complete the Actual, New, Committed, Pending and Processing sections. Each holds one or more module and submodule rules.
- For each rule, set the Status types and Statuses that qualify, the Operation, and Use value.
Use value is either Total (Exclusive Local) or Remaining against another document type. Remaining is what stops double counting: a committed purchase order can contribute only the value not yet invoiced, so the invoice and the order it came from do not both consume the cap.
Rules can be added for Expenses, Purchasing, Sales, Ledger, Inventory and Reconciliation documents.
Each contract then selects which configuration applies to it.
(Screenshot: a contract configuration with its five spend sections)
Contract categories and groups
Contract Categories and Contract Groups are dimensions, created under Dimensions in the same way as departments or locations. Each has a code and a name, and a contract can carry one of each.
They exist so you can talk about groups of contracts elsewhere in the platform. Automation conditions can target specific contracts, contract groups or contract categories, so you can route a breach of a strategic agreement differently to everything else.
Extracting your own contract terms
Every team starts with the same standard instructions for reading a contract, covering the name, the dates, the other party and any priced lines. That is a starting point, not a ceiling. Anything your agreements actually state can be extracted, and the terms specific to your business are usually the ones worth the effort.
Getting a new term onto the contract takes two pieces, and both are configuration.
The instruction, which tells Zudello what to look for.
- In Document Studio, open the workflow for the Contracts module.
- Click + Prompt, enter a field name, and describe in plain English what to look for. Say where in the agreement it usually appears, what it is labelled, and what to return when it is absent.
- Choose the output type. Text, Number, Date, Boolean, JSON and Table are available, so an evergreen flag is a boolean, a notice period is a number, and a repeating schedule of terms is a table.
The field, which gives the value somewhere to live.
- In Settings, open Field Manager, create a custom field on the contract with a name matching the prompt, then add it to the contract form. Contracts also support custom fields on their lines, so per-line terms can be captured too.
The two names have to match exactly. Where they do not, the value is extracted and stored but never appears on the form.
The standard instructions can be edited as well as added to. A prompt you change is marked Overridden and one you add is marked Custom, so it stays clear which behaviour is yours. If your agreements phrase something unusually, or a date should come from a different clause, adjust the instruction rather than working around it.
Write prompts the way you would brief a new starter. Name the labels used in your agreements, say what to ignore, and say what to return when the term is not there. A prompt that says what "not stated" looks like is far more reliable than one that only describes the happy path.
Text values are capped at 255 characters, and anything longer is dropped rather than shortened. For a long clause, ask for a summary, a date, a flag or structured output instead of the clause itself.
Working with Zudello
You do not have to build this yourself. Extraction and field setup are part of what your implementation team configures, and the usual approach is to send through a handful of representative agreements, along with the terms you need to see and report on, and have the prompts and fields built against real documents.
That is also the right route where a term is complex, where different kinds of agreement need reading differently, or where you want the extracted values driving something else, such as reminders, approval routing or a dashboard. Talk to your Zudello contact or support@zudello.com.
See Document Studio and Field Manager.
A contracts inbox
You can give contracts their own email address, so agreements can be forwarded in the same way invoices are. In Settings, open Inboxes, create an inbox and set the module to Contracts.
Anything arriving at that address is created as a contract, whatever it looks like.
Need help?
Contact your organisation administrator or Zudello support for assistance with configuring contracts.