Perfex CRM is good at being a CRM and quiet about everything else. Leads land on your website and someone retypes them into the admin panel. Invoices go out and follow-up depends on somebody's memory. Finance wants a payments spreadsheet every Monday. This is a hands-on guide to Perfex CRM n8n automation: five workflows built with the free @themesic/n8n-nodes-perfex-crm community node, covering lead capture, invoice follow-ups, a scheduled export to Google Sheets, webhook-driven ticket routing, and wiring the node into an n8n AI Agent. Full disclosure: we build and sell the REST API module for Perfex CRM that the node talks to. The node itself is free and open source.
Why n8n rather than a hosted automation service? Because both halves of the stack can live on your own servers. Perfex is self-hosted and n8n can be self-hosted, so customer data never passes through a third-party automation cloud, and there are no per-task fees when a busy workflow fires ten thousand times a month. Perfex does not ship a full REST API of its own, so the module supplies one: version 3.0.3 documents 72 paths and 139 operations in an OpenAPI 3.0 spec served at GET /api/openapi, with a reference copy in our examples repo.
Setup: the module, a token, and the community node
Three steps before the fun part.
- Install and activate the REST API module in Perfex. Activation takes seconds and there is no core patching.
- Create an API token under Setup, then API, then API Management. Permissions are granular per resource (Get, Create, Update, Delete), so give each workflow's token only what it needs. A lead-capture token has no business holding Delete on invoices.
- In n8n, open Settings, then Community Nodes, and install @themesic/n8n-nodes-perfex-crm. Add a credential with your Perfex URL and the token; the node authenticates every request with the authtoken header.
The node covers 19 resources with 108 operations plus a polling trigger, which is enough for everything below.
Five Perfex CRM n8n automation workflows
1. Website lead capture
The classic first workflow. An n8n Webhook node receives the POST from your website form, a Set node maps the form fields to lead fields, and the Perfex node creates the lead. Every create response from the API includes a record_id, so you can chain a step that notifies your team with a link to the new lead, or sets source and assignment in the same run. Once this works, the retyping stops for good.
2. New-invoice follow-up
Use the node's polling trigger to watch for new invoices. When one appears, log it, wait the number of days your follow-up policy says, then re-fetch the invoice and check whether it has been paid. If not, send the reminder. The module exposes invoice emailing over the API (POST /api/invoices/{id}/send), so the reminder can come from Perfex itself, or you can send it from n8n's own email nodes. One detail worth knowing: invoice totals are computed server-side from line items, taxes and discounts, so use the amounts the API returns rather than recalculating them in the workflow.
3. Scheduled payments export to Google Sheets
A Schedule trigger fires Monday at 07:00, the Payments resource lists last week's payments using the API's date-range filters (created_after and created_before), and a Google Sheets node appends the rows. Every list endpoint in the API shares a unified toolkit - pagination, sorting, field selection and date-range filtering - so you can pull only the columns the sheet needs instead of full records. Finance gets the same spreadsheet every week and nobody exports anything by hand.
4. Support ticket routing via webhooks
Polling is fine for invoices; tickets deserve push. The module's Webhooks 2.0 catalog covers 124 events across 22 event groups. Create a webhook pointing at an n8n Webhook node URL and subscribe to the ticket events. In the workflow, verify the HMAC signature first - deliveries are signed with a timestamp in the X-Perfex-Signature header for verification and replay protection - and only then trust the payload. A Switch node does the routing: billing keywords assign the ticket to the billing department, urgent phrasing bumps the priority, everything else takes the default lane, each branch calling the node's ticket update operation. Delivery is asynchronous with automatic retries, so a short n8n restart does not silently drop events.
5. The node as a tool for the n8n AI Agent
n8n can hand nodes to its AI Agent as tools, and the Perfex node is no exception. Attach it with a read-mostly token and the agent can answer questions like "which invoices went out last week" or "summarize the open tickets" against live CRM data. Two guardrails we recommend: give the agent its own dedicated token so its permissions are auditable in one place, and start read-only, adding write operations one at a time as trust builds. If you want to go deeper, the module also ships a native MCP server at POST /api/mcp (JSON-RPC 2.0) exposing 148 permission-filtered tools - a second route into the same CRM for AI agents, with the tool list filtered by the same token permissions.
Key facts
| Fact | Value |
|---|---|
| Module version | 3.0.3, updated 2026-08-03 |
| Documented API surface | 72 paths, 139 operations (OpenAPI 3.0 at GET /api/openapi) |
| n8n community node | 19 resources, 108 operations, plus a polling trigger |
| Webhooks | 124 events in 22 groups, HMAC-signed, async with retries |
| MCP server | POST /api/mcp, JSON-RPC 2.0, 148 permission-filtered tools |
| Batch endpoint | POST /api/batch, up to 50 operations per request |
| Track record | 4.91/5 from 44 verified CodeCanyon reviews, 2,941 sales on CodeCanyon |
When this is not the right tool
If all you need is a single one-way push - a nightly script that inserts leads from a CSV, say - a short script against the API directly is simpler than operating an n8n instance, and the examples repo, which also carries a reference copy of the OpenAPI spec, is the place to start for direct calls. The module assumes you are comfortable with REST basics; if tokens and JSON payloads are unfamiliar territory, budget for setup help. Operationally: asynchronous webhook delivery works best with a cron job on the Perfex host (there is an admin-load fallback, but a queue that only drains when someone opens the admin panel is not what you want under ticket routing), batch calls cap at 50 operations per request, and self-hosting n8n means updates and backups are your job, not a vendor's. The module is a paid one-time purchase; the n8n node is free but does nothing without it.
Links
- REST API module for Perfex CRM
- All Perfex CRM modules
- n8n community node on GitHub
- Perfex REST API examples repo
If you build one of these workflows, or get stuck halfway through one, tell us in the comments - we read and answer them.
Top comments (0)