You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WhatsApp Cloud API认证消息显示sent但未送达的原因排查求助

WhatsApp Cloud API:消息状态显示Sent但用户未收到认证消息的排查指南

问题背景

使用WhatsApp Cloud API向用户发送认证类模板消息时,Webhook返回的消息状态为sent,但用户实际未收到消息。已完成以下排查:

  • 验证用户手机号正确且已安装WhatsApp
  • 企业号码已注册并处于激活状态
  • 使用了正确的phone_number_id和recipient_id
  • 模板类别为authentication,符合规则
    注:发送其他简单模板消息时用户可正常接收

收到的Webhook Payload如下:

{
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "23937123822612670",
      "changes": [
        {
          "value": {
            "messaging_product": "whatsapp",
            "metadata": {
              "display_phone_number": "919352368321",
              "phone_number_id": "668867669650794"
            },
            "statuses": [
              {
                "id": "wamid.HBgMOTE2Mzc4NTMzODk3FQIAERgSMDIwNDRDMzUzQ0NCNkRGMTFEAA==",
                "status": "sent",
                "timestamp": "1756445610",
                "recipient_id": "916378533897",
                "conversation": {
                  "id": "b066b2a00187ea476b6f54bbcbf0f04f",
                  "expiration_timestamp": "1756445610",
                  "origin": {
                    "type": "authentication"
                  }
                },
                "pricing": {
                  "billable": true,
                  "pricing_model": "PMP",
                  "category": "authentication",
                  "type": "regular"
                }
              }
            ]
          },
          "field": "messages"
        }
      ]
    }
  ]
}

针对疑问的解答与排查步骤

1. 是否因模板审核问题导致?

有可能。即使模板类别标记为authentication,如果内容不符合WhatsApp认证类模板规范(比如包含营销内容、格式错误、未明确说明验证码用途),后台可能拦截消息,仅返回sent状态但不推送给用户。

  • 排查动作:
    • 去Meta Business Manager的WhatsApp模板库,确认该认证模板的审核状态为“已批准”,无警告或拒绝记录。
    • 核对模板内容:确保仅包含验证码、认证提示等必要信息,无多余营销话术、非官方跳转链接,语言符合目标地区合规要求。

2. 是否需要等待delivered/read状态事件?

不需要。sent仅表示消息从Meta服务器发出,未确认送达用户设备。若长时间收不到delivered状态,说明消息在传输或终端被拦截,不是用户未查看的问题。

  • 排查动作:
    • 持续监听Webhook的statuses事件,若始终停留在sent,需排查其他拦截原因。

3. 是否因用户未opt-in接收消息被拦截?

认证类模板属于WhatsApp允许的主动发送范畴,无需用户提前opt-in,这个原因可以排除。但如果用户曾拉黑企业号码,消息会被直接拦截。

  • 排查动作:
    • 让用户检查是否将企业号码加入黑名单,或在WhatsApp「设置-隐私-已屏蔽的联系人」中确认。
    • 用该用户号码发送其他已验证的非认证模板,若同样无法接收,大概率是号码被拉黑。

4. 是否因payload或配置存在问题?

从你提供的Webhook Payload来看,conversation.origin.type和pricing.category均为authentication,配置基本合规,但需检查发送消息时的请求Payload:

  • 排查动作:
    • 确认发送请求中template.name完全匹配审核通过的认证模板名称(大小写、拼写必须一致)。
    • 检查模板参数是否正确填充:认证模板通常需要动态参数(如验证码),空值或格式错误可能导致拦截。
    • 确认发送请求的messaging_product为whatsapp,recipient_type为individual,无多余无效字段。

额外排查步骤

  • 检查地区限制:部分地区对认证类消息有特殊限制,确认用户所在地区允许接收此类消息。
  • 测试极简认证模板:创建仅含「你的验证码是{{1}}」的模板发送测试,若能接收,说明原模板存在内容问题。
  • 查看Meta消息日志:在「WhatsApp管理器-消息」中查看该消息的详细状态,是否有后台拦截记录或错误提示。

内容的提问来源于stack exchange,提问作者Dalchand Yogi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 10:43:18