This workflow corresponds to n8n.io template #3998 — we link there as the canonical source.
This workflow follows the Form Trigger → Gmail recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "pJLEzimgy33CTesQ",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Medical Biling AUTOMATION TEMPLATE",
"tags": [],
"nodes": [
{
"id": "a35b7936-081d-40cd-ab1d-be7104135780",
"name": "Data Structure1",
"type": "n8n-nodes-base.set",
"position": [
-240,
980
],
"parameters": {},
"typeVersion": 1
},
{
"id": "c7c3c834-7415-478a-8d14-9435249da169",
"name": "Error Check1",
"type": "n8n-nodes-base.if",
"position": [
400,
980
],
"parameters": {},
"typeVersion": 1
},
{
"id": "3ab7cc86-44bb-457a-b55a-b2289fa1a436",
"name": "Admin Notification1",
"type": "n8n-nodes-base.httpRequest",
"position": [
780,
1020
],
"parameters": {},
"typeVersion": 1
},
{
"id": "a04df0cf-b88f-4548-a574-4f0b43d159dd",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
-440,
980
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "0739a55b-cfdd-47b5-8168-5af16cd71465",
"name": "Calculate prices",
"type": "n8n-nodes-base.code",
"position": [
200,
980
],
"parameters": {},
"typeVersion": 2
},
{
"id": "aa8322bd-f007-4ce5-8bc4-51c705cffe1e",
"name": "Format Date",
"type": "n8n-nodes-base.code",
"position": [
-40,
980
],
"parameters": {},
"typeVersion": 2
},
{
"id": "43105af9-fb2f-483f-9c5c-1d6baa6688bc",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-460,
740
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "6ad456b7-69ef-419a-9e69-da5620c747f7",
"name": "Generate Error Message1",
"type": "n8n-nodes-base.set",
"position": [
580,
1020
],
"parameters": {},
"typeVersion": 1
},
{
"id": "83cd63f1-91cb-4f7e-8950-8a9a07e8e582",
"name": "Send Patient Invoice Email",
"type": "n8n-nodes-base.gmail",
"position": [
560,
840
],
"parameters": {},
"typeVersion": 2.1
},
{
"id": "e93ac2e2-113f-463d-a4f8-215cf6bf1d66",
"name": "Log Invoice to Googlesheets",
"type": "n8n-nodes-base.googleSheets",
"position": [
780,
840
],
"parameters": {},
"typeVersion": 4.5
},
{
"id": "6e3cb4a0-e9f4-4625-a87e-05009c16453f",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
340,
720
],
"parameters": {
"content": ""
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "a4080380-112f-49c8-8031-08535b92cb04",
"connections": {
"Format Date": {
"main": [
[
{
"node": "Calculate prices",
"type": "main",
"index": 0
}
]
]
},
"Error Check1": {
"main": [
[
{
"node": "Generate Error Message1",
"type": "main",
"index": 0
}
],
[
{
"node": "Send Patient Invoice Email",
"type": "main",
"index": 0
}
]
]
},
"Data Structure1": {
"main": [
[
{
"node": "Format Date",
"type": "main",
"index": 0
}
]
]
},
"Calculate prices": {
"main": [
[
{
"node": "Error Check1",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Data Structure1",
"type": "main",
"index": 0
}
]
]
},
"Generate Error Message1": {
"main": [
[
{
"node": "Admin Notification1",
"type": "main",
"index": 0
}
]
]
},
"Send Patient Invoice Email": {
"main": [
[
{
"node": "Log Invoice to Googlesheets",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Note: This template is designed for self-hosted n8n instances. The workflow image above shows the complete automation flow.
Source: https://n8n.io/workflows/3998/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This workflow audits a list of URLs from a CSV upload or an XML sitemap using the Google PageSpeed Insights API, writes Lighthouse and Core Web Vitals metrics into a new Google Sheets report, and emai
Submit any YouTube, Vimeo, or Zoom webinar URL using a simple form and the workflow handles everything from there. It runs a two-phase pipeline: first identifying the top viral moments in your video w
Stop chasing blurry receipts and manually typing expense data. This workflow creates an intelligent, "snap-and-submit" reimbursement pipeline that hosts photos via UploadToURL, extracts deep data via
Atlas Opco Import. Uses github, stopAndError, formTrigger, googleSheets. Event-driven trigger; 22 nodes.
Shopify and E-Commerce store owners often struggle to create engaging 3D videos from static product images. This workflow automates that entire process—from image upload to video delivery—so store own