SharePoint agreement tracking for extensions and signatures

SharePoint agreement tracking breaks with extensions. Use a Placements list + Agreements list (one per version) plus Power Automate to log sent/signed dates.

Jul 20, 2026
SharePoint agreement tracking for extensions and signatures
💡
Primary keyword: sharepoint agreement tracking

Direct answer

The simplest way to set up SharePoint agreement tracking for signatures and multiple extensions: don’t overwrite a single row. Instead, keep your Placements list as the “one row per placement” source of truth, and create a separate Agreements (or Agreement Events) list where each agreement version/extension becomes its own record linked back to the placement. Then use Power Automate to capture key dates (sent, signed by consultant, signed by client) and surface “awaiting signature” and “expiring soon” views.
SharePoint agreement tracking workflow — Photo by Romain Dancre on Unsplash
SharePoint agreement tracking workflow — Photo by Romain Dancre on Unsplash

Why SharePoint agreement tracking gets messy with extensions

Most agreement tracking setups break down because they assume there’s only one lifecycle per placement:
  • Agreement sent → signed → completed
But extensions repeat the same process (sometimes multiple times) for the same placement ID. When that happens, you either:
  • overwrite the original agreement dates (and lose history), or
  • keep adding “Agreement 2 / Agreement 3” columns until your list becomes unmanageable
A related-list approach fixes both problems.

Recommended data model (simple + scalable)

List 1: Placements (one row per placement)

Use this list as your master record. Common columns:
  • Placement ID (unique identifier)
  • Consultant name (optional)
  • Client name (optional)
  • Start date / end date
  • Status
  • Folder link (optional)
  • Agreement records (lookup/relationship to Agreements list)

List 2: Agreements (one row per agreement version/extension)

Each record represents a “version” of the agreement process for a placement.
Suggested columns:
  • Agreement Title (e.g., “Placement 5379 — Extension 2”)
  • Placement (lookup to Placements)
  • Version / Extension # (number)
  • Effective start date
  • Effective end date
  • Consultant agreement sent (date/time)
  • Consultant signed (date/time)
  • Client agreement sent (date/time)
  • Client signed (date/time)
  • Status (choice): Draft / Sent / Partially signed / Fully executed
  • Notes (optional)

How to link the lists in SharePoint (lookup relationships)

  1. Create the Placements list first.
  2. Create the Agreements list.
  3. In the Agreements list, add a Lookup column called “Placement” that points to Placements (usually the Placement ID or Title field).
  4. (Optional but helpful) In Placements, add a column that surfaces related agreements, so anyone can click into the agreement history for a placement.

Power Automate: capture agreement events from email

Most teams already receive the “agreement sent” and “agreement signed” notifications via email (Adobe Sign, DocuSign, etc.). Power Automate can:
  • watch a mailbox
  • parse key fields from the subject/body (Placement ID, agreement type, who signed)
  • create/update the appropriate record in Agreements

Pattern A: One flow per event type (recommended)

Create separate flows like:
  • When consultant agreement sent → create/update agreement record
  • When consultant signs → update that same agreement record
  • When client agreement sent → update
  • When client signs → mark Fully executed
This is easier to test than one huge flow.

Pattern B: One flow that routes based on email content

If your vendor’s email templates are consistent, you can use a single flow that:
  • identifies event type (sent vs signed)
  • extracts Placement ID
  • finds the most recent “open” agreement record for that placement
  • updates the right date field

Handling multiple extensions cleanly

Here are two approaches—choose based on what your emails contain.

Option 1 (best): Use an agreement/version identifier

If your agreement process includes a unique agreement ID or change request number, store that on the Agreement record and use it as the primary match.

Option 2: Use “most recent open agreement” logic

If you only have Placement ID, your flow can:
  1. Find Agreements where Placement = [Placement ID]
  2. Sort by Created date descending
  3. Pick the most recent Agreement where Status isn’t Fully executed
  4. Update that record
When a new extension starts, you create a new Agreement record instead of reusing the closed one.

Views that make this feel like a dashboard

Create views on the Agreements list:
  • Awaiting consultant signature (consultant sent is not empty AND consultant signed is empty)
  • Awaiting client signature (client sent is not empty AND client signed is empty)
  • Fully executed (last 30 days)
  • Recently extended (Version/Extension # > 1 AND Created date within last 30 days)
And on the Placements list:
  • Expiring soon (end date within next 14–30 days)
  • Active placements

Shared inbox notes (Power Automate + shared mailboxes)

If agreements are managed from a shared inbox (e.g., agreements@yourcompany.com):
  • You can still build flows that monitor that mailbox, but make sure the connection/account running the flow has the right permissions (and, depending on your setup, a licensed service account may be required).
  • A quick proof-of-concept flow that triggers on new emails in the shared mailbox and logs them to SharePoint is the fastest way to validate access.

Checklist: implement in 60–90 minutes

Create Agreements list with lookup to Placements
Add version/extension number column
Add sent/signed date columns (consultant + client)
Build 1–2 Power Automate flows to log “sent” and “signed” events
Create “Awaiting signature” views
Test with a real extension scenario (same Placement ID, new end date)

Get help building this

Setting up SharePoint agreement tracking with Power Automate usually breaks at the email-parsing step — matching inbound notifications to the right agreement record is trickier than it looks, especially with multiple active extensions per placement. If you’ve hit that wall, book a ZoomFlow session — one of our consultants will map your agreement lifecycle, build the lookup structure, and wire up the flows with you live on a single call.