Campañas
naios-campanasv0.9.0One-to-one prospecting with sequences sent from your own mailbox, email campaigns to consent-based lists, and WhatsApp reminders N days before a date on the record. One engine, three faces, and the suppression list always wins.
Description
Campaigns turns CRM segments into real contact. Sequences: personal one-to-one emails sent from your NAiOS Mail account, with hourly and daily quotas, working hours, account warm-up, human approval of every draft, and automatic stop as soon as the recipient replies (the reply goes into the CRM record and the contact becomes a lead). Campaigns: bulk sends only to lists with provable consent, templates with your branding, your own SMTP or Brevo/Resend with a “Test” button, bounce and complaint webhooks, one-click unsubscribe in every email, and per-campaign metrics. What they share: the per-workspace suppression list, which always wins; the consent declared in the CRM, which decides which channel opens; and a copilot that drafts but never sends.
Features (15)
Ask how prospecting is going, which replies are unanswered, or how much quota is left. It prepares starts and pauses as proposals you apply with one click. Daily briefing and daily summary in Agents
Alerts you without you looking at the screen: unanswered replies, drafts waiting, bounces, mailbox quota, stopped sequences, and mailboxes with errors. It only alerts: it never sends or pauses on its own
A board with each CRM segment: eligible contacts, the sequence working it, progress, and live replies. “Start” and “Pause” manually, segment by segment
Email steps, waits, conditions, and tasks. They are sent from your NAiOS Mail account with hourly and daily quotas, working hours, and warm-up
Every email starts as a draft (written with AI if you want) and only goes out when you approve it, one by one or in batches. The AI never sends
As soon as someone answers, the sequence stops, the reply goes into the CRM record, and the contact becomes a lead
Unsubscribes, bounces, and complaints go to a per-workspace list that no send can skip. It syncs with the CRM's “do not contact” flag
Static lists (paste or import, declaring the base) or dynamic lists (CRM segment), block-based templates with your branding, test sends, simulation, scheduling, and per-campaign metrics
Sending through your own mail account or a provider, with keys encrypted per workspace, a “Test” button, bounce/complaint/open/click webhooks, and a domain gate (SPF/DMARC)
Connect a form: whoever fills it in confirms by email and joins as an opt-in with provable origin
The consent declared in the CRM decides: express consent or customer opens campaigns; professional contact gets one-to-one sequences only; none means nothing
Opt-out link and List-Unsubscribe header in every email, with no login and no friction, and one-click opt-out (RFC 8058)
Sent, replied, meetings, leads, and customers per sequence and segment, with export to Office
Tailored opening line that reads the company's website and your brand voice from Knowledge; subject-line A/B testing in campaigns; WhatsApp step only after a reply; weekly summary for agents
A WhatsApp message N days before a date on the CRM record (review, expiry, renewal), once or every year, sent through your OmniChat channel. Only to customers or opt-ins, with review or automatic sending, preview, history, and never two sends for the same date
Changelog
- Automatic bounces: when the mailbox receives a bounce notice, Campaigns reads it, identifies the address, and acts. Permanent bounce (mailbox or domain doesn't exist): the address goes to the suppression list, the enrollment ends as bounced, the CRM contact is set to “do not contact,” and the creator of the sequence is notified. Temporary bounce (mailbox full): it is recorded, and a second one within 30 days is treated as permanent.
- Before sending, the recipient's domain is checked for mail servers (MX records): a typo in the domain no longer generates a send or a bounce; the address is suppressed.
- “Resolve pending bounces” button via API for notices left in manual review.
- Previously, bounce notices were left as “suspicious” without action, and follow-ups kept going out to dead addresses.
- Notification to the creator of the sequence for each permanent bounce, with the address and the reason given by the server.