Switching from n8n

What imports from n8n, and what is still your work.

The importer reads n8n workflow JSON and does part of the move. It maps the nodes it knows, marks the ones it does not, and leaves code, credentials and testing to a person. This page lists each part, so you know the size of the job before you talk to us.

Every statement about the importer shows its evidence level and the date it was checked. In a migration review we go through your exported workflows with you and tell you which parts will need a person.

What the importer supports

What carries across.

The importer reads n8n workflow JSON and produces an OCNORA workflow that goes straight through Workflow Health. You see what mapped, what was rewritten, and what needs a decision before anything runs.

In the n8n fileWhat the importer does
~45 n8n node typesMapped one-to-one onto OCNORA node types, with parameters carried across.
IF nodesBecome control.branch rules with the same conditions.
ExpressionsRewritten from n8n syntax to OCNORA expressions and checked by the validator.
Sticky notesDropped. The workflow description keeps their text.
Unknown node typesBecome stand-in nodes that keep the original configuration. You can request the app from inside the builder, and the team sees the demand.
CredentialsNever in the file, never imported. The importer creates a connection request per credential the workflow needs.

The importer maps about 45 n8n node types onto OCNORA nodes. The count is approximate, and it is not a promise that any particular workflow imports whole.

Evidence: unverified · checked 2026-09-27

What it does not do for you

Three things that always need a person.

  • Unsupported nodes become placeholders

    An n8n node type the importer does not map becomes a placeholder step that keeps the original node’s configuration. It does nothing until a person replaces it.

    A placeholder is not converted later on its own. Replace it with a catalogue node, or rebuild the step.

    Evidence: unverified · checked 2026-09-28

  • JavaScript Code nodes arrive empty, in Python

    An n8n Code node written in JavaScript arrives as an empty Python code node, with the original JavaScript kept alongside it so it can be ported by hand.

    The code node runs Python and is offered on every deployment. The JavaScript is not translated for you: porting and testing it is the work.

    Evidence: unverified · checked 2026-09-28

  • Credentials are recreated, not imported

    Credentials are not in an n8n export and are never imported. The importer creates a connection request for each credential the workflow needs, and each one has to be recreated in OCNORA.

    No secret, token or OAuth grant carries across. Someone with access to each target account sets the connection up again.

    Evidence: unverified · checked 2026-09-28

First test

A checklist for the first run.

Work through it for one workflow before importing the rest.

  1. STEP 1

    Import one workflow first

    Pick one with an input you can repeat and an output you can check. Leave the rest of the folder until this one runs.

  2. STEP 2

    Read the import report

    It lists what mapped, what was rewritten and what became a placeholder. That list is your work queue.

  3. STEP 3

    Resolve every placeholder

    Replace each one with a node from the catalogue, or rebuild the step. A placeholder left in place does nothing.

    Evidence: unverified · checked 2026-09-28

  4. STEP 4

    Port every Code node to Python

    Rewrite the kept JavaScript as Python in the empty code node, then test that step on its own with a sample input.

    Evidence: unverified · checked 2026-09-28

  5. STEP 5

    Recreate every connection

    Fill each connection request the importer created. Point them at test or sandbox accounts for the first run.

    Evidence: unverified · checked 2026-09-28

  6. STEP 6

    Run Workflow Health

    Validation, pre-flight and a dry run. Fix what it finds; a finding it cannot repair goes to a person.

    Evidence: unverified · checked 2026-09-28

  7. STEP 7

    Remember what a dry run does not prove

    It shows the shape of the outputs, not that a real write will be accepted. Use test connections for anything that must not be touched.

    Evidence: unverified · checked 2026-09-28

  8. STEP 8

    Compare one real run

    Run the OCNORA workflow on the same input you gave n8n and compare the outputs step by step before you trust it.

  9. STEP 9

    Gate irreversible steps

    Put an approval step before anything that writes to a system you cannot roll back, at least until the workflow has earned trust.

    Evidence: unverified · checked 2026-09-28

  10. STEP 10

    Switch the trigger over last

    Keep the n8n workflow as the live one until the outputs match, then turn its trigger off so the two do not both fire.

Browse the integration catalogue to see what a placeholder could be replaced with, or read why teams look for an n8n alternative. Something on this page out of date? Tell us.

Bring your exported n8n workflows to a migration review.

We look at the JSON with you and list what maps, what becomes a placeholder, which Code nodes need porting and which connections to recreate, before you commit to anything.