Signature chase console for stalled Docusign envelopes

By General Input

One screen showing every contract still waiting for signature, who is holding it up, whether they ever opened it, and what to do about it.

Integrations

  • Docusign
  • Slack Bot

Type

App

Categories

  • Sales
  • Operations

Build me a signature chase console for Docusign: one screen my deal desk opens every morning that shows every envelope still out for signature, sorted by how long it has been waiting, and lets us act on each one without leaving the page. This is an interactive console, not a scheduled digest. The value is the per recipient blocking analysis plus the corrective actions.

Main view. A dense table of open envelopes, longest waiting at the top. Load it with Docusign List Envelopes filtered to status sent and delivered over a rolling window (default the last 120 days, configurable in the app). One row per envelope with: counterparty (the primary external signer name and company or email domain), the template or document the envelope came from, days since sending, the recipient currently blocking it, whether that person has opened the document, and the expiration date.

Working out who is blocking. For each envelope call List Recipients and find the current blocker: the recipient with the lowest routing order whose status is not completed, autoresponded, or declined. Show their name, email, role, and routing order, plus how many other recipients are queued behind them. Then call Get Envelope Audit Events for the envelope and look for a viewed event attributable to that recipient. If there is a viewed event, show when they first opened it (for example "opened 2 days ago"). If the audit trail has a sent event but no viewed event at all, show "never opened" as a distinct, visually obvious state. That difference is the whole point of the app: someone who opened it yesterday is ignoring me, someone who never opened a two week old envelope probably never received it, and those two need different responses.

Naming the template. Use Get Envelope for full envelope details and List Templates once per session (cached) to resolve template ids to readable template names. When an envelope carries no template id, fall back to the envelope email subject, or the first document name from List Envelope Documents.

Expiration warnings. Read each envelope's expiration settings with Get Notification Settings and show the expiry date on the row. Flag any envelope whose expiry falls within the next 5 days in red (make the threshold configurable), because expired envelopes die silently and nobody notices. Sort or filter so the red rows can be pulled to the top on demand.

Row actions, all inline with a confirmation step where destructive. First, restart reminders: open a small dialog that shows the current cadence from Get Notification Settings, then write a tighter one with Update Notification Settings (enable reminders, set the delay and frequency, and optionally push the expiry out). Be clear in the UI that this changes the schedule Docusign chases on rather than firing an instant email. Second, fix a wrong signer: an inline edit that calls Update Recipients to change the recipient email, name, or routing order, plus a secondary option that calls Create Correct View and opens the returned Docusign correction screen in a new tab for changes bigger than a typo. Third, kill a dead deal: call Update Envelope with status voided and a void reason typed by the user, behind a confirm dialog that spells out that recipients will be notified and the envelope can never be signed. Fourth, nudge the deal owner in Slack: send a message with the Slack Bot Send a Message action, either to a chosen channel (List Channels to populate the picker) or as a direct message to the owner found with Look Up User by Email. The message should carry the counterparty, the document, days waiting, who is blocking, whether they have opened it, and a link to the envelope in Docusign.

Embedded background agent: "Draft the chase note". Every row has a button that kicks off a background agent for that envelope. The agent reads the envelope with Get Envelope, its recipients with List Recipients, its full history with Get Envelope Audit Events, and its reminder and expiry settings with Get Notification Settings. It then writes a short, personalized follow up note addressed to the blocking recipient, choosing the tone from the situation: gentle and low pressure for someone who opened the document in the last day or two, firmer with a concrete date for someone who opened it a week ago and stalled, and for a two week old envelope nobody has ever opened it should assume the email never landed, say so plainly, offer to reissue to a different address, and suggest checking spam. It should reference real specifics such as the document name, when it was sent, and the expiry date rather than generic filler, and never claim someone read it when the audit trail shows they did not.

Where the draft lands. The agent's note drops back into the app on the row it came from, in an expandable panel with a copy button, an edit box so the user can tweak it before using it, and a Send to Slack button that posts the note with the Slack Bot Send a Message action. Persist drafts against the envelope id with the timestamp they were generated, so they survive a page reload, and mark a draft as stale if newer audit events have arrived since it was written. Show a clear in progress state on the row while the agent is running.

Envelope detail. Clicking a row opens a detail panel with the full recipient list (name, email, role, routing order, status), a chronological timeline of the audit events, the current reminder and expiry settings, and a log of what the team has already done from this console (reminders tightened, recipients corrected, Slack nudges sent, notes drafted) with who did it and when.

Nuance to build in. Fetch per envelope recipient and audit detail lazily and cache it, since Docusign rate limits at roughly 3,000 calls an hour and a busy account can have hundreds of open envelopes. Give the list a manual refresh button with a last updated timestamp. Add a search box for counterparty or document name, and quick filters for "never opened", "expiring soon", and "waiting more than 14 days". Remember each user's last used filters and their default Slack target. Keep the layout dense and scannable: this is a screen a deal desk scans in 30 seconds every morning, so days waiting and the never opened flag should be the two things the eye lands on first.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them