← All case studiesCase study

Vendor contract management on Dataverse and Power Automate

Vendor contracts move from request to signature through approvals chosen by rules, renewals are flagged before their notice deadlines, and AI Builder reads the vendor's order form to fill in the contract terms.

A leadership dashboard showing committed annual spend by contract type and cost centre, contracts by risk tier, and upcoming renewals
Summarize this case study

What it does

Every vendor contract is a record in a Dataverse app that moves through six stages, from request to active. Power Automate picks the approvals each contract needs from its value, risk tier and terms, creates a SharePoint folder for its documents, and holds it back from going active until a signed copy is uploaded. A daily check flags auto-renewals approaching their notice deadline, and AI Builder reads the vendor's order form to fill in the dates and terms.

Where contracts slip

Contracts usually live in inboxes and shared drives. Approvals are chased by email, it's unclear which version was signed, and auto-renewals pass their notice deadline because nobody was tracking the date. Committed spend by vendor, cost centre or risk is hard to add up.

Six stages for every contract

Each contract moves through request, triage, reviews, approval, signature and active. The stage bar on the form updates when the contract's status changes, so anyone who opens it can see where it is and what it's waiting on. Contracts are numbered automatically, and vendors, obligations and approval history are linked to each one.

A contract form with the lifecycle stage bar showing request and triage done and reviews in progress
A $72,000 contract in review, waiting on finance.

Approvals chosen by rules

Procurement reviews every contract. Security, legal, finance and executive reviews are added depending on the contract's value, its risk tier and whether it has non-standard terms. Each reviewer gets an approval in Teams or Outlook with the contract's value, term, risk tier and notice deadline, and every decision is logged on the contract.

A procurement review approval in Teams, showing the contract's vendor, annual and total value, term, risk tier, notice deadline and the approval stages it needs
A procurement review in Teams. The rules added legal, finance and executive review to this contract.

A folder per contract

Creating a contract creates its folder in a SharePoint document library. When a signed copy is uploaded to the folder, the contract records it, and the contract can't become active until one is there.

A SharePoint document library with one folder per contract, named by contract number
One folder per contract, named by contract number.

Reading the order form with AI Builder

When the vendor's order form is dropped into a draft contract's folder, AI Builder reads it within about a minute and fills in the start and end dates, term, notice period and auto-renewal. Fields a person has already filled in are left as they are. If the document's annual value differs from the one entered, the contract gets a warning and its owner gets a Teams message.

A draft contract's folder containing the vendor's order form as a PDF
The contract after AI pre-fill, with dates, term, notice period and auto-renewal filled in, and a warning that the document's annual value differs from the one entered
The contract after its order form was read, with the $2,800 value difference flagged.

Renewals and spend

A check runs every day and flags contracts approaching their notice deadline, marking auto-renewals at risk. The leadership dashboard shows committed annual spend by contract type and cost centre, contracts by risk tier, renewals by month, and everything renewing in the next 90 days.

Why it's built this way

Contracts link to vendors, obligations and approval history, and requesters, approvers and admins need different access. Dataverse handles related tables and security roles, which a SharePoint list can't do well, so the contracts live in Dataverse and only the documents live in SharePoint.

AI Builder only writes to empty fields and flags differences for a person to check, so it never replaces something a requester entered. The tables, the app and seven flows are packaged as one Dataverse solution that can be installed in another company's environment.

Licensing

This build needs premium Power Platform licences. The Dataverse app needs Power Apps premium for the people who use it, and reading documents uses AI Builder credits. We set out the licensing before we quote.

Want something like this for your team?

Tell us what should move off email and spreadsheets. You get a quote on the first call.