Private Beta — WhatsApp delivery is in private beta. Contact us for access to the Managed tier, or book a Branded onboarding if you want messages sent from your own number.
What you get
Push a chart image, a short AI-written read of what changed, and a deeper analysis as a threaded follow-up — straight to a WhatsApp number on your team’s schedule. Built on the official WhatsApp Business Cloud API (no third-party bots). Replies and emoji reactions on a delivered chart fire an AI follow-up back in the same conversation, so WhatsApp becomes a two-way channel for your data — not just a delivery pipe.Two tiers: Managed vs Branded
WhatsApp delivery ships in two flavors. The sending technology is identical (Meta Cloud API, same chart + AI pipeline) — what differs is whose number it comes from and how much setup you do.| Managed | Branded | |
|---|---|---|
| Sender | Chartcastr’s shared business number | Your company’s own WhatsApp Business number |
| Setup time | ~30 seconds — one click | 1–2 weeks — we drive Meta Business verification with you |
| What the recipient sees | ”Chartcastr” in the message header | Your brand, your verified business name |
| Meta Developer account? | Not needed | Yes — we walk you through it |
| Group delivery | Supported (once Meta GA’s group send) | Supported (once Meta GA’s group send) |
| Best for | Solo founders, small teams, internal alerts | Agencies, customer-facing delivery, branded experiences |
| Pricing | Bundled with any paid plan | starting at $85/mo per account + per-message Meta fees |
- Managed is the right default. Most teams just want charts on their phones — it doesn’t matter that the sender header says “Chartcastr”. You’d never set up Twilio or Meta Business Manager just to text yourself.
- Branded is for when your customer gets the message. Agencies sending client KPIs, SaaS sending account dashboards to enterprise buyers, any context where seeing “Chartcastr” in the header would feel off-brand. Worth the setup time when the recipient is paying attention to who sent it.
Quick start — Managed
Enable in Chartcastr
Settings → Destinations → WhatsApp → Connect → Enable managed WhatsApp. No credentials, no Meta Developer account. One click.
Invite a recipient (reverse opt-in)
In the same dialog: Add recipient → set an optional label (e.g. “Sarah — CFO”) → Generate invite. You’ll see a QR code and a
wa.me/... link with a prefilled “verify WA-XXXXXXXX” message.- For your own phone: scan the QR code with your phone — WhatsApp opens with the message ready to send. Tap send. Done.
- For a teammate: share the link via Slack, email, or paste the prefilled message. They tap it, hit send from their own WhatsApp, and they’re added.
(Optional) Link a group chat
Add Chartcastr’s WhatsApp number to a group → from inside the group, send
chartcastr link from a phone you’ve already verified. The group appears in your destination picker.WhatsApp group delivery is still in limited beta with Meta. We record linked groups now and switch deliveries on automatically once Meta enables group send.
Recipient confirmation notifications
When a teammate self-adds via your invite link, Chartcastr can let you know through three channels — toggle each from Settings → WhatsApp → Settings tab → Recipient confirmation notifications:- In-app (default on) — toast + new row in the recipients list.
- Email (default on) — email to the admin who created the invite.
- WhatsApp DM (default off) — Chartcastr WhatsApps you on your own verified number. Useful for one-person teams; requires you to have completed your own invite first.
Branded — talk to us
Charts delivered from your company’s number, with your verified business name in the header. The setup we drive for you:- Discovery (~30 min) — we ask about your volume, regions, message use case, and existing Meta Business assets. Drives whether you bring a number or we buy one for you.
- Meta Business verification — your business gets verified inside Meta Business Manager (if it isn’t already). Required for the WABA.
- Phone provisioning — usually a US Twilio number ($1.15/mo) gets verified into your new WABA, but you can bring an existing number too.
- System User token + handover — we set up the long-lived API token, paste it into Chartcastr, and run an end-to-end test together.
- Templates (later, if needed) — for sending outside the 24-hour customer-service window, we draft and submit utility templates to Meta for approval.
The 24-hour window rule
Meta only allows free-form business-initiated messages within 24 hours of the recipient’s last inbound message.- Managed: the reverse-opt-in invite tap counts as a customer-initiated message, which opens the window cleanly for the first deliveries. Subsequent replies and reactions on each pulse keep the window open indefinitely.
- Branded: same rule applies on your WABA. The first delivery to a brand-new recipient who’s never messaged you needs an approved Message Template — we help you submit one during onboarding.
error.code: 131051 or 131047, the recipient is outside the 24-hour window. Have them text the business number once (“hi” works) to reopen it.
Architecture
- Outbound: image uploaded to
/{phoneNumberId}/media→ media ID sent in animagemessage with caption → long analysis sent as atextmessage withcontext.message_idreferencing the image’swamid(renders as a thread). - Inbound: Meta POSTs replies to
/webhook/integrations/whatsapp. Three things happen:- Messages containing a
WA-XXXXXXXXinvite token consume the matching invite, capture the sender’s phone as a verified Destination, and send a confirmation reply. - The literal token
chartcastr linkinside a group registers the group as a destination (group-id-keyed, scoped to the org of the verified sender — so no leaks across customers). - Replies and reactions on a delivered chart correlate to the pulse via
context.id = wamidand trigger an AI follow-up reply.
- Messages containing a
Supported sources
WhatsApp works with every Chartcastr data source.Google Sheets
Send live KPIs to a co-founder’s phone every morning.
Shopify
Daily revenue snapshots to your phone.
HubSpot
Pipeline health pulses to the CRO.
Linear
Weekly velocity to the engineering lead.
Limits and gotchas
- Caption capped at 1024 chars (Chartcastr trims with
…). - Text body (analysis) capped at 4096 chars.
- Rate limits: tier-based, starting at 1k unique recipients / 24h for an unverified business. Watch the WABA quality rating.
- Reactions arrive as
type: reactionevents — Chartcastr treats them like a one-character reply. - Group send is gated on Meta — schema and UX exist now; actual outbound to groups flips on automatically once Meta promotes group send out of limited beta.
Troubleshooting
| Symptom | Likely cause |
|---|---|
error.code: 131051 or 131047 | Recipient is outside the 24-hour window. Have them message your business number, or use a template (Branded). |
error.code: 190 (token expired) | Branded only — the System User token was revoked or expired. Ping us and we’ll regenerate it in Business Manager. |
| Verification code doesn’t arrive | Confirm the number is on WhatsApp (the app is installed and registered). Try Re-send code. |
| Webhook never fires | Branded only — subscribe the messages field on the WABA in Configuration, not just on the app. |
| Image fails to send | Make sure the chart URL is reachable; we fall back to image.link when the in-app media upload fails. |

