mailcheer

n8n nodes for Mailcheer: send emails, manage subscribers and tags, create and send campaigns, read your quota, and trigger workflows on Mailcheer events.

Package Information

Released: this month
Downloads: 0 weekly / 0 monthly
Latest Version: 0.2.0
Author: Mailcheer

Documentation

n8n-nodes-mailcheer

This is an n8n community node. It lets you use Mailcheer in your n8n workflows: send transactional emails, add and tag subscribers, create and send campaigns, read your monthly quota, and start a workflow when Mailcheer sends an event (email sent, delivered, bounced, a reply received, subscriber unsubscribed…).

n8n is a fair-code licensed workflow automation platform.

Installation ·
Operations ·
Trigger ·
Credentials ·
Compatibility ·
Usage ·
Resources ·
Version history

Installation

Follow the installation guide in the n8n community nodes documentation. The package name is n8n-nodes-mailcheer.

The package has no runtime dependency.

Operations

The Mailcheer node:

Resource Operation What it does
Email Send Sends a transactional email: from, to (up to 50), subject, HTML and/or text, CC, BCC, reply-to, headers, tags, attachments from binary fields, one-click unsubscribe URL, open tracking, idempotency key
Email Get Reads the delivery status of an email sent with Mailcheer
Subscriber Create or Update Adds a subscriber or updates an existing one: first name, last name, tags, custom fields, double opt-in (on by default)
Subscriber Add Tags Adds tags to an existing subscriber and keeps the tags they already have. Nothing else changes: no confirmation email, no status change. An unknown address is refused, never created
Subscriber Remove Tags Removes tags from an existing subscriber, picked from the tags of your workspace. Removing a tag they do not have is not an error
Subscriber Get / Get Many Reads one subscriber, or lists them with a status filter and a search
Subscriber Unsubscribe Unsubscribes the person and adds the address to the suppression list. The record is kept
Subscriber Erase Erases the person for a GDPR erasure request: record, name, custom fields, proof of consent and tags are deleted. Irreversible. Campaign statistics are kept, and an address on the suppression list stays there
Campaign Create Creates a campaign draft from plain text (# makes a heading). With Send Now, sends it right away, to the whole audience or only to given addresses; Dry Run checks and counts without sending
Campaign Send Sends an existing draft, with the same options
Campaign Get / Get Many / Delete Reads a campaign and its statistics, lists campaigns, deletes a draft
Account Get Quota Emails sent this month, emails queued, emails remaining, reset date, plan and the permissions of the key

Errors from Mailcheer keep their code and message (for example unverified_from_domain, with the list of domains you can send from), and the node adds what to do next.

The node is marked as usable by n8n AI agents as a tool.

Trigger

The Mailcheer Trigger node starts a workflow on these events:

  • Email Sent, Email Failed (emails sent through the API only)
  • Email Delivered, Email Opened, Email Clicked, Email Bounced, Email Complained
  • Email Received: a recipient replied (only for a domain where reply receiving is turned on in Mailcheer)
  • Subscriber Created, Subscriber Unsubscribed
  • Quota Threshold Reached (50, 80, 95 or 100% of the monthly quota)

When you activate the workflow, the node subscribes to the selected events through the Mailcheer API. When you deactivate it, the subscription is deleted.

Each call is checked against its Mailcheer-Signature header (HMAC-SHA256 of the timestamp and the raw body, with the secret Mailcheer returned for this subscription). A call without a valid signature, or older than five minutes, is answered with 401 and starts nothing.

Each item is the event as Mailcheer sends it:

{
  "id": "evt_…",
  "type": "email.bounced",
  "created_at": "2026-09-25T08:00:00.000Z",
  "data": { "message_id": "…", "email": "someone@example.com", "source": "api" }
}

id stays the same when Mailcheer retries a call (five attempts over about 1 h 12 min): use it to ignore duplicates. An event caused by a test key (mch_test_…) carries "test": true next to type, with the same data as a real one: filter on it to keep test sends out of your production steps. The test event sent from Mailcheer's webhook screen carries only data.test and data.message.

The fields of each event's data are described in the webhook reference.

Mailcheer calls your n8n over the internet: the webhook address of your n8n instance must be public and start with https://. On a self-hosted n8n, set N8N_WEBHOOK_URL (or WEBHOOK_URL on older versions) to its public address.

Credentials

  1. In Mailcheer, open Settings → API and create a key. Tick the permissions the operations you use need (a key cannot be widened later):

    Operations Permissions
    Email: Send, Get emails:send
    Subscriber: Get, Get Many subscribers:read
    Subscriber: Create or Update, Add Tags, Remove Tags, Unsubscribe, Erase subscribers:write
    The tag list of Remove Tags subscribers:read
    Campaign: Get, Get Many, and the campaign list campaigns:read
    Campaign: Create, Send, Delete campaigns:write
    Account: Get Quota none
    Mailcheer Trigger webhooks:read and webhooks:write
  2. In n8n, create a Mailcheer API credential and paste the key. Keep the base URL https://mailcheer.com.

  3. Click Test: n8n calls GET /api/v1/me with the key.

A campaign goes out from a sender registered in your workspace; an email can go out from any address on a domain verified in your workspace.

Compatibility

Tested with n8n 2.40.6 (self-hosted, Node.js 24).

Usage

  • Form to list. A form or shop tool posts to an n8n Webhook node → Mailcheer Subscriber: Create or Update with double opt-in on: the person receives the confirmation email and joins the list once they confirm. Turn double opt-in off only when consent was collected elsewhere; you then answer for it.
  • Bounces back to your CRM. Mailcheer Trigger on Email Bounced and Subscriber Unsubscribed → the node of your CRM that updates the contact.
  • Quota watch. Schedule Trigger → Mailcheer Account: Get Quota → IF emails_remaining is below your threshold → a message to your team.
  • Order emails. Your shop's order event → Mailcheer Email: Send, with the order number as Idempotency Key: if the workflow runs again with the same content, Mailcheer returns the first result instead of sending twice.

Development

npm ci --ignore-scripts   # n8n-workflow pulls native modules that building the node does not need
npm run build
npm run lint
npm test                  # unit tests, run on the built dist/

Resources

Version history

0.2.0

  • Trigger: Email Sent, Email Failed and Email Received (reply) events; an event of a test key keeps its "test": true.
  • Subscriber: Add Tags now uses the tags route: no confirmation email is sent again to a subscriber waiting for confirmation.
  • Subscriber: new Remove Tags (with the list of your tags) and Erase (GDPR) operations.

0.1.0

First release: the Mailcheer node (Email, Subscriber, Campaign, Account) and the Mailcheer Trigger node.

Discussion