WhatsApp Account Model Changes

Meta's split of the WABA into a WhatsApp account (WAAC) for the phone number and a Messaging account for templates, billing, and webhooks: what changed, onboarding, provider switching, and the 2026–2028 rollout phases.

Looking for the high-level overview first? Start with WhatsApp Business API and then return here for the implementation details.

Meta is splitting the WhatsApp Business Account (WABA) into two accounts: a WhatsApp account (WAAC) that holds the business phone number, and a Messaging account that holds templates, billing, and webhook subscriptions. The split lets a business share one phone number with several partners while each partner keeps its own templates and billing.

Phase 1 rolled out from September 23, 2026 and was scheduled to reach every business by mid-October 2026. Existing IDs, endpoints, and access tokens keep working. The API changes that require code work arrive with a new Graph API version in H1 2027 and become mandatory in H1 2028.

Based on Meta's account model documentation, checked 27 October 2026. Meta notes that all of it is subject to change.

What Is Changing

Until now one WABA held everything: phone numbers, message templates, the payment method, webhook subscriptions, and partner access. Because a WABA could be shared with only one partner integration, a business that wanted a second provider (for example, one for marketing and one for support) needed a second phone number, and its customers saw two contacts for one business.

The new model separates the business's identity, its phone number, from templates and billing:

WhatsApp account (WAAC)Messaging account
HoldsOne business phone number, later one business username, the business profile, and product catalogsMessage templates, the payment method, analytics, and webhook subscriptions
OwnerAlways the business (the client or direct developer)The business or a partner
PartnersCan be shared with several partners at onceEach partner works in its own Messaging account
IDA new WhatsApp account ID, available from phase 2Your existing WABA ID

Meta's Terms of Service still call the WhatsApp account the "WhatsApp Business Account". In Meta Business Suite, WhatsApp accounts and Messaging accounts are separate lists under Settings → Accounts, replacing the single WABA view.

WhatsApp Accounts

A WhatsApp account is what WhatsApp users see and interact with: the business phone number, the business profile, and product catalogs. Business usernames will live here once Meta launches them (see Business Usernames).

  • Each WhatsApp account holds exactly one phone number. Meta moved existing numbers into WhatsApp accounts automatically in phase 1.
  • WhatsApp accounts can be linked into a hierarchy: a primary account with linked accounts, sometimes called a phone set. Sharing the primary account with a partner gives that partner every number in the set.
  • The business always owns its WhatsApp accounts. Sharing one with a partner gives the partner access to its phone number.
  • WhatsApp account IDs map one-to-one to phone number IDs but are different values. Meta does not expose them until phase 2.

Messaging Accounts

A Messaging account holds message templates, the payment method, analytics, and webhook subscriptions. Your existing WABA became your Messaging account in phase 1 and kept its ID, so a waba_id you already store is now a Messaging account ID.

  • A phone number can have several Messaging accounts, for example one per partner or one per billing currency.
  • Templates belong to the Messaging account they were created in and are not shared with other Messaging accounts.
  • Each Messaging account has its own payment method, separate from other Messaging accounts and from ad accounts.
  • When a partner is removed from a Messaging account, Meta sends that partner's app an account_update webhook and also emails, though Meta says it is still improving email reliability. See account_update.

Messaging Accounts covers sending with several Messaging accounts on one number, the messaging_account_id parameter, and how to check a payment method.

What Stays the Same

Meta lists these as unchanged:

  • Cloud API endpoints, payloads, and responses, including POST /<PHONE_NUMBER_ID>/messages
  • Business Management API endpoints for WhatsApp Business accounts
  • Marketing Messages API endpoints and behavior
  • Phone number IDs and access tokens
  • Template create, edit, delete, and review on /<WABA_ID>/message_templates, which now addresses the Messaging account
  • Pricing
  • Phone number registration and deregistration
  • Webhook subscriptions: you still subscribe to the whatsapp_business_account field with the Messaging account ID (your WABA ID)
  • Business verification, display names, quality ratings, and messaging limits
  • Throughput, which stays per phone number

Where Assets Live

AssetBeforeAfter
Phone numbersWABAWhatsApp account
Message templatesWABAMessaging account, one per partner
Billing and payment methodsWABAMessaging account
Webhook subscriptionsWABAMessaging account
Access tokensApp + WABAApp + Messaging account (the same tokens work)
Conversation historyPhone numberWhatsApp account / phone number (unchanged)
Quality ratingPhone numberWhatsApp account / phone number (unchanged)
Business verificationBusiness portfolioBusiness portfolio (unchanged)

Meta migrated every WABA this way, including WABAs owned by direct developers and Coexistence numbers that use the WhatsApp Business app. Phone numbers, templates, business profiles, and payment methods carried over, and existing clients did not need to re-onboard.

One Number, Several Partners

A business can now share one WhatsApp account with several partners, for example a marketing platform, a support inbox, and its own direct integration, each working through its own Messaging account.

  • Billing: each partner is billed through its own Messaging account, whichever partner handles the conversation. A message is charged to the Messaging account associated with the app that sent it. A business can also keep separate Messaging accounts for different billing currencies on one number.
  • Delivery receipts go back to the app that sent the message.
  • Throughput belongs to the phone number, so all partners on the number share it.
  • Messaging limits belong to the business portfolio, so the limit on unique users per 24 hours is shared by every partner on the number. See Capacity, Quality & Limits.
  • Templates are not shared. Each partner creates its own, or copies them with Meta's Template Migration API. Copied templates restart at baseline quality and messaging tier and need roughly 2–4 weeks to ramp up again.
  • Credit lines: a client-owned Messaging account that carries a Solution Partner's credit line cannot be shared with another partner.
  • Deregistration: any partner on the number can deregister it, and a deregistered number stops sending and receiving through Cloud API for every partner.

Onboarding Changes

Embedded Signup now handles both account types:

  • Standard Cloud API onboarding links a new or existing WhatsApp account to the number and creates a separate Messaging account for the partner. Meta returns that ID in the existing waba_id field, so the value and format are unchanged.
  • WhatsApp Business app (Coexistence) onboarding is the exception. Meta converts the business's existing WhatsApp Business account into a Messaging account and shares it, together with its WhatsApp account, with the partner. No partner-specific Messaging account is created.
  • The flow is phone-number-first. Meta removed Add phone number later, and partner-initiated account creation now requires a phone number as well.
  • A business already onboarded with one partner can onboard with another partner on the same number.
  • Embedded Signup screens and Meta Business Suite name the WhatsApp account and the Messaging account separately.

From phase 2, Embedded Signup also returns the WhatsApp account ID (waac_id) next to waba_id and the phone number ID, and new settings will control whether and where the Messaging account is created. Meta has not published those details yet.

Registration and the 2FA PIN

  • A business can onboard a new partner with a number that is already registered and shared with another partner. The new partner's register call succeeds without resetting the PIN, and Meta's response says when the PIN was not reset.
  • A partner can change the display name without knowing the PIN.
  • Meta is deprecating the 6-digit two-step verification PIN for eligible Cloud API numbers, rolling out by business cohort. Keep sending a valid 6-digit pin to /register until Meta announces a separate API change. See Two-Step Verification.

Changing Providers

Meta no longer supports migrating a phone number from one Solution Partner to another. The business shares its existing WhatsApp account with the new provider instead. The number does not move, conversations continue, and there is nothing to migrate.

  • Sharing is additive. The business decides whether to keep or remove the previous provider, and neither is a prerequisite for onboarding the new one.
  • The new provider works in its own Messaging account, so templates and the payment method in the previous provider's Messaging account do not carry over.
  • Moving between Multi-Partner Solutions is unaffected.
  • Coexistence numbers go through the Coexistence onboarding path, where a previous partner relationship can still block signup with error 2655093.

How to Leave Your WhatsApp BSP walks through a provider switch step by step.

Moving Numbers Within a Portfolio

To regroup numbers inside one business portfolio, link and unlink WhatsApp accounts instead of migrating. The number stays connected and keeps its conversations.

In Meta Business Suite, go to Settings → Accounts → WhatsApp accounts, select the primary WhatsApp account, and open Linked WhatsApp accounts:

  • Unlink number moves a linked number into its own hierarchy, or directly into another hierarchy in the same portfolio.
  • Link WhatsApp account → Existing WhatsApp account adds a number the business already owns to this hierarchy.

Keep in mind:

  • Both hierarchies must belong to the same business portfolio. A number cannot move to another portfolio.
  • Partners with access to a hierarchy can use every number in it, so moving a number changes which partners can use it.
  • A number outside a hierarchy cannot be linked while it is shared with a partner or has its own Messaging accounts. Meta Business Suite shows the reason when you select it.
  • You need permission to manage phone numbers on every hierarchy involved, and the number must be connected.
  • Linking and unlinking are rolling out gradually and may not be available to every business yet.

WhatsApp Account IDs and New APIs

Phase 2 introduces:

  • A WhatsApp account ID for every number, different from its phone number ID. Existing phone-number-level APIs keep accepting phone number IDs, and new APIs accept both.
  • New Graph API endpoints for managing WhatsApp accounts and Messaging accounts. Meta has not published them yet.
  • A new whatsapp_account webhook field.
  • Separate app permissions for WhatsApp account and Messaging account scopes.
  • On the newest Messages API version, messaging_account_id becomes required when the sending token reaches more than one Messaging account on the number. See Messaging Accounts.

Template endpoints (GET, POST, and DELETE /<WABA_ID>/message_templates) stay on the Messaging account and do not change.

In phase 3, every API that takes a phone number ID in its path, such as /<PHONE_NUMBER_ID>/messages, or as a query parameter must use the WhatsApp account ID instead.

Rollout Timeline

PhaseTimingWhat shipsWhat integrations need to do
1. General availabilityRolled out from September 23, 2026, scheduled to reach all businesses by mid-October 2026Automatic account migration, per-partner Messaging accounts in Embedded Signup, separate Meta Business Suite lists, 2FA PIN deprecation for eligible numbers, optional messaging_account_idNo code changes, unless a token reaches several Messaging accounts on one number
2. New Graph API versionH1 2027WhatsApp account IDs, new endpoints, the whatsapp_account webhook field, separate permissions, waac_id from Embedded Signup, messaging_account_id required on the newest version for multi-Messaging-account setupsStart storing WhatsApp account IDs; send messaging_account_id where a token reaches several Messaging accounts
3. Mandatory transitionH1 2028messaging_account_id required on every version for multi-Messaging-account setups; WhatsApp account IDs replace phone number IDs in paths and query parametersBe on the new APIs; Meta advises planning the work during 2027

Separately, the deprecated paid_messaging_account_id alias should be replaced with messaging_account_id by December 31, 2026.

What Dualhook Customers Need to Do

  • Coexistence connections, which are most Dualhook connections: nothing for now. The WABA ID Dualhook shows is your Messaging account ID, and your templates and payment method stayed on it.
  • A Cloud API number you already use with another provider: connecting it to Dualhook creates a separate Messaging account for Dualhook. It starts with no templates and no payment method. Attach a payment method to it in Meta Business Suite, or template sends fail with error 131042, and recreate the templates you need.
  • Runtime API calls through Dualhook: no change. Keep using the connection's phone number ID and WABA ID in v25.0 paths.
  • Your own Graph API calls with your own token: send messaging_account_id if that token reaches more than one Messaging account on a number, and plan the move to WhatsApp account IDs before phase 3. Your system user also needs business asset access on both the WhatsApp account and the Messaging account. Meta Business Suite does not cascade a grant from one to the other, so assign each explicitly there.

Dualhook Boundary

  • Dualhook stores the Messaging account ID as the connection's WABA ID and uses it for subscribed_apps and Webhook Override.
  • Dualhook does not create, share, link, unlink, or delete WhatsApp accounts or Messaging accounts, and it does not add or remove partners. Do that in Meta Business Suite.
  • Dualhook cannot see other partners' Messaging accounts on the same number.
  • Dualhook does not show WhatsApp account IDs, because Meta does not expose them yet.
  • Dualhook does not send messaging_account_id. Its authorization normally reaches only the connection's own Messaging account.
  • Dashboard and Runtime API template actions apply only to the connection's Messaging account. Dualhook does not offer the Template Migration API.
  • Dualhook does not read, show, or attach payment methods. Manage them in Meta Business Suite.
  • Disconnecting or cancelling clears Dualhook's Webhook Override and unsubscribes its app from the Messaging account. It does not deregister the number, so other partners on the number keep working.

Related

  • Messaging Accounts & messaging_account_idSend from the right Messaging account when a phone number has several: when messaging_account_id is required, the paid_messaging_account_id deprecation, per-account templates, payment methods, and delivery receipts.
  • WhatsApp Business AccountsWhat a WABA is, how Meta splits it into WhatsApp accounts and Messaging accounts, and how ownership works.
  • How to Leave Your WhatsApp BSP and Own Your WABAMove a WhatsApp business phone number away from a Solution Partner under Meta's new account model: share the WhatsApp account instead of migrating, what stays, what does not carry over, billing while two providers share the number, and the Coexistence caveat.
  • Embedded SignupHow Dualhook uses Meta's Embedded Signup flow to connect WhatsApp Business Accounts via OAuth.
  • Two-Step Verification (2FA)Phone-number-level security using a 6-digit PIN for WhatsApp Business Platform.
Browse more docsStart Free Trial