Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Productivity
  3. BambooForge n8n Connector v 19.0
  4. Sales Conditions FAQ

BambooForge n8n Connector

by BambooForge Labs
Odoo

$ 101.67

v 19.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Versions 17.0 18.0 19.0
You bought this module and need support? Click here!
Versions 17.0 18.0 19.0
  • Description
  • Manifest
  • Documentation
  • License
BambooForge Labs
BambooForge Labs Production-grade Odoo apps · source included · tested
Odoo 19.0 bambooforge.labs@gmail.com

BambooForge n8n Connector

A real two-way trigger bridge between Odoo 19 and n8n — the open-source, fair-code workflow-automation tool. Odoo record events (create / write / state / unlink) fire HMAC-signed webhooks out to n8n through a resilient queue, and a hardened inbound endpoint (HMAC + replay guard + strict allowlist) lets n8n write back into Odoo. Prebuilt trigger templates start you in a click — and it still imports your workflows and executions for monitoring, with dry-run safety and full source you can audit.

Odoo 19.0 n8n 1.x / 2.x Two-way trigger bridge HMAC-signed webhooks Secured inbound endpoint Public REST API (X-N8N-API-KEY) Live-tested on n8n 2.27 Source included
Buy & deploy today →
24-hour supportWe answer every request within 24 hours — setup help included.
2-month money-backReport a bug within 2 months of purchase — if it isn't resolved within 15 days, you get a full refund.
Live-tested, not theoreticalVerified against a real n8n 2.27.3 instance — 4 workflows imported, 0 errors.
Full source includedComplete source in the package — audit every line, extend it freely, never get locked in.
two-wayoutbound triggers + secured inbound endpoint
HMACSHA256-signed webhooks · replay guard · allowlist
0errors on the live n8n 2.27.3 import
API keyX-N8N-API-KEY header — no OAuth, no passwords
Tested for real

Verified live against a running n8n

We don't just claim a vague version range. The connector was installed on Odoo 19, pointed at a live n8n 2.27.3 instance over its public REST API, and run through a full workflow / execution import — 0 errors.

n8n versionAPILive result
2.27Public API (X-N8N-API-KEY)✔ Live-tested — 4 workflows, 0 errors
2.xPublic API (/api/v1)✔ Compatible — validate on your build
1.xPublic API (/api/v1)✔ Supported (same API key header)

The live test imported 4 workflows with no errors — for example “Lead enrichment pipeline”, “Daily sales digest”, “Webhook order intake” and “Slack alert on error”, each carrying its node count and tags. Execution sync is included too; the test instance had no runs yet, so 0 executions imported — by design, a fresh n8n has none.

Built to actually sync — not to look busy

n8n exposes a clean public REST API, and this connector treats it that way: it authenticates with an API key sent as the X-N8N-API-KEY header, reads your workflows and their executions from /api/v1 with cursor pagination, and maps each one onto a dedicated Odoo model — so you can see what your automations are doing without leaving Odoo. Every model ships with verifiable sync logic, covered by tests — no fake dashboards, no “readiness score” with nothing behind it.

What you actually get

Everything below ships in the box — a two-way trigger bridge (outbound HMAC-signed webhooks + a secured inbound endpoint) that also reads your n8n over the public REST API with an API key.

Two-way trigger bridge

Turn Odoo into an n8n trigger and target. Odoo record events (create / write / state / unlink) fire HMAC-signed POSTs to your n8n webhooks through the resilient queue — never fire-and-forget. A hardened inbound endpoint lets n8n write back, guarded by HMAC-SHA256, a replay guard and a strict model/action allowlist. Prebuilt trigger templates get you started in a click.

W

Workflows → n8n.workflow

Each n8n workflow imports into a dedicated n8n.workflow record — its name, the n8n active flag, node count, trigger count, tags and created / updated timestamps — so your automation inventory lives in Odoo.

E

Executions → n8n.execution

Each n8n run becomes an n8n.execution record — its status, mode, finished flag and started / stopped timestamps — linked back to the workflow it belongs to.

Executions linked to workflows

Every execution is tied to its parent workflow, so you can open a workflow in Odoo and see its run history resolved from the imported executions — your n8n structure carries over intact.

Status & mode mapping

The n8n execution status — success, error, running or waiting — and the run mode — manual, trigger or webhook — are carried across onto the Odoo execution through an editable mapping table per instance.

Scheduled sync

The connector imports from n8n on a schedule (cron) — point it at your instance and it keeps Odoo up to date, alongside the outbound triggers and the secured inbound endpoint.

{ }

API-key REST client

One client authenticates with an n8n API key sent as the X-N8N-API-KEY header against /api/v1. No OAuth, no passwords — uses cursor pagination, with retry, backoff and rate-limit handling built in.

Sync Control Tower

A live operations dashboard for every instance — sync health, circuit-breaker state, queue backlog, dead-letter count, open conflicts and throughput, each a click-through to the jobs behind it. Know sync is healthy without reading a single log line.

Bulk dead-letter console

Every job that exhausted its retries lands here, grouped by instance and error. Select many at once and bulk requeue once you've fixed the cause, or bulk discard — no record-by-record clean-up.

Conflict-resolution workbench

When a local and a remote change collide, the conflict is captured with a side-by-side snapshot diff. Triage them in one place and bulk-resolve — keep local or take remote — instead of digging through history.

Field-mapping studio

Map source fields to Odoo fields visually, test the exact payload transform in a wizard before you save, and let one-click suggestions propose sensible mappings. Expression transforms and step conditions evaluate through Odoo's sandboxed safe_eval.

See it running

A live walkthrough inside Odoo 19

Recorded in a real Odoo 19 connected to a live n8n 2.27 — the connection cockpit, a synced workflow, the execution status mapping and the flow engine, all on real data.

Your browser does not support embedded video — see the screenshots below.
Real screenshots

Every screen, from a live install

Captured from a running Odoo 19 connected to a live n8n 2.27 — real data imported through the connector, not mockups.

Connection cockpit
Connection cockpit — n8n URL, API key, healthPer-instance n8n URL, API key, health and one-click safety controls — connected and green.
Synced workflow
An n8n workflow synced into OdooAn imported workflow with its active flag, node count, trigger count and tags, live in Odoo.
Imported workflows
Imported n8n workflows in OdooYour automation inventory as n8n.workflow records — name, active state, nodes and tags.
Execution status mapping
Execution status mappingEditable n8n-status → Odoo table, seeded with sensible defaults per instance.
Import flow templates
Built-in import flow templatesMulti-step import flows (fetch → map → upsert → log) ready to run.
Sync Control Tower — n8n connector
Sync Control TowerEvery store on one board: health, circuit-breaker state, backlog, dead-letters, conflicts, 24h throughput and failure rate — drill into any number in a click.
Dead-letter console — n8n connector
Dead-letter consoleExhausted-retry jobs grouped by error type with the exact API error kept — bulk requeue or discard once the remote system is fixed.
Conflict workbench — n8n connector
Conflict workbenchRecords changed on both sides shown Odoo vs. remote with a field diff — resolve with “Odoo wins”, “Remote wins” or mark reviewed.
Premium operations, in motion

Run every n8n store from one Control Tower

A short walkthrough of the operations tooling on real data: the Control Tower board, the side-by-side conflict workbench and the bulk dead-letter console.

Your browser does not support embedded video — see the screenshots above.

Production safety, by default

Resilient queue

Retry with exponential backoff, rate-limit awareness, dead-letter handling and conflict capture for every job.

Circuit breaker

Auto-pauses sync after N consecutive failures so a broken endpoint can never flood your data.

Dry-run mode

Default-ON for every new instance — preview the exact write before anything touches live records.

Pre-flight validation

Blocking and warning findings surfaced before go-live, with auto-fix suggestions.

Rollback snapshots

Capture record state before risky writes and roll back cleanly when needed.

Signed, guarded traffic

Outbound webhooks are HMAC-SHA256-signed over the raw body; the inbound endpoint enforces HMAC (constant-time compare), a replay guard and a strict model/action allowlist — nothing untrusted writes into Odoo.

Honest feature matrix

No asterisks, no fake checkmarks. Here is exactly what this version does — and what is on the roadmap.

CapabilityStatus
API-key REST connection (X-N8N-API-KEY against /api/v1)✔ Included
Workflows → n8n.workflow (name, active, node count, trigger count, tags, timestamps)✔ Included
Executions → n8n.execution (status, mode, finished flag, started / stopped)✔ Included
Executions linked to their parent workflow✔ Included
Execution status / mode mapping (success / error / running / waiting · manual / trigger / webhook)✔ Included
Cursor pagination across large workflow / execution sets✔ Included
Scheduled (cron) import✔ Included
Queue: retry · backoff · dead-letter · circuit breaker✔ Included
Pre-flight validation · rollback snapshots · dry-run✔ Included
Built-in import flow templates✔ Included
Outbound triggers — Odoo record events → HMAC-signed n8n webhooks (via the resilient queue)✔ Included
Secured inbound endpoint — HMAC-SHA256 + replay guard + strict model/action allowlist✔ Included
Prebuilt trigger templates + workflows / executions import✔ Included
Sync Control Tower — live health / circuit / backlog / dead-letter / conflicts / throughput dashboard✔ Included
Bulk dead-letter console — grouped exhausted jobs, bulk requeue / discard✔ Included
Conflict-resolution workbench — snapshot diff, triage & bulk resolve✔ Included
Field-mapping studio — payload-test wizard, one-click suggestions, safe_eval transforms & conditions✔ Included
Credential / variable importRoadmap

Live in four steps

A guided quick-setup wizard and onboarding checklist walk you from an n8n API key to your first safe import.

Create an API key

In n8n, go to Settings → n8n API and create an API key. No schema changes, no plugin to install.

Connect

In Odoo, enter your n8n base URL plus the API key, then run the first scheduled import. One click tests reachability.

Dry-run

Preview exact writes with dry-run + validation on. Clear any blocking findings.

Go live

Enable the outbound triggers and the secured inbound endpoint, and let the scheduled (cron) import keep Odoo up to date from n8n.

Buy with full clarity

In the box today

  • Import for monitoring: workflows → n8n.workflow, executions → n8n.execution
  • Executions linked to their parent workflow — run history visible in Odoo
  • API-key REST client (X-N8N-API-KEY) — no OAuth, no passwords, cursor pagination
  • Scheduled (cron) import — point it at your n8n and it stays current
  • Configurable execution status / mode mapping, dry-run safety, rollback snapshots
  • Full source included — audit and extend every line for your own use
  • Two-way trigger bridge — Odoo events → HMAC-signed n8n webhooks, plus a secured inbound endpoint (HMAC + replay-guard + allowlist) and trigger templates
  • Sync Control Tower — one live dashboard for health, circuit breaker, backlog, dead-letter, conflicts & throughput
  • Bulk dead-letter console & conflict-resolution workbench — triage and fix at scale, not row by row
  • Field-mapping studio — visual mapping, a payload-test wizard, one-click suggestions and safe_eval transforms

Roadmap

  • Credential / variable import
  • Full two-way record synchronisation (beyond event triggers)

Frequently asked

Which versions are supported?

Odoo 19.0 on the Odoo side. On the n8n side, the connector was live-tested on n8n 2.27 and targets the n8n 1.x and 2.x lines that expose the same /api/v1 public REST API. Validate on your specific build.

What does it import?

Two n8n entities, each into a dedicated Odoo model the connector ships: workflows become n8n.workflow records — carrying the active flag, node count, trigger count, tags and timestamps — and executions become n8n.execution records with their status, mode, finished flag and start / stop times. Each execution is linked to the workflow it belongs to. Alongside the two-way trigger bridge, this import gives you operational visibility of your automations inside Odoo.

How does authentication work?

One mode: an API key. You create a key in n8n under Settings → n8n API, then enter your n8n base URL plus that key in Odoo. The connector sends it as the X-N8N-API-KEY header on every REST call against /api/v1 — no OAuth, no passwords. Outbound webhooks and the inbound endpoint are additionally secured with HMAC-SHA256 signatures.

Does it push changes in real time?

Yes. Odoo record events (create / write / state / unlink) fire HMAC-signed POSTs to your n8n webhook through the resilient queue — never fire-and-forget — and a secured inbound endpoint lets n8n write back into Odoo. Workflow / execution monitoring is imported on a schedule (cron).

Is it safe to run against production data?

Dry-run mode is ON by default for new instances, validation blocks risky writes, and rollback snapshots let you undo. Outbound webhooks are HMAC-signed; the inbound endpoint enforces HMAC (constant-time compare), a replay guard and a strict model/action allowlist, so only what you explicitly allow can write into Odoo. You decide when to go live.

What support and refund policy do I get?

Every request is answered within 24 hours, setup help included. If you report a bug within 2 months of purchase and it isn't resolved within 15 days, you're entitled to a full money-back refund.

Connect Odoo and n8n the honest way

24-hour support · Report a bug within 2 months — unresolved in 15 days = full refund · Full source included

bambooforge.labs@gmail.com

More from BambooForge Labs — one vendor, the same standard: tested, source included, supported.

n8n Connector PrestaShop Connector Audit Pro — audit, alerts & compliance
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies Discuss (mail)
Lines of code 7617
Technical Name bambooforge_n8n_connector
LicenseOPL-1

BambooForge n8n Connector

A read-only bridge from your n8n automation server into Odoo 19: it imports your n8n workflows and their executions so you can monitor your automations — which workflows are active, how many nodes and triggers they have, and whether their recent runs succeeded, failed, are running or waiting — without leaving Odoo. The connector never writes back to n8n.

This page is the complete manual. If you follow it top to bottom you can install, connect, run your first import, automate it, and fix the common issues without contacting support.

  • Overview
  • Requirements
  • Installation
  • Step 1 — Create an n8n API key
  • Step 2 — Create the connection in Odoo
  • Step 3 — First import (dry-run, then live)
  • Field mapping & customization
  • Automation (scheduled actions)
  • Safety features
  • Troubleshooting
  • Frequently asked questions
  • Data, privacy & limits
  • Support & updates
  • Upgrading & version compatibility
  • Uninstallation
  • Changelog

Overview

The connector pulls data from the n8n public API (X-N8N-API-KEY auth, cursor pagination) into dedicated Odoo models. It is import-first and pull-based: every remote call is a read, and nothing is ever pushed back to n8n.

Direction of sync: Odoo ← n8n (read-only monitoring; one-way import).

It covers two entities:

  • Workflows — imported into n8n Connector ▸ Imported Data ▸ Workflows (model n8n.workflow). Each record mirrors the n8n workflow shape: name, the Active in n8n flag, node count, trigger count, comma-joined tag names, and the created/updated timestamps from n8n.
  • Executions — imported into n8n Connector ▸ Imported Data ▸ Executions (model n8n.execution). Each record mirrors an n8n run: status (Success, Error, Running, Waiting, Unknown), mode (manual / trigger / webhook / …), the Finished flag, started/stopped timestamps, and a best-effort link to the parent workflow once that workflow has also been imported.

Every remote call goes through a queue: nothing is written to Odoo until a job runs, jobs retry with back-off on transient failures, and a circuit breaker pauses an instance that keeps failing.

Requirements

  • Odoo: 19.0, Community or Enterprise.
  • n8n: any n8n server that exposes the public REST API at /api/v1 with workflows and executions endpoints (self-hosted or n8n Cloud). The server must be reachable from the Odoo server.
  • Python: no extra libraries beyond a standard Odoo 19 install.
  • Odoo access: any internal user can use the connector screens. The n8n API key and webhook secret are stored in system-only fields, so only the Settings / Administration user can read or change them.
  • Network: outbound HTTPS from Odoo to your n8n server. By default the connector refuses internal/loopback/private hosts as an SSRF safeguard (see Safety features).

Installation

  1. Copy bambooforge_n8n_connector into your Odoo addons path.
  2. Restart the Odoo service.
  3. Open Apps, click Update Apps List, search for n8n, and press Activate / Install. Dependencies (base, mail) install automatically.

No n8n server is required to evaluate the connector: a mock n8n API ships inside the module, so you can install, explore and run the full import flow against sample workflows and executions before pointing it at a real n8n instance.

Step 1 — Create an n8n API key

The connector authenticates with a single n8n API key, sent on every request as the X-N8N-API-KEY header. There is no OAuth and no token exchange.

In your n8n instance:

  1. Open Settings ▸ n8n API.
  2. Click Create an API key.
  3. Give the key a label (e.g. Odoo) and create it.
  4. Copy the key shown — it is displayed once. This is the value you paste into Odoo in Step 2.

A read scope is sufficient: the connector only ever issues GET requests to /api/v1/workflows and /api/v1/executions. It never creates, updates or deletes anything in n8n.

Step 2 — Create the connection in Odoo

Open n8n Connector ▸ Configuration ▸ Instances and create a record.

Key fields:

Field What to enter
Name A label for this server, e.g. Production n8n. Must be unique per company.
Base URL Your n8n server root, e.g. https://n8n.example.com (or http://localhost:5678 for a local server — see Allow internal host).
Authentication API Key (X-N8N-API-KEY) — the only mode n8n's public API supports.
API Key The key copied in Step 1 (visible to administrators only).
API Path Leave the default api/v1 unless your n8n server differs.
Verify SSL Keep on for production. Turn off only for self-signed test certificates.
Allow internal host Off by default. Turn on only to reach an n8n server on localhost or a private network (lowers the SSRF guard — see Safety features).

Then click Test Connection. It performs a lightweight GET /api/v1/workflows?limit=1 to validate the key and reachability. A green Connected state means the API key and URL are correct. If it fails, the exact error is recorded on the form (last connection error) and in Logs (see Troubleshooting).

Tip: use Quick Setup (button on the instance) to seed starter flows, default field mappings and a safety profile in one step.

Step 3 — First import (dry-run, then live)

New instances start with Dry-run ON. In dry-run, import jobs simulate writes: instead of creating records they produce Validation Results you can review under n8n Connector ▸ Operations ▸ Validation Results. This lets you confirm what would be imported before anything is written.

To run a first import:

  1. On the instance, click Import Workflows (and/or Import Executions). This enqueues jobs; it does not block the UI.
  2. Jobs are processed by the N8n Queue Processor scheduled action (every minute), or immediately if you run it manually from Operations ▸ Queue Jobs.
  3. Review Validation Results while still in dry-run.
  4. When satisfied, open the instance, turn Dry-run OFF, and run the imports again to write the records for real.

Imported records land in n8n Connector ▸ Imported Data ▸ Workflows and ▸ Executions. Each carries its n8n id, so re-imports update the same record instead of duplicating it.

Defaults: a workflow import pulls up to 100 workflows per run and an execution import up to 200 (the Workflows import limit / Executions import limit fields on the instance). The connector follows n8n's cursor pagination across pages automatically.

Field mapping & customization

The two n8n entities have no native Odoo counterpart, so the connector ships dedicated models (n8n.workflow / n8n.execution) and a built-in mapping that already populates the core fields (name, ids, active flag, node/trigger counts, tags, status, mode, finished, timestamps). You do not need to configure anything for a standard import.

To customize:

  • Field Mappings (Configuration) let you map additional n8n payload fields to Odoo fields per entity (workflow / execution), with optional transforms and defaults. They are applied on top of the built-in mapping. Use Generate suggested mappings on the instance to seed the common ones, then adjust.
  • Schema Fields lists the discovered n8n fields per entity alongside the Odoo target fields. Run Schema Introspection on the instance to refresh it; it samples one live n8n record (falling back to the bundled mock when the API is unreachable) and flattens its shape so you can see the available paths.
  • Execution Status Mappings (Configuration) hold per-instance rules seeded on first successful connect. n8n execution statuses are normalized to Success / Error / Running / Waiting / Unknown; any status the mapping does not recognize is stored as Unknown so an unexpected value never breaks an import.

Automation (scheduled actions)

The module ships these scheduled actions (Settings ▸ Technical ▸ Scheduled Actions):

Scheduled action Default Purpose
N8n Queue Processor every 1 min Processes queued import jobs.
N8n Reconciliation every 15 min Pulls recent remote ids for enabled entities and queues any that are missing locally or need a retry.
N8n Maintenance every 1 hr Recovers stale/locked jobs and trims old jobs and logs.
N8n Flow Scheduler every 5 min Runs scheduled import flows.
N8n Flow Metrics every 1 hr Aggregates flow-run metrics.
N8n Auto Recover every 15 min Reopens a tripped circuit breaker once the cooldown passes and no blocking validation issues remain.

Turn on Auto import / Auto reconcile per entity on the instance (Auto import workflows, Auto import executions, Auto reconcile workflows, Auto reconcile executions) to let the scheduled actions keep the imported data current hands-free.

Webhooks: n8n does not push workflow/execution change notifications to third parties, so this connector is scheduled-pull only. A route exists at /n8n/webhook but it is intentionally inert — it always returns 501 Not Implemented so nothing breaks on install. Keeping data current relies on the reconciliation schedule above, not on inbound webhooks.

Safety features

  • Dry-run mode — simulate imports and review Validation Results before going live (field Dry-run mode, ON by default).
  • Business validation profiles — Minimal / Standard / Strict gate risky writes (field Business validation profile, default Standard).
  • Safety profiles — Conservative / Balanced / Aggressive presets set dry-run, validation, rollback, delete strategy and batch size in one click (field Safety profile, default Balanced).
  • Resilient queue — every import is a job with retry and backoff (fixed or exponential, base 1 min, cap 120 min by default) and a dead-letter state.
  • Circuit breaker — after repeated failures an instance auto-pauses (Tripped, default threshold 5 consecutive failures); the Auto Recover action reopens it after a 30-minute cooldown once no blocking issues remain.
  • Rollback snapshots — when enabled, imports capture a snapshot so you can undo a batch from Operations ▸ Rollback Snapshots (field Rollback enabled, ON by default).
  • SSRF guard — the connector refuses internal/loopback/private/link-local/ reserved hosts (including cloud metadata addresses) unless Allow internal host is explicitly enabled.

Troubleshooting

Symptom Cause and fix
Test Connection fails with 401 / 403 Wrong, expired or revoked n8n API key. Re-create it under Settings ▸ n8n API (Step 1) and paste the new key into the API Key field.
"n8n API key (X-N8N-API-KEY) is required" The API Key field is empty. Paste the key from Step 1. The field is admin-only, so a non-admin user cannot see or set it.
"...is not allowed because it resolves to the non-public address..." Base URL points at localhost/a private or reserved IP. Enable Allow internal host on the instance (self-hosted/local n8n only).
"the URL must start with http:// or https://" The Base URL is missing its scheme. Enter the full root, e.g. https://n8n.example.com.
SSL errors on Test Connection Self-signed certificate. Use a valid cert, or turn off Verify SSL for testing only.
"n8n rate limit reached" (HTTP 429) n8n is throttling. The client already retries with backoff; lower the import limits or run imports less often if it persists.
"n8n server error" (HTTP 5xx) The n8n server returned an error. The client retries transient 5xx with backoff; if it persists, check the n8n server health and logs.
"n8n resource not found" (HTTP 404) The API Path is wrong or the public API is not enabled. Confirm the path is api/v1 and that the n8n public API is turned on.
Jobs stay in Pending The Queue Processor is off or the instance is paused. Check Scheduled Actions is active and the instance is not Paused.
Instance shows Tripped Circuit breaker tripped after repeated failures. Fix the server/key; Auto Recover reopens it after cooldown, or click Resume.
Nothing happens after Import You are in Dry-run. Review Validation Results, then turn dry-run off and re-run.
Executions have no linked Workflow The parent workflow has not been imported yet. The link is resolved best-effort; import workflows first, then executions (or re-run the execution import) to populate it.

For anything else, Operations ▸ Logs records every API call, payload and error with a timestamp.

Frequently asked questions

Which versions are supported? Odoo 19.0 on the Odoo side. On the n8n side, any server exposing the public REST API at /api/v1 with workflows and executions endpoints (self-hosted or Cloud). Validate your build with the bundled mock first.

Do I need an n8n server to evaluate it? No. A mock n8n API ships inside, so you can install, explore and demo the full import flow before connecting a real server.

How does authentication work? Create one n8n API key under Settings ▸ n8n API and paste it into the instance. The connector sends it as the X-N8N-API-KEY header on every request. No OAuth, no token exchange.

Does it change anything in n8n? No. The connector is read-only: it only issues GET requests to list and fetch workflows and executions. Export to n8n is not supported.

Does it use webhooks for real-time updates? No. n8n does not push workflow/execution change notifications to third parties, so the connector keeps data current on a schedule (the Reconciliation cron). The /n8n/webhook route exists but is inert and returns 501.

Is it safe to run against production data? It only reads from n8n, and on the Odoo side dry-run is ON by default with validation and rollback snapshots. You decide when to write for real.

What support and refund policy do I get? Every request is answered within 24 hours, setup help included. If you report a bug within 2 months of purchase and it is not resolved within 15 days, you are entitled to a full money-back refund.

Data, privacy & limits

  • The connector reads workflows and executions from your n8n server and writes the corresponding Odoo n8n.workflow / n8n.execution records. It never writes to n8n. The API key and webhook secret are stored in admin-only fields.
  • In scope today: read-only import of workflows and executions, scheduled reconciliation, field mapping, schema introspection, dry-run, validation, rollback snapshots and a multi-step flow engine.
  • Out of scope: any write-back to n8n (creating/activating/running workflows), inbound change webhooks, and timestamp-based incremental list filtering on the n8n API (v1 lists by cursor pagination; reconciliation re-lists and queues the delta).

Support & updates

  • Support: bambooforge.labs@gmail.com — answered within 24 hours, setup help included.
  • Refund: report a bug within 2 months of purchase; if unresolved within 15 days, full refund.
  • Full source is included. Updates track the supported Odoo 19 / n8n public REST API v1 line.

Upgrading & version compatibility

This build targets Odoo 19.0. Each Odoo major series (17.0, 18.0, 19.0) has its own dedicated build of this module — always install the build that matches your Odoo version. Mixing a build with a different Odoo series is not supported.

Patch upgrades (same series, e.g. 19.0.1.0.0 → later)

  1. Back up your database and filestore first.

  2. Replace the module folder with the newer build.

  3. Restart Odoo with the module updated:

    ./odoo-bin -c your.conf -u bambooforge_n8n_connector -d your_db
    
  4. Odoo applies any schema/data changes automatically. Your existing records and configuration are preserved.

Cross-version migration (e.g. Odoo 17 → 18)

Upgrading Odoo itself is a database migration handled by Odoo's standard upgrade tooling. When you migrate the database to the next Odoo series, install the matching build of this module for that series. Data created by this module carries over with the database migration.

After any upgrade the module's scheduled actions resume on their normal cadence — no manual re-activation is required.

Uninstallation

You can remove this module at any time from Apps → (this module) → Uninstall, or from the command line. Uninstalling is clean and reversible by reinstalling — but note what is and is not deleted.

What is removed

  • The module's own tables and every record in them (25 models, prefixed n8n.*) — this is the data this module created.
  • The menus, actions, views and reports this module installed.
  • Its scheduled actions (cron jobs) — they stop immediately on uninstall.
  • Connection records, credentials, field mappings, queue jobs and sync logs stored in Odoo.

What is preserved

  • Your remote platform is never touched. Uninstalling only removes the Odoo-side connector; products, customers and orders on the external store/service are untouched.
  • Records already imported into standard Odoo models (e.g. contacts, products, sales orders) remain — they are ordinary Odoo records once created.
  • Attachments and chatter messages on standard records are kept.

As always, take a database backup before uninstalling in production.

Changelog

19.0.1.0.0

Current release for Odoo 19.0. This build includes:

  • A two-way trigger bridge between Odoo 19 and n8n: Odoo record events -> HMAC-signed n8n webhooks (resilient queue), plus a secured inbound endpoint (HMAC + replay-guard + strict allowlist) and prebuilt trigger templates. Workflows/executions import, dry-run, auditable source.

Feature additions and fixes ship as new builds on the Odoo Apps store; this page and the module's version reflect the current published release. Always keep the build matched to your Odoo series (see Upgrading & version compatibility).

Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with