Author: Gabriele

  • Importing subscribers

    This guide explains how to import subscribers into Sender using the guided import wizard: upload or paste your data, map columns to subscriber fields, assign groups, control whether automations run, and review the results.

    To start an import, go to SubscribersAdd subscribers. The wizard walks you through three steps: Add subscribersMap fieldsOrganize & import. Everything else — progress tracking, error reports, and import history — happens after you click Start importing.

    The same flow works whether you’re uploading your first list or migrating from another platform such as Mailchimp, GetResponse, Klaviyo, or Brevo. The wizard is fully mobile-friendly, so you can run an import from your phone.

    Before You Start

    • Verify your sending domain in Sender before importing, so you can send to your list as soon as the import finishes. See verify sending domain.
    • Confirm you have consent. Every contact in the file must have explicitly opted in to receive email or SMS from you. Read more about CAN-SPAM and GDPR compliance.
    • Get admin access to your source platform so you can export contacts, custom fields, tags, and suppression records.
    • Document what you’re migrating — field names, field types, tag structures, and subscriber statuses.
    • Decide which groups you need. You can select groups during the import, but creating them first makes the mapping step faster. Go to SubscribersGroupsCreate new group. See create contact groups.
    • Custom fields are optional up front. You can create them mid-import from the Map fields step. Creating them in advance under SubscribersFields gives you more control over naming and field type. See manage subscriber fields.

    Audit Your Source Platform

    Contact fields — Document every field attached to your contacts in your source platform, including field names, data types (text, date, number, dropdown), and example values. In Sender these map to Fields under SubscribersFields, where the default fields are Email address, Phone number, First name, Last name, and Birthday.

    Tags and lists — Record all tags, lists, or audience categories applied to your contacts. In Sender these map to Groups under SubscribersGroups. If your source platform uses tags for individual attributes rather than audience segments, map those to custom Fields instead. See groups vs segments.

    Subscriber statuses — Identify contacts marked as unsubscribed, bounced, or spam complaints. Import these separately and set the correct status so you never send to opted-out contacts. See subscriber statuses explained.

    Custom field types — Note the data type of each custom field. Sender supports five types: Text, Date (YYYY-MM-DD), Datetime, Number, and Drop-down. Map each source field to the closest Sender type and reformat any values that don’t match before you upload.

    Ways to add subscribers

    The first step of the wizard offers three methods. Pick the one that matches where your data lives.

    Import from a file — Bulk import subscribers from a .csv, .xlsx, or .txt file. Use this for exports from another platform, spreadsheets, and any list over a few dozen contacts.

    Copy and paste — Paste subscriber contacts as text, in bulk or one at a time. Use this for short lists, contacts collected offline, or a quick test batch.

    Import from another tool — Connect an email marketing platform you already use and pull subscribers across automatically. Use this when you’d rather skip the export-and-upload cycle.

    File and formatting requirements

    Before you upload, check your file against these rules. Most import problems trace back to one of them.

    RequirementDetails
    Supported file types.csv, .txt, MS Excel (.xlsx)
    Maximum file size64MB
    Row structureEach subscriber must be on a new row, and each subscriber field must be in its own column
    Header rowAdd field names in the first row so Sender can suggest mappings automatically
    Email formattingInvalid addresses aren’t imported. Valid formatting: [email protected]
    Phone formattingUse a supported international format that includes the country code of the number such as +16025618297, otherwise the phone field isn’t imported
    DuplicatesDuplicate subscribers are skipped, and existing contacts are updated with the new values
    DatesUse YYYY-MM-DD or YYYY-MM-DD hh:mm:ss

    To start from a correctly structured file, use Download Excel template or Download CSV template on the upload screen, or expand See list example to view a sample layout. More detail in create import files and supported file types.
    Steps to Import Contacts

    Step 1 — Export and prepare your contact file

    In your source platform, export your full contact list as a .csv or .xlsx file. Include every field you plan to migrate — email address, first name, last name, phone number, custom fields, and tags.

    Make sure the first row contains column headers. Remove duplicate rows and obviously invalid addresses, and reformat dates to YYYY-MM-DD. If your source platform stores tags in a column, keep that column so you can use it during group assignment or map it to a custom field.

    Platform-specific export instructions: import contacts from Mailchimp and import contacts from GetResponse.

    Step 2 — (Optional) Create fields and groups in advance

    Go to SubscribersFieldsCreate new field for any custom field that doesn’t exist in Sender yet, and pick the matching field type. Then go to SubscribersGroupsCreate new group for each list, audience, or tag category you want to recreate.

    You can skip this step and create fields during mapping instead. Doing it in advance is worth it when you’re migrating a large field structure and want consistent naming.

    Step 3 — Choose how to add subscribers and upload your file

    Go to SubscribersAdd subscribers. On the Add subscribers step, select Import from a file, Copy and paste, or Import from another tool.

    Read the Opt-in Agreement notice. By adding subscribers you certify that everyone on the list has explicitly consented to receive emails and SMS from you, and that the list complies with anti-spam regulations.

    If you chose Import from a file, drag your file into the upload area or click Select a file. Upload progress is shown as the file transfers. When the upload finishes, click Next.

    Step 4 — Map columns to subscriber fields

    On the Map fields step, Sender shows every column from your file alongside sample data pulled from the first rows. Where a column header matches an existing field, the mapping is suggested for you.

    Choose which columns to import. Use the checkbox in the Import column to include or exclude each one. The counter at the top shows Columns selected to import — for example, 7/7.

    Map each selected column. Open the Map to field dropdown and pick a field. Use Find by name to search when you have a long field list. Columns that still need attention are marked with a red icon and the message Map this data or deselect from import.

    Create a field on the fly. Click + Create new field at the top of the dropdown to add a custom field without leaving the wizard. Once created, the column shows as Custom field: [name] and is marked as mapped.

    Check your progress. The Mapped fields counter (for example, 3/7) tells you how many selected columns are ready. Click Reset mapping to clear everything and start again.

    You can’t continue until every selected column is either mapped or deselected. When the counters match, click Next.

    Step 5 — Organize and start the import

    On the Organize & import step, open Select groups and choose one or more groups for the incoming subscribers. Every contact in this file is added to every group you select.

    Then decide how automations should behave:

    • Leave “Trigger active automations upon import” unchecked to import silently. No active automation runs for these subscribers, even if they match a group trigger. This is the safer choice for migrations and large historical lists.
    • Check the box to run active automations for subscribers who match your selected group triggers. Use this when the import represents brand-new signups who should receive your welcome series.

    Review your active workflows before enabling this — see automation triggers explained.

    Click Start importing to begin. If you need to stop and come back, click I’ll finish later and your progress is saved so you don’t have to re-upload the file.

    Step 6 — Track import progress

    Imports run in the background. You can navigate to another page, start a campaign, or close the wizard without interrupting anything.

    Status notifications appear in the bottom-right corner of the screen. Each import gets its own notification, so several imports can run at once and you can follow all of them at a glance.

    • Pending import — the import is queued and shows the date and time it was created.
    • Importing subscribers — a progress bar and a running count of contacts imported so far.
    • Subscribers imported successfully — the import finished cleanly, with a View list button that takes you to your subscribers.

    To stop an import, click Cancel on its notification. Subscribers already processed stay in your account — cancelling stops the remaining rows, it doesn’t roll back the ones that finished.

    Step 7 — Review the results

    When the import finishes, the results show how many subscribers were added, how many existing records were updated, and how many rows need review.

    If an import is flagged as Review needed, open the import details straight from the status notification. From there, download the CSV report listing every affected subscriber and the specific issue for each row — usually invalid email formatting, an unsupported phone number format, a date that doesn’t match the expected format, or a duplicate.

    Fix the flagged rows in your source file and re-import just those rows. Sender matches on email address, so re-importing a corrected row updates the existing record instead of creating a duplicate.

    Step 8 — Import suppression records separately

    Export unsubscribed, bounced, and spam-complaint contacts from your source platform as a separate file.

    Run a second import with that file, mapping the email column to Email address. Leave the automation trigger checkbox unchecked so nothing fires for these contacts. After the import, update their status to Unsubscribed so they’re excluded from sends.

    Repeat for bounced contacts if your source platform tracks them separately. Full details in migrating suppression lists.

    Import statuses explained

    StatusWhat it meansWhat you can do
    PendingThe import is queued and hasn’t started processing. The notification shows when it was created.Cancel it before processing starts.
    ImportingSubscribers are being added in the background. The notification shows a progress bar and running count.Keep working elsewhere in Sender, or cancel — processed contacts stay imported.
    Successfully importedEvery row was processed without issues.Click View list to open your subscriber list.
    Review neededThe import finished, but some rows had warnings or errors.Open the import details and download the CSV report to see which rows were affected and why.
    CancelledYou stopped the import before it finished.Subscribers processed before cancellation remain in your account. Re-import the remaining rows when ready.

    Import history

    Every import is recorded under SubscribersImports.

    The history page shows the import type, status, date, number of new subscribers, number of updated subscribers, and any issues for each import. Filter the list by status, type, or date to find a specific run.

    You can download warning and error reports from previous imports here too — useful when you want to clean up data days after the import finished, or hand the report to someone else on your team.

    Mapping Reference

    Source platform contact fields → Sender Fields — Standard fields like email, first name, and last name map directly to Sender’s default fields. Custom fields (company name, city, membership tier) can be created in advance under SubscribersFields, or during mapping with + Create new field. Choose the type that matches your data: Text for free-form values, Date for YYYY-MM-DD dates, Datetime for timestamps, Number for numeric-only values, and Drop-down for fixed option sets. See contact attributes and custom fields.

    Source platform lists or audiences → Sender Groups — Each list or audience corresponds to a Group. Select the groups you need on the Organize & import step. All contacts in the file are added to every selected group, so import one audience per file when you need different group assignments.

    Source platform tags → Sender Groups or Custom Fields — Tags that represent audience segments (“VIP”, “Newsletter”) map to Groups. Tags that represent an attribute (“Lead source: Webinar”) work better as a custom Field with the tag value in its own column.

    Source platform subscriber status → Sender subscriber status — Active contacts import as active. There’s no status column to map during import, so unsubscribed and bounced contacts need a separate file and a status update afterward.

    Source platform date fields → Sender Date field — Sender accepts YYYY-MM-DD and YYYY-MM-DD hh:mm:ss. Convert dates in your export before uploading to avoid mapping errors.

    Source platform phone numbers → Sender Phone number — Use international format with the country code, such as +16025618297. Numbers in other formats are skipped.

    What Cannot Be Migrated Automatically

    Subscriber engagement history — Open rates, click data, and engagement scores don’t transfer. Sender starts tracking engagement from your first send after the import.

    Multiple tag assignments in a single file — If a contact belongs to several tags in your source platform, you can’t import all those assignments in one upload. Import one audience at a time, or restructure tags as custom field values in a single column.

    Subscriber status during import — There’s no status column mapping. Active contacts import as active; suppression records need a separate import and a status update afterward.

    Automation enrollment data — Which automations a contact was in, and their position in a sequence, can’t be transferred. Contacts enter Sender automations from the beginning based on new triggers. See rebuilding automations.

    How to Test the Migration

    Start with a small batch. Upload a file with 5–10 test contacts and run the full flow — mapping, groups, automation setting, results. Verify everything, delete the test contacts, then import the real list.

    Verify contact count. Go to Subscribers and compare the total against the number of rows in your file, minus the header row. Check the results summary for how many were added versus updated.

    Check field mapping accuracy. Open several subscriber records and confirm names, phone numbers, and custom field values landed in the right fields. Use Toggle fields on the subscriber list to show additional columns.

    Confirm group assignment. Go to SubscribersGroups and check the total for each group against what you expected.

    Validate suppression records. Use the Email status filter on the subscriber list to confirm unsubscribed contacts carry the right status and are excluded from active counts.

    Confirm automations behaved as expected. If you imported silently, check that no automation reports new entrants for that time window.

    Import Tips

    Import silently for migrations. Leave Trigger active automations upon import unchecked when moving a historical list. Existing subscribers shouldn’t receive your welcome series a second time.

    Split large files. If your export is over 64MB, split it into smaller files and import them in batches. Removing unused columns also brings the size down. Because imports run in parallel, you can queue several batches and watch them all from the notifications.

    Standardize dates and phone numbers before upload. Reformat dates to YYYY-MM-DD and phone numbers to international format in your spreadsheet first. This is the single biggest source of review-needed rows.

    Use the templates. Download CSV template or Download Excel template on the upload screen gives you a correctly structured file to paste your data into.

    Document your field mapping. Keep a reference table pairing each source field with its Sender field and type. It prevents mapping mistakes and speeds up future imports.

    Clean the list before importing, not after. Removing invalid and long-inactive addresses protects your sender reputation from the first campaign onward. See maintain a clean subscriber list.

    Common Issues

    You can’t move past the Map fields step → One or more selected columns are unmapped. Look for the red Map this data or deselect from import message, then either assign a field or uncheck the column in the Import column. The Mapped fields counter should match the Columns selected to import counter.

    A custom field is missing from the dropdown → It doesn’t exist yet. Click + Create new field at the top of the dropdown to add it without leaving the wizard, or use Find by name if you think it exists but can’t spot it in a long list.

    The import shows Review needed → Some rows had warnings or errors. Open the import details from the notification, download the CSV report, fix the flagged rows in your source file, and re-import just those rows.

    Phone numbers didn’t import → The numbers aren’t in a supported international format. Reformat them to include the country code, for example +16025618297, and re-import.

    Date values didn’t import correctly → The values aren’t in YYYY-MM-DD or YYYY-MM-DD hh:mm:ss format. Reformat the column in your spreadsheet, save, and upload again.

    Contacts appear as updated instead of new → Sender matches on email address. When an address already exists, the record is updated with the new field values rather than duplicated. This is expected behaviour.

    An automation fired unexpectedlyTrigger active automations upon import was checked, and imported subscribers matched a group trigger. Pause the automation, then re-run future imports with the box unchecked.

    The import notification disappeared → Notifications clear once dismissed. Go to SubscribersImports to see the status, counts, and reports for any import.

    Your file won’t upload → Check the file type (.csv, .txt, .xlsx only) and confirm it’s under 64MB. Re-save from your spreadsheet application if the file was exported from an unusual source.

    Suppressed contacts show as active → Unsubscribed or bounced contacts were imported without a status update. Locate them under Subscribers and change their status to Unsubscribed.

    More troubleshooting in troubleshoot contact import.

    FAQs

    What file formats and sizes does Sender accept? .csv, .txt, and .xlsx (MS Excel), up to 64MB per file. Split larger exports into batches.

    Can I run more than one import at a time? Yes. Each import gets its own status notification in the bottom-right corner, so you can queue several files and track them all separately.

    Can I leave the page while an import runs? Yes. Imports process in the background, so you can keep working elsewhere in Sender. Check progress from the notification or from SubscribersImports.

    Can I cancel an import? Yes — click Cancel on its status notification. Subscribers already processed stay in your account; the remaining rows are not imported.

    Will importing contacts trigger my automations? Only if you check Trigger active automations upon import on the Organize & import step. Leave it unchecked to import silently, which is what most migrations need.

    Can I create custom fields during the import? Yes. Click + Create new field in the Map to field dropdown. Creating fields in advance under SubscribersFields still gives you more control over naming and type.

    How do I assign imported contacts to multiple groups? Select multiple groups from Select groups on the Organize & import step. Every contact in the file is added to all selected groups.

    What happens to contacts that already exist in Sender? They’re matched by email address and updated with the new field values from your file. No duplicate record is created.

    Can I import contacts from multiple platforms at once? Each import handles one file or one source. Export from each platform separately and run an import per file, assigning the right groups each time.

    Can I pause an import and come back to it? Yes. Click I’ll finish later in the wizard and your progress is saved, so you don’t need to re-upload the file.

    Where can I see previous imports? Go to SubscribersImports for the full history, including status, date, subscriber counts, issue counts, and downloadable reports.

    Do I need to create groups before importing? No, but it helps. You can select existing groups during the import; creating them first keeps naming consistent across a migration.


    If you got stuck on a specific task or can’t find a way to execute a particular job, contact our support team via LiveChat or [email protected] – we’re here to help 24/7.

  • Sender MCP Server

    Discover practical AI use cases to boost your marketing efficiency.

    This guide explains how to connect your Sender account to an AI assistant using the Sender MCP server, what the assistant can do once connected, and the safeguards that keep it from sending anything on its own.

    Where to Find This Feature

    There is nothing to enable in the Sender dashboard. You connect from your AI assistant’s side using the Sender MCP server URL:
    https://mcp.sender.net/mcp
    Authentication uses OAuth, so you log in to Sender in a browser window and approve access. There is no API key to copy or paste, and you can revoke access at any time.

    What You Need Before Connecting

    An MCP-compatible client. Claude, ChatGPT, and Cursor all support remote MCP servers. Availability depends on your plan with those products, so check their documentation if the option isn’t visible.

    A Sender user role with the right permissions. Every tool checks a permission against the role of the user who authorized the connection. If your role can’t edit campaigns in the dashboard, the assistant can’t edit them either — it receives a permission error and explains why.

    A verified sending domain, for anything that will eventually send. Campaign drafts and workflow email steps both need a from_email on a verified domain. Ask your assistant to list your sending domains and it reports verification, SPF, DKIM, and DMARC status for each one.

    How the MCP Server Works

    MCP (Model Context Protocol) is an open standard for connecting AI models to outside tools and data. Connecting Sender’s MCP server gives your assistant a set of tools it can call on your behalf — reading your subscribers, segments, campaigns, and automations, and creating things in your account.

    Everything the server creates arrives as a draft. Campaigns are never sent through this connection at all. Workflows are created inactive, and going live is a separate step that runs the same pre-flight checklist as the dashboard.

    Connecting Sender to Claude

    Here are steps to take in order to Connect Sender to Claude.

    1. Go to Customize → Connectors in Claude.
    2. Click +, then Add custom connector.
    3. Enter Sender as the name and https://mcp.sender.net/mcp as the URL, then click Add.
    4. Select the Sender connector and click Connect. Log in to Sender and approve the permissions.
    5. Start a conversation and ask for something that needs your account data. “List my segments” is a quick test.

    Here are the steps in action:

    Note: On Claude Team and Enterprise plans, a Claude organization Owner has to add the connector at the organization level before members can connect their own Sender accounts.

    Once connected, the Sender connector is available in Claude on web, desktop, and mobile.

    Connecting Sender to ChatGPT

    Adding a custom MCP server in ChatGPT requires developer mode.

    Here are steps to take in order to Connect Sender to ChatGPT:

    1. Open Settings → Plugins, click “Developer mode” and turn on the Developer mode toggle.
    2. Return to Plugins and click Browse plugins.
    3. Click “+” sign.
    4. Enter Sender as the name, https://mcp.sender.net/mcp as the Connection Server URL, and set authentication to OAuth.
    5. Complete the OAuth flow — log in to Sender and approve the permissions.
    6. Select the Sender app in the composer before asking a question that needs your account data.

    Here are the steps in action:

    Connecting Sender to Cursor

    1. Open Cursor Settings → MCP → New MCP Server, or edit your MCP configuration file directly.
    2. Add a server entry:

    json

    {
      "mcpServers": {
        "sender": {
          "url": "https://mcp.sender.net/mcp"
        }
      }
    }
    1. Save, then complete the OAuth flow when Cursor prompts you.
    2. Start a chat and confirm the Sender tools appear.

    Using Multiple Sender Accounts

    Each connection is authorized against one Sender account. To work across several, add a separate connector entry per account, give each a distinct name (for example sender-brand-a and sender-brand-b), and authorize each one with the login for that account.

    Enable only the connector you intend to work in for a given conversation. That way an assistant can’t read one account and write to another by mistake.

    What You Can Do With It

    Here are some examples of prompts you can give:

    • “Act as an experienced email marketer. Review my segments and tell me which ones are broken, duplicated, or misnamed.”
    • “Which of my automations overlap? Show me what a new free user actually receives in their first two weeks.”
    • “Compare my three upsell workflows — sends, opens, clicks, and unsubscribes side by side.”
    • “Check the emails in my onboarding flow for broken links, missing preheaders, and wrong image alt text.”
    • “Draft a short welcome sequence for new signups and build it as a draft workflow.”

    Auditing and Building Segments

    Your assistant reads every condition in a segment, not just its name, which is how it catches filters that quietly stopped working.

    Fixed dates are the usual culprit. A segment named “30-day most engaged” built with a specific date two years ago now means “opened anything in the last two years” — and if it holds a third of your list, anyone reaching for it expects a tight audience and mails the database instead.

    The same read surfaces duplicate segments with identical conditions, names that promise a filter the segment doesn’t apply, and lists holding unsubscribed records.

    You can then describe replacements in plain language — “signed up more than 12 months ago, zero opens and zero clicks in the last 365 days” — and the assistant writes them in Sender’s condition vocabulary and creates them. Every segment comes back with a plain-English readback of its conditions so you can check the logic before you use it.

    Reviewing Your Automations

    Ask what a subscriber actually receives and you get the merged picture across every active workflow, which is harder to see in the dashboard than it sounds.

    Two automations sharing a trigger event means everyone who enters one enters the other. A third gated on an event that fires inside the second makes its audience a subset of that one. Stack the delays and you can find five emails landing in nine days, two of them on the same morning.

    Your assistant can lay that out on a timeline, then pull the performance report for each workflow to show what the overlap costs in unsubscribes. It also reads the structure itself: which steps block activation and why, and any step no path can reach.

    Checking Email Content

    Your assistant can read the body of a campaign or a workflow email step, and it notices details that are easy to miss in a visual editor:

    • Social icons carrying the wrong alt text — a YouTube icon labeled alt="Twitter", LinkedIn labeled alt="Instagram"
    • Placeholder alt text such as alt="Image description" left on a main image
    • Hero images linking somewhere that contradicts the email, like a registration link in a message sent only to people who already registered
    • Legacy {$firstname} tokens, which reach subscribers as literal text. Sender uses Liquid, so personalization is {{ firstname }}. Every content write scans for the old syntax and warns you
    • Missing preheaders, and permission reminders too vague to rely on if someone complains

    Building a Workflow

    You can go from a description to a working draft in one conversation. Ask for a welcome sequence and your assistant resolves the group and event IDs it needs, then submits the whole graph — trigger, delays, conditions with their branches, splits — in a single step.

    It comes back as a draft, with a plain-English rendering of the branching so you can confirm the logic reads the way you meant, plus a list of anything still blocking activation. From there the assistant fills in the email bodies, runs a dry-run validation that reports every remaining problem at once, and activates only when you tell it to.

    Editing later is non-destructive. Inserting steps splices existing ones underneath rather than replacing them, and deleting a step won’t silently drop subscribers waiting on it.

    Available Tools

    Your MCP client discovers the full tool list and each tool’s inputs automatically. The complete reference, including conventions and multi-tool recipes, is in the Sender API documentation.

    Access legend: R read-only · W writes · D destructive (requires an explicit acknowledgment flag)

    Account and Discovery

    ToolAccessWhat It Does
    get_account_detailsRAccount name, timezone, country, status, plan, and calling user
    list_domainsRSending domains with verified, SPF, DKIM, and DMARC status
    list_phone_numbersRSMS sender numbers — required before any SMS step
    list_storesRConnected stores — required for store-driven triggers and conditions
    get_event_typesRCustom and built-in event types, with the IDs event triggers use
    get_eventsREvent instances for one type, newest first

    Subscribers and Groups

    ToolAccessWhat It Does
    list_subscribers / get_subscriberRBrowse subscribers, or fetch one by ID, email, or phone
    create_subscriber / update_subscriberWCreate or update profile fields, groups, and channel statuses
    subscribe_subscribers / unsubscribe_subscribersWReactivate or unsubscribe people per channel
    list_groups / get_groupRSubscriber groups

    Segments

    ToolAccessWhat It Does
    list_segments / get_segmentRBrowse segments; the single fetch returns conditions plus a plain-English readback
    create_segment / update_segmentWBuild segments from conditions; updates replace all conditions at once

    Email Campaigns

    ToolAccessWhat It Does
    list_email_campaigns / get_email_campaignRBrowse campaigns; the single fetch includes audience, reports, and the body
    get_email_campaign_reportRPerformance report for a sent campaign
    create_email_campaignWDraft campaign with sender details, audience, and optional body. Requires a verified sending domain. Never sends
    update_email_campaign_contentWReplace a draft campaign’s body

    Workflows

    ToolAccessWhat It Does
    list_workflowsRBrowse automations with light engagement stats
    get_workflowRThe full graph, a plain-English rendering of the steps, and what blocks activation
    get_workflow_reportRPerformance report, with revenue where your plan includes it
    get_workflow_step_contentROne step’s sender details and body, or an SMS step’s text as it will send
    validate_workflowRDry run — structural checks before creation, or the full activation checklist
    create_workflowWThe whole graph in one step: title, trigger, and nested steps. Always a draft
    rename_workflowWTitle only
    update_workflow_stepWReconfigure one step by ID. Step type can’t be changed
    add_workflow_stepsWInsert steps anywhere; existing steps re-attach underneath
    delete_workflow_stepDRemove a step or a branch. Won’t drop waiting subscribers without an explicit flag
    update_workflow_email_contentWAn email step’s body
    update_workflow_sms_contentWAn SMS step’s message and sending number, up to 1,600 characters
    activate_workflowWRuns the full pre-flight checklist and takes the workflow live
    deactivate_workflowWActive back to draft. Nothing is lost, and it’s required before any edit

    Image Library

    ToolAccessWhat It Does
    list_image_categoriesRImage folders
    upload_image_from_file / upload_image_from_urlWAdd images for use in email content

    What the MCP Server Will Not Do

    Worth reading before you give an assistant access to your account.

    Creation is always a draft. Campaigns are never sent through this connection. Workflows go live only through one deliberate activation step, which runs the same pre-flight checklist as the dashboard. If anything blocks activation, nothing activates and you get every problem at once rather than one at a time.

    Active workflows can’t be edited here. Deactivate first. All subscriber progress is preserved, and everyone resumes where they left off when you reactivate.

    Destructive actions name what they affect. Dropping subscribers waiting on a step, or discarding a drag-and-drop design, each require an explicit flag rather than happening quietly.

    Workflow creation is rate-limited to 50 per account per day, as a backstop against a runaway assistant.

    Drag-and-drop designs are protected. Emails built in the block builder are read-only through this connection unless you explicitly allow an overwrite, which permanently discards the design.

    What Happens Next

    Once the connector is authorized, your assistant sees your account immediately — no sync or import step. Anything it creates appears in your Sender dashboard right away as a draft, where you can review it, edit it in the normal editors, and send or activate it yourself.

    Common Issues

    Can’t connect → Check the URL is exactly https://mcp.sender.net/mcp. Your assistant connects from its own cloud infrastructure rather than from your computer, so a VPN or local firewall isn’t usually the cause, though a client-side proxy can be.

    Authentication fails → Confirm you completed the OAuth flow in the browser window and approved the permissions. If your organization applies plan-level controls to your AI assistant, an administrator may need to add the connector before you can authorize it.

    Tools are missing → Restart your client and check the Sender connector is enabled for that specific conversation or workspace. Some clients require you to select it in the composer each time.

    A tool returns a permission error → The connection carries your Sender role. If you can’t perform the action in the dashboard, you can’t perform it here either. Ask an account owner to connect instead, or to grant your role the permission.

    A workflow won’t activate → Ask your assistant to validate it and you’ll get every blocking problem in one response. The most common cause is an email step whose from_email isn’t on a verified sending domain.

    Personalization shows up as literal text → Sender uses Liquid: {{ firstname }}, not {$firstname}. Content written with the old syntax is stored exactly as passed and reaches subscribers unrendered.

    FAQs

    Can an AI assistant send emails to my subscribers? No. Campaigns created through the MCP server are always drafts, and there is no tool that sends one. Workflows can go live, but only through a separate activation step you ask for explicitly, and only after passing the same pre-flight checks the dashboard runs.

    Do I need a paid Sender plan to use this? The MCP server follows your account’s existing permissions and plan features. If a feature isn’t included in your plan, it isn’t available here either.

    Does my assistant see my whole account? It can read the data your Sender user role gives you access to. Tools check permissions individually, so a limited role produces a limited view.

    Can I disconnect it? Yes. Remove the connector in your AI assistant. The connection stops immediately and nothing created before then is affected.

    Will it change things without asking? Your assistant proposes actions and most clients ask you to approve tool calls that write data. Review write and delete steps before approving them, the same way you would any integration with account access.

    Can I use it with an assistant other than Claude, ChatGPT, or Cursor? Any client that supports remote MCP servers with OAuth should work. Those three are the ones we’ve documented.


    If you got stuck on a specific task or can’t find a way to execute a particular job, contact our support team via LiveChat or [email protected] — we’re here to help 24/7.

  • Country-specific SMS Sender Verification Requirements

    Before you can start sending SMS through Sender to certain destinations, your sender must be verified with the relevant provider and, in some countries, approved under the local framework. Requirements differ depending on where you are sending and what type of sender you use.

    This guide covers the three areas with the specific requirements:

    • United States & Canada – Toll-free number verification (via our provider, Telnyx)
    • Australia – Alphanumeric Sender ID registration (via our provider, Twilio)
    • France – Alphanumeric Sender ID authorization (via our provider, Twilio)

    For all of these, the fastest route to getting verified is to prepare the required information and documents in advance, then get in touch with our support team so we can submit your request. These requirements come from the mobile carriers and regulators, and incomplete submissions are commonly rejected — so accuracy matters more than speed.

    Please note: Rules in this area change frequently and are set by carriers and regulators, not by Sender. The details below were accurate at the time of writing (effective dates are included where known). If anything has changed by the time you apply, our support team will guide you through the current process.


    United States & Canada – Toll-Free Verification

    To send SMS to US and Canadian phone numbers using a toll-free number, that number must be verified before messaging is allowed. We use Telnyx as our provider for toll-free numbers, and Telnyx applies strict carrier requirements to the entire verification process.

    Everything below is submitted through the dedicated toll-free verification form in your Sender dashboard. Complete every field accurately and consistently — the majority of rejections come down to a small number of avoidable issues, listed next.

    The most common reasons submissions are rejected

    Focus your attention here first. In roughly the order they cause problems:

    1. The business can’t be verified. Carriers must be able to confirm you’re a real, identifiable business. This is the single most common cause of “Waiting for Customer” and rejections. It happens when the website is inaccessible or thin, a free email (e.g. Gmail) is used instead of a business-domain address, the contact is a department name rather than a real person, or the business name / website domain / email domain / account domain don’t match each other.
    2. The content isn’t eligible. Some content is permanently barred (see the prohibited list below). This is critical: a bad opt-in or a typo can be fixed and resubmitted, but an ineligible-content rejection is usually final and cannot be appealed. Check your use case is allowed before you invest time in the application.
    3. The submission isn’t internally consistent. The use cases you select, your sample messages, and your opt-in form must all align. Every use case that appears on your opt-in form must also be declared in the verification request, and your sample messages must match those use cases.
    4. Consent (opt-in) is missing, insufficient, or shares data with third parties. Covered in detail below — this is where the opt-in form, disclaimer, and checkbox structure matter.
    5. URL hygiene. Public URL shorteners (e.g. bit.ly) and non-secure (HTTP) links are flagged. Use a branded, HTTPS URL.

    Fixable vs. final: Most rejections (business info, opt-in, URLs, missing justification) are eligible for resubmission once corrected. A handful — SHAFT/prohibited content, known spam/phishing, fraud, deceptive marketing — are not eligible. Knowing which is which saves wasted effort.

    1. Business identification (get this right first)

    • Legal business name — your business name, website domain, and email domain should match. If they differ, explain why in the additional information field.
    • Business website (or social media page) — it should clearly show your business name, contact information, products/services, an About page, a Contact page, and links to your Privacy and Terms pages. The site must be live and accessible when carriers review it.
    • Business email address — on the same domain as your website. Free email addresses (e.g. Gmail) can cause a decline.
    • Business address — a valid business address
    • Business contact — a real person’s first and last name (not a department), plus a contact number for the business (not the toll-free number being verified)

    2. Business Registration information (mandatory)

    As of February 17, 2026, three Business Registration Number (BRN) fields are required for all new toll-free submissions. Requests missing them are rejected, so have these ready:

    • Business Registration Number — a government-issued identifier. Examples: EIN in the US (12-3456789), CRA Business Number in Canada.
    • Business Registration Type — e.g. EIN, CRA, Companies House, ABN, VAT. (US sole proprietors without an EIN can use their SSN with type SSN.)
    • Business Registration Country — the ISO two-letter country code of the issuing authority (e.g. US, CA, GB).

    3. Messaging details (keep these consistent with your opt-in)

    • Use case — the purpose of your messaging (examples: 2FA, account notifications, appointments, billing, order notifications, general marketing, fraud alerts, conversational). If mixed, choose “Mixed” and describe each. Every use case on your opt-in form must appear here.
    • Use-case summary — the message types, the intended audience, and your compliance measures
    • Sample message(s) — a realistic example for each use case you selected; samples must match your stated use cases and opt-in
    • Estimated monthly message volume

    4. Content eligibility — prohibited content

    Certain content is not eligible for toll-free messaging and generally cannot be appealed: SHAFT content (Sex, Hate, Alcohol, Firearms, Tobacco/Vape, Marijuana/CBD), loan soliciting/promotion, third-party debt collection, gambling/sweepstakes, stock/crypto/high-risk investment alerts, debt reduction or credit repair, third-party lead generation, and any federally illegal substances. Confirm your use case is allowed before applying.

    5. Opt-in — how consent is collected

    You must clearly document how recipients consent. There are four accepted opt-in methods, each needing its own evidence:

    • Digital (web form) — provide the URL, or a screenshot showing as much of the branded opt-in form as possible, and explain how subscribers reach it
    • Paper — provide a link to the uploaded branded form and explain how subscribers receive it
    • Verbal — provide the exact script subscribers hear, and explain where/how they opt in (e.g. the phone number they call)
    • Inbound message — provide the phone number subscribers text and explain how they learn it

    If you don’t have a link (for example, verbal consent), point to a publicly accessible Google Doc or Dropbox file that diagrams the opt-in.

    Required disclaimer. With every method, subscribers must see the following before the first message (for inbound-text opt-ins, it can appear in the first message):

    You are subscribing to [brand name] for [transactional or marketing] messages. Reply STOP to opt out. Reply HELP for help. Standard message and data rates may apply. Message frequency may vary. View our Terms and Conditions [link]. View our Privacy Policy [link].

    Checkbox rules (strict — common rejection causes):

    • The opt-in form must be branded with the same business name being registered, and the business name must appear in the message content.
    • Checkboxes must be unchecked by default and optional — consent to messaging cannot be a condition of receiving your service.
    • SMS opt-in and Privacy Policy acceptance must be two separate checkboxes. (Combining them is no longer allowed.)
    • SMS consent must be separate from email consent — distinct checkboxes.
    • If marketing is a use case, marketing consent must have its own checkbox, separate from transactional consent.

    Example of compliant separate checkboxes:

    [Checkbox 1 – transactional] By checking this box and submitting this form, you consent to receive transactional text messages for [use case] from [Company]. Reply STOP to opt out. Reply HELP for help. Standard message and data rates may apply. Message frequency may vary. View our Terms and Conditions [link]. View our Privacy Policy [link].

    [Checkbox 2 – marketing] By checking this box and submitting this form, you consent to receive marketing text messages from [Company]. Reply STOP to opt out. Reply HELP for help. Message and data rates may apply. Message frequency may vary. View our Terms and Conditions [link]. View our Privacy Policy [link].

    6. Opt-out

    Recipients must be able to unsubscribe by replying STOP at any time, stated in your disclaimer and messages (alongside HELP for assistance). For Telnyx toll-free numbers, the opt-out keyword is STOP, and the resume keywords are START and UNSTOP. Honor opt-outs promptly.

    7. Privacy Policy — required wording

    Your published Privacy Policy must be linked from the opt-in form and must include a statement to the effect of:

    We will not share or sell your mobile information with third parties for promotional or marketing purposes.

    Opt-in language that shares consent data with third parties is an explicit rejection reason. Link your Terms and Conditions from the opt-in form as well.

    Special cases

    • Marketing age-gated content — if you market anything not legal to consume under a certain age in any US state (e.g. alcohol), your opt-in form or website needs an age gate that asks for date of birth (not a Yes/No), blocking anyone underage. If you won’t promote such content over SMS, state that in the submission instead.
    • Political use case — political consent needs its own separate checkbox (if mixed), you must state whether donations will be solicited, and the Privacy Policy must explicitly state that no mobile information will be sold or shared for promotional/marketing purposes.
    • Charity / fundraising — use the Fundraising use case, add a separate fundraising checkbox mentioning that donations will be solicited, and note the same in your use-case summary.

    Canadian toll-free numbers require double opt-in

    Canadian toll-free numbers must meet all of the above plus collect double opt-in: after the initial opt-in, a confirmation message is sent and the subscriber must reply to affirm they are subscribing.

    Timeline

    Toll-free verification approvals are typically around 5 business days, though this varies with the carrier review queue and how complete your submission is. Unverified toll-free numbers have limited throughput and may be filtered, so verify before you rely on the number. Most rejections can be corrected and resubmitted.

    What to do

    Complete the toll-free verification form in your Sender dashboard with all of the above. If you’re unsure about any field — especially business verifiability or whether your use case is eligible — contact our support team before submitting so we can help you avoid a rejection-and-resubmit delay.


    Australia – Alphanumeric Sender ID Registration

    For countries outside the US and Canada, we use Twilio as our alphanumeric Sender ID provider. Australia has some of the most demanding requirements, because of a new regulatory framework.

    What’s changing

    Australia has introduced the SMS Sender ID Register, overseen by the ACMA (Australian Communications and Media Authority) under the Telecommunications Act 1997. From July 1, 2026, Sender IDs used in messages to Australian recipients need to be approved on this register. Messages sent with a Sender ID that hasn’t been approved may be labelled “Unverified” to recipients.

    Because of this, registering an Australian Sender ID requires more documentation than most countries. Please get in touch with us and have the following prepared so we can guide you through Twilio’s registration and submit on your behalf.

    Step 1 – Download and complete the Letter of Authorization (LOA)

    Download the LOA form and fill out the highlighted (yellow) sections completely — replace each highlighted field with your own information — then send it back to us as a PDF attachment, along with the other documents below.

    Download the LOA form here: LOA form

    Step 2 – Provide a business registration number

    Send us one of the following, matching the entity that owns the Sender ID brand:

    Tip: If you have an ABN, make sure your details on the Australian Business Register (ABR) are up to date — including your authorized representative’s details — as this helps the registration go through faster.

    Step 3 – Provide your use-case details

    We also need the following for the verification:

    • Average SMS messages per month
    • Description of how you’ll use the alphanumeric Sender ID for SMS (your use case)
    • A sample SMS message

    Sender ID format requirements

    The ACMA won’t approve a Sender ID that doesn’t meet its format rules. Your Sender ID must:

    • Only contain characters A–Z, a–z, 0–9, and supported special characters
    • Be at least 2 and no more than 11 characters long
    • Not consist only of numbers
    • Not begin or end with a space or underscore
    • Not contain the word “Unverified”
    • Not contain offensive, deceptive, or misleading words
    • Not consist solely of a term restricted by the ACMA

    Your Sender ID must also match your entity name as it appears on an official business/company name register or trademark register — either exactly, or as a recognizable contraction, abbreviation, acronym, or initialism of that name.

    What to do

    Gather the completed LOA (PDF), your business registration number, and your use-case details, then contact our support team so we can begin the registration and submit it to Twilio for approval on the ACMA register.


    France – Alphanumeric Sender ID Authorization (Twilio)

    France has recently updated its SMS rules, and additional requirements now apply to any SMS traffic delivered to French mobile networks — regardless of where the sender is located. The updated framework (AF2M’s Charte Business Messaging) took effect on March 1, 2026. We use Twilio for alphanumeric Sender IDs in France.

    AF2M (Association Française pour le développement des services et usages Multimédias multi-opérateurs) coordinates messaging across French operators. It is an industry co-regulatory body rather than a government authority, but its rules are contractually binding across operators and aggregators — so compliance is effectively mandatory.

    Sender ID rules

    Under the updated French requirements, your Sender ID must:

    • Contain only Latin alphanumeric characters (A–Z, a–z, 0–9); as of March 1, 2026, special characters are not allowed
    • Not resemble a phone number (it cannot be numeric only)
    • Clearly identify the advertiser, brand, or product
    • Not consist of generic terms (for example “alert”, “appointment”, “shop”) unless the term corresponds to a registered company, brand, or product name and valid supporting documentation can be provided

    Some Sender IDs are restricted or blocked entirely. AF2M maintains two lists: “Strictly Prohibited” (blocked outright — this includes senders that could impersonate institutions, e.g. government or telecom brands) and “Prohibited Unless Authorized” (allowed only with written authorization and operator validation).

    Sending-time restrictions (important for marketing)

    French operators do not allow marketing or promotional traffic on Sundays or French public holidays, or between 10 pm and 8 am. Messages attempted during these periods are queued and delivered afterwards. Plan campaign timing accordingly.

    Opt-out requirement

    All marketing/promotional messages must include a clear opt-out option in the message content. In France this typically takes the form of an appended instruction such as “STOP au 36179” at the end of the message, rather than only “Reply STOP.”

    French mobile numbers can’t be used for A2P

    In France, standard mobile numbers can only be used for person-to-person messaging. All business (A2P) traffic — including marketing and transactional messages such as one-time passwords — must be sent using an Alphanumeric Sender ID, a short code, or an approved technical platform number.

    What to do

    Confirm your Sender ID meets the updated rules, and plan around the sending-time restrictions before you send, so your messages aren’t blocked, filtered, or queued.


    Requirements are set by carriers and regulators and can change. If you have any questions, contact us via live chat or at [email protected] — we’re here to help.

  • Understanding Sales Attribution

    This guide explains how sales attribution works in Sender, how revenue is credited to your campaigns and automations, and how you can interpret your performance data.

    Where to Find This Feature

    In the Sender dashboard, attributed revenue and order data appear automatically in your campaign and automation reports under Ecommerce reports. There is no setup required; once your store is connected, attribution begins working out of the box.

    How Sales Attribution Works

    Sales attribution credits a sale to the marketing message that influenced your customer to make a purchase. When a contact engages with an email or SMS (by opening or clicking it) and then places an order within a defined timeframe, the sale is attributed to that message.

    This gives you a clear picture of which campaigns and automations are actually driving revenue, rather than guessing based on opens and clicks alone.

    Attribution Touch Points

    A sale is only attributed if the contact actively engages with the message. Simply receiving a message does not qualify for attribution.

    For email, attribution is triggered by:

    • An open
    • A click

    For SMS, attribution is triggered by:

    • A delivery (limited window — see below)
    • A click

    Default Attribution Windows

    The attribution window is the timeframe during which a customer must place an order after engaging with a message for the sale to be credited. Sender applies different default windows depending on the channel and the type of engagement:

    Engagement Type Default Window
    Email click 5 days
    Email open 5 days
    SMS click 5 days
    SMS delivery 12 hours

    Example:

    • A customer clicks an email on Monday morning
    • They place an order on Thursday evening
    • The sale is attributed to that email because the order falls within the 5-day window

    If the same customer placed the order the following Tuesday — outside the 5-day window — the sale would not be attributed.

    Last-Touch Attribution

    When a customer engages with multiple messages before placing an order, the sale is attributed to the most recent message they engaged with, as long as it falls within its attribution window.

    Example:

    • A customer clicks an email on Monday
    • The same customer clicks an SMS on Wednesday
    • They place an order on Thursday

    The sale is attributed to the SMS, because it was the most recent touchpoint within its window. This approach helps you identify which messages actually close the sale, so you can focus on high-conversion channels.

    Multiple Orders Within the Same Window

    If a customer places several orders after engaging with a single message, every order that falls within the attribution window is credited to that message.

    Example:

    • A customer clicks an email on Monday
    • They place one order on Tuesday and another on Thursday
    • Both orders are attributed to that email

    Refunds and Cancellations

    Attributed sales reflect orders at the time of purchase. If an order is later refunded or canceled, the original attribution remains in your reports. This keeps historical metrics consistent across time and avoids retroactively changing previously published numbers.

    What Happens Next

    Once your store is connected and you start sending campaigns, attributed sales data begins appearing automatically in your reports.

    Common Issues

    Sales not appearing in reports → Confirm your store is connected to Sender under Account Settings → Connected stores, and verify that the customer who placed the order exists as a contact in your subscriber list. Sales can only be attributed to contacts known to your Sender account.

    Order placed but not attributed → Check whether the contact actually opened or clicked the message before placing the order. Receiving a message alone does not trigger attribution. Also, confirm the order was placed within the relevant attribution window (5 days for most engagement types, 12 hours for SMS delivery).

    Revenue numbers differ from your store platform → Sender uses engagement-based attribution with defined windows, while your store platform may attribute sales differently (for example, by direct referral, last-click, or UTM tag). Differences between the two systems are expected and both can be accurate — they simply measure different things.

    Discount code used but no attribution recorded → If a customer used a code from an email without opening or clicking the email beforehand, no attribution is recorded. The customer may have received the code from another source, forwarded the email, or had the tracking pixel blocked by their email client (e.g., Apple Mail Privacy Protection without a click).

    FAQs

    What’s the difference between sales attribution and direct revenue tracking? Sales attribution credits a sale to the message a customer engaged with before purchasing, even if the purchase happened in a separate browser session or from a different device. Direct revenue tracking typically only counts purchases made by clicking a link in the email itself. Attribution gives you a fuller picture of your marketing impact.

    Do opens from Apple Mail Privacy Protection count for attribution? Yes. Apple Mail Privacy Protection automatically pre-loads emails, which Sender records as an open. These opens count toward attribution, so if a contact using Apple Mail later places an order within the attribution window, the sale will be credited. To focus on stronger engagement signals, prioritize clicks over opens when analyzing campaign performance.

    Are refunds and cancellations included in attributed sales? Yes. Attributed sales are based on placed orders at the time of purchase. If an order is later refunded or canceled, the original attribution is preserved in your reports to maintain consistent metrics across time.

    What happens if a customer engages with both an email and an SMS before purchasing? The sale is attributed to the most recent message the customer engaged with (last-touch attribution), as long as it falls within that message’s attribution window.

    Why is a sale attributed to a contact who didn’t place the order? This can happen when one contact engages with the message (for example, a spouse or family member who shares an account), but a different contact completes the order using the same cart or discount code. Sender attributes the sale to the contact who actually engaged with the message, since their engagement is what influenced the purchase.

    Can I change the default attribution windows? The current defaults are 5 days for email clicks, email opens, and SMS clicks, and 12 hours for SMS deliveries.


    If you got stuck on a specific task or can’t find a way to execute a particular job, contact our support team via LiveChat or [email protected] — we’re here to help 24/7.

  • Custom events

    Custom Events let you track any specific action a subscriber takes on your site or in your app — and instantly use it as a trigger for automated workflows. Whether someone visits a pricing page, completes an onboarding step, or performs any other action you care about, Custom Events capture it and make it actionable.

    What are Custom Events?


    A Custom Event is a tracked subscriber action that Sender records in real time. Once an event is captured, it:

    • Appears in the subscriber’s activity log
    • Shows up in a dedicated event dashboard with charts and an activity feed
    • Becomes available as a trigger in Automations

    Think of each Custom Event as a container — you define what it represents, and every time that action happens, Sender logs it and can kick off a workflow automatically.

    Two ways Custom Events work

    1. E-commerce stores (no developer needed)

    If your store is connected to Sender via one of our native integrations (WooCommerce, Shopify, etc.), common e-commerce events are synced automatically. You’ll find pre-defined events ready to use — no setup required on your end.

    Examples of auto-synced events:

    • Product viewed
    • Cart abandoned
    • Order placed
    • Checkout started

    2. Fully custom events (developer required)

    If you want to track an action that isn’t covered by a standard integration — like a specific in-app behavior, a custom funnel step, or a non-standard purchase flow — you can create your own event.

    Here’s how it works:

    1. You create an “empty” event container in Sender (just a name and description)
    2. Your developer connects it via the Sender API
    3. Every time that action occurs, it fires into Sender and gets logged

    This gives you full flexibility to track virtually any behavior, no matter how specific.

    Creating a Custom Event

    1. Go to Custom events in the left-hand sidebar
    2. Click New custom event (top right)
    3. Enter an Event name — use something clear and consistent, like checkout_started or plan_upgraded
    4. Add a Description to explain what this event tracks
    5. Click Create

    Your new event will appear in the Custom Events list immediately. From there, share the event name with your developer so they can connect it via API.

    Note: Event names are used in API calls, so keep them lowercase, without spaces, and descriptive. Once set, the name can’t be changed.

    Viewing event activity

    Each Custom Event has its own mini-dashboard. Click View next to any event to open it.

    You’ll find three tabs:

    • Chart — See event volume over time (hourly, daily, weekly, or monthly). Useful for spotting trends or confirming your integration is working correctly.
    • Activity feed — A real-time log of every time the event was triggered, including the subscriber profile and timestamp.
    • Best people — See which subscribers are triggering this event most frequently.

    Event activity also shows up directly on each Subscriber’s profile under Subscriber activity, along with any event payload data (such as the URL, campaign ID, or other parameters passed with the event).

    Using Custom Events in Automations

    Once a Custom Event is set up and receiving data, you can use it as a starting trigger in any automation workflow.

    1. Open Automations and create a new workflow (or edit an existing one)
    2. Set the starting trigger to Custom Event
    3. Select the specific event you want to use
    4. Optionally, add conditions based on the event’s payload parameters — for example, only trigger the automation if url contains /checkout or campaign_type equals a specific value
    5. Build out the rest of your workflow as usual

    This makes it possible to build very precise automations — for example, sending a follow-up email only to subscribers who visited the pricing page more than twice, or who triggered a specific in-app action.

    Event payload data

    When your developer sends a Custom Event via the API, they can include additional parameters (payload data) alongside it. This might look like:

    
    {
      "campaign_id": 0,
      "campaign_type": "email",
      "url": "https://yoursite.com/checkout/"
      "site_id": 1
    }

    These parameters are stored with each event occurrence and are visible in the subscriber’s activity log. They can also be used as conditions in your automation trigger to make workflows more targeted.

    Frequently asked questions

    Do I need a developer to use Custom Events? Not always. If your store is connected via a native integration, standard e-commerce events sync automatically. You only need a developer if you want to track non-standard, fully custom actions via the API.

    Can I use Custom Events in segments? Yes. Once events are flowing in, you can build segments based on subscribers who have (or haven’t) triggered specific events — making it easy to target audiences based on real behavior.

    Where can I find the API documentation? Head to Account settings → API access tokens to get your API credentials. Full API documentation is available at api.sender.net.

    Is there a limit to how many Custom Events I can create? The number of Custom Events available is currently unlimited.


    If you got stuck on a specific task or can’t find a way to execute a particular job, contact our support team via LiveChat or [email protected] – we’re here to help 24/7.