webhook · live/v1/wa/events
14:22:48+1 415 ••• 0934 · line.ready · 12ms
14:22:51agency webhook · 200 OK · 87ms
14:22:53+44 7•• ••• 0192 · message.received · 8ms
14:23:01wa_8fa21c · message.sent · ✓
14:23:04+49 152 ••• 1182 · message.read · ✓✓
14:23:09+33 6•• ••• 77 · message.delivered
14:23:14wa_2bcd11 · auto-reconnect · 4s
14:23:18+55 11 ••• 8842 · line.ready · QR scanned
14:23:22wa_4f12cc · line.recovered · same id
14:23:27+971 5• ••• 03 · message.received · 11ms
14:23:33agency webhook · 200 OK · 94ms
14:23:36wa_55ee01 · line.provisioned
14:22:48+1 415 ••• 0934 · line.ready · 12ms
14:22:51agency webhook · 200 OK · 87ms
14:22:53+44 7•• ••• 0192 · message.received · 8ms
14:23:01wa_8fa21c · message.sent · ✓
14:23:04+49 152 ••• 1182 · message.read · ✓✓
14:23:09+33 6•• ••• 77 · message.delivered
14:23:14wa_2bcd11 · auto-reconnect · 4s
14:23:18+55 11 ••• 8842 · line.ready · QR scanned
14:23:22wa_4f12cc · line.recovered · same id
14:23:27+971 5• ••• 03 · message.received · 11ms
14:23:33agency webhook · 200 OK · 94ms
14:23:36wa_55ee01 · line.provisioned

Always-on WhatsApp.
Built for agencies.

Your customers scan one QR. From then on, every message in their WhatsApp flows through your product in real time. The connection never sleeps. No “waiting for this message,” no manual reconnects, no missed leads.

Launched April 24, 2026 · now live

Without Mossmoon

Sessions drop. Inbound stalls mid-thread. The conversation closes somewhere else.

J
Jamie Walkeronline
Hey, quick q on the Elm St listing.
Of course. What’s up?
Waiting for this message...
stuck since 2:14 PM
With Mossmoon

Hosted connection runs 24/7. Every inbound reaches your webhook in real time.

J
Jamie Walkeronline
Hey, quick q on the Elm St listing.
Of course. What’s up?
Can we move our 3pm tour to tomorrow at 11?
delivered 2:14 PM
01Proof

Same conversation. Two outcomes.

Most WhatsApp tooling silently stalls when the session drops. Your customer sees a stuck conversation. Your stack sees nothing.

Mossmoon’s hosted connection runs 24/7 per line. Inbound messages land in real time. Your webhooks fire immediately. The deal stays alive.


Without Mossmoon
  • Sessions drop every couple of weeks
  • Cold messages stuck on “waiting for this message”
  • Manual reconnect required
  • Customers wait. Leads quietly evaporate.
With Mossmoon
  • Hosted connection runs 24/7
  • Every inbound message delivered in real time
  • Self-healing on transient disconnects
  • Stable line IDs survive every kind of restart

WhatsApp is where modern sales happens. Leads, follow-ups, scheduling, support. But hooking your product into a customer’s WhatsApp is famously brittle. Sessions drop. Messages stall mid-thread. Whole conversations disappear without warning.

Mossmoon sits between your product and your customers’ WhatsApp. Their phone stays the primary; our hosted connection carries the conversation reliably. Every inbound message reaches your webhook in real time. Every outbound message sends reliably. Reconnects are automatic.

You get a clean API. Your customers don’t even know we exist.

02Where we sit

The layer between your product and your customers’ WhatsApp

Your agency ships features. Mossmoon holds the connection. Your customers’ phones do nothing different.

The idea

WhatsApp should just work.

Your customer should never see ‘waiting for this message’ on a conversation that closes a deal. We hold the connection so they don't.

The connection

Always on, never your phone.

A hosted WhatsApp connection runs 24/7 for every line. Transient disconnects auto-heal. Permanent ones re-authorize with the same line ID.

The contract

One API. One webhook.

Provision a line, get a connect_url. Customer scans. Inbound messages, delivery acks, line state: all stream into your stack as signed webhook events.

Your agency app
CRM · inbox · AI replies
Mossmoon
Always-on connection · signed webhooks · stable line IDs
Your customer’s WhatsApp
Primary on their phone · untouched
03What you get

Built like infrastructure.
Priced like a feature.

The pieces every agency needs to put WhatsApp inside their product, with none of the surprises.

Always on

Connection never sleeps

Hosted WhatsApp connection runs 24/7. Transient disconnects auto-heal silently; your customer never notices.

One scan

Embed and forget

Drop our connect URL into your product. Customer scans the QR once. line.ready fires to your webhook within seconds.

Signed webhooks

HMAC-verified events

Inbound messages, delivery acks, line state, all signed with a per-line secret. Retry queue, idempotency IDs, at-least-once delivery.

Stable IDs

One line, forever

line_id survives deploys, reconnects, and re-authorizations. Store it once next to your customer record; never migrate.

04FAQ

How Mossmoon works

What agency developers want to know before wiring Mossmoon into production.


Embed our connect flow in your product as a link, a button, or an iframe. Your customer clicks it, lands on a Mossmoon-hosted page, scans the QR with their phone's WhatsApp.

Mossmoon fires line.ready to your webhook within seconds. From then on, every inbound message reaches your stack in real time and you can send back via the API.


One quick authorization. They open WhatsApp on their phone, scan our code, see a ✓ Connected screen, close the tab.

They keep using WhatsApp on their phone exactly as before. They never install anything, never give us credentials, never know Mossmoon exists.


Yes. Their phone stays the primary device. Mossmoon runs a hosted connection alongside it — they use WhatsApp on their phone exactly as before.

The only difference: messages they send and receive also show up in your product, and you can reply on their behalf.


The hosted connection stays online even when their phone is sleeping or out of signal. If their phone goes offline for an extended period, the line may need to be re-authorized — we detect that automatically and fire line.disconnected with a reconnect_url.

Reconnects preserve the same line_id, so you don't have to migrate anything in your database. And we don't double-charge inside an already-paid month.


$15 per active WhatsApp line per month. Flat. No per-message fees, no setup, no hidden charges.

Provisioning is free; you're only billed when a line transitions to ready (i.e. your customer actually scanned). Renewals run on each line's monthly anniversary.


05Also available

SMS verification numbers,
same key and wallet

Mossmoon also routes one-time SMS verification orders across a network of providers. 1+ services across 249+ countries. Pick a country and service, we find the cheapest in-stock source. Same mm_live_ key, same wallet, same dashboard. Useful when you also need fresh throwaway numbers for OTP flows. Read the SMS docs →

Trusted in production

15+ agencies across 5 countries route their customers’ WhatsApp through Mossmoon.

Always-on WhatsApp, built into your product.

Sign up, generate an API key, and provision your first line in under five minutes. Your customers see one QR; you get a webhook stream.