Package Information
Documentation
n8n-nodes-origami-ms
n8n community node for Origami.ms, the no-code CRM and business platform. Discover your account structure, read and write records, issue invoices, send email/SMS/push, and receive Origami workflow webhooks.
Package name: n8n-nodes-origami-ms. It is not related to the unofficial n8n-nodes-origami package.
Installation
Follow the n8n community nodes installation guide and install n8n-nodes-origami-ms.
Credentials
The Origami API authenticates with a username and API secret sent in the request body.
- In Origami, open Settings → General Settings → Developer, enable the API and copy the username and
OGMI-…secret. - In n8n, create an Origami API credential.
- Account Name is your Origami subdomain (
mycompanyforhttps://mycompany.origami.ms). Use Custom Base URL for a white-label domain. - AI Agent Access (default Read Only) applies only when the node is connected to an n8n AI Agent as a tool. Read Only lets the agent list, get and download. Create, update, delete, archive, upload, invoices, email, SMS, push and omnichannel need Read and Write. Regular workflow nodes are not affected. Use separate credentials for different trust levels.
Test connection calls the entities list and fails on Origami's HTTP 200 { "error": … } login responses.
Discover, then operate
Entity, group and field ids (e_*, g_*, fld_*) are per account. Pick them from the dropdowns, which load your account structure live:
- Entity picker (searchable)
- Group picker (repeatable groups only for Repeatable Group operations)
- Field picker (create: fields in the selected group; update: writable fields; filters: all fields; upload: file fields)
Typical flow:
- Entity → Get Many to list entities
- Entity → Get Structure (or Record → Get Form Template) for field names
- Record → Get Many / Create / Update using those names
Resources
| Resource | Operations |
|---|---|
| Entity | Get Many, Get Structure |
| Record | Get Form Template, Create, Get, Get Many, Update, Delete, Archive, Unarchive, Get History |
| Repeatable Group | Add, Remove |
| File | Upload, Download |
| Invoice | Get Structure, Create, Get, Get Many |
| Communication | Send Email, Send SMS, Send Push |
| Omnichannel | Ingest Message |
| Calendar | Get View Details |
| Origami Trigger | Webhook from an Origami workflow HTTP action |
Behavior notes
- Errors: Settings, On Error supports all three modes. Stop Workflow throws the API error itself, so the HTTP status and description stay attached (resource, operation and item index are in the description). Continue returns one item per input. A failed item has
error,description,httpCodewhen the status is an HTTP error,origamiErrorwhen Origami sent an error,resource,operation,itemIndexand the paired item. Continue using the error output routes that failed item to the error branch (item.erroris set, which is what n8n 2.x reads when the json has more thanerror,messageanddetails). An OrigamiHTTP 200body{ "error": … }is a failure in every mode. - Pagination: Origami pages with
limit: [skip, count]. Return All pages 100 at a time, sorted by_idascending unless you set Order By, so records created during the run do not shift pages. It stops at Max Records (default 5000) and shows a warning in the output pane when more rows exist. - Get by ID also finds archived records. Get Many excludes archived records unless Include Archived is on.
- File upload: Origami file fields hold one file. Uploading replaces the file currently in the field.
- Trigger: set Auth Header Name and Value in the node and send that header from the Origami workflow HTTP action. A missing or wrong header returns 401.
API flags
| Flag | Where | Notes |
|---|---|---|
force_workflow_async |
Create, Update, Repeatable Add | Run Origami workflows asynchronously so the write does not fail on workflow errors |
normalized |
Get / Get Many | Default on. Off keeps nested values such as phone normalization |
return_fields / return_groups |
Get / Get Many | Return only those fields or groups |
orderby |
Get Many | fld_x,desc or JSON ["_id","desc"] |
with_archive |
Get Many | Off sends 0 (exclude archived) |
dont_recalc_formula / with_comments |
Get / Get Many | Skip formula recalculation; include comments |
round_total / saved_id / attach_type |
Invoice Create | Round totals, issue a saved draft, credit note parent type (manual = no parent) |
Invoices
Types: deal_invoice, tax_invoice, tax_receipt, receipt, refund_invoice, delivery_note, work_order.
- Unit Price is always before VAT. Charge VAT (default on) adds Tax Percent on top. Off issues the line without VAT.
- Origami recomputes line price, VAT and document totals.
- Currency tokens are
NIS,USD,EURO. - Customer and item ids must belong to the catalog of the selected company.
- Creating a tax invoice or receipt issues a real tax document. Test on a sandbox account first.
Development
npm ci
npm run lint
npm run test:all # unit tests + execute-level tests against the compiled node
npm run build

