Use Campaigns to email your generated documents or images directly to recipients — one personalised email per person, with their file attached. Each email subject and body can include placeholders replaced with data from your generation job.
How it works
- You run a document or image generation job as normal
- You create a Campaign that points to that completed job
- You choose which column in your data file holds email addresses
- You write a subject and body with optional
[Placeholder]tags - ActiveMerge sends each recipient a personalised email with their generated file attached
Before you start
You need two things in place before creating a campaign:
1. A completed generation job from the last 24 hours
Data files are kept for 24 hours after a job runs. Jobs older than that appear locked and cannot be used as a campaign source. Run a new job if yours has expired.
2. A connected SMTP email account
Go to Campaigns → Email Connections and add an SMTP connection. You will need:
| Field | Example |
|---|---|
| Connection Name | My Work Email |
| From Email Address | you@example.com |
| SMTP Host | smtp.example.com |
| SMTP Port | 587 |
| Username | your-username |
| Password | your-password |
| Encryption | TLS (recommended) |
After saving, use the Test button to send a verification email and confirm the connection works. Unverified connections cannot be selected when creating a campaign.
Common SMTP settings for popular providers:
| Provider | Host | Port | Encryption |
|---|---|---|---|
| Gmail (App Password) | smtp.gmail.com | 587 | TLS |
| Outlook / Microsoft 365 | smtp.office365.com | 587 | TLS |
| SendGrid | smtp.sendgrid.net | 587 | TLS |
| Mailgun | smtp.mailgun.org | 587 | TLS |
Step 1 — Setup
- Go to Campaigns → New Campaign
- Enter a Campaign Name (e.g. “May 2026 Invoices”)
- Select your Send From email connection
- Select the Generation Job to pull recipients and attachments from
- Choose the Email Column — the column in your data file that contains recipient email addressesActiveMerge auto-selects any column whose name contains “email” or “mail” (case-insensitive). If your column isn’t picked automatically, select it from the dropdown.
- Review the Recipient Preview:
- Valid count and sample addresses
- Any invalid emails flagged — these rows are skipped at send time, not rejected now
- Click Next: Compose
Step 2 — Compose
Write your email subject and body. Every column from your data file is available as a placeholder.
Placeholder format: [ColumnName] — square brackets, exact column name, case-sensitive.
Use the Insert placeholder buttons above the editor to add them without typing. The editor also supports bold, italic, links, lists, and other standard HTML formatting.
Example:
Subject: Your invoice for [Month] is ready
Body:
Hi [FirstName],
Please find your invoice for [CompanyName] attached.
Amount due: [InvoiceTotal]
Due date: [DueDate]
Thanks,
The Billing Team
For each recipient, ActiveMerge replaces [FirstName] with their value from the data file, and so on. If a placeholder name doesn’t match any column, it is left as-is in the sent email — so double-check spelling.
Click Next: Review & Send when done.
Step 3 — Review & Send
- Check the summary cards — name, send-from address, recipient count, and attachment type
- Click Preview with real data to see exactly how the first recipient’s email will look with placeholders filled in
- Click Send Test to Me to receive a copy at your own address before the full send
- Click Create Campaign to save it as a draft
The campaign is saved but not yet sent. You are taken to the campaign detail page.
Sending the campaign
On the campaign detail page, click Send Campaign to start sending.
Emails are sent in batches with short delays between them. Progress updates in real time on the campaign page. Each recipient shows as Pending → Sent (or Failed after 3 automatic retry attempts).
Pausing and resuming
Click Pause at any time to stop dispatching new batches. Recipients already queued may still send — the pause takes effect on the next batch boundary.
To continue, click Resume Sending (the same button that originally said “Send Campaign”). Progress is preserved.
Campaign statuses
| Status | Meaning |
|---|---|
| Draft | Created, not yet sent |
| Queued | Send requested, first batch being prepared |
| Sending | Batches actively going out |
| Paused | Send paused by user; can be resumed |
| Completed | All recipients processed |
| Failed | Orchestration error; contact support |
Recipient statuses
| Status | Meaning |
|---|---|
| Pending | Waiting for their batch |
| Queued | In the job queue, sending soon |
| Sent | Email delivered successfully |
| Failed | Failed after 3 retries |
Attachments
Each recipient receives the file generated for their row — so if your job produced 50 PDFs, recipient 1 gets the first PDF, recipient 2 gets the second, and so on.
If a generated file is missing for a row, the email is still sent without an attachment.
Attachment size limits depend on your SMTP provider. Most have a 25 MB cap per email. Large files may be rejected by the recipient’s mail server even if your provider accepts them.
Tips
- Always send a test first. Use Send Test to Me on the Review step before launching to catch placeholder typos or formatting issues.
- Check invalid emails before sending. The Setup step shows a sample of invalid addresses. Fix them in your data file and re-run the generation job if needed.
- 24-hour window. If your job is close to expiring, create the campaign first and send it shortly after. The campaign retains a copy of the recipient data once saved.
- No scheduling yet. Campaigns send immediately when you click Send Campaign. For trigger-based sending, use Automations instead.
- Deleted campaigns cannot be recovered. Download or note any data you need before deleting.
Troubleshooting
My generation job doesn’t appear in the job list
- Jobs older than 24 hours are locked. Re-run the generation job to create a fresh one.
- Make sure the job completed successfully — failed or in-progress jobs are not available.
I can’t select my email connection
- The connection must pass the Test check in Campaigns → Email Connections. Unverified connections are excluded.
- Re-enter your SMTP credentials if the test fails.
Placeholders aren’t being replaced
- Placeholder names are case-sensitive and must match the exact column header.
[firstname]and[FirstName]are different. - Use the Insert placeholder buttons in the Compose step to avoid typos.
- Click Preview with real data on the Review step to confirm replacements before sending.
Some emails show as Failed
- ActiveMerge retries failed emails three times automatically. If they still fail, the recipient’s address may be invalid, the mailbox may be full, or your SMTP provider may have blocked the send.
- Check your SMTP connection — credentials or rate limits may have changed. Edit the connection in Campaigns → Email Connections and re-test.
Sending is taking a long time
- Large campaigns send in batches with delays between each batch to avoid being flagged as spam. This is normal behaviour.
- For faster throughput, use a transactional email provider (SendGrid, Postmark, Mailgun) as your SMTP source rather than a standard inbox.
Campaign is stuck on Queued
- The background worker may be temporarily unavailable. Contact support if the status hasn’t changed after 10 minutes.