All Templates
Revenue Operations • Advanced • 1 n8n workflow

Tender Bid Review System

Turn an Airtable tender record into a bid brief with the published deadline, verified requirement excerpts, and open questions. The designated Slack reviewer chooses Bid or Pass, and the decision is written back to Airtable.

By Luka Salagishvili at Uptune

Last updated:

0

One system, 1 connected workflow

Start with the complete package and setup directions. The preview below shows the entry workflow. Import every listed workflow separately, then connect their references in your n8n instance.

Get the workflow Read the setup directions

Entry workflow preview

Powered by n8n.io

Read the architecture, decision rules, and exception handling in the source blueprint .

Continue with the related architecture guide .

How it works

What this workflow does

Turn an Airtable tender record into a short bid/no-bid brief for the designated reviewer. An authenticated webhook reads the record, confirms it is still New, asks OpenAI for a summary and exact requirement excerpts, and sends the brief to Slack. The reviewer chooses Bid or Pass, and the workflow writes the decision back to Airtable only if the tender is unchanged.

The workflow imports inactive with dryRun: true. Run with sample data uses a fictional tender record and brief, so the preview does not call Airtable, OpenAI, or Slack.

This is the qualification step for the Target ICP Classification & VIP Lead Notification blueprint; the Commercial-to-Delivery Project Handoff blueprint covers what happens after a successful bid.

Tender facts stay grounded

Capture tender facts requires a New record with a title, a future deadline, and requirements under 18,000 characters. It stores a snapshot of the title, deadline, and requirements so later steps can detect edits.

OpenAI returns a short summary, up to four requirement excerpts, and up to three open questions. Every excerpt must appear exactly in the tender requirements. The workflow rejects unsupported excerpts and oversized text instead of sending an invented requirement to the reviewer. The Slack brief includes the deadline in UTC and a link back to the Airtable record.

Review without acting on stale facts

Before the review, the workflow re-reads the record and requires it to still be New with an unchanged snapshot. It then marks the record Under Review and writes the brief. The Slack request goes only to the configured reviewer and waits up to two days.

The decision is accepted only from that reviewer. If the deadline has passed by the time the response arrives, the record is marked Review Expired rather than accepting a late bid decision. After the review, the workflow re-reads the record again and requires it to remain Under Review with the same facts before writing Bid, Pass, the reviewer, and the response time.

Validation scope

The supplied report confirms the isolated n8n 2.47.4 import, inactive state, and sample path. It also covers structural checks, requirement-excerpt verification, reviewer binding, deadline handling, and changed-record blocking. Live Airtable, OpenAI, and Slack calls require a staging test with your accounts.

How to use

Before you start

  • A current n8n instance.
  • An Airtable base and tender table.
  • An Airtable personal access token with record read and write access.
  • An OpenAI API key and a JSON-mode model.
  • A Slack app with signed approvals and Capture Who Responded support.

1. Import and run the sample

Download the complete package, extract the ZIP, and read the full setup guide. Import tender-bid-review.n8n.json and keep it inactive.

Open Run with sample data and choose Test workflow. Assemble bid review should return the sample deadline, summary, requirement excerpts, and questions.

2. Prepare the Airtable table

Create a table with these fields:

  • Title (text)
  • Deadline (date and time)
  • Requirements (long text)
  • Status (text)
  • Brief (long text)
  • Decision (text)
  • Decision By (text)
  • Decision At (text)

Add an eligible record with a future deadline and Status set to New.

3. Configure and connect

In Setup, set airtableBaseId, tendersTableId, reviewerId, and the OpenAI model. Select a Header Auth credential with an Airtable bearer token on all Airtable nodes and a separate OpenAI bearer credential on Summarize tender text.

Configure signed Slack approvals for the designated reviewer. Add a private inbound Header Auth credential to Receive event.

4. Send a tender review

POST the Airtable recordId using the supplied test payloads to check the tender, Bid, and Pass shapes. The webhook acknowledges receipt; the Slack message and Airtable record show the result.

5. Test and operate

Test in staging with a copied record and dryRun set to false. The Slack wait lasts up to two days, and the tender deadline still applies. A reviewer can choose Bid or Pass, and the record stores the reviewer and response time. If a deadline passes or the reviewer does not answer, the record is marked Review Expired.

If the record changes during review, check the current record before resetting it to New for a fresh decision. If Slack fails after a record is marked Under Review, confirm there is no pending request before resetting it. Send one review event per record at a time, and use the source record to verify requirements and eligibility before making a commitment.

Use the Proposal Draft & Slack Approval System after a Bid decision, and the Won Deal to Draft Invoice System and Client Onboarding & Project Handoff Automation after the work is won. The Partner Introduction Approval System applies a similar reviewer-gated pattern. Read the Target ICP Classification blueprint for the qualification model.

By Luka Salagishvili at Uptune

Luka shares practical workflow templates and automation guides at Uptune, covering connected business tools, implementation steps, and testing before launch.

Luka on LinkedIn · Book a consultation

Get the complete automation system

Download the workflow and the supporting files together. Extract the ZIP, then import the workflow JSON listed below separately. Configuration, source code, and other supporting files are not n8n workflow imports.

Download complete package (ZIP)

1 connected n8n workflow

It imports inactive. Follow the package setup directions before activating schedules or delivery.

  1. Tender bid review and decision workflow

    One authenticated webhook reads an Airtable tender, verifies requirement excerpts with OpenAI, asks the designated reviewer to bid or pass in Slack, and writes the decision back only if the record is unchanged.

    tender-bid-review.n8n.json
    Download workflow 01

Setup, integration, and validation files

  • Complete setup guide

    Airtable fields and scopes, Slack approval setup, tender snapshot rules, deadline handling, and recovery.

    README.md
  • Test payloads

    A tender record, a Bid response, and a Pass response for the built-in sample path.

    test-payloads.json
  • Supplied validation report

    Isolated n8n 2.47.4 import, sample-path result, structural checks, and file hashes. Live provider authentication and calls were not executed.

    validation-report.txt