Skip to main content
WhatsApp is a workspace service in 60db. Connect your own WhatsApp Business account, receive conversations in the dashboard and send messages through the 60db API.

Connect a business number

  1. Open WhatsApp → Numbers in the dashboard.
  2. Select Add channel. Choose Connect existing WhatsApp Business app to keep using the app on your phone, or Register new number for Cloud API messaging without Business app coexistence.
  3. For the Business app option, review Before you connect and select I meet the requirements — Continue to open Meta signup. No registration PIN is shown. For the standard option, choose a six-digit two-step verification PIN or use its existing PIN, then select Continue with Meta; you can also enter the PIN after authorization. Select the same connection type in Meta and 60db.
  4. For Business app onboarding, choose the verified number returned to 60db and select Connect selected number. For an ordinary number without a supplied PIN, enter the PIN after Meta authorization and select Register number. The number must show connected before sending messages.
The registration PIN is separate from the SMS verification code requested by Meta. Account connection requires a workspace owner or admin, an active paid platform plan and a platform administrator’s completed Meta app configuration. The Business app checklist covers app version 2.24.17 or later, an existing Business app number, Meta eligibility and access to manage the business. Meta supplies the verification steps. History sharing is optional and can cover up to six months. Linked devices are unlinked during onboarding; supported devices can be relinked afterwards. Keep the app open while contacts and any shared history sync. Meta’s current requirements If a recorded authorization, number discovery or final setup loses its response, use Retry authorization, Retry number discovery or Retry connection in the dialog. The retry retains the original account attempt and details without reopening Meta. If authorization was not recorded, start again in Meta to obtain a fresh code. The PIN stays in this dialog’s memory; it is never saved in browser storage. Closing ends the attempt; reopening or Start again begins with a blank PIN. Changing workspaces discards this dialog’s state. If you close while setup is running, check Numbers before starting another attempt: the backend may still finish. Use Reconnect beside a stopped number and select that same number in Meta. The dashboard checks the selected number and the returned connection state before announcing success. A setup failure or a connection stopped during setup does not appear as connected. If setup is unconfirmed, use Retry connection before the session expires. The backend checks the original app subscription and phone readiness before completing an interrupted setup; it does not blindly repeat an uncertain registration. A failed or expired attempt requires Start again. A retry of an already attempted registration does not change the Meta PIN. Authorization can only be recovered if its account token was saved by the backend. Customer connection tokens stay on the 60db backend. Your application uses a 60db API key with the whatsapp scope; it does not need a Meta access token. If the number requires action after confirmed revoked/expired access, missing grants or loss of its selected account/number binding, restore the required Meta access and reconnect. An unavailable permission/asset check alone does not disconnect the number. Disconnect clears its stored token and stops pending campaigns and assistant work while retaining history. Owners/admins can stop an existing connection after paid access ends. Re-enable the assistant and resume paused conversations explicitly after reconnecting. Meta policy restrictions can block particular actions while the number remains connected. A blocked send or utility-template creation reports the restriction; review its expiry and remediation in WhatsApp Manager or Meta Business Support Home. The backend checks restrictions again before dispatch and AI credit spending. Inbound history remains available, and a warning alone does not disconnect the number. Reconnecting the same account does not bypass its restrictions. After expiry, start a new eligible action; failed sends and campaigns are not automatically replayed. Restriction details

Keep using WhatsApp Business app

The configured Meta flow can onboard eligible existing WhatsApp Business app numbers. 60db accepts a Business account-only finish, discovers eligible phones on the backend and requires you to choose the intended number. No registration PIN is needed for verified Business app mode. Reconnecting an existing 60db number restricts selection to that same phone. Numbers shows contact/history request states separately from history receipt. Request accepted does not mean history was shared or imported. History can show Importing, Import complete or Sharing declined in Business app. An unconfirmed import request is never automatically repeated; check Business Platform settings in the app or contact support. Reconnecting or disconnecting locally preserves prior import attempts. Imported history cannot start AI, increment live unread counts or extend a reply window. Business app sends take over pending AI. The inbox labels imported history, app sends and edits; deleted messages display a placeholder. Historical media remains a placeholder until Meta shares the asset. Address-book sync preserves consent: a synced contact does not imply opt-in. Business app onboarding requires an eligible account and the platform administrator’s configured Meta flow and webhook fields. The implementation is checked locally with fixtures; actual signup, permission grants and provider delivery require testing with your configured app. Business app API behavior

Work in the inbox

The main 60db navigation remains available alongside a dedicated WhatsApp menu. Use Inbox to search conversations, read messages, take over a conversation and resolve or reopen it. A customer’s inbound message opens a 24-hour reply window. Send text replies while that window is open. Outside the window, choose an approved template. Sending a template does not itself reopen the reply window. Use Attach file to send images, audio, video or documents within the reply window. Add an optional caption for images, video and documents. Select an inbound attachment to load its preview or native playback controls, then save it. Attachment formats and limits apply. Message states distinguish queued, sent, delivered, read, failed and delivery unconfirmed. If the provider’s result is ambiguous, 60db leaves the message unconfirmed and does not automatically resend it.

Configure the assistant

Open WhatsApp → Assistant, choose a number and enable its assistant. Start in Drafts mode: a teammate reviews each generated reply. Add business instructions, choose up to ten workspace Memory collections, and optionally enable STT for incoming voice messages and TTS for voice replies. Judge is enabled by default and requests a teammate when a reply is rejected or falls below the confidence threshold. Save the settings for each number. Unsaved edits are retained when switching numbers on this page. Saving cancels pending attempts; new customer messages use the saved configuration. Existing manual conversations require explicit resumption before automatic replies begin. In Inbox, review the latest draft, its credit cost and breakdown. Approve and send queues that reply. Edit as text reply takes over and copies the proposed text into an empty composer; it does not send or overwrite an unsent reply. On mobile, Write a manual reply opens the composer while a draft is ready. Voice transcripts appear with their inbound message when available. Use Take over to pause the assistant. Resume drafts or Resume automatic replies applies to future customer messages. Generation failures offer an explicit retry, which reuses completed stages. A Judge handoff requires a teammate response rather than draft approval. See the assistant API and billing behavior. Use Templates to sync your Meta templates or submit a text template for review. Only templates with status APPROVED can be sent. Dashboard creation supports text templates without variables; create more complex templates in Meta and sync them to 60db. The API accepts Meta template components. Use Contacts to record a customer’s explicit opt-in or opt-out. Adding a contact is not evidence of consent. The API requires recorded consent when initiating a conversation with a contact who has never messaged the number. An opt-out blocks outbound messages.

Prepare and schedule a broadcast

  1. Open WhatsApp → Broadcasts → New broadcast and choose a connected business number.
  2. Choose an approved text template. Fill numbered variables with shared text, each contact’s name or each contact’s phone number. A missing contact name uses their phone number.
  3. Select recipients with recorded opt-in. Search by name/phone or an exact tag, select individual contacts or the current page, or use Select all matching. Selection stays across pages and filters, with a maximum of 1,000 recipients per campaign.
  4. Choose a recipient in Message preview to review their personalized message, then Save draft. Saving sends nothing. Back to broadcasts → Continue draft retains unsaved inputs while you stay in this section.
  5. Inspect saved recipient messages in the campaign detail. Choose Send now or Schedule for later, enter the date/time in the displayed local time zone, and confirm the review dialog.
The dashboard editor supports approved text templates with numbered variables. Use the native broadcast API for media, buttons or named variables. Saved drafts have a fixed audience and message; cancel and recreate one to edit it. A changed approved template blocks scheduling or dispatch so it cannot silently replace the message you reviewed. Campaign details show recipient outcomes separately from dispatch completion. Dispatch complete means all attempts have settled; it does not confirm that every recipient received the message. Unconfirmed sends are never automatically resent. Cancel broadcast stops remaining sends and waits for any provider call already in progress; it cannot recall accepted messages.

Access and pricing

WhatsApp module access is included in Starter, Creator and Pro platform plans, with no separate platform subscription. Meta messaging fees are billed by Meta to the connected business. AI usage draws from existing 60db workspace credits when AI features are used. Flow licences do not include WhatsApp platform access. Read access remains available for history when paid sending access ends. The backend checks current membership, plan and API key scope on requests and rechecks the sender before queued dispatch.

Build with the API

In WhatsApp → Webhooks, enter your public HTTPS endpoint and choose the events to receive. The initial selection covers incoming messages, message statuses and successful connections. Select number.disconnected and number.action_required for connection alerts, number.updated for provider/sync/history changes, message.mirrored for Business app sends, message.updated for mirrored edits/deletions, or assistant.failed for generation failures. Save the signing secret shown once before adding another endpoint. WhatsApp uses its own webhook subscriptions. Existing voice or dialer webhook endpoints do not automatically receive WhatsApp events.