短信发送成功了,但实际未收到是什么原因?

更新时间:
复制 MD 格式

运营商的回执是基于用户终端反馈来响应的,因此发送成功而没有收到的情况一般是用户终端问题导致的接收失败。建议按照以下情况排查:

通过代码调用SendSms接口发送短信

代码调用SendSms接口返回Code=OK仅表示请求被短信平台接收,不代表短信已送达手机。实际投递状态取决于运营商回执。

  1. 登录短信服务控制台,在左侧导航栏选择业务统计 > 发送记录

  2. 设置查询时间范围,输入接收手机号码,单击查询

  3. 根据查询结果判断:

    • 有发送记录:查看发送状态列。显示发送成功则短信已投递,按下方终端侧排查步骤检查手机接收问题;显示发送失败则查看失败原因列获取具体错误码。

    • 无发送记录:说明API调用实际未到达短信平台。检查代码中的签名名称、模板Code、模板参数格式是否正确。建议从OpenAPI门户获取SendSms接口的官方SDK示例代码,先单独运行验证通过后,再集成到业务代码中。

模板侧排查

在排查终端问题之前,建议先自查以下模板侧原因:

  1. 模板审核状态检查:登录短信服务控制台,选择国内消息 > 模板管理,查看对应模板的审核状态模板状态审核状态须为通过模板状态正常。若审核未通过,单击查看原因并修改查看具体原因并修改后重新提交。

  2. 签名实名制报备确认:选择国内消息 > 签名管理,查看运营商报备结果列。报备未完成可能导致部分运营商通道拦截短信,运营商实名报备平均需要 5-7 个工作日。

  3. 模板内容合规检查:在模板管理页面单击模板名称进入模板详情页,检查模板内容是否包含链接、联系方式等引流信息(运营商可能拦截含引流信息的短信),确认模板变量格式正确,并确认模板类型与所用签名的适用场景相匹配。

以上三项均确认无误后,仍未收到短信的,再按以下终端侧排查步骤检查。

终端侧排查

  • 手机是否长时间不关机,建议关机重启下。

  • 手机收件箱是否已满,建议检查手机是否可以正常接收短信。

  • 手机是否为双卡双待,建议将SIM卡拿出来换一下卡槽。

  • 手机是否安装了安全软件,安全软件有可能会将短信拦截到垃圾信箱里。

检查完如果还未接收到短信,建议您将SIM卡换到其他手机上进行测试。