Build automations with n8n
Learn to build n8n workflows, connect services and handle structured data to address a specific task through a workflow you can explain and test.
Find your starting point
A good fit when you have a working n8n environment and want to build workflows, understand their data and check their executions.
- Hours and sessions
- 12 hours live · 6 sessions of 2 h.
- Group size
- Up to 12 participants per trainer as a reference, adjusted to the practice and feedback.
What you will learn
- 01
Build a workflow with nodes and connections for a chosen use case.
- 02
Follow a record through the workflow and interpret its input and output data.
- 03
Test successful and failed cases, locate incidents and document credentials, dependencies and checks.
A proposed programme
Build a workflow that reviews practice orders in Google Sheets. Read their data, prepare quantities and amounts, separate incomplete entries and update only orders that meet the conditions. Follow each record node by node to understand what changed and what could happen when the workflow runs again.
We adapt the selection and depth of the modules to the group's starting point and goals.
01Understand workflows
Triggers, nodes and executions within an already available n8n environment.
You will work on
- Define what the order workflow reads, what it may change and what remains outside its scope.
- Connect a manual trigger to a Google Sheets row-reading operation and follow the first execution.
- Recognise each order as an item, read its JSON fields and preserve its identifier between nodes.
- Practice
- Read two fictional orders, locate each identifier and relate sheet cells to the node’s input and output.
- How you will check it
- The participant distinguishes a workflow execution from the items it processes and can follow an order without confusing it with a row’s position.
02Connect and transform
Credentials, structured data and expressions adapted to the group's experience.
You will work on
- Select authorised credentials and map identifier, quantity, price and status without placing secrets in the workflow or its notes.
- Use Edit Fields and expressions to normalise the agreed decimal format, validate positive whole-number quantities and a price above zero, and calculate the subtotal without turning an empty value into zero.
- Use If to separate valid, pending orders; update subtotal and status using the unique order identifier.
- Practice
- Prepare an order for 3 units at €12.50 and another with no quantity; send only the first to Update Row and check which row changed.
- How you will check it
- A €37.50 subtotal on the correct order; the incomplete entry retains its data and never reaches the update node.
03Test and document
Test cases, reading executions and a record of limits and responsibilities.
You will work on
- Compare input, expected result and observed result at each node; distinguish a review branch from an execution error.
- Introduce a controlled configuration error, read its message and check the node’s behaviour for the selected error mode.
- Read the sheet again before repeating a test and document selection, identification, limits and review ownership.
- Practice
- Correct a mis-mapped practice field, run again and check that previously reviewed orders are not updated again after their status is reread.
- How you will check it
- A test table with traces and corrections, plus instructions for investigating a failure and checking writes before repeating an execution.
Review orders without losing track of each record
Teaching example
Suggested practice: query and transform a practice record, introduce an incomplete value and review the result node by node. We document what the workflow needs to operate and how to investigate an incident; services and technical depth are agreed for each edition.
Fictional classroom case. A Google Sheets spreadsheet contains orders with a unique pedido_id, quantity, unit price and status. Order PED-104 has 3 units at €12.50; PED-105 has no quantity. Both start as «Pending». We work on a copy containing practice data.
- Starting point
- The team calculates subtotals and marks orders as reviewed manually. A value that looks numeric may arrive as text, and row order can change.
- First attempt
- The first version of the exercise sends every order to the destination and treats amounts as though they were already numbers. It does not separate the empty value and uses the row’s position to locate the order.
- What we review
- The trainer asks participants to retain pedido_id, validate the original values and transform only the agreed decimal format. An If node passes only valid, pending orders; Update Row matches the unique identifier. Before repeating, participants reread the status and review which writes could occur.
- Result
- PED-104 retains its identifier and receives a €37.50 subtotal and «Reviewed» status. PED-105 is separated for review and remains unchanged. When the sheet is read again, the reviewed order no longer meets the pending condition and is not updated again in this test.
The workflow we will build
- Google Sheets
Read orders
A manual trigger queries the practice rows.
- Edit Fields
Prepare amounts
Retain the ID, validate and calculate the subtotal.
- If
Valid and pending
Separate incomplete entries and reviewed orders.
- Google Sheets
Update by ID
Write subtotal and status to the correct order.
Teaching diagram of a manual workflow: read, prepare, decide and update. The incomplete branch is reviewed without writing to the sheet.
What happens to each input
Complete order
- pedido_id
- PED-104
- Quantity received
- 3
- Price received
- 12,50
- Initial status
- Pending
Expected result: a €37.50 subtotal and «Reviewed» status on PED-104.
Follow the same ID through the nodes and check quantity, normalised price and updated row.
Incomplete order
- pedido_id
- PED-105
- Quantity received
- Empty
- Price received
- 12,50
- Initial status
- Pending
Expected result: the review branch leaves PED-105 unchanged in the sheet.
Locate the condition that fails. Separating this entry is different from a credentials or API failure.
Before calling it complete
- The identifier stays with the item and the update matches pedido_id rather than relying on row position.
- The empty quantity is separated before writing; the valid record’s subtotal is €37.50 and an empty value is not treated as zero.
- The second test rereads status and checks expected writes; repeating an execution is not assumed to be harmless.
Sessions to put it into practice.
Reference edition · 12 h live
Reference edition: 12 live hours across 6 sessions of 2 hours. Practice takes place in an already operational environment and a practice sheet. We check available features, permissions, quotas and execution retention before starting; installation and production deployment are not included.
- Session 12 h
Define the case and read the sheet
Define permitted changes, review authorised access and build a manual execution that queries orders.
By the endA practice read with a clear source and scope.
- Session 22 h
Understand items and fields
Follow each order through its JSON data, map fields and retain the identifier used to locate it.
By the endA record traceable between nodes by its pedido_id.
- Session 32 h
Transform and validate
Normalise the exercise’s decimal format, calculate the subtotal and compare complete, empty and invalid values.
By the endA condition that separates valid, pending orders from entries requiring review.
- Session 42 h
Update the correct order
Configure Update Row using a unique identifier and send only the agreed fields to the practice sheet.
By the endSubtotal and status updated in the intended row, without adding orders.
- Session 52 h
Read traces and resolve a failure
Review inputs and outputs, introduce a controlled error and distinguish it from an incomplete entry separated by If.
By the endA located incident and a checked correction.
- Session 62 h
Repeat with control and document
Reread statuses, test a second execution and review limits, credentials and diagnostic steps with the trainer.
By the endA reviewed classroom workflow and a testing guide another person can follow.
If your team needs to go further
- Scheduling the workflow, adding other services or working with more complex data formats and logic is agreed as an extension.
- Installing or hosting n8n, operating infrastructure, production deployment or guaranteeing concurrent processing and automatic recovery requires a separate scope.
Learn with someone who develops automations.

Borja Martínez
Automation consultant
Over two years of experience developing projects for companies across industries and sizes.
Borja is the planned trainer for this programme. Dates, language and his availability are confirmed when the edition is agreed.
With guidance, practice and support.
Each delivery includes working materials, feedback on practical work and assessment against the agreed objectives.
Materials you can keep
Downloadable, versioned guides, exercises and review criteria for internal use.
To prepare and complete the delivery
A short recommendation, an editable communications kit and a group learning report.
TOF’s own certificate
A certificate of achievement after the agreed assessment. It is not a vendor certification.
A month of email support
On the content covered, up to two accumulated hours for the whole group.
Your team carries out the practice. Implementation services are agreed separately. See the scope →

n8n Certified Expert Partner
We are an n8n Certified Expert Partner. We bring experience with workflows that combine integrations, code and AI, with attention to errors and review.
Our experience with n8n ↗The partnership belongs to The Optimal Flow. Learn’s certificate is issued by TOF; it is not a vendor certification.