NetSendo Logo
v2.0.5- IMAP Bounce Mailbox Monitor:

Open-source Email & SMS marketing you host yourself

Full control over data, ready-made integrations, AI for content creation, automation and webhooks. Set up in Docker in 5 minutes.

NetSendo Dashboard
NEW • AI Module

AI Campaign Architect

Strategic Email + SMS campaign planner that creates your plan, logic, and forecasts — before you send your first message.

4-Step Wizard

Business context → Audience → AI Strategy → Forecast & Export

Campaign Blueprint

Message timeline, goals (education/sales/reminder) and IF/THEN logic

ROI Forecast

Industry benchmarks + sliders that calculate ROI in real-time

Recommended message count and channels (Email/SMS)
Schedule and timing optimization
Segmentation (leads vs customers, active vs inactive)
Behavior logic (opened / clicked / purchased)
AI Campaign Architect Dashboard
New tables: campaign_plans, campaign_plan_steps
Export: Drafts / Scheduled
12 languages for generation
PL/EN translations

Why NetSendo?

Built for developers who want control, privacy, and flexibility without sacrificing modern features.

Campaign Architect
AI-powered strategic planner. Design campaign flow, segments, IF/THEN logic, and forecast ROI.
Self-hosted / Docker
Keep your data private. Deploy on your own servers with a simple Docker Compose setup.
Email & SMS Marketing
Unified platform for both channels. Send campaigns, newsletters, and transactional messages.
AI Assistant
Generate subject lines and email content with AI. Supports OpenAI, Anthropic, and localized models.
Webhooks & API
Real-time event triggers. Build custom automations with comprehensive API access.
Open Source
Transparent development, source-available. Community-driven features with Silver & Gold plans.

How it works

01

Deploy in Docker

Run docker compose up. NetSendo starts in seconds with Postgres and Redis included.

02

Add Mailbox

Connect your SMTP server, Gmail, or API provider like SendGrid/Mailgun.

03

Plan & Launch

Design campaign strategy in Campaign Architect, export to campaigns and launch.

AI-Powered Content Creation

Let AI write your
campaigns in seconds

Stop staring at a blank screen. Netsendo's AI assistant can generate engaging subject lines, write full email body content, and even take voice dictation to craft your message.

Multi-Model Support

Use OpenAI GPT-4o, Anthropic Claude 3.5, or Google Gemini. Your API key, your rules.

Voice Dictation

Just speak your ideas. The AI will transcribe and format them into a professional newsletter.

AI Content Creation
┌─────────────────┐      STDIO       ┌─────────────────┐
│  Claude/Cursor  │ ◄────────────► │   MCP Server    │
│   (AI Client)   │                 │  (Docker/npx)   │
└─────────────────┘                 └────────┬────────┘
                                             │
                                        HTTP/S
                                             │
                                    ┌────────▼────────┐
                                    │    NetSendo     │
                                    │  (Your inst.)   │
                                    └─────────────────┘

Supported AI Clients

🤖Claude Desktop
💻Cursor IDE
📝VS Code

Example query

"Show my mailing lists and add a new subscriber jan@example.com to Newsletter"

AI Assistant Integration

Manage NetSendo with
natural language

Connect Claude, Cursor, or VS Code to your NetSendo instance. Ask questions, manage subscribers, and send messages — all through conversation with AI.

Natural language

Ask 'How many subscribers do I have?' or 'Send an email to John'.

No code required

No need to know the API — AI handles it for you.

Real-time operations

Direct operations on your NetSendo instance.

See MCP Documentation
Try it yourself

Experience NetSendo Live

Don't just take our word for it. Log in to our live demo instance and explore the platform's capabilities firsthand.

This is a public demo instance. Data is reset every 24 hours.

demo.netsendo.com
demo@netsendo.com
READ ONLY
demo1234
••••••••

Connect with your tools

NetSendo plays nicely with the tools you already use. Orchestrate workflows with n8n and connect any AI model.

Explore n8n Integration
Calendly
Booking automation
Zoom
Video conferencing
Google Calendar
Calendar synchronization
Google Meet
Video conferencing
MCP
AI assistant integration
n8n
Workflow automation
Stripe
Payment processing
Polar
Developer-first payments
WooCommerce
E-commerce integration
WordPress
Forms & content gating
Shopify
E-commerce integration
SendGrid
Email API
Twilio
SMS Provider
SMSAPI
SMS Provider
OpenAI
AI generation

Latest Updates

View all releases
v2.0.5Latest
Release Notes
  • IMAP Bounce Mailbox Monitor:
  • Automatic Bounce Detection: New system that monitors a dedicated IMAP mailbox for bounce-back emails (DSN — Delivery Status Notifications) and automatically marks subscribers as bounced. Designed for users sending via custom SMTP providers where webhook-based bounce handling is not available.
  • BounceMailboxService: Connects to IMAP mailboxes using webklex/php-imap (pure PHP, no ext-imap required), parses RFC 3464 DSN messages, classifies bounces as hard (5.1.x, 5.2.x, 5.5.x) or soft (4.x.x), and processes them via the shared BounceProcessingService.
  • BounceProcessingService: Extracted shared bounce processing logic from BounceController into a reusable service. Handles marking subscribers as bounced (hard bounces or soft bounces exceeding threshold) and dispatching EmailBounced events. Used by webhooks, IMAP scanner, and inline SMTP detection.
  • Inline SMTP Error Detection: SendEmailJob now catches synchronous SMTP rejections (5xx hard bounces, 4xx soft bounces) during sending and processes them immediately via BounceProcessingService, without waiting for the IMAP scan.
  • Return-Path Header: When bounce monitoring is enabled, outgoing emails automatically include a Return-Path header pointing to the configured bounce mailbox, ensuring DSN replies are routed correctly. Supported in both SmtpProvider and NmiProvider.
Full changelog
v2.0.4Previous
Release Notes
  • Pixel — Double Page View Counting (WordPress Plugin):
  • Removed netsendo_wp_track_page_view() function and its wp_footer hook from the WordPress plugin. The NetSendo Pixel JavaScript already tracks page views automatically on initialization — the redundant PHP hook was causing every visit to be counted twice.
  • Pixel — Engagement Events Misreported as Page Views:
  • Fixed trackTimeOnPage() sending page_view event type instead of a dedicated engagement event. This was further inflating page view counts with time-on-page/scroll-depth data. Renamed to trackEngagement() and changed event type to engagement.
  • Autoresponder Queue — Missing SubscriberSignedUp Events:
  • Fixed autoresponder messages not being queued for subscribers added to lists through automations, tracked link clicks, webinar registration, subscriber preferences, CardIntel, form co-registration, resubscribe links, and CSV import. Root cause: these 10 code paths added subscribers to lists without dispatching the SubscriberSignedUp event, which is the sole trigger forCreateAutoresponderQueueEntries listener. All paths now correctly dispatch the event with unique source labels for traceability.
Full changelog
v2.0.3Previous
Release Notes
  • Brain — Full Automation Management (SegmentationAgent):
  • 5 New Executors: create_automation (creates AutomationRule with trigger, actions, conditions, rate limiting), update_automation (modifies any fields), toggle_automation (enable/disable), delete_automation (with system rule protection), list_automations (full list with stats and execution counts).
  • Enriched AI Context: Plan prompt now includes all 30+ available trigger events, 18 action types, 15+ condition types, and the user's existing automations — enabling AI to make informed automation decisions.
  • Validation: Trigger event validation, empty actions check, system rule deletion protection.
  • Brain — A/B Test Management (CampaignAgent):
  • 3 New Executors: create_ab_test (creates AbTest + AbTestVariant records with type, sample %, auto-winner, up to 5 variants), check_ab_results (displays per-variant open rate, click rate, CTOR with winner determination), list_ab_tests (lists all tests with status, type, metric, and winner).
Full changelog

Frequently Asked Questions