to select ↑↓ to navigate
Docs

Docs

Overview

The iVendNext Action Node reads from and writes to your iVendNext tenant from within an n8n workflow. It executes on demand — when the workflow reaches it — whether that workflow was started by a schedule, another application, an AI agent, or the iVendNext Trigger Node.

Every operation the Action Node performs is on a document. In iVendNext, every record is a document: a Sales Order, a Customer, an Item, a Purchase Invoice. The Action Node works with all of them.


How It Is Organised

The node asks three questions in order:

Setting Meaning
Resource Always Document. Every record in iVendNext is a document, so one resource covers the entire platform.
Operation What to do: Create, Get, Get Many, Update, or Delete.
DocType Which Document Type to act on. The dropdown is loaded live from your tenant, including any custom DocTypes.

The Five Operations

Create

Adds a new document to iVendNext. When you select a DocType and choose Create, the node presents the field list for that type. Fill in or map the values, and the node creates the document when the workflow runs.

Typical use: Turn a web order into a Sales Order; add a new Customer record; create a new Item.

Get

Retrieves one document by its Document Name — the unique identifier iVendNext assigns to every record. Supply the Document Name (typed directly or mapped from an earlier step using an expression), and the node returns the full document.

Typical use: Look up a single customer's details; fetch a specific order; read a price record before deciding what to do next.

Get Many

Returns a list of documents, with optional filtering, field selection, and a result limit. This is the workhorse for reporting, bulk synchronisation, and any automation that needs to work across a set of records rather than a single one.

Typical use: All orders placed today above a value threshold; all items with stock below reorder level; all customers in a given territory.

Update

Changes fields on an existing document without affecting other fields. Supply the Document Name and the fields to modify.

Typical use: Write a tracking number back to a Sales Order; change an item's price; update a document's status after an external action has occurred.

Delete

Removes a document by its Document Name. Only draft documents — those that have not been submitted — can be deleted.

Typical use: Clean up cancelled drafts; remove test records created during workflow development.


Entering Field Values (Create and Update)

When you select a DocType for Create or Update, the node fetches that type's full field list from your tenant — required fields first, then optional ones. Behind-the-scenes fields (internal counters, timestamps, layout elements) are hidden automatically, so only fields that carry business data are shown.

Fields appear in the format that matches their iVendNext type: text fields become text boxes, choice fields become dropdowns, date fields become date pickers, number fields become number inputs, and yes/no fields become toggles.

Fill in the fields directly or map values from earlier workflow steps using n8n expressions. An expression like ={{ $json.customer }} passes the customer field from the previous node's output.

Meta Fields

For fields not shown in the standard panel — less common fields, custom fields, or child table (line-item) data — use the Meta Fields section. Add a Field Name and Value pair. The Field Name must match the field's exact internal name in iVendNext. Values accept n8n expressions, so you can pass numbers, dates, or arrays from earlier steps.

This is how Sales Order line items are handled. The items table on a Sales Order is a child table (an array of rows). Pass it via a Meta Field expression:

={{ $json.line_items.map(li => ({

     item_code: li.sku,

     qty:       li.qty,

     rate:      li.price

   })) }}

This maps each row from the incoming data into the format iVendNext expects, creating a fully formed Sales Order with all line items in a single Create operation.


Get Many Options

Option Effect
Return All Returns every matching record, paging through large datasets automatically. Off by default — turn on for full-dataset sync jobs.
Limit When Return All is off, the maximum records to return (default: 10). Use for "top N" lists and exploratory workflows.
Field Names or IDs Specify which columns come back. Returning only needed fields keeps results fast and reduces data passed through subsequent steps.
Filters One or more conditions — Field · Operator · Value. Supported operators: IS, IS NOT, IS GREATER, IS LESS, EQUALS or GREATER, EQUALS or LESS. Combine multiple conditions to narrow results precisely.

Example — today's orders over £500:

Operation  : Get Many

DocType    : Sales Order

Return All : On

Filters    :

  • grand_total        EQUALS or GREATER   500

  • transaction_date   IS                  ={{ $today }}

Field Names: name, customer, grand_total, status


Continue on Fail

When a workflow processes multiple records — for example, a Get Many result feeding into a Create for each row — one bad record will normally stop the entire run.

Enabling Continue on Fail changes this behaviour. A record that fails is passed through the workflow with an error note attached rather than halting the run. You can route those failed items to a separate branch — a review list, an alert, or a Slack notification — so nothing is silently lost.

This setting is recommended for any workflow that processes records in batch: nightly stock syncs, bulk order imports, or any scheduled job that iterates over a list.


Identifying Documents for Get, Update, and Delete

These three operations act on a specific record and require the Document Name. In most workflows, the Document Name is not typed manually — it is mapped from an earlier step using an expression. For example, if the Trigger Node delivered a Sales Order, the customer field on that order can be passed to a subsequent Get operation as ={{ $json.customer }}, fetching the full customer record without any manual input.


**

Last updated 7 hours ago
Was this helpful?
Thanks!