Skip to main content
The business API allows you to fetch business profiles for WhatsApp Business accounts, including their description, contact information, categories, and business hours.

Access

Business profile operations are available directly on the Client:

Methods

get_business_profile

Fetch the business profile for a WhatsApp Business account.
Parameters:
  • jid - JID of the account to query
Returns:
  • Some(BusinessProfile) if the account is a business with a profile
  • None if the account is not a business or has no profile
Example:

Types

BusinessProfile

BusinessProfile is #[non_exhaustive]: struct-literal construction and exhaustive struct destructuring from outside the crate are both disallowed. Field reads are unaffected; add .. to any exhaustive destructuring patterns.

BusinessCategory

BusinessCategory is #[non_exhaustive]: struct-literal construction and exhaustive struct destructuring from outside the crate are both disallowed. Field reads are unaffected; add .. to any exhaustive destructuring patterns.

BusinessHours

BusinessHours is #[non_exhaustive]: struct-literal construction and exhaustive struct destructuring from outside the crate are both disallowed. Field reads are unaffected; add .. to any exhaustive destructuring patterns.

BusinessHoursConfig

BusinessHoursConfig is #[non_exhaustive]: struct-literal construction and exhaustive struct destructuring from outside the crate are both disallowed. Field reads are unaffected; add .. to any exhaustive destructuring patterns.

DayOfWeek

BusinessHourMode

Business events

Business account changes are reported through the event system. Subscribe to BusinessStatusUpdate events to track changes:
See Events for the full BusinessStatusUpdate type.

Checking if a contact is a business

You can check if a contact is a business account using the contacts API:
See Contacts API for details.

Automatic business stanza detection

When sending interactive business messages (native-flow buttons for payments, CTAs, catalogs, etc.), the library automatically injects a <biz> stanza child node on the outgoing message. This means you can send InteractiveMessage with NativeFlowMessage content through send_message or send_message_with_options without manually constructing business protocol nodes. See Send API - Automatic business node detection for the full list of supported button-to-flow mappings.

See also