@belmontdigitalmarketing/n8n-nodes-smartcsrpro
v1.0.0
Published
n8n community node to create tickets in SmartCSRPro via the webhook-to-ticket API
Downloads
148
Maintainers
Readme
n8n-nodes-smartcsrpro
An n8n community node that integrates with SmartCSRPro to create support tickets via the Webhook-to-Ticket API.
This node allows you to automate ticket creation in SmartCSRPro from any n8n workflow — connect it to email triggers, form submissions, Slack messages, CRM events, or any other data source.
Table of Contents
- Installation
- Prerequisites
- Credentials
- Node Reference
- Dynamic Dropdowns
- Output
- Usage Examples
- Idempotency / Deduplication
- Markdown in Details
- Compatibility
- License
Installation
Community Node (Recommended)
- In your n8n instance, go to Settings > Community Nodes
- Select Install
- Enter
n8n-nodes-smartcsrpro - Agree to the risks and click Install
Manual Installation
For self-hosted n8n instances:
Navigate to your n8n custom nodes directory:
cd ~/.n8n/custom mkdir -p node_modules/n8n-nodes-smartcsrproCopy the following files into
node_modules/n8n-nodes-smartcsrpro/:package.jsondist/folder (entire directory)
Restart n8n:
# Docker docker restart <n8n-container-name> # Docker Compose docker-compose restart n8n # PM2 pm2 restart n8n # systemd sudo systemctl restart n8n
Manual Installation (Docker)
If running n8n in Docker, you can mount the node into the container. Place the node files at a path on the host and mount it:
docker run -it --rm \
-v ~/.n8n:/home/node/.n8n \
-v /path/to/n8n-nodes-smartcsrpro:/home/node/.n8n/custom/node_modules/n8n-nodes-smartcsrpro \
n8nio/n8nPrerequisites
- An active SmartCSRPro account
- A Webhook Secret — found in SmartCSRPro under Settings > Integrations > Webhook-to-Ticket
- Your Tenant Slug — the subdomain identifier for your SmartCSRPro instance (e.g.,
unified-insurance)
Credentials
When setting up the SmartCSRPro credential in n8n, you will need:
| Field | Description | Example |
|-------|-------------|---------|
| Tenant Slug | Your tenant identifier (subdomain) | unified-insurance |
| Webhook Secret | Secret key from SmartCSRPro Settings > Integrations > Webhook-to-Ticket | wh_abc123... |
| Base URL | (Optional) Override if using a custom domain. Leave blank to use the default https://{tenantSlug}.insforms.cc | https://support.unified.insure |
The credential is automatically validated when you click Test — it calls the SmartCSRPro resources API to confirm the tenant slug and secret are correct.
Node Reference
Create Ticket
Creates a new support ticket in SmartCSRPro. This is currently the only operation available.
Main Fields
These fields are always visible on the node:
| Field | Required | Description |
|-------|----------|-------------|
| Subject | Yes | The ticket title — becomes the main identifier on the SmartCSRPro dashboard |
| Details | No | Markdown-formatted body rendered in the ticket's Details section (see Markdown in Details) |
| Priority | No | Ticket priority: Low, Normal (default), High, or Urgent |
| Assigned To | No | Dynamic dropdown of active team members. Assigns the ticket to the selected user. If unset, falls through to SmartCSRPro's assignment chain (rules, category routing, branch default, agency default) |
| Due Date | No | Date picker for the ticket due date |
| Client Email | No | Client's email address — used to match or auto-create a contact record in SmartCSRPro |
Additional Fields
Click Add Field to access these optional fields:
| Field | Description |
|-------|-------------|
| Form | Dynamic dropdown of active forms. When set, the ticket inherits the form's category and title. When omitted, the ticket is created as a formless "Webhook" ticket with category "operations" |
| Branch | Dynamic dropdown of active branches |
| Client Name | Client's full name |
| Client Phone | Client's phone number |
| Tags | Comma-separated list of tags (e.g., billing, urgent) |
| External ID | Your external reference ID for idempotency (see Idempotency) |
| Metadata | Free-form JSON object stored on the submission for debugging/reference |
Dynamic Dropdowns
Three fields use dynamic dropdowns that pull live data from your SmartCSRPro instance:
- Assigned To — Lists all active team members (displays name + email)
- Form — Lists all active forms (displays form title + category)
- Branch — Lists all active branches
These dropdowns refresh each time you open them, so they always reflect the current state of your SmartCSRPro configuration.
You can also use n8n expressions to set these fields dynamically from upstream node data.
Output
On success, the node outputs:
{
"ok": true,
"ticket_id": "0e2de815-dea7-4023-87db-154f20dc1bad",
"ticket_number": "T-0E2DE815",
"url": "https://unified-insurance.insforms.cc/portal/tickets/0e2de815-dea7-4023-87db-154f20dc1bad"
}If the ticket was deduplicated via external_id, the response also includes:
{
"ok": true,
"deduplicated": true,
"ticket_id": "...",
"ticket_number": "...",
"url": "..."
}Usage Examples
Minimal Ticket
Just set the Subject field:
Subject:
Weekly reminder: Check UIG for agent notes
This creates a ticket with Form = "Webhook", Category = "operations".
Full Ticket from Upstream Data
Connect the SmartCSRPro node after a trigger (e.g., a webhook, email, or form submission) and map fields using expressions:
- Subject:
={{ $json.subject }} - Details:
={{ $json.body }} - Priority:
high - Assigned To: Select from dropdown or use
={{ $json.agent_email }} - Client Name:
={{ $json.customer_name }} - Client Email:
={{ $json.customer_email }} - Tags:
billing, urgent - External ID:
={{ $json.id }}(prevents duplicate tickets if the workflow runs again)
Idempotency / Deduplication
Set the External ID field to enable deduplication. If you send the same external_id value twice, SmartCSRPro returns the existing ticket instead of creating a duplicate. This is useful for:
- Webhook retries
- Workflows that may re-process the same data
- Ensuring exactly-once ticket creation
Markdown in Details
The Details field supports Markdown formatting:
**Client Information**
Name: Jane Doe
Phone: +1 555 123 4567
**Request**
- 2024 Honda Civic
- VIN 1HGCM82633A123456
[View policy](https://example.com/policy/123)Supported syntax:
# ## ###headings**bold**and*italic*- bullet lists[link text](url)- Bare URLs (auto-linked)
HTML tags are not supported and will render as literal text.
Compatibility
- n8n version: 0.5.0 and above
- Node.js: 18.x or later
