Polymorfa
Open Console

Polymorfa vs OpenWA

OpenWA's multi-tenancy exists only as a design draft.

OpenWA's own design document says multi-tenancy is not implemented, so every client you serve shares one operator's deployment.1 Polymorfa's Customers API keeps each business's numbers, links and tokens apart, and the same API reaches Cloud API numbers for regulated clients.2,3

Multi-tenancy
OpenWA
Draft, not implemented
Polymorfa
Customers API
Linked devices and the official Cloud API, behind one API.3
2 routes
Per message. A number costs credits only for the days it is online.4
$0
To place and answer calls: in the browser, in server code with the raw audio, and on your PBX over SIP.5,6
3 ways
In the hosted MCP server, for agents that run WhatsApp.7
195 tools

Three reasons teams move from OpenWA

  1. 01

    Built for serving many businesses

    Polymorfa's Customers API groups each business's numbers, pairing links and scoped tokens.2 Each client pairs its own number on a hosted QuickLink page, and scoped API keys and the audit log cover your team.8,9,10

    OpenWA: OpenWA supports many sessions for one operator, and its multi-tenancy design is not implemented.1

  2. 02

    The official route behind the same API

    Polymorfa's Graph API accepts Meta's request shape for linked-device and Cloud API numbers, so one integration covers both kinds of client. Cloud API onboarding through Embedded Signup is in beta.3,8

    OpenWA: OpenWA's README sends regulated workloads to Meta's official Cloud API, which OpenWA does not connect to.11

    openwa.sh
    curl -X POST "$OPENWA_URL/api/sessions/$SESSION_ID/messages/send-text" \
      -H "X-API-Key: $OPENWA_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"chatId":"15550001111@c.us","text":"Your order shipped."}'
    polymorfa.sh
    # Meta's request shape, for a linked-device or a Cloud API number
    curl -X POST "https://api.polymorfa.com/graph/whatsapp/v26.0/$NUMBER_ID/messages" \
      -H "Authorization: Bearer $POLYMORFA_PROJECT_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{
        "messaging_product": "whatsapp",
        "to": "15550001111",
        "type": "text",
        "text": { "body": "Your order shipped." }
      }'
  3. 03

    No sessions on your servers, and calls from code

    Polymorfa runs the sessions, and you pay only for days a number is online.4 It places and answers calls in a browser, in server code or over a SIP trunk.5,6

    OpenWA: OpenWA sessions run on your hardware at up to 500 MB each on its default engine. It handles incoming call events and rejection.11

One credit pool. Only the days a number is online.

One credit balance pays for every number your team runs, and a number costs credits only for the UTC days it is online.4 The monthly bonus is part of the price: buy 100,000 credits in a month and you get 250,000.12

Bonus credits on the whole month's purchase, every month

+10%
from 10,000 credits
+25%
from 20,000 credits
+75%
from 50,000 credits
+150%
from 100,000 credits

What Polymorfa gives you that OpenWA does not

Polymorfa and OpenWA
FeaturePolymorfaOpenWA
Hosted onboarding link for your customersQuickLink8Not documented
Idempotent sends24-hour keys13Webhooks only11
Place and answer calls from codeBrowser, server, SIP5Not documented
SIP trunk to your PBXBoth directions6Not documented
Number health estimate0–100, rules-based14Not documented
Customer accounts for SaaS buildersCustomers API2Not implemented1
Branded onboardingBranded QuickLink8Global branding only1
Pricing modelPer online number-day15Free software, you pay hosting11

Move from OpenWA in an afternoon

  1. 01

    Create a project and an API key

    Sign up, create a project and generate an API key in the Console.9

  2. 02

    Map clients to Customers

    Create a Customer for each business you serve and attach its numbers and links.2

  3. 03

    Connect each number

    Send a QuickLink to pair by QR or pairing code.8 Stop the OpenWA session once the number moves, so two devices do not compete for one session.

Questions

Is OpenWA the same project as open-wa/wa-automate?

No. OpenWA at open-wa.org is a separate MIT gateway first published in 2026.16,11

Can I keep my existing sessions?

Polymorfa imports Baileys authentication state through the API as a preview feature, so a number on the Baileys engine can move if you export its state. Numbers on the whatsapp-web.js engine re-pair with QuickLink.17,8

Can each client pair its own number?

Yes. Send each client a QuickLink to pair by QR or pairing code, attached to its Customer.8,2

Leave the WhatsApp infrastructure to us.

Start free

Also compare: Evolution API, WAHA