A contract register your legal and finance team can search
Every completed agreement in one filterable table, with effective dates, renewal windows, payment terms and liability caps pulled out of the signed PDFs.
I want a contract register app that my legal and finance team opens whenever someone asks what we actually agreed with a counterparty. It is a browsing and lookup surface, not a scheduled alert. Nothing runs on its own; people open it on demand and work in it.
The main view is a searchable, filterable table of every completed agreement. Load it from Documenso using Find Envelopes filtered to COMPLETED status, and use Get Envelope on each one for recipients, envelope items and metadata. Each row shows the counterparty (derived from the signing recipients, excluding our own signers), the agreement type, the signing date, and the key commercial terms once the contract has been abstracted. Free text search should cover counterparty, agreement title and the extracted terms. Filters should cover agreement type, counterparty, signing date range and abstraction status, and every column should be sortable.
Include saved filters for renewals and notice deadlines landing in the next 30, 60 and 90 days. Compute the renewal date and the notice deadline from the abstracted effective date, term length and notice window, and store both as first class sortable date fields so those filters are a simple date comparison rather than something recalculated by hand each time.
Contracts that have not been abstracted yet must be visually obvious: a distinct row state, a Needs abstraction badge, a filter that isolates them, and a coverage counter at the top of the table showing how many of the total have been abstracted. The register is meant to be filled in over time rather than all at once, so the gaps should look like an invitation rather than an error.
Clicking a row opens a detail page for that agreement. Show the extracted terms with the supporting clause wording next to each one, the recipients and their signing dates from Get Envelope, the signed PDF fetched with Download Envelope Item, and the signing certificate fetched with Download Envelope Certificate PDF. Both documents should be viewable and downloadable from the page.
Every contract gets an Abstract this contract button that kicks off a background agent. The agent downloads the signed PDF for that envelope with Download Envelope Item, reads it, and extracts the effective date, the term length, the renewal terms including whether it auto renews, the notice window and the resulting notice deadline, the payment terms including amount, currency and billing cadence, the liability cap, and the termination rights. It writes those structured fields back into the app so they become searchable and sortable alongside every other contract.
The agent must flag rather than guess. For every field it should record a confidence level and the quoted clause it relied on. If a clause is missing, ambiguous, or spread across amendments and side letters, it leaves the field empty and records a Needs review note explaining what it saw, instead of inventing a plausible value. Anything flagged should surface both in the table and on the detail page so a human can settle it.
Abstraction results persist in the app, keyed to the envelope, so a contract is only ever read once. Show when each abstraction was run. Re-reading a contract only happens when someone explicitly hits Re-abstract on the detail page, for example after an amendment is signed.
A Sync register button pushes the whole abstracted register into a Google Sheet. Read what is already in the sheet with Get Values, match rows on the envelope id held in the first column, refresh existing rows with Update Values, and add new contracts with Append Values, so a repeated sync never duplicates a contract. Write a header row with one column per field, including counterparty, agreement type, signing date, effective date, term length, renewal date, notice deadline, payment terms, liability cap, termination rights and abstraction status, so finance can pivot on it directly.
Keep the whole app read only against Documenso: it never sends, edits, cancels or deletes anything there. Envelopes still in draft or pending are deliberately out of scope. Handle pagination on Find Envelopes so a register with hundreds of agreements loads fully rather than showing only the first page.
What does this prompt do?
- Pulls every completed agreement out of Documenso into one searchable, sortable table showing the counterparty, the agreement type, the signing date and the key commercial terms.
- Gives each contract an Abstract this contract button that hands the signed PDF to a background agent, which reads it and fills in effective date, term length, renewal and notice windows, payment terms, liability caps and termination rights.
- Saves those results in the app so a contract is only ever read once, flags anything the agent is unsure about instead of guessing, and makes contracts with no abstraction yet impossible to miss.
- Offers one click filters for renewals and notice deadlines landing in the next 30, 60 or 90 days, and a Sync register button that pushes the whole register into a Google Sheet for finance to pivot on.
What do I need to use this?
- A Documenso account where your signed agreements already live, with access for the register to read them
- Agreements that have actually finished signing, since drafts and documents still out for signature are deliberately left out
- A Google account and a spreadsheet the register can sync into, or an empty one it can fill
- A few minutes to agree with your team on which commercial terms matter enough to track
How can I customize it?
- Change the list of terms the agent extracts: add governing law, assignment and change of control, service levels, or whatever your team argues about most
- Adjust the deadline filters from 30, 60 and 90 days to match the notice periods your contracts actually use
- Point the sync at a different spreadsheet or tab, and choose which columns finance sees in it
FAQs
Does this change anything in Documenso?
What happens when the agent cannot work out a clause?
Do I have to abstract every contract before the register is useful?
How is this different from just looking at my documents in Documenso?
Does the finance team need a login to use this?
Related templates
Stop buying stale lists. Reps run a saved search, work the results like an inbox, and only the accounts they approve ever reach your CRM.
Drag creators through Sourced to Wrapped on a board grouped by campaign, with audience stats on every card and a one-click brief for each creator.
Pick a repricing rule, send an assistant out to check competitor pages, then approve the new prices that clear your margin floor.
See the projected bounce rate for any outbound send before it goes out, and keep the launch button locked until the list is clean enough to be safe.
Pick any date range and see what each device in your home actually cost to run, not just how many kilowatt-hours it used.
Search three months of global coverage on your topic, rank the outlets actually writing about it, and draft a tailored pitch for each one.
Stop opening PDFs one by one to answer contract questions.
Build a register that already knows the effective dates, renewal windows, payment terms and liability caps hiding in your signed agreements.