Boom Media — Integration Guide
SureContact & Ottokit
Verified 29 Jul 2026

How this actually works across the ecosystem

Measured by reading every app’s source, not from memory. Two rails doing two different jobs — and the distinction between them is the thing to get right.

RailJobWhere it runs today
ResendTransactional email — sending mail to anyone15 of 16 apps
SureContactBoom’s own CRM — people who might become Boom customers2 places: boommedia.us and BOO

Confirmed — Resend already handles transactional for everything

All 13 SaaS apps have their own src/lib/email.ts and send through Resend, as do BOO and bm-portal. There is no second provider to consolidate and nothing to migrate — the rail already is what you wanted it to be.

One outlier — boommedia.us does not use Resend

bm-vercel sends through nodemailer and a Gmail account, not Resend — the only app in the estate that does. So the site most likely to email a prospect is the one with the weakest deliverability and no delivery logs.

Gmail SMTP also carries send limits and throttles silently. Moving it to Resend is contained, and it would bring the shared branded template along with it.

The SaaS apps do not feed SureContact — and that is correct

The obvious reading is that this is a gap to close. It is not. A lead captured by a client’s Replyee bot belongs to the client, not to Boom. Pushing it into Boom’s CRM would mix your prospects with your clients’ customers and leave you holding their contact data with no basis for it.

The question that settles every case: is this a potential Boom customer, or the client’s customer? Only the first belongs in SureContact.

SurfaceWhose lead?Goes to
boommedia.us contact / audit / careersBoom’sSureContact
Replyee chat on boommedia.usBoom’sSureContact (wired 29 Jul)
BOO signup / checkout / contactBoom’s — a restaurant becoming a customerSureContact
Replyee chat on a client siteThe client’sClient portal webhook
A diner ordering food on BOOThe restaurant’sStays in BOO
Localey reviews, Rewardee membersThe client’sStays in the app
Restaurant versus service industry makes no difference here. The split is by whose customer it is, not by vertical. A restaurant owner filling in the BOO signup and a law firm filling in the boommedia.us contact form are both Boom prospects; a diner and a legal client are both the client’s.
So: confirmed, with one fix. Resend already covers transactional across the estate, and SureContact is correctly scoped — it does not need wiring into the SaaS apps. The one change worth making is moving boommedia.us off Gmail SMTP onto Resend.
Lifetime Tools — Make Them Earn Their Keep

Get maximum ROI from
SureContact & Ottokit

You own both lifetime deals. This guide maps out every high-value use case across your 10 SaaS products and Boom Online Ordering — so nothing sits idle.

SureContact — Email & CRM Ottokit — Automation Both = Zero Monthly Cost
SC

SureContact

surecontact.com — Email Marketing & CRM

SureContact is a full-featured email marketing platform and CRM. It handles contact lists, broadcast campaigns, multi-step automation sequences, and revenue tracking. It was built with WordPress in mind but connects to any app via SMTP, webhooks, and Ottokit.

  • Unlimited email sends — no throttling or per-send fees
  • Visual automation builder — welcome flows, drip sequences, win-back campaigns
  • A/B testing on subject lines and send times
  • Gradual Send — ramp up volume and auto-pause on bounce spikes
  • Revenue attribution — track which email drove which purchase
  • Webhook URLs per SMTP config — receive delivery, bounce, and spam events
  • CRM — tag contacts, segment by product, track history
  • SMTP relay — send through SendGrid, SES, Mailgun, or any provider
Lifetime Deal: Unlimited contacts & sends — no recurring cost ever
OK

Ottokit

ottokit.com — No-Code Automation (formerly SureTriggers)

Ottokit is a Zapier alternative with 1,000+ integrations and a key advantage: it's MCP-native, meaning Claude (this AI) can directly trigger Ottokit automations in real time. Events in your Next.js apps fire webhooks → Ottokit routes them to SureContact, Slack, Google Sheets, Stripe, and more — no code needed.

  • 1,000+ integrations — Stripe, Supabase, Google Sheets, Slack, Gmail, and more
  • Webhook trigger — any app fires a webhook, Ottokit acts on it
  • MCP server — Claude can execute Ottokit actions directly in this workspace
  • execute_integration_action — Claude runs one-off actions without full automations
  • Visual drag-and-drop workflow builder — no code required
  • Multi-step workflows — filter, delay, branch, transform data
  • Native SureContact integration — sync contacts, trigger sequences
  • Native Stripe integration — react to subscription events instantly
Lifetime Deal: 5,000–10,000 tasks/month — one-time payment
How They Work Together

SureContact handles the email side (lists, campaigns, sequences). Ottokit is the glue that connects your apps to SureContact — and to everything else. The power is in the combination: events in your Next.js apps trigger Ottokit workflows that update SureContact, log data, and notify your team — all without you touching a line of code.

User Event
Signup / Payment / Order
Your App
Next.js Webhook POST
Ottokit
Routes & Transforms
SureContact
Adds Contact / Triggers Sequence
Stripe Event
New Sub / Churn
Ottokit
Conditional Logic
SureContact
Tag / Move to List
+
Google Sheets
Revenue Log
Claude can trigger this now. Because Ottokit's MCP server is connected to this workspace, Claude can execute any Ottokit automation or one-off action in real time — add a contact to SureContact, fire a workflow, log a row in Sheets — just by asking.
Best Use Cases by Product
Every product mapped to specific email and automation wins — prioritized by impact.
DA
Dashee — Client Dashboard
dashee.online
Client management SaaS for attorneys, bail bond agencies, mental health practices, and moving companies. High-value clients with complex workflows — perfect for both email sequences and automation.
Top Use Cases
  • Welcome Sequence (SureContact) — 5-email onboarding flow triggered on signup: welcome → first job setup → invite team → billing tips → success story
  • Invoice Follow-up (Ottokit) — 7 days after invoice created, Ottokit fires SureContact reminder email if invoice is still unpaid
  • Upgrade Nudge (SureContact) — Trigger email sequence to free/starter users who hit plan limits
  • Churn Recovery (Ottokit + SureContact) — Stripe cancel event → Ottokit → SureContact win-back sequence with discount code
  • Revenue Log (Ottokit) — Stripe payment → Google Sheet row with plan, amount, industry type
SureContact — Sequences Ottokit — Stripe Trigger High Priority
BO
Boom Online Ordering
Parent company product
Restaurant online ordering system. High transaction volume, time-sensitive — ideal for Ottokit automation. Every new order is an automation trigger.
Top Use Cases
  • Order Confirmation Email (SureContact) — Transactional email via SureContact SMTP: replaces Resend for order confirmations
  • Order → Kitchen Notification (Ottokit) — New order → Ottokit → Slack/SMS alert to kitchen staff with order details
  • Order → Google Sheets Log (Ottokit) — Every order logged with timestamp, items, total — daily revenue tracking
  • New Restaurant Client (Ottokit + SureContact) — When a restaurant signs up → add to SureContact "Restaurant Clients" list → trigger onboarding sequence
  • Monthly Order Summary (SureContact) — Auto-pull from Sheets → send monthly performance email to restaurant owners
  • Inactive Client Re-engagement (SureContact) — No orders in 30 days → SureContact sends check-in email
Ottokit — Order Trigger SureContact — SMTP Highest Priority
AD
Addee — AI Ad Creatives
addee.online
AI-generated ad creatives for agencies. Creative users who need inspiration — great for nurture content and tips emails.
  • Creative Tip Drip (SureContact) — Weekly email: "5 ad formats getting 3x CTR this month" — positions Addee as the expert
  • Ad Generated Milestone (Ottokit) — User hits 10/50/100 ads created → Ottokit fires SureContact milestone email with upgrade CTA
  • Client Report Delivery (SureContact) — When a white-label report is ready → SureContact sends branded email to the agency's client
  • Trial-to-Paid Sequence (SureContact) — 3-email sequence for users approaching trial end
SureContact — Drip Ottokit — Milestones
QR
QRcodee — Dynamic QR Codes
qrcodee.online
Dynamic QR code generator with analytics. Usage-based milestones are powerful triggers for both engagement and upsell.
  • Scan Milestone Alert (Ottokit) — QR code reaches 100/500/1000 scans → Ottokit sends congratulations email via SureContact
  • Weekly Scan Report (SureContact) — Automated weekly summary: your top-performing QR codes this week
  • QR Expiry Warning (Ottokit) — If a free-plan user's link would expire (won't on paid) → trigger upgrade email 7 days out
  • Agency Client Reports (Ottokit) — When a PDF report is generated → email it directly to the agency's client via SureContact
Ottokit — Scan Events SureContact — Reports
SV
Servvee — Restaurant Menu SaaS
servvee.online
Digital menu boards and promo management for restaurants. Time-sensitive promos = great automation hooks.
  • Promo Go-Live Alert (Ottokit) — When a promo is activated → notify restaurant owner via email that it's now live on their displays
  • Canva Design Published (Ottokit) — Design pushed to display → confirmation email with preview link
  • Holiday Menu Reminder (SureContact) — Seasonal sequence: "🎄 Christmas menus — update yours now" sent 2 weeks before major holidays
  • New Client Onboarding (SureContact) — Welcome sequence: display setup guide, first design tips, QR code integration how-to
Ottokit — Promo Events SureContact — Seasonal
RP
Replyee — AI Chatbot Builder
replyee.online
RAG-powered chatbot builder for websites. High content-creation users — nurture them with best practices content.
  • Bot Trained Confirmation (Ottokit) — User adds content source → Ottokit fires "Your bot is ready" email via SureContact
  • Conversation Volume Alert (Ottokit) — Bot hits 500 conversations → upsell email for unlimited plan
  • Weekly Bot Performance (SureContact) — Automated: top questions your bot answered this week, unanswered questions to review
  • Content Update Nudge (SureContact) — No new content added in 14 days → reminder to refresh the knowledge base
Ottokit — Content Events SureContact — Nurture
RK
Rankee — SEO Audit Tool
rankee.online
AI-powered SEO audit and keyword tracking. Report delivery and ranking changes are natural email moments.
  • Audit Complete Notification (Ottokit) — SEO audit finishes → Ottokit fires SureContact email with link to results
  • Weekly Ranking Change Report (SureContact) — Automated weekly email: keywords that moved up/down this week
  • Competitor Alert (Ottokit) — Competitor overtakes tracked keyword → instant email notification
  • New Keyword Opportunity (SureContact) — Monthly: "3 keywords your competitors rank for that you don't" — high-value content
Ottokit — Audit Events SureContact — Reports
AP
Approvee — Client Review & Approval
aprovee.online
Visual feedback and approval tool for web projects. Every comment and approval is a real-time event that benefits from instant notification.
  • New Comment Notification (Ottokit) — Client leaves annotation → Ottokit instantly emails the agency/designer via SureContact
  • Project Approved (Ottokit + SureContact) — Client hits "Approve" → congratulations email to agency + log to Sheets
  • Review Link Expiry Warning (SureContact) — Project link expires in 3 days → reminder email to client to complete review
  • Stale Project Nudge (SureContact) — No client activity in 7 days → automated "Did you get a chance to review?" email
Ottokit — Comment Events SureContact — Reminders
SG
Signnee — E-Signature Platform
signnee.online
White-label DocuSign replacement. Document signature events are legally important — every status change needs a notification trail.
  • Document Sent Confirmation (SureContact) — Replace Resend for "Your document is ready to sign" transactional emails
  • Signed Confirmation (Ottokit) — DocuSeal webhook → Ottokit → SureContact sends completion email to both parties + logs to Sheets
  • Unsigned Reminder (SureContact) — Auto-send "Document waiting for your signature" reminder at 24hr and 72hr
  • Monthly Usage Summary (SureContact) — Docs signed this month, remaining quota, upgrade prompt if near limit
SureContact — Transactional Ottokit — DocuSeal Webhook
DI
Displayee — Digital Signage
displayee.online
Digital signage platform for managing screen content and playlists. Screen health and content scheduling are key automation areas.
  • Screen Offline Alert (Ottokit) — Screen goes offline → Ottokit fires email alert to owner within minutes
  • Content Published Confirmation (SureContact) — Playlist goes live → email confirmation with preview and screen list
  • Client Screen Report (Ottokit) — Weekly → Ottokit aggregates screen data → SureContact sends client-facing uptime report
  • Scheduled Content Reminder (SureContact) — "Your holiday content starts in 3 days — review it now" pre-schedule nudge
Ottokit — Screen Events SureContact — Reports
BL
Bloggy — AI Blog Platform
bloggy.online
AI-powered blogging and content calendar tool. Content creation events drive a natural publishing lifecycle to automate.
  • Post Published Alert (Ottokit) — Bloggy publishes a post → Ottokit fires a "New post live" notification email via SureContact
  • Client Monthly Digest (SureContact) — Auto-compile and send each client's monthly "content performance" email
  • Autoblog Queue Empty Alert (Ottokit) — Topic queue runs low → email prompt to add more topics
  • WordPress Publish Confirmation (Ottokit) — Post pushed to WordPress → SureContact sends confirmation with live URL
Ottokit — Publish Events SureContact — Digests
Full Automation Matrix
Every trigger → action pair, sorted by priority. Build these in Ottokit and connect to SureContact.
App Trigger Event Action(s) Tools Priority
Boom Ordering New order placed Send order confirmation email to customer
Log order to Google Sheets
Slack alert to kitchen staff
OttokitSureContact ★ Critical
All Apps New user signup Add to SureContact list (by product)
Trigger onboarding email sequence
Slack notification to you
OttokitSureContact ★ Critical
All Apps Stripe — subscription cancelled Move contact to "Churned" list in SureContact
Trigger 3-email win-back sequence
Log churn with reason to Sheets
OttokitSureContact ★ Critical
All Apps Stripe — plan upgraded Move to new plan list in SureContact
Send "Welcome to [Plan]" email
Log upgrade event to Sheets
OttokitSureContact ★ Critical
Signnee Document signed Email both parties completion confirmation
Log to Sheets with timestamp
Update Supabase doc status
OttokitSureContact ★ Critical
Dashee Invoice unpaid after 7 days Trigger payment reminder email via SureContact OttokitSureContact Medium
Aprovee Client leaves annotation Instant email to agency designer with comment text and link OttokitSureContact Medium
Aprovee Project approved by client Congratulations email to agency
Log approval to Sheets
Optional: Slack notification
OttokitSureContact Medium
QRcodee QR code hits 1,000 scans Send milestone congratulations email with analytics summary OttokitSureContact Medium
Rankee SEO audit completes Email user with link to results and top 3 recommendations OttokitSureContact Medium
Replyee Bot hits conversation limit Upgrade prompt email — "You've had 500 conversations this month" OttokitSureContact Medium
All Apps User inactive 14 days SureContact re-engagement sequence — 2 emails, if no open → tag as at-risk SureContact Medium
Boom Ordering Restaurant no orders in 30 days SureContact automated check-in + tips email to restaurant owner SureContact Low
Displayee Screen goes offline Immediate email alert + optional SMS via Ottokit → Twilio OttokitSureContact Low
Bloggy Post published to WordPress Confirmation email to agency with live URL
Optional: log to content calendar Sheets
OttokitSureContact Low
SureContact vs Resend — When to Use Which
You don't have to replace Resend everywhere — use the right tool for the right job.
Email Type SureContact Resend Recommendation
Password reset / magic link Via Supabase SMTP config Native — works out of box Keep Resend — Supabase auth emails are already wired
Order confirmation Excellent — SMTP or API Works fine Switch to SureContact — get revenue tracking + no cost
Welcome email (1 email) Yes — with SureContact list Simple with Resend Use SureContact — user lands in your CRM automatically
Onboarding sequence (5+ emails) Built for this Requires custom code SureContact — no contest
Win-back / churn campaigns Visual builder, conditions Not designed for this SureContact — no contest
Newsletter / broadcast Built for this Not a broadcast tool SureContact — no contest
Document signed / app alert Via Ottokit trigger Direct API call Either — use Ottokit → SureContact to avoid code per product
Webhook-triggered notification Via Ottokit Requires custom API route Ottokit → SureContact — no code needed
Practical split: Keep Resend for Supabase auth emails (password reset, magic link, invite) since Supabase already points to it. Switch everything else — especially triggered notifications and marketing sequences — to Ottokit → SureContact. Result: lower cost, better CRM data, and zero new monthly fees.
How to Set It Up
Step-by-step for both tools — start with the highest-impact automations first.

SureContact Setup

Configure lists, SMTP, and your first automation sequence

1
Create Contact Lists by Product In SureContact dashboard, create separate lists: "Dashee Users", "QRcodee Users", "Boom Ordering Restaurants", etc. This keeps your CRM clean and allows product-specific campaigns.
2
Configure SMTP Sending Provider Go to Campaigns → SMTP. Add your preferred provider (Resend, SendGrid, or AWS SES). SureContact uses your provider's infrastructure for deliverability — you keep your existing domain reputation.
3
Build Your First Automation: New User Welcome Create an automation: Trigger = "Contact added to [Product] list" → Email 1 (Welcome, Day 0) → Email 2 (Tips, Day 3) → Email 3 (Feature spotlight, Day 7) → Email 4 (Upgrade prompt, Day 14).
4
Build Win-Back Automation Create a second automation: Trigger = "Contact added to Churned list" → Wait 1 day → Email "We miss you" → Wait 3 days → Email "Here's what you're missing" with discount code → Wait 7 days → Final offer email.
5
Copy the Webhook URL per List Each SureContact list has a webhook URL. Copy the URL for each product list — you'll paste these into Ottokit as the final action step in each automation.

Ottokit Setup

Connect your apps to SureContact and build your first trigger

1
Connect Stripe in Ottokit In Ottokit → Connections, add your Stripe account. This single connection powers all Stripe-triggered automations across every product — new subscriptions, upgrades, cancellations, and failed payments.
2
Build: Stripe Cancel → SureContact Win-Back Trigger: Stripe "Subscription Cancelled" → Filter by product (Stripe metadata) → Action: POST to SureContact webhook URL for that product's Churned list → Action: Add row to Google Sheets churn log.
3
Add Webhook Trigger to Your Apps In each Next.js app, add a call to your Ottokit webhook URL after key events (signup, key action, upgrade). See code examples below. Ottokit gives you a unique webhook URL per automation.
4
Build: New Signup → Add to SureContact Trigger: Webhook (from your app's signup handler) → Action: SureContact "Add Contact to List" → Set list dynamically from the webhook payload's product field.
5
Use Claude to Trigger Ottokit Directly Because Ottokit's MCP is connected to this Claude workspace, you can ask Claude to execute any Ottokit action right now — add a contact, fire an automation, log a row — without writing any code.
Code Snippets — Drop Into Any App
Paste these into your Next.js API routes to start firing events to Ottokit.
1. Fire an Ottokit webhook from any Next.js route (TypeScript)
// lib/ottokit.ts — call this anywhere in your server code
const OTTOKIT_WEBHOOK = process.env.OTTOKIT_WEBHOOK_URL

export async function fireOttokit(
  event: 'user.signup' | 'user.cancelled' | 'order.placed' | string,
  payload: Record<string, unknown>
) {
  if (!OTTOKIT_WEBHOOK) return
  await fetch(OTTOKIT_WEBHOOK, {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ event, ...payload, timestamp: new Date().toISOString() }),
  })
}
2. Call it from your signup API route
// app/api/auth/signup/route.ts
import { fireOttokit } from '@/lib/ottokit'

export async function POST(req: Request) {
  const { email, name } = await req.json()

  // ... your existing signup logic ...

  // Fire to Ottokit → adds to SureContact list → triggers welcome sequence
  await fireOttokit('user.signup', {
    email,
    name,
    product: 'dashee',           // Ottokit uses this to route to the right list
    plan:    'free',
  })

  return Response.json({ success: true })
}
3. Stripe webhook → Ottokit (handles churn + upgrades)
// app/api/webhooks/stripe/route.ts  (add alongside your existing Stripe handler)
import { fireOttokit } from '@/lib/ottokit'

const EVENT_MAP: Record<string, string> = {
  'customer.subscription.deleted': 'user.cancelled',
  'customer.subscription.updated': 'user.upgraded',
  'invoice.payment_failed':        'payment.failed',
}

// Inside your existing Stripe webhook handler, add:
const ottokitEvent = EVENT_MAP[stripeEvent.type]
if (ottokitEvent) {
  await fireOttokit(ottokitEvent, {
    email:     customer.email,
    plan:      subscription.items.data[0].price.nickname,
    product:   subscription.metadata?.product ?? 'unknown',
    stripeId:  customer.id,
  })
}
4. .env.local — add to every app
# One Ottokit webhook URL per automation you build
OTTOKIT_WEBHOOK_URL=https://connect.ottokit.com/webhook/your-id-here

# If also using SureContact SMTP directly (optional — for transactional only)
SURECONTACT_SMTP_HOST=smtp.yourprovider.com
SURECONTACT_SMTP_USER=your-smtp-user
SURECONTACT_SMTP_PASS=your-smtp-pass
Note on env vars: Create separate Ottokit automations for different event types (signup, cancel, order), each with its own webhook URL. In your code, use different env vars per event type — e.g. OTTOKIT_SIGNUP_URL, OTTOKIT_CANCEL_URL, OTTOKIT_ORDER_URL — so Ottokit can route to the right workflow and the right SureContact list.
Where to Start — 30-Day Rollout
Don't try to build everything at once. This order gives you the fastest ROI.
Week Task Tool Why First
Week 1 Set up SureContact: create product lists, configure SMTP provider, write welcome email for Dashee and Boom Ordering SureContact Every new user from day 1 enters your CRM — retroactive contact lists are hard
Week 1 Connect Stripe to Ottokit. Build "Stripe cancel → SureContact Churned list" automation Ottokit Churn recovery is highest revenue impact — every cancelled user costs money
Week 2 Add fireOttokit('user.signup', ...) to signup routes in Dashee and Boom Ordering Ottokit These two products have the most active users — highest impact fastest
Week 2 Build 5-email onboarding sequence in SureContact for Dashee users SureContact Onboarding sequences increase activation and reduce churn — biggest retention lever
Week 3 Add signup webhook to remaining SaaS products (Addee, QRcodee, Rankee, etc.) Ottokit Copy-paste work — 15 min per app once the pattern is in place
Week 4 Build Signnee document-signed automation and Aprovee comment notification Ottokit These are high-value user moments — real-time notifications drive engagement
Claude + Ottokit shortcut: Because Ottokit's MCP server is connected to this workspace, you can say "add eric@boommedia.us to my SureContact Dashee list" or "log this order to my Google Sheet" and Claude will execute it through Ottokit directly — no dashboard visit needed. This is especially useful for testing before building the full automation.