Merkado
Sign in / Sign up
Merkado Original

Unified Customer Comms Inbox

Email, SMS, and your website contact form in one shared team inbox. Every customer message threads to the right person, replies go back on the same channel, and STOP is honored automatically.

00-hero.jpg

Shared Inbox

What's included

Everything you need to ship

Your customers message you five ways. Your team checks five places.

Email here, texts to the business line, the website contact form landing in someone's personal inbox. Messages get missed, two people reply to the same thread, and nobody knows what was already said. The fix is not another app to check. It is one place where every channel lands.

This template is a shared team inbox that unifies email, SMS, and your website contact form. Every inbound message becomes a conversation, threaded to the right contact across channels. Your team replies from one screen and the reply goes out on whatever channel the customer used. No AI, no black box, just a clean unified inbox your whole team works from.

How it works

  1. Point your inbound email webhook, your Twilio number, and your website form at the template. Everything becomes a conversation in one inbox.
  2. Conversations thread by contact: a customer who emails and later texts shows up as one person with one history, not two strangers.
  3. Your team works the queue oldest-unanswered-first, replies inline (with a live SMS segment counter so you know when a text splits), and drops in saved snippets for common answers.
  4. Replies are channel-locked: answer an email by email, a text by text. Assign conversations, mark them open or closed, and never wonder who is handling what.

Compliance built in

  • SMS opt-out is automatic and permanent. A customer who texts STOP is opted out instantly, and the template refuses to send them another message before it ever reaches Twilio. START opts them back in.
  • Twilio's back-channel opt-out (error 21610) is caught and recorded, so a number that opted out through the carrier is respected too.
  • Inbound Twilio requests are signature-verified against your server's own URL, so forged webhooks are rejected.

What you get

  • One inbox for email, SMS, and web form, threaded by contact across channels
  • Channel-locked replies with a live GSM-7 or UCS-2 SMS segment counter
  • Saved snippets for fast, consistent answers
  • Contact identity management with E.164 phone normalization
  • Assignments, open and closed status, oldest-unanswered-first sorting
  • Duplicate-delivery protection and atomic notification throttling (two inbound messages never double-ping your team)
  • Optional Slack notifications and team email alerts, both degrade gracefully
  • 3 presets (local service, online store, professional practice) with demo data across all channels
  • 177 automated tests

Built for AI editing

Ships agent-ready: AGENTS.md for Cursor, Claude Code, and Windsurf, plus CUSTOMIZE_WITH_AI.md with paste-ready recipes (connect an email provider, add a channel, restyle the inbox). Includes paste-ready inbound-email adapters for Resend, Mailgun, and Cloudflare Email Workers.

Under the hood

Next.js 15, Supabase (Postgres + magic-link admin auth), Resend for email, Twilio for SMS (both optional, degrade gracefully), Tailwind v4, TypeScript strict. Single-tenant.

Requirements

Supabase project (free tier works). Resend for email; Twilio for SMS. Either channel alone works. Deploys to Vercel in about 30 minutes with the included guide.

Integrations

Plays well with

  • Slack
  • Twilio
  • Resend

Price shown: $199 · one-time

One-time

$199