SMM API 超时为何会扣两次款 — 以及 NotPanel 为何不会
超时不是失败。多数 SMM 面板 API 上,重试就是第二笔订单。NotPanel 要求 request_id,同一笔 add 不会扣两次。

你打出 add。TCP 断了。客户端超时。你把同一笔订单再发一遍——还能怎样?
在 JustAnotherPanel 和 CheapSMMPanel 的公开 API 页上,第二次 add 就是第二笔订单。两笔扣款。一个客户。访客文档不提幂等。PHP 示例也不传密钥。
在 NotPanel,第二次 add 还是同一笔订单。没有调用方提供的 request_id,我们拒绝 action=add。同一密钥、同一正文、原来的订单号。不是口号。这是 下单契约。
上次 add 超时时,你的客户端做了什么?
点选一项。只保存在这台设备上——不是编造的问卷。
没人写下来的那种失败
超时之后,三件事可以同时成立。你分不清是哪件。点一张卡片。
超时是未知,不是失败。克隆 v2 页面把它当失败:再 add 一次。子面板就是这样醒来看到双扣。
完整对比: JustAnotherPanel vs CheapSMMPanel vs NotPanel.
安全重试长什么样

真正管用的规则
request_id=550e8400-e29b-41d4-a716-446655440000
若密钥由服务器签发,每次重试都会拿到新的。演戏。所以我们不替你生成。 接入指南 里有客户端形态。
超时是未知。唯一安全的重试,是服务器能认成同一请求的那一次。
新不是风险。无法验证的契约才是。
跑了十年、还是同一张影印 /api 页的面板,不是“可信”,只是眼熟。眼熟的面板,网络一抖照样扣两次。
NotPanel 更新。契约是公开的:/developers、变更日志、错误码、限流头。今晚就能用预发密钥证明重试行为。钱在 HTTP 上走的时候,信任长这样。
下一篇: 子面板该用 webhook 还是轮询状态.
FAQ
为什么我的 SMM 面板 API 扣了两次?
通常是超时加一次重试。第一笔 add 到了,回包没到。第二笔 add 成了新订单,因为面板没有调用方提供的幂等密钥。JustAnotherPanel 和 CheapSMMPanel 的访客文档里没有这一项。
JustAnotherPanel 支持幂等下单吗?
那张公开 API 页面上没有。add 没有 request_id(或等价字段)。官方 PHP 示例也不传。除非他们在可引用处另有说明,把重试当成第二笔订单。
如果重试很重要,最好的 SMM 面板 API 是哪个?
在 add 上要求调用方密钥、并且用同一密钥重放时返回原订单的那个。NotPanel 这样做。市场上的克隆 v2 页不这样做。“最好目录”和“最低价”是另一类问题,每周都在变。
新的 SMM 面板就不值得信任吗?
只要钱的路径能测,就不是。公开契约、必填 request_id、今晚就能双提交的预发密钥,比十年一张未签名的单页更有分量。眼熟不等于安全。
该谁生成 request_id?
你。一次。在重试循环外。若服务器生成,每次重试都会拿到新密钥,又变两笔订单。NotPanel 没有它就拒绝 add。