Sign inGet Started

Marketing templates

Every WhatsApp template carries one of Meta's three categories: authentication, utility, or marketing. Marketing is the promotional one, and it is the only category Meta routes through a second API. Marketing sends go to Meta's Marketing Messages API and every other category goes to the Cloud API, over the same phone number.

The category also sets the price. A marketing template costs the marketing rate for the recipient's country whichever of the two APIs carries it. Rates are on the WhatsApp pricing page, and Cost and billing covers when each part of a send is charged.

What you need to send one

Our managed catalog holds authentication and utility templates only, so a marketing send always uses a template your workspace authored:

  1. Connect a WhatsApp Business Account of your own, since a template you author is registered on your account rather than ours. See Phone number setup.
  2. Author a template with the category marketing and submit it for review. Meta reviews the category alongside the content, and it recategorizes a template that is promotional in substance. Template guidelines covers what passes review.
  3. Send from a number on the account that holds the template. A template belongs to one WhatsApp Business Account, so a send that names a number on a different account is rejected before it reaches Meta.

Marketing Messages API on the business account

Open Numbers, pick a number, and open its business account to see what Meta reports about the account the number sends under. The Marketing Messages API row is that account's onboarding state:

ValueMeaning
EligibleMeta would accept an onboarding request for this account
OnboardedThe account is onboarded and its marketing sends are optimized

The row is absent until Meta has reported a value. It is a stored provider reading, not a live eligibility check. Bird refreshes connected-account metadata periodically; delays and failures can leave individual fields older than the latest successful read. Confirm onboarding in WhatsApp Manager when a send depends on it.

Meta accepts the terms once for a whole business portfolio, so the panel carries a second, portfolio-wide state as well: not_started, request_sent, or term_of_service_signed. Meta gives both fields the same name and two different vocabularies. Read the account row for eligibility and the portfolio row for progress through the terms.

Onboarding happens at Meta rather than in the Bird dashboard. Someone with full control of the business portfolio accepts the Marketing Messages API terms in WhatsApp Manager, under Overview > Accept terms to get started. Meta's onboarding guide has the current steps.

Sending before the account is onboarded

The send path carries Meta's product_policy of CLOUD_API_FALLBACK, allowing eligible marketing messages to use the Cloud API while Marketing Messages API onboarding is incomplete. The marketing category still determines the applicable rate. This fallback does not bypass recipient, account or content restrictions, and does not guarantee delivery. Formats that require the Marketing Messages API, including GIF headers, still require onboarding.

Additional features and send settings

Meta offers additional marketing optimization and measurement features for eligible accounts and markets. Confirm the features available to your account in Meta's feature comparison before making a launch depend on them. Onboarding alone does not prove that every optimization or reporting feature is enabled for every recipient.

Bird's current send path selects the Marketing Messages API for marketing templates and includes CLOUD_API_FALLBACK. It does not supply per-send optimization caps, template creative-feature overrides, conversion-measurement configuration, or Android deep-link configuration. Do not assume those settings are configured because a template was approved.

When Meta reports the pricing category marketing_lite, Bird maps it to the marketing rate category. Read the message's reported cost and the billing records for the actual charge; a submitted message and a delivered message have different fee triggers.

Check destination and recipient restrictions

Marketing eligibility can vary by recipient country, account, format, and Meta's recipient-level limits. Confirm the current restrictions in Meta's documentation and WhatsApp Manager for the destinations in your campaign. A business number's country does not establish that all of its intended recipients can receive marketing templates.

Meta error 131049 is reported by Bird as rate_limited. Investigate the provider details, destination eligibility, and recipient limits before retrying. Do not treat an accepted send or an approved template as proof that the recipient is eligible, and do not repeatedly resend a restricted message.

When a recipient stops marketing messages

WhatsApp gives every recipient an Offers and announcements control on your business profile. Choosing Not interested feeds Meta's per-user limits, and stopping delivery outright blocks your marketing templates while leaving utility and authentication messages untouched.

A provider refusal can report Meta error 131050. Read the provider code in last_error.meta_error_code alongside Bird's normalized error and the message log. When Bird already has an applicable opt-out preference, it can reject the message before provider delivery instead. Investigate the recipient's recorded choice before retrying.

When Bird receives a valid stop event from Meta, it records a recipient-origin, non-transactional preference scoped to the WhatsApp Business Account. That belongs on the Preferences tab, rather than the Suppressions list. A resume event updates that preference; independent blocks still apply. Check both tabs and the event history before adding a separate all-message suppression. A provider refusal can arrive before the matching preference is recorded. See Preferences for scope and coverage.

Next steps