Connecting the site to Joinotify
The plugin is free and open source, under the GNU GPL v2 or later. Every feature is unlocked: there is no paid edition, no plugin trial and no license check.
It is gone. Since version 2.4.0 the licensing system was removed and the Joinotify API key became the only credential. On update, the old license key, its status and the licensing server data are deleted from the database automatically — there is nothing for you to do.
What you subscribe to is the Joinotify Cloud plan, which carries the allowance of WhatsApp numbers, the message cap and the key that authorises sending. The plugin composes the message; the plan delivers it.
Setup wizard
Right after you activate the plugin, a six-step wizard opens on its own:
| Step | What it does |
|---|---|
| Default country | Pre-filled from the store address, the site language or the timezone |
| Connect to Joinotify | Validates the key on the spot and imports the account's numbers |
| AI provider | Optional, for AI-generated workflows |
| Documentation | Where to look when you get stuck |
| Usage data | Consent for anonymous telemetry — off by default |
| Finish | Create the first automation, or go to the settings |
Older installs that never saw the wizard get it once too, the next time they open any Joinotify screen.
Connecting
The recommended path involves copying and pasting nothing:
- Go to Joinotify → Settings → Integrations and click Configure on the WhatsApp card.
- Click Connect. You are taken to the Joinotify dashboard, authenticate there and — if you have no number connected yet — run Meta's Embedded Signup.
- On the way back, the site trades a single-use code for the key, server to server.
The secret never travels in a URL, in browser history or in a Referer header. On success the
account's numbers are imported with their verified name, phone number id, Meta-assigned quality
rating and 24-hour conversation limit.
Pasting an sk_live_… key by hand is still available as a fallback — it writes to exactly the
same setting, and nothing downstream in the plugin can tell the two paths apart.
Once saved, the screen only receives the public prefix and the fact that a key exists — never the value. It is also excluded from the settings export, along with the Telegram token and the Resend key.
Disconnect deletes the key without removing the numbers already imported. And if you replace the key with one the API rejects, the previous one is restored: the site never ends up holding a credential that just failed.
When the plan lapses
Sending stops and the API starts answering 402, with the reason spelled out. What does
not happen: the plugin is not deactivated, the workflows are not deleted and the settings
stay where they were. The Joinotify dashboard stays reachable — that is where you sort it out —
and as soon as the plan is valid again, sending resumes with no reconfiguration.
Updates
Since 2.4.0 updates are delivered by WordPress itself, through the WordPress.org directory. The plugin's own update checker was removed.
Sites that installed the plugin by uploading a file need to reinstall it from the directory to start receiving automatic updates again.