Skip to content
ExpertEnterpriseDocument ProcessingWebhook trigger32 nodes

Create invoices: Slack + sub-workflow

Fires the moment a webhook arrives across Slack, Google Sheets and Notion, parses the incoming file into rows, then branches on the check before anything is written. Built for contracts, around a "Download Source File" step, in 32 documented nodes.

Create invoices with HTTP / REST API and MySQL hands-free. An original, ready-to-import n8n workflow built around the 'Document Generation' pattern for legal & compliance. It fires on a webhook and orchestrates 32 nodes across Slack, Google Sheets, HTTP / REST API. Retry-on-fail is enabled on external calls. Import the JSON, add your credentials, and adapt the parameters. What used to take a morning now runs on its own.

Key benefits

  • Keeps Slack and Google Sheets in step for contracts, without anyone re-typing a row
  • Safe to re-run: records already in Slack or Google Sheets are skipped, across all 32 nodes of this contracts build
  • A failed Slack or Google Sheets call is retried rather than dropped, at any of the 32 nodes in this contracts build
  • Every contracts run leaves an audit row behind, alongside Slack
  • Fans the same result out to Notion in the same run, for contracts

Use cases

  • Teams keeping Slack and Google Sheets aligned by hand for contracts
  • Pushing contracts events into Slack and Google Sheets the moment they land, not on the next poll
  • Contracts work where "Download Source File" is still a manual step before Slack
  • Contracts work that only reaches Slack when a webhook arrives, when someone remembers to start it

Integrations

SlackGoogle SheetsHTTP / REST APINotionMySQL

Workflow preview (32 nodes)

The template's actual node layout and connections. Node parameters and credential slots unlock with the download.

Receive Inbound WebhookWebhookDownload Source FileHttp RequestParse CSV ContentsExtract From FileClean & Reshape RowsCodeRows Pass Validation?IfQuarantine Bad RowsGoogle SheetsLoad Rows into NotionNotionLoad Previous SnapshotGoogle SheetsCompute Drift vs Snapsh…CodeFingerprint for Idempot…CodeDrop Already-Processed …Remove DuplicatesOffload to Post-Process…Execute WorkflowRecord Sub-workflow Res…Execution DataStamp Completion TimeDate TimePersist Run MetadataExecution DataEnrich with Reference D…Http RequestFold In Enrichment Fiel…SetSerialize Run Output (C…Convert To FileArchive Row SnapshotNotionAlign Field NamesRename KeysCap Batch VolumeLimitSave Execution MetadataExecution DataSort Documents Newest F…SortGuard Non-Empty fileNameFilterStamp Processing TimeDate TimeTag Pipeline MetadataSetSummarize Run StatsSetAppend Audit Row (MySQL)My SqlSend Summary to SlackSlackCapture Failure ContextSetEscalate Failure to Sla…SlackPark in Dead-Letter Que…My Sql

What's inside (32 nodes)

A look at the node types this workflow uses. No purchase required — full parameters and credentials are yours after you buy.

CodeConvert To FileDate TimeExecute WorkflowExecution DataExtract From FileFilterGoogle SheetsHttp RequestIfLimitMy SqlNotionRemove DuplicatesRename KeysSetSlackSortWebhook

From download to running in 3 steps

  1. 1
    Import. In n8n, open Workflows → menu → “Import from File” and pick the downloaded JSON.
  2. 2
    Connect. Add your own credentials on the app nodes - n8n highlights exactly which ones need them.
  3. 3
    Activate. Run it once to test, then toggle Active. The automation is live.

What you'll learn

Architect level

The deepest tier - sub-workflow delegation, state snapshots, and full observability.

  • Pulling text out of an uploaded file before parsing it
  • Validating required fields before the write
  • Upserting so reprocessing a document does not duplicate it

Every node carries its own documentation on the canvas, plus notes explaining why the architecture was built this way, a credential setup guide, troubleshooting, and three practice exercises. Sample data comes pinned to the trigger, so you can hit Execute and watch data flow before connecting a single account.

Common questions

What exactly do I get?

The complete, ready-to-import n8n workflow as a JSON file, delivered instantly after payment. Import it into your own n8n (cloud or self-hosted), add your credentials, and it runs.

How do I import it into n8n?

In n8n, open Workflows, click the three-dot menu, choose “Import from File”, and select the downloaded JSON. Then connect your own app credentials on the highlighted nodes.

Do I need anything else for it to work?

You need your own n8n instance and accounts/credentials for the apps this workflow connects to (Slack, Google Sheets, HTTP / REST API, Notion, …). No coding is required.

What if it doesn't work for me?

If the file is faulty, won't import, or isn't as described, contact us within 7 days and we'll fix it or refund you - see our refund policy.

Can I modify or resell it?

You can freely adapt and use it in your own or your clients' projects. Reselling or redistributing the template file itself is not permitted.

Original n8n workflow template created and owned by WorkflowCrate. After purchase you receive the ready-to-import JSON file and a license to use and adapt it in your own projects.