Builders Program

Build with us for a whole month. Unlimited usage and add-ons, weekly calls and your own Slack channel.

Learn more

Command Palette

Search for a command to run...

Bringing innovation to WhatsApp developers.

import { Polymorfa } from '@polymorfa/sdk'
 
const wa = new Polymorfa({ key: process.env.PM_KEY })
 
await wa.sessions.messages.send('my-session', {
  to: '+55 11 91234 5678',
  text: 'Hello from Polymorfa.',
})
Meta CloudLinked DevicesSame call, both backends. The code doesn't move.

From the maintainers of Baileys, whatsmeow, whatsapp-web.js and whatsapp-rust35k+

[ 01 / 11 ]// The problem

Building on WhatsApp means picking your poison.

An unofficial library that breaks every upgrade, a number that can vanish overnight, or an official API that meters every hello.

the banNumbers vanish overnight.

Machine-like sending gets flagged. One morning the session is dead, the history is gone, and the customer is asking why you went silent.

This account can no longer use WhatsApp
the duct tapeLibraries break under you.

Reverse-engineered clients are heroic and fragile. Every WhatsApp update is a fire drill, and you are the fire department.

- "baileys": "6.6.0"
+ "baileys": "7.0.1" // 41 breaking changes
the taxThe official meter runs hot.

Meta's Cloud API charges per conversation and gates what you can send. Clean, official, and expensive at exactly the scale you want.

utility messages × 40,000$1,600.00
marketing messages × 12,000$3,048.00
Meta, monthly$4,648.00
[ 02 / 11 ]// The fix

The only API you will ever need.

Meta Cloud and Linked Devices behind a single payload shape. Polymorfa routes by where the number lives, and the number can move without a deploy.

Meta Cloud

Official Cloud API

Linked Devices

WhatsApp Web protocol

Polymorfa Cloud

One payload shape · routes by where the number lives

RESTMCPSDKsn8n
Explore the API
[ 03 / 11 ]// Onboarding

Connect a number in minutes.

Sandbox numberFree
Instant fake number from InspectorNo SIM, no verification codesFull API access from minute one
QuickLinkRecommended
One hosted link for QR code or pairing codeWhatsApp stays on your phoneCreate it from the Console, the API, or a Customer
Import sessions
Bring Baileys, whatsmeow, or WWebJS sessionsUse our official library adapters to migrate over without pairing.Fully supported with no caveats.
[ 04 / 11 ]// The guarantee

If a ban is ever on us, it's on us.

BanSafe estimates present Health from fresh operational evidence and explains which groups deducted points. BanSafe Lite adds Safe Mode, which paces sending when you turn it on. And BanSafe Pro puts money behind it: if a Pro number is banned and the ban is attributed to Polymorfa, the credits that number consumed in the 30 days before the ban are returned to your balance.

30 daysCredits refundedThe credits that number consumed in the 30 days before the ban come back.
ProFiled for youA claim opens by itself when a Pro number is banned. You do not have to ask.
22Safety checks per numberTyping, read receipts, presence, reply timing, send rhythm, and who the number writes to first.
Explore BanSafe
[ 05 / 11 ]// Residency

Hosted in the EU. Brazil for messaging.

Our databases and files are in the European Union, in Germany. Numbers in our Brazil messaging region keep their WhatsApp data in Brazil, and Enterprise teams can agree Swiss storage.

Brazil messaging · Swiss Enterprise

Numbers in our Brazil messaging region keep session data and message processing in Brazil. Enterprise teams can agree Swiss storage in a signed order form.

default
Console & secrets · EU

The Polymorfa Console account, its configuration, settings, secrets, and WhatsApp session data are stored in Germany, with backups in Finland, for every customer.

Isolated per team

Database row-level security keeps each team's data separate, and every query fails closed.

[ 06 / 11 ]// The surface

If WhatsApp can do it, it's in here.

Every primitive, addressable over REST, MCP, SDKs, or workflow nodes. Each one links to its own deep dive.

[ 07 / 11 ]// The UI kit

The UI ships in the box.

Drop-in React kits, restyleable to your brand and wired to the API: build template editors, call surfaces, and full inboxes without drawing a bubble yourself.

Explore the UI kit

Hi Marina, order #8412 has shipped and should arrive Thursday. Track it below.

14:02
Track order
Contact support
Template builder
ACAcme SupportWhatsApp voice · 02:41
Calls kit
Inspector · staging2 fake numbers
Has my order shipped?
Shipped · BR392174
Message as +55 550-0142…
Conversation windows
[ 08 / 11 ]// Start

Your first message in five minutes.

One request. The reply comes to you.

// send.ts
import { Polymorfa } from '@polymorfa/sdk'
const wa = new Polymorfa({ key: process.env.POLYMORFA_KEY })
await wa.messages.send({ to: '+55 11 91234-5678', text: 'Order shipped' })
[ 09 / 11 ]// The users

Teams that stopped worrying about WhatsApp.

"We ran campaigns for two years terrified of losing the number. Now pacing is BanSafe's problem, and the refund clause made finance sign off in a day."
Head of operationsE-commerce, São Paulo
"Pointed Claude at the MCP server and had an agent answering order questions the same afternoon. The scopes meant I could actually let it."
FounderAI agent startup
"Localized E2EE was the unlock. Patient messages decrypt next to our database, and our DPO could finally say yes to WhatsApp."
CTOHealthcare platform
[ 10 / 11 ]// Pricing

Stop paying per message.

No base fee, no per-message meter. A session that is offline for a day costs nothing that day.

Show value in
StandardFull WhatsApp API for production.
25 credits≈ $0.25
/ number / day connected
  • Full API, every WhatsApp primitive
  • BanSafe Lite: Safe Mode
  • n8n nodes, HMAC webhooks
  • QuickLink + 50 calls a month
See full pricing
ProFor WhatsApp at production scale.
36 credits≈ $0.36
/ number / day connected
  • Everything in Standard
  • MCP server, Campaigns, Hybrid Link
  • BanSafe Pro with Ban Insurance
  • Unlimited calls, 10x throughput
See full pricing
EnterpriseCapacity and terms built around your business.
Contact us
  • Custom workload allowances
  • Dedicated isolated servers
  • Configurable SLA policy
  • Tailored support and add-ons
Contact us

Brazilian (+55) numbers consume credits at a 15% reduced rate on Standard and Pro. Monthly top-ups unlock up to 150% extra credits.

[ 11 / 11 ]// FAQ

The questions everyone asks.

The honest answers, before you have to ask them in a sales call.

Will my number get banned?

No tool can guarantee that. BanSafe estimates present Health from fresh operational evidence, explains its deductions, and can act when the score crosses your project threshold. BanSafe Lite adds optional Safe Mode controls. On Pro, if a ban is attributed to Polymorfa, the credits that number consumed in the 30 days before the ban are returned to your balance.

Is this the official API or the unofficial one?

Both. Meta Cloud and Linked Devices sit behind the same payload shape. Start on the free path, add official COEX mode on the same number with Hybrid Link, or run either alone.

Can you read our messages?

Not if you don't want us to. Hosted storage is opt-in and off by default; with localized E2EE the relay only ever carries ciphertext and keys stay in your Postgres, KMS, or HSM. Our databases and files are in the EU, in Germany. Numbers in our Brazil messaging region keep their WhatsApp data in Brazil, and Enterprise teams can agree Swiss storage.

How do we test without risking real numbers?

Bartender is a server that speaks the real wire protocol, and the Sandbox provisions fake numbers on it. Your whole stack, including CI, runs against it before anything touches a phone.

What does it cost?

Per number, per day connected: $0.25 on Standard, $0.36 on Pro. No base fee, no per-message meter, and a day offline costs nothing. The sandbox is free with no card.

Ship a WhatsApp integration this afternoon.

Free on the sandbox. No credit card. The projects you start here migrate straight into production.

Swiss company, EU hostedGDPRLGPD