Automate Vendor Contract Renewals & Reminders with GPT-4.1 mini, Slack & Gmail

Go to Workflow
110 views
Built by Trung Tran Trung Tran
Created on June 05, 2026

Description

๐Ÿ“ Smart Vendor Contract Renewal & Reminder Workflow With GPT 4.1 mini
Watch the demo video below:

Never miss a vendor renewal again!
This smart workflow automatically tracks expiring contracts, reminds your finance team via Slack, and helps initiate renewal with vendors through email โ€” all with built-in approval and logging. Perfect for managing both auto-renew and manual contracts.
๐Ÿ“Œ Whoโ€™s it for
This workflow is designed for Finance and Procurement teams responsible for managing vendor/service contracts. It ensures timely notifications for expiring contracts and automates the initiation of renewal conversations with vendors.

โš™๏ธ How it works / What it does

โฐ Daily Trigger
Runs every day at 6:00 AM using a scheduler.

๐Ÿ“„ Retrieve Contract List
Reads vendor contract data from a Google Sheet (or any data source).
Filters for contracts nearing their end date, using a Notice Period (days) field.

๐Ÿ”€ Branch Based on Renewal Type
Auto-Renew Contracts:
Compose a Slack message summarizing the auto-renewal.
Notify the finance contact via Slack.

Manual Renewal Contracts:
Use an OpenAI-powered agent to generate a meaningful Slack message.
Send message and wait for approval from the finance contact (e.g., within 8 hours).
Upon approval, generate a formal HTML email to the vendor.
Send the email to initiate the contract extension process.

๐Ÿ“Š (Optional) Logging
Can be extended to log all actions (Slack messages, emails, approvals) to Google Sheets or other databases.

๐Ÿ› ๏ธ How to set up

Prepare your Google Sheet
Include the following fields:
Vendor Name, Vendor Email, Service Type, Contract Start Date, Contract End Date, Notice Period (days), Renewal Type, Finance Contact, Contact Email, Slack ID, Contract Value, Notes.
Sample: https://docs.google.com/spreadsheets/d/1zdDgKyL0sY54By57Yz4dNokQC_oIbVxcCKeWJ6PADBM/edit?usp=sharing

Configure Integrations
๐ŸŸข Google Sheets API: To read contract data.
๐Ÿ”ต Slack API: To notify and wait for approval.
๐Ÿง  OpenAI API (GPT-4): To generate personalized reminders.
โœ‰๏ธ Email (SMTP/Gmail): To send emails to vendors.

Set the Daily Scheduler
Use a Cron node to trigger the workflow at 6:00 AM daily.

โœ… Requirements

| Component | Required |
|----------------------------------|----------|
| Google Sheets API | โœ… |
| Slack API | โœ… |
| OpenAI API (GPT-4) | โœ… |
| Email (SMTP/Gmail) | โœ… |
| n8n (Self-hosted or Cloud) | โœ… |
| Contract Sheet with proper schema| โœ… |

๐Ÿงฉ How to customize the workflow
Adjust Reminder Period**: Modify the logic in the Find Expiring Vendors node (based on Contract End Date and Notice Period).
Change Message Tone or Format**: Customize the OpenAI agent's prompt or switch from plain text to branded HTML email.
Add Logging or Tracking: Add a node to append logs to a **Google Sheet, Notion, or database.
Replace Data Source: Swap out Google Sheets for **Airtable, PostgreSQL, or other CRM/database systems.
Adjust Wait/Approval Duration**: Modify the sendAndWait Slack node timeout (e.g., from 8 hours to 2 hours).

๐Ÿ“ฆ Optional Extensions
๐Ÿงพ Add PDF contract preview via Drive link
๐Ÿง  Use GPT to summarize renewal terms
๐Ÿ›  Auto-create Jira task for contract review

Nodes Used (7)

Basic LLM Chain
@n8n/n8n-nodes-langchain.chainLlm
Code
n8n-nodes-base.code
Google Sheets
n8n-nodes-base.googleSheets
OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi
Send Email
n8n-nodes-base.emailSend
Slack
n8n-nodes-base.slack
Structured Output Parser
@n8n/n8n-nodes-langchain.outputParserStructured