日本語
APIでOTP Routeの番号にZaloのOTPを受信する
チームは、OTP Route OTP Gatewayでzaloサービス用のワンタイム番号を注文し、Zaloに入力して、ダッシュボード、RESTポーリング、署名付きWebhookのいずれかでコードを読み取ることで、Zaloの認証コードを受信できます。料金は国により1コード$0.20 からで、20分の受付時間内にコードが届かなければウォレットへ全額返金されます。
Zalo認証コードAPIのフローはどのようなものですか?
サービスIDはzaloです。リクエストはhttps://otproute.com/api/v1に対し、Developerコンソールで発行したor_live_で始まるBearerキーを付けて送ります。
GET /api/v1/countriesで国IDを取得します。たとえばベトナムはvnです。GET /api/v1/prices?country=vn&service=zaloで、最新の料金と空き状況を確認します。POST /api/v1/activationsに{"service": "zalo", "country": "vn"}を渡してアクティベーションを作成し、アクティベーションIDと返された番号を保存します。- 自分で管理しているテストアカウントのZalo電話番号入力画面に、その番号を入力します。
- Webhookまたはポーリングでコードを受け取るか、
POST /api/v1/activations/{id}/cancelで注文を終了します。
テストスイートの開始時にGET /api/v1/balanceで残高を確認しておくと、実行中の想定外の事態を防げます。リクエストの詳細な形式はAPIドキュメントをご覧ください。
Zaloのコード用Webhookレシーバーを構築する
Developerコンソールでエンドポイントを登録し、activation.sms_received、activation.expired、activation.cancelledを購読します。各リクエストにはt=<unix>,v1=<hex>形式のX-OTPRoute-Signatureヘッダーが付きます。エンドポイントのシークレットで<t>.<raw body>のHMAC-SHA256を計算し、定数時間で比較して、古いタイムスタンプは拒否してください。
保存結果をアクティベーションIDでキー付けして、ハンドラーを冪等にします。同じイベントが2回届いても、2回目の書き込みは何も変えない動作にします。公開エンドポイントがないチームは、代わりにGET /api/v1/activations/{id}をポーリングできます。1分あたり300リクエストの上限なら、複数の並列テストでも短い間隔でポーリングできます。
Zaloはいつ電話番号を求めますか?
Zaloはベトナム発のメッセージング・ソーシャルアプリで、電話番号がアカウントの主要な識別子です。コードが求められるのは、一般にアカウント作成時、新しい端末でのサインイン時、アクセス回復時です。具体的な画面の流れはZalo側が決めており変わる可能性があるため、テスト計画では、1つの固定手順を前提とせず各画面を網羅してください。
QAチームにとってこれが重要なのは、Zaloを軸にしたメッセージング連携、ミニアプリ、カスタマーサポートチャネルでは、他のシナリオを実行する前に、認証済みの新しいテストアカウントが必要になることが多いからです。
OTP RouteでZalo OTPを受信できるのはどの国ですか?
Zaloのルートは198か国で提供されています。ベトナム、アメリカ、日本、韓国、台湾、オーストラリアのほか、カナダ、カンボジア、ラオス、タイ、マレーシア、シンガポール、ドイツ、フランス、イギリスなどが含まれます。
テストするアカウントに合う国を選んでください。ベトナム向けのローンチでは、現地ユーザーと同じ体験を再現するために+84の番号が必要です。一方、海外在住のベトナム人コミュニティに向けたサービスなら、そうしたお客様が暮らす国の番号が適している場合もあります。国は料金や空き状況にも影響するため、まず料金エンドポイントを確認することをおすすめします。
ZaloのSMS認証テストをダッシュボードで行う手順
プロジェクトの全員がコードを書くわけではありません。ダッシュボードでは、サービスにZaloを選び、国を選択して、表示された料金を確認し、注文します。番号をZaloにコピーすると、SMSが届き次第、注文の横にコードが表示されます。同じ画面からキャンセルすれば、全額が返金されます。ダッシュボードへの登録にはメールアドレスと6桁のメール認証コード、またはGoogleサインインを使い、チームのログインは二要素認証のTOTPで保護できます。
Zaloのコードが届かないのはなぜですか?
配信はサービスとルートに左右されるため、決まった待ち時間はありません。Zaloが一部の仮想番号を拒否することもあり、返金の仕組みはそのためにあります。何も表示されない場合は、次のようにしてください。
- 20分の受付時間が終わるまで注文を開いたままにするか、キャンセルする。どちらの場合もウォレットに返金されます。
- 時間をおいて再試行するか、テストに合う別の国に切り替える。
- 短い間隔で再注文を繰り返さない。自動化ジョブにはバックオフを入れる。
- テストアカウント自体がZalo側でブロックされたり、レート制限を受けたりしていないか確認する。
ZaloのテストアカウントにはDedicated Numberを使うべきですか?
OTP Gatewayの番号は1つのコードしか処理しません。ステージングやサポートのアカウントが来月もログインする必要があるなら、Dedicated Numberが適しています。更新している間は保持できるアメリカまたはカナダの回線で、月額$1.95 からです。受信SMSはダッシュボードとnumber.sms_receivedのWebhookで確認できます。詳しくは仮想番号をご覧ください。
どちらの方法も責任を持って使ってください。Zaloの規約に従い、アカウントは実在の個人または事業者につき1つとし、OTP Routeは自社の正当なアカウントやプロダクトのテストと運用にのみ使用してください。Zaloは各権利者の商標であり、OTP Routeとは提携関係にありません。
よくある質問
OTP Route APIでZaloに使うサービスIDは何ですか?
zaloです。POST /api/v1/activationsのボディに、国IDとともに指定します。
ベトナム以外の番号でZalo OTPを受信できますか?
はい。Zaloのルートは198か国で提供されており、各国の利用可否は料金エンドポイントがリアルタイムで返します。
Zaloが仮想番号を拒否した場合も課金されますか?
いいえ。20分以内に番号へコードが届かなかった場合、またはキャンセルした場合は、全額がウォレットに返金されます。
長期間使うアカウントに、Zalo用の仮想番号は向いていますか?
ワンタイム番号は向いていません。繰り返しログインする場合は、更新している間は保持できるアメリカまたはカナダのDedicated Numberが安全です。
ZaloのSMS認証テストの料金はどう支払いますか?
カードまたはUSDT/USDCで前払いUSDウォレットにチャージします。月額料金はなく、チャージごとにPDFの請求書が発行されます。
お金をかけずにZaloの連携を試せますか?
はい。サポートが開発アカウントをサンドボックスに切り替えると、Zaloの注文でシミュレートされた番号とコードが返されるため、実際に費用をかける前にWebhookとポーリングのコードを検証できます。
サービス名はそれぞれの所有者の商標です。OTP Route はこれらの企業と提携していません。番号は合法的にご利用いただき、各サービスの利用規約および当社の利用規定に従ってください。