WhatsApp ERP and CRM integration in Mexico: a practical guide
WhatsApp is already your sales and collections channel; your ERP and CRM are where operations live. How to connect them with Meta's official API, which architecture to choose and what it costs in 2026.

WhatsApp ERP and CRM integration connects the official WhatsApp Business API to your systems so that a message creates or updates records (lead, order, payment) and system events (invoice issued, overdue balance) go out as approved messages, with no data re-keyed. In Mexico, where a large share of B2B sales and collections already runs on WhatsApp, that connection decides whether a conversation becomes company information or stays on a salesperson's phone.
This guide is for owners, operations directors and IT leads who know their ERP or CRM but not Meta's platform. It covers which WhatsApp option can be integrated, the three possible architectures, which events are worth connecting, how to design it internally so orders aren't duplicated, Meta's requirements and how to estimate the cost. If your system is Odoo, we have a dedicated article on the full flow: WhatsApp, AI and Odoo: from a message to payment.
What is WhatsApp integration with CRM and ERP systems, and what does it solve?
The root problem is almost always the same: the conversation with the customer lives on personal phones or a shared WhatsApp Business account, and the data lives in the ERP or CRM. Between the two sits a person who copies the order, looks up the balance, forwards the invoice and updates the status. When that person goes on vacation, the sales history goes with them.
Integrating WhatsApp with your CRM and ERP means software builds that bridge, in both directions:
Inbound: Customer → WhatsApp → webhook → your integration → CRM / ERP
(the message creates or updates a lead, an order, a ticket)
Outbound: ERP / CRM (event) → approved template → WhatsApp → customer
(invoice issued, order shipped, overdue balance, follow-up)What it is not: installing WhatsApp Web inside the CRM with a browser extension, or deploying a standalone chatbot that answers questions without reading or writing to your systems. A bot that doesn't check inventory or record the order just moves the manual work elsewhere. If the conversational side is what interests you, see chatbot vs AI agent and our guide to AI agents for customer service; here we focus on the integration, which both of them need underneath.
WhatsApp Business app vs. the official API: which one can be integrated?
Meta offers two products for businesses. The WhatsApp Business app is designed for manual service from a phone. The platform (the official WhatsApp Business API, in its Meta-hosted Cloud API version) is designed for other systems to send and receive messages.
| Aspect | WhatsApp Business app | Official API (Cloud API) |
|---|---|---|
| Designed for | Manual service from the phone | Integrating with ERP, CRM and other systems |
| API access | No | Yes |
| Webhooks (message and status notifications) | No | Yes |
| Approved templates to start a conversation | Not applicable | Yes, required outside the 24h window |
| Several users and systems at once | Limited to linked devices | Yes, through your integration or a provider |
| Message costs | No per-message charge | Per-message charge by category and country |
About the number: Meta now lets a WhatsApp Business app number also connect to the Cloud API and be used in both at the same time (what Meta calls coexistence), keeping the chat history. Messages sent from the app remain free; those sent through the API pay platform pricing, and the shared number has a fixed throughput of 20 messages per second (Meta's documentation on onboarding business app users). This option depends on your provider supporting it.
The conclusion is simple: without the official API there is no stable integration. Extensions that "read" WhatsApp Web or automate the phone violate the terms of service, break with every update and put the number at risk.
Three ways to integrate WhatsApp with your ERP or CRM
All three use Meta's official API. What changes is who runs the infrastructure, how much control you have over the data and how much logic you can build in.
1. Meta's Cloud API directly (your own development)
Your integration talks directly to the Cloud API: it registers the number in your Meta business portfolio, receives webhooks on your own server and calls the API to send. There is no intermediary between your system and Meta, so you control the full flow, the data and the costs. In exchange, someone has to build and run the piece: server, message queue, monitoring and error handling. It's the natural path when there is custom logic or several systems, and it's the kind of work we do in custom integration development.
2. Through a BSP provider
A business solution provider (BSP), such as Twilio, 360dialog or Infobip, among many others, gives you access to the same API with its own layer on top: dashboard, shared agent inbox, template tools and sometimes connectors. It lowers the upfront technical effort. The provider charges its own fee on top of what Meta charges, and your messages go through its platform, so it's worth checking where it stores data and how easy it is to leave.
3. An ERP/CRM connector or plugin
Many systems ship a native WhatsApp module or one from their app store, and there are automation platforms such as Zapier or Make. It's the fastest option when the flow is standard ("when the invoice is validated, send this template"). The limit shows up when you need logic the connector doesn't have, when you connect more than one system or when volume grows.
| Option | When it fits | Fixed cost | Data control | Technical effort | Main risk |
|---|---|---|---|---|---|
| Cloud API directly | Custom logic, several systems, volume | Your own hosting and maintenance | Full | High at the start | Relying on a team to operate it |
| BSP provider | No technical team, shared agent inbox | Provider subscription | Shared with the provider | Medium | Dependence on the provider and its pricing |
| ERP/CRM connector | Standard flow your system already supports | Module or platform license | Depends on the connector | Low | Hitting what the connector can't do |
Meta's per-message pricing applies to all three; no option removes it. Our rule of thumb: a connector if the flow is standard and your system includes it; a BSP if you have no technical team and the priority is serving customers from a shared inbox; the Cloud API directly if there's custom logic, more than one system or enough volume for the intermediary's cost to matter.
What gets connected? ERP vs. CRM use cases
Integrating WhatsApp with the ERP and integrating it with the CRM solve different things. The CRM owns the commercial relationship (contact, opportunity, follow-up). The ERP owns operations (order, inventory, invoice, balance). This table summarizes the most common events when you connect your ERP and your CRM to WhatsApp:
| Event | Source system | Direction | Meta message type |
|---|---|---|---|
| New lead writing on WhatsApp | CRM | Inbound | Service (reply within the window) |
| Quote follow-up | CRM | Outbound | Marketing or utility, depending on content |
| Order confirmation | ERP | Outbound | Utility |
| CFDI e-invoice issued (PDF and XML) | ERP | Outbound | Utility |
| Payment reminder or overdue balance | ERP | Outbound | Utility |
| Shipping or delivery notice | ERP | Outbound | Utility |
| Customer asks for status or inventory | ERP | Inbound | Service (reply within the window) |
The last column matters most and is the one almost nobody designs: the category defines what each message costs and which approval rules apply. A well-written payment reminder is utility; add a promotion and it no longer is.
To get started, the ERP side (invoices, collections and orders) usually pays off first, because those are messages someone sends by hand every day and the system already knows when to trigger them.
Architecture: how it works inside (webhooks, idempotency and data)
This is the part that decides whether the integration survives production. Almost every problem we see in rushed integrations comes from here.
Webhooks: the system that listens to WhatsApp
When a customer writes to you, or when one of your messages changes status (sent, delivered, read, failed), Meta notifies your integration with a webhook: an HTTP call to a URL you own. The golden rule is to reply quickly with a 200 and process later, in a queue. If your endpoint doesn't return a 200, Meta retries delivery with decreasing frequency for up to 7 days, and payloads can be up to 3 MB (Meta's webhooks documentation). An endpoint that's slow because it's writing to the ERP triggers retries you didn't need. Also validate that the call comes from Meta before processing it.
Idempotency: why your ERP must not create the order twice
Meta documents that those retries can produce duplicate notifications. If your integration creates an order every time it receives "I want 10 boxes", a retry becomes a second order, and with payments the damage is worse. The fix is idempotency: every message carries a unique identifier (the message id, known as the wamid); store it and discard what you've already processed. The same goes for statuses, which are best treated as updates rather than events in guaranteed order.
on webhook received: validate it comes from Meta if wamid already processed → return 200 and exit store wamid as received enqueue the event → return 200 worker: take event from the queue → create or update in CRM / ERP
Who owns each piece of data
WhatsApp is a channel, not a system of record. Price, inventory, balance and invoice are owned by the ERP; contact and opportunity, by the CRM. The integration reads from the owner and writes where it belongs; it never keeps "its own version" of the customer. If you don't define this upfront, you end up syncing errors across three places. We explain it in more detail in our article on integration patterns. In the state investment CRM for SEDECO Jalisco we applied the same principle: a single record per project, with owners and stages, instead of parallel spreadsheets.
Identifying the customer by phone number
WhatsApp identifies the customer by phone number; your ERP, by tax ID (RFC) or customer number. To match them, normalize every phone number to the international E.164 format (+52 followed by the 10 digits in Mexico) and strip spaces and dashes; older databases still contain numbers with the "1" that used to be required for mobiles. Decide what happens when one number matches several contacts (the buyer and the accounts-payable person at the same company) and when it matches nobody: the safe choice is to create a new lead and let a person link it, not to guess.
Requirements in Mexico: Meta verification, templates and opt-in
Business verification with Meta
Everything starts in the Meta business portfolio (formerly Business Manager). There you register the number, choose the display name and, to grow, verify the business with company details: legal name, supporting documents (in Mexico, typically the tax status certificate with the RFC) and a matching website or domain. The display name is also reviewed. Meta doesn't guarantee timelines: it usually takes days and depends on the documents matching on the first try.
Templates and the 24-hour window
When a customer writes to you, a 24-hour customer service window opens, counted from their last message; within it you can reply with free-form messages. Outside the window you can only start the conversation with a template, and every template must have a category (marketing, utility or authentication) and be approved before use (WhatsApp template fundamentals). If the customer arrives from a Click to WhatsApp ad or a Facebook Page call-to-action button and you reply, a free 72-hour window opens.
Watch the category: since April 2025, if you submit a template as utility and WhatsApp determines it's marketing, it's approved as marketing (template categorization). Writing WhatsApp message templates well is part of designing the cost.
Opt-in and messaging limits
To message a customer first you need their consent. Meta requires the opt-in to state clearly that the person agrees to receive messages from your business, to show the business name and to comply with applicable law; it also recommends explaining how to opt out by category and honoring it (opt-in requirements). A customer being in your ERP is not an opt-in: record it as data, with date and source. In Mexico your privacy notice under the personal data protection law also applies; review it with your legal team.
Messages sent outside the window are also limited. A new portfolio starts at 250 unique recipients in a rolling 24 hours, shared across all its numbers; it rises to 2,000 when you verify the business or deliver 2,000 high-quality templates to unique users in 30 days, and then scales to 10,000, 100,000 and unlimited if you keep quality high and use at least half the limit within 7 days (messaging limits). For month-end mass collections, plan for this from day one.
How much does it cost to integrate WhatsApp with an ERP or CRM in 2026?
The cost has two parts worth separating: what Meta charges for messages and what it costs to build and run the integration.
What Meta charges
Since July 1, 2025 Meta charges per message, no longer per conversation. If a guide still talks about "conversations", it's out of date. What the platform pricing page says:
- Templates are charged when delivered, at a rate that depends on their category (marketing, utility, authentication) and on the country calling code of the receiving number.
- Utility and authentication have monthly volume tiers, aggregated across all accounts in your portfolio.
- Rates are published by currency, including the Mexican peso (MXN), in downloadable rate cards and a calculator.
- Messages within the 72-hour window opened by a Click to WhatsApp ad are free.
And what's new: since October 1, 2026 Meta charges for service messages (free-form replies within the 24-hour window), which had not been charged since November 2024, and also for utility messages sent in reply to a customer within that window. If you use Meta's own agent (Meta Business Agent), it has been charged per token since August 1, 2026 (Meta's pricing update). For WhatsApp Business API pricing in Mexico, always check the current rate card: the figures change, and we don't copy one here that will expire with the next adjustment.
What the integration costs
The components are always the same: the BSP provider or your own hosting, development or the connector license, maintenance (Meta's and your ERP's APIs change) and monitoring. Instead of giving you a range that doesn't fit your case, here's what drives the cost up: the number of systems you connect, a two-way integration, an ERP without an API that forces you to build an intermediate layer, and message volume.
Monthly cost ≈ Σ (messages per category × Meta's current rate for Mexico)
+ BSP provider or your own hosting
+ maintenance and monitoring
Categories: marketing · utility · authentication · service (since Oct 1, 2026)Common mistakes when integrating WhatsApp with ERP and CRM
- Using the app or unofficial extensions to automate: they break and put the number at risk.
- Not deduplicating webhooks: Meta's retries create duplicate orders, tickets or payments.
- Submitting a promotional-sounding template as utility: Meta recategorizes it as marketing and its cost changes.
- Not storing the opt-in: without a consent record you can't prove the customer agreed.
- Duplicating customer data in the CRM and ERP without an owner: both systems end up with different versions.
- Automating payments, discounts or credit without human approval: the integration proposes, someone confirms.
- Designing with pre-October 2026 pricing: replies within the window are no longer free.
Getting started: steps for your first integration
- 1Map the events: which messages come in, which go out, which system each one starts in and which Meta category it falls into.
- 2Define the owning system for each piece of data: customer, price, inventory, balance and invoice.
- 3Choose the architecture: the Cloud API directly, a BSP provider or your ERP/CRM connector.
- 4Verify the business with Meta and register the number (new, or in coexistence with your app).
- 5Create and approve the templates, and record each customer's opt-in with date and source.
- 6Implement webhooks with deduplication, test with real cases and monitor cost by category.
Start with a single flow that's done by hand every day today, such as sending invoices or payment reminders, and add the next one when the first runs on its own. If you want to take it beyond WhatsApp, the same applies to process automation.
The one-line summary: WhatsApp is the channel; the ERP and CRM are the system of record. The integration is good when every message leaves a trace in the right system and every system event reaches the customer exactly once.
What you may also be wondering
Can an ERP be connected to WhatsApp?
Yes, through Meta's official WhatsApp Business API: the ERP receives messages via webhooks and sends notices as approved templates. If the ERP has no API, an intermediate layer reads from and writes to it. What doesn't work reliably are extensions that automate WhatsApp Web.
Is the WhatsApp Business API free?
No. Meta charges for each delivered template based on its category and the recipient's country. Free-form messages within the 24-hour window used to be free, but since October 1, 2026 Meta charges for service messages and for utility messages sent within that window. On top of that comes the cost of the provider or the development.
How much does it cost to integrate WhatsApp with a CRM?
It depends on three parts: the messages Meta charges for (the current rate for Mexico by category), the provider or infrastructure, and the development or connector. A native connector costs less upfront; a custom integration makes sense when there are several systems or specific logic. It's estimated from the real volume of messages per category.
What do I need to use the official API in Mexico?
A Meta business portfolio with your company's details (verified in order to grow), a phone number, an approved display name and approved templates for the messages you initiate. You also need the consent (opt-in) of every customer you message first.
Can I use my current WhatsApp number?
Yes. Meta lets you connect a WhatsApp Business app number to the Cloud API and use both at the same time, keeping the chat history, if your provider supports that option. Messages sent from the app remain free and those sent through the API pay platform pricing. It's best to decide before you start.
What is the WhatsApp 24-hour window?
It's the period that opens when a customer writes to you: for 24 hours from their last message you can reply with free-form messages. Outside that window you can only start the conversation with a template approved by Meta.
Does it work with Odoo, SAP Business One, HubSpot or Mexican ERPs such as CONTPAQi?
Yes, if the system exposes an API or allows an intermediate layer; the effort changes, not the architecture. For Odoo we have a guide to the full sales process, from a WhatsApp message to a recorded payment.
