DaisySMS 替代方案 2026 — 关闭后迁移指南(无退款恢复)
DaisySMS 发生了什么
DaisySMS 于 2026 年 3 月 26 日终止服务,并发布了静态关闭通知。仪表板先是变为只读,然后离线。API 端点在 48 小时内停止接受请求。没有提前通知,没有迁移路径,最重要的是,对于未使用的账户余额没有退款政策。
这是六个月内的第二次重大短信验证服务关闭。SMS-Activate 于 2025 年 12 月 29 日关闭。DaisySMS 在三个月后紧随其后。这种模式变得越来越熟悉:利润率低的运营商面临合规压力或上游供应商问题,运营商拔掉插头,客户承担损失。
如何恢复您未使用的 DaisySMS 余额
DaisySMS 没有自愿退款流程。您的三个恢复途径,按成功可能性排序:
- 信用卡拒付(自上次付款起 60 天内): 联系您的发卡机构。引用“未提供服务”或“商家已停止运营”。提供您的 DaisySMS 余额截图和关闭通知副本。发卡机构通常在 30-90 天内做出裁决。
- PayPal 争议(自上次付款起 180 天内): 以“未收到商品”为由提起争议。证据与上述相同。PayPal 调解通常在 10-21 天内解决。
- 加密货币支付(过去 60 天内): 无法通过任何提供商追回。加密货币退款需要商家的自愿行为。记录损失以便税务冲销。
如果您在 2026 年 3 月 26 日前 60 天以上付款,拒付窗口可能已经关闭,恢复的可能性不大。记录损失并继续迁移。
DaisySMS 与 VerifySMS 功能比较
| 功能 | DaisySMS (已停用) | VerifySMS |
|---|---|---|
| 状态 | 2026 年 3 月 26 日关闭 | 活跃,在英国注册 |
| 退款政策 | 无(失败不退款) | 失败时自动退款(60 秒至 2 分钟) |
| 定价(入门) | 从 $0.05 起 | 从 $0.10 起 |
| 美国非 VoIP | $0.40 | $0.25 |
| 国家/地区覆盖 | 约 90 个国家/地区 | 200 多个国家/地区 |
| API 风格 | handler_api.php | handler_api.php 兼容 + 原生 JSON |
| 沙盒模式 | 无 | 是 (X-Sandbox-Mode 头) |
| Webhook | 否 | 是(仪表板可配置) |
| 原生 iOS 应用 | 否 | 是(App Store) |
| 需要 KYC | 否 | 否 |
| 隐私政策 | 最小披露 | 英国 GDPR,完全披露 |
| 加密货币支付 | 是 | 是(NowPayments) |
| 支持的语言 | 仅英文 | 15 种完全翻译 |
代码迁移:DaisySMS 到 VerifySMS 仅需 5 分钟
兼容层意味着您只需更改一行:基础 URL。
之前 (DaisySMS)
BASE_URL = "https://daisysms.com/stubs/handler_api.php"
API_KEY = os.environ["DAISYSMS_API_KEY"]
response = requests.get(f"{BASE_URL}?api_key={API_KEY}&action=getNumber&service=wa&country=187")
# ACCESS_NUMBER:12345:+15551234567
之后 (VerifySMS)
BASE_URL = "https://api.verifysms.app/compat/handler_api.php"
API_KEY = os.environ["VERIFYSMS_API_KEY"]
response = requests.get(f"{BASE_URL}?api_key={API_KEY}&action=getNumber&service=wa&country=187")
# ACCESS_NUMBER:abc-uuid:+15551234567
查询字符串相同,响应格式相同。号码 ID 从数字整数变为 UUID 字符串,但大多数代码将其视为不透明的。
端点映射表
| DaisySMS 操作 | VerifySMS 兼容 | 备注 |
|---|---|---|
getBalance | getBalance | 相同响应:ACCESS_BALANCE:123.45 |
getNumber | getNumber | 相同查询,ID 格式更改(UUID vs int) |
getStatus | getStatus | 相同状态:STATUS_WAIT_CODE, STATUS_OK, STATUS_CANCEL |
setStatus | setStatus | 相同操作(status=8 取消,=6 已收到) |
getPrices | getPrices | 返回原生 VerifySMS 定价 |
getCountries | getCountries | VerifySMS 覆盖 200 多个国家/地区,返回更多条目 |
| (无对应) | getHistory | 新增:12 个月审计日志访问 |
迁移清单(30 分钟)
- (2 分钟) 在 verifysms.app 注册,充值 5 美元余额,生成 API 密钥。
- (5 分钟) 在您的环境变量配置中将 DaisySMS 基础 URL 替换为
https://api.verifysms.app/compat/handler_api.php。 - (5 分钟) 为暂存环境设置
X-Sandbox-Mode: 1头。 - (10 分钟) 对暂存环境运行集成测试。验证成功率、响应形状和错误处理。
- (2 分钟) 移除暂存头,将 5% 的流量部署到金丝雀。
- (24 小时) 监控指标:成功率应等于或超过 DaisySMS 的基线。
- (5 分钟) 如果指标良好,将剩余 95% 的流量切换过来。
- (1 分钟) 为任何未使用的 DaisySMS 余额申请拒付。
常见错误及修复
国家代码无号码返回
DaisySMS 使用自定义数字 ID,可能与 VerifySMS 的映射不匹配。使用 action=getCountries 获取当前列表。ISO-3166 alpha-2 代码(US, GB, DE)也可用。
轮询在 60 秒后返回 STATUS_CANCEL
这是自动退款生效。VerifySMS 会取消并退还任何在租赁期内未收到短信的号码。如有需要,请调整您的轮询超时时间:HeroSMS 提供商的窗口为 60 秒,5SIM 提供商的窗口为 2 分钟。
setStatus 调用返回 BAD_STATUS
VerifySMS 对状态码的验证比 DaisySMS 更严格。使用 status=8 进行取消,status=6 表示“已收到并使用验证码”。状态=3(请求再次发送短信)受支持,但每个号码的速率限制为一次。
常见问题解答
我旧的 DaisySMS API 密钥还能用吗?
不能。DaisySMS API 在服务关闭后已停止接受身份验证。您需要一个全新的 VerifySMS 密钥。格式相似(40 个字符的字符串),因此您可以将其粘贴到相同的环境变量中。
如果 VerifySMS 也关闭了怎么办?
鉴于最近两次关闭,这是一个合理的担忧。我们已在英国注册,财务稳健,并且我们的兼容层意味着未来迁移到任何兼容 handler_api 的提供商只需几分钟,而不是几天。我们还承诺对任何 API 更改提供 6 个月的弃用窗口,并提前在我们的变更日志中发布。
是否有免费试用额度用于测试?
沙盒模式免费且无限制地用于测试。真实号码需要付费余额,最低存款为 5 美元。无订阅,无月费。
是否有其他迁移方案?
如果您有混合堆栈,我们维护了一个单独的详细 SMS-Activate 2026迁移中心:开发者检查清单、API映射和退款比较方案。相同的 VerifySMS 兼容层适用于两者。
5 分钟开始
在 verifysms.app 注册,充值少量余额(最低 5 美元),生成 API 密钥,然后您就可以替换基础 URL 了。大多数生产环境的迁移将在下一个部署窗口之前完成。
更多中文文章
Get started in 5 minutes
Sign up at verifysms.app, add a small balance ($5 minimum), generate an API key, and you are ready to swap the base URL. Most production migrations finish before the next deploy window.
