团队没有本地 SIM 卡,也能接收保加利亚短信 OTP 验证码吗?
提出这个问题的团队大多处于三种情形之一:产品即将在保加利亚上线,QA 想观察真实的注册流程;区域运营小组管理以 +359 联系号码注册的业务资料;或者代理机构要在国外检查客户的注册流程。为每种情况都寄送保加利亚 SIM 卡既慢,又会在抽屉里留下一堆塑料卡。
OTP Gateway 用一次请求取代了这一切:选择一个服务加保加利亚,得到一个临时的 +359 验证号码,等服务发出后读取验证码。一个号码对应一次验证。路线由我们的运营商合作伙伴提供,而 OTP Route 负责 OTP 路由、计时器和自动退款。
通过 +359 号码可以路由哪些服务?
保加利亚的实时快照列出了超过 1,600 个服务。目前可用的热门服务包括 WhatsApp、Viber、Telegram、Google (Gmail & YouTube)、Facebook、Instagram、TikTok、LinkedIn、Microsoft & Outlook、Amazon、eBay、Uber、Discord 和 Signal。
Viber 值得特别一提,因为它在保加利亚被广泛用于个人和商务聊天,所以本地 QA 计划常常会把它与 WhatsApp 并列测试。线路可用性会在一天中变化,这就是价格和服务列表在请求时从 API 获取、而不是来自静态表格的原因。
保加利亚 OTP API 的调用顺序是什么样的?
在开发者控制台创建一个 Bearer 密钥(前缀 or_live_),然后调用 https://otproute.com/api/v1:
- 获取一次
GET /api/v1/services和GET /api/v1/countries并缓存这些 ID;保加利亚是bg。 - 用
GET /api/v1/prices?country=bg&service=<id>读取当前费率。 - 通过
POST /api/v1/activations开启激活,请求体类似{"service": "viber", "country": "bg"}。 - 等待
activation.sms_receivedwebhook;如果你的运行环境无法暴露端点,就轮询GET /api/v1/activations/{id}。 - 如果测试提前中止,发送
POST /api/v1/activations/{id}/cancel,资金会立即退回。
对每次投递都检查 X-OTPRoute-Signature 请求头(对时间戳和原始请求体计算的 HMAC-SHA256),并丢弃时间戳过期的请求。开发者文档列出了账户限制:10 个密钥、5 个 webhook 端点、每分钟 300 个请求。
+359 号码应该如何存储和规范化?
保加利亚人在国内书写号码时带有前导中继 0,所以写作 088 123 4567 的手机号,在国际上是 +359 88 123 4567;零会在国家代码之后消失。请保存 E.164 形式,只在展示时才格式化。如果表单接受本地输入,请在校验前去掉空格、短横线和那个中继数字。一个经典的 bug 是保存成 +3590…,没有任何线路会向这种号码投递。
文字也很重要。保加利亚语使用西里尔字母书写,对文本做了本地化的服务会把验证码夹在西里尔字母的词语之间。西里尔字母短信以 UCS-2 编码传输,会把单条短信的长度缩短为 70 个字符,因此较长的本地化模板可能被拆分送达。如果你用正则提取数字,请用西里尔字母的上下文来测试它,而不只是英文上下文。
如果验证码一直没出现怎么办?
在下结论之前,先让 20 分钟窗口走完;有些应用发送得较晚,或者要在你再次点击“重新发送”之后才发。如果什么都没有收到,OTP Route 会自动把全部金额退回钱包,而 activation.expired 事件会告诉你的系统该时段已经关闭。之后:
- 稍后重试,或为同一服务选择另一条线路。
- 确认该服务接受虚拟号码;有些会拒绝,这正是退款存在的原因。
- 两次尝试之间请退避,不要在紧凑的循环里重复下单。
我们关于降低 OTP 送达失败率的文章有更详细的介绍。
有长期的保加利亚号码吗?账单如何处理?
目前不存在自助的保加利亚长期号码。专用号码(Dedicated Numbers)是仅限美国和加拿大的产品,每月 $1.95 起;如果你的团队需要持续使用的 +359 号码,请发邮件至 [email protected],团队会去了解,不过是否可行由当地规定决定。
+359 验证码通过单一的预付美元钱包付费:没有月费,也无需选择档位。银行卡和 USDT/USDC 充值均可接受,每次充值的 PDF 发票都会发到你的邮箱。做集成工作时,可以申请把开发账户切换为沙盒,它会返回模拟的号码和验证码,让流程在不消耗钱包资金的情况下得到演练。当前费率见定价页面。
常见问题
没有本地 SIM 卡,也能测试我的应用的保加利亚注册流程吗?
可以。通过 OTP Gateway 订购一个用于测试的 +359 号码,触发你应用的注册,然后在控制台或通过 API 读取验证码。
在短信验证 API 中保加利亚的国家 ID 是什么?
在 POST /api/v1/activations 的 country 字段以及价格查询中使用 bg。服务 ID 来自 GET /api/v1/services。
保加利亚验证号码要多少钱?
保加利亚验证码每条 $0.20 起,费率按服务设定。确切数字由 GET /api/v1/prices 返回,并在你确认之前显示在控制台中。
验证码没到我会被扣费吗?
不会。20 分钟内没有短信到达该号码,或者你先取消,全部金额都会自动退回钱包。
保加利亚的验证码会以西里尔字母还是拉丁字母送达?
这取决于服务以及被验证账户的语言设置。请让你的解析器能够应对数字周围的两种文字。
我能为以后的登录保留同一个 +359 号码吗?
通过 OTP Gateway 不行,因为每个号码只对应一次验证。长期号码仅在美国和加拿大提供自助购买;保加利亚的需求请写信到 [email protected] 咨询。
OTP Route 是用来批量注册账户的吗?
不是。它用于测试和运营你自己合法的产品和业务账户;请遵守各服务的条款,OTP Route 的《可接受使用政策》同样适用。
如何开始使用保加利亚号码?
用邮箱加 6 位验证码或 Google 登录创建账户,给钱包充值,然后从控制台下单,或生成一个 API 密钥。
服务名称均为其各自所有者的商标,OTP Route 与其无任何关联。请合法使用号码,并遵守各服务的条款及我们的可接受使用政策。