WhatsApp API 模板已经显示“Approved”,调用接口时也拿到了消息 ID,但客户一直没有收到消息。
遇到这种情况,很多人会疑惑:模板不是已经审核通过了吗,为什么还是发不出去?
其实,模板审核通过和消息成功送达,是两个不同的环节。
审核通过,只能说明 Meta 允许企业使用这条模板。真正发送时,WhatsApp 还会检查客户号码、模板当前状态、用户近期互动、营销消息频率以及接口参数。
其中任何一个环节出现问题,消息都可能延迟送达或直接发送失败。
模板审核通过,为什么消息还是发不出去?

WhatsApp 审核模板时,主要检查模板本身是否符合要求,例如:
-
模板分类是否正确;
-
变量和按钮格式是否规范;
-
内容是否违反 WhatsApp 政策;
-
模板语言与实际内容是否一致。
当模板显示为 Approved,说明它已经通过审核,可以用于发送。但这并不代表模板发给每一位客户都能成功送达。
例如,同一个营销模板发送给 100 名客户,可能有 80 人正常收到,另外 20 人因为号码无效、近期收到的营销消息过多,或者已经停止接收企业营销消息而发送失败。
这种情况下,模板本身没有问题,差别主要出在客户号码和具体的发送环境上。
所以,排查模板消息时,不能只看模板有没有通过审核,还要继续查看每条消息最后变成了什么状态。
API返回消息ID,代表发送成功了吗?
不一定。
调用 WhatsApp Cloud API 后,系统通常会返回一个 wamid。这表示 WhatsApp 已经接收了发送请求,但消息可能仍在处理,并不代表已经到达客户设备。
后续状态需要通过 Webhook 确认:
|
状态 |
代表什么 |
|
|
WhatsApp已经发出消息 |
|
|
消息已经到达用户设备 |
|
|
用户已经阅读 |
|
|
消息发送或投递失败 |
因此,接口返回 HTTP 200 或消息 ID,只能说明请求已经提交。只有收到 delivered 状态,才能确认消息真正送达。
如果消息显示为 failed,还需要继续查看 Webhook 返回的错误代码。相比后台页面上笼统的“发送失败”,错误代码通常更有助于定位原因。
WhatsApp 模板已批准但发送失败的常见原因
客户号码无法正常接收消息
如果 Webhook 返回 131026,通常说明消息无法投递到这个号码。
常见原因包括:
-
号码没有注册 WhatsApp;
-
国家区号或号码格式填写错误;
-
客户的 WhatsApp 账号已经停用;
-
客户尚未接受 WhatsApp 最新的服务条款;
-
客户使用的 WhatsApp 版本过旧;
-
客户屏蔽了企业号码。
如果客户屏蔽了企业,出于隐私保护,WhatsApp 一般不会直接告诉企业。因此,131026通常只会显示为消息无法送达,不会给出非常具体的原因。
可以先检查号码是否使用了正确的国际格式。例如,中国大陆手机号可以写成:
8613812345678
通过 Cloud API 发送时,号码通常只保留数字,不添加 +、空格或括号。还要按照当地号码规则,去掉只在国内拨号时使用的前缀。
如果同一个模板大部分人都能收到,只有少数客户发送失败,问题通常更可能出在客户号码或账号状态上。
营销消息触发发送限制
如果发送的是 Marketing 模板,而且返回 131049,通常说明 WhatsApp 暂时没有继续向这位客户投递营销消息。
即使模板已经通过审核,客户之前也同意接收消息,仍然可能遇到这种情况。
WhatsApp 不只会看当前企业发了多少消息,还会考虑客户近期整体收到的营销消息数量,以及客户是否阅读、回复或一直忽略这些消息。
也就是说,客户从其他企业收到的营销消息,也可能影响企业下一条营销模板的送达。
Meta 没有公开具体的数量和计算周期,因此很难用“每天最多发送几条”这样的固定规则完全避开限制。
遇到 131049时,不要每隔几分钟自动重发。可以至少等待 24 小时,再结合客户近期是否咨询、点击、回复或购买,判断还有没有必要继续发送。
如果大量长期不活跃的客户都出现 131049,说明更需要调整发送对象和营销频率,而不是重新提交同一个模板。
用户主动停止接收营销消息
如果返回 131050,通常说明客户已经选择停止接收这家企业的营销消息。
它和 131049的区别是:
-
131049:WhatsApp 暂时限制营销消息送达; -
131050:客户已经主动选择不再接收营销消息。
出现 131050后,企业应停止向该客户发送营销模板,并在客户资料中记录退订状态。
即使客户过去同意过接收消息,也不能继续沿用之前的授权。如果客户以后重新订阅,需要重新记录有效的授权信息。
新营销模板正在接受质量观察
部分新建或近期修改过的营销模板,不一定会立即向全部客户发送。
WhatsApp 可能会先发送给一小部分客户,观察这些消息有没有被阅读、回复、屏蔽或举报,再决定是否继续发送剩余消息。这套机制通常被称为 Template Pacing。
如果第一批消息表现正常,后续消息通常会继续发送。如果第一批客户大量屏蔽或举报,模板可能被暂停,剩余消息也可能发送失败。
因此,新营销模板上线后,不建议一开始就全量群发。
可以先选择一批近期有过咨询、点击或购买行为的客户进行测试,观察送达率、阅读率和回复情况,再逐步扩大范围。
如果返回 132015,通常说明模板已经被暂停。这时继续调用同一个模板也无法解决问题,需要先检查模板质量和当前状态。
模板通过后又被暂停或禁用
模板通过审核并不代表它会永久保持可用。
WhatsApp 会根据后续的用户反馈和互动表现持续评估模板质量。已经通过审核的模板,之后也可能被暂停或禁用。
|
模板状态 |
当前是否可以发送 |
|
|
已通过审核,通常可以使用 |
|
|
模板已被暂停,暂时无法发送 |
|
|
模板已被禁用,不能继续使用 |
|
|
模板没有通过审核 |
部分第三方平台可能使用 Active表示模板当前可用,但在 Meta API 的审核状态中,更常见的表述是 Approved。
在大型营销活动开始前,不能只看模板最初是否通过审核,还要重新确认它现在是否仍然可用。
如果某个模板之前一直正常,后来突然大面积失败,而其他模板不受影响,就应该优先检查该模板的状态和质量变化。
模板参数与审核版本不一致
有些模板在后台看起来完全正常,但发送请求中的参数并没有与审核版本对应。
比较常见的情况包括:
-
模板名称填写错误;
-
语言代码不一致;
-
变量数量或顺序不正确;
-
Header 中的图片或文件无法访问;
-
按钮参数没有按照模板结构传入;
-
使用了错误的 WhatsApp Business Account 或模板版本。
例如,模板审核时使用的是 en_US,发送请求中却填写成 en,系统可能无法找到对应的模板版本。
如果模板正文中有两个变量,发送请求也必须提供两个参数,并按照原来的位置排列。模板已经通过审核,并不会自动修正 API 请求中的参数错误。
这类问题通常会返回 132000、132001或 132012等错误代码,可以根据 Webhook 中的详细信息继续定位。
模板被重新归类为 Marketing
WhatsApp 模板主要分为 Marketing、Utility 和 Authentication 三类。
订单确认、物流进度、付款提醒等内容,一般属于 Utility;优惠活动、新品推广和购物车召回等内容,一般属于 Marketing。
如果企业在 Utility 模板中加入折扣、优惠券、商品推荐或其他促销内容,Meta 可能会把它重新归类为 Marketing。
模板可能仍然可以使用,但会开始受到营销消息发送限制,收费和送达情况也可能发生变化。
如果一个原本用于订单或服务通知的模板,突然频繁出现 131049,可以检查:
-
模板是否被重新归类;
-
正文中是否加入了优惠或促销信息;
-
按钮是否跳转到营销活动页面;
-
服务通知中是否混入了与当前订单无关的商品推荐。
订单通知和营销内容最好分别制作模板,不要为了少建一个模板而把两类信息混在一起。
WhatsApp 模板消息常见错误代码
排查 WhatsApp 模板消息时,可以先从下面这些错误代码入手:
|
错误代码 |
通常是什么问题 |
怎么处理 |
|
|
消息无法投递到客户号码 |
检查号码格式和客户账号状态,不要直接重复发送 |
|
|
客户近期收到的营销消息过多 |
暂停发送,至少等待 24 小时,并调整发送频率 |
|
|
客户已停止接收营销消息 |
停止发送营销模板,并记录退订状态 |
|
|
模板被暂停 |
检查模板状态、质量和客户反馈 |
|
|
模板被禁用 |
停止使用,找出质量问题后再修改并提交新模板 |
|
|
传入的变量数量不对 |
检查变量数量和排列顺序 |
|
|
找不到对应模板 |
检查模板名称、语言代码和所属 WABA |
|
|
模板参数格式错误 |
检查变量、按钮和媒体文件参数 |
|
|
WhatsApp 商业账号受到限制 |
前往 Business Support Home 查看账号状态 |
错误代码可能会随着 Cloud API 版本和 Meta 政策调整。实际排查时,应以 Webhook 返回的完整错误信息和 Meta 官方文档为准。
我们还为你整理了一张 WhatsApp 模板消息错误码速查图,汇总了常见错误原因和处理方法。建议保存图片,后续遇到消息发送失败时,可以直接根据错误码快速排查。

模板消息发不出去,应该从哪里开始排查?
不用一看到发送失败就重新提交模板。先看失败集中在哪些地方,通常更容易找到原因。
只有少数客户发送失败
如果同一个模板大部分人都能收到,只有少数客户失败,优先检查号码格式、WhatsApp 账号状态,以及是否出现 131026、131049或 131050。
这种情况下,模板和企业账号通常没有整体问题。
只有一个模板发送失败
如果其他模板都能正常发送,只有某一个模板失败,重点检查:
-
模板是否仍为
Approved; -
是否被暂停或禁用;
-
模板分类有没有发生变化;
-
模板名称和语言代码是否正确;
-
变量、按钮和媒体参数是否与审核版本一致;
-
是否正处于 Template Pacing 观察阶段。
问题只集中在一个模板时,一般不用先去修改账号、Token 或 Phone Number ID。
所有模板同时大面积失败
如果多个模板在同一时间大量失败,就要检查更上层的问题,例如:
-
WhatsApp Business Account 是否受到限制;
-
Access Token 是否过期或权限异常;
-
Phone Number ID 是否填写错误;
-
WABA 或电话号码配置是否发生变化;
-
BSP 或第三方平台是否出现服务异常;
-
Meta 平台是否发生临时故障。
可以按照下面的顺序排查:
-
确认模板目前仍然可以使用;
-
检查模板名称、语言和变量参数;
-
保存接口返回的
wamid; -
在 Webhook 中找到对应消息;
-
查看最终状态和完整错误信息;
-
对比失败客户、模板和发送时间;
-
判断问题来自客户、模板、账号还是接口连接。
怎样减少模板消息发送失败?
发送前清理无效号码

号码未注册 WhatsApp、国家区号错误或格式不规范,都可能导致消息无法送达。如果同一批联系人中频繁出现 131026,可以先检查号码质量,再决定是否继续发送。
企业在群发模板消息前,可以使用 SaleSmartly 的 WhatsApp 号码检测功能,批量检查联系人是否已经注册 WhatsApp,提前清理无效号码,减少无效发送。
优先联系近期活跃的客户

营销模板不应只追求发送数量。企业可以结合客户近期是否咨询、点击、回复或购买筛选名单,优先联系仍然活跃、有明确需求的客户,减少向长期没有互动的人反复发送。
SaleSmartly 支持根据客户来源、所在市场、购买记录和近期互动添加标签,再筛选合适的客户群发模板。这样既能减少无差别触达,也能把消息优先发给更有可能回复和转化的客户。
新模板先小范围测试
新营销模板通过审核后,可以先向一小批活跃客户发送,观察送达率、阅读率和回复情况,再逐步扩大范围。
如果出现 131049,不要立即重发,可以先暂停至少 24 小时,再判断是否还有继续联系的必要。如果出现 131050,则应停止向该客户发送营销模板,并记录退订状态。
分开管理通知和营销模板

订单确认、物流更新等 Utility 模板,应只保留与当前交易直接相关的内容。如果加入优惠券、商品推荐或其他促销信息,Meta 可能会将其重新归类为 Marketing,进而影响消息收费和送达。
‼️具体收费细节可以查看:【WhatsApp Business API 收费:2026年全球价格指南】
SaleSmartly 支持集中创建和管理 WhatsApp 消息模板。你可以将订单、支付和物流等 Utility 模板与促销类 Marketing 模板分开管理,让每个模板的用途更加清晰,减少因内容混用或分类不当带来的发送问题。
根据发送结果持续调整

消息发出后,不能只看接口是否返回消息 ID,还要继续关注实际送达情况和发送失败原因。
在 SaleSmartly 的「群发计划—消息群发」中,企业可以查看计划发送人数、发送成功人数、发送失败人数、送达率及发送明细,并进入对应会话查看客户反馈。根据这些结果调整发送对象、时间和内容,可以减少无效发送,将消息预算和跟进资源集中到更有潜力的客户群体。
总结
模板通过审核,消息却发不到客户手里,不仅会影响营销活动效果,还可能让企业错过咨询、订单和复购机会。
与其发送失败后反复重试,不如提前检查号码、筛选活跃客户、规范管理模板,并根据送达和互动数据及时调整策略。只有把合适的内容发给真正有需求的客户,才能减少无效触达,让更多 WhatsApp 消息转化为回复和订单。
延伸阅读
WhatsApp Business API 服务商怎么选?10家平台功能与价格对比