日本語
+27認証フローのテスト:南アフリカ展開のためのチェックリスト
OTP RouteのOTP Gatewayなら、一時番号で南アフリカ(+27)の認証コードを$0.20/コードから受信でき、ダッシュボードまたはAPI(ポーリングか署名付きWebhook)で受け取れます。国IDzaで注文してください。アクティベーションは20分間有効で、SMSが実際に届いた場合のみ課金されます。
最初の+27の注文の前に:簡単な準備チェックリスト
次の項目を確認しておけば、最初の南アフリカのアクティベーションは問題なく通るはずです。
- ウォレットにチャージ済み。 1つのプリペイドUSDウォレットで全てをまかないます。カードまたはUSDT/USDCでチャージします。サブスクリプションはありません。
- キーを発行済み。 Developerコンソールで、
or_live_で始まるBearerキーを生成します。CI用とステージング用でキーを分け、合計で最大10個まで作れます。 - Webhookを登録済み。 HTTPSエンドポイントを追加し、署名シークレットを保存します。最大5つまで登録できます。
- 番号の正規化をテスト済み。
082 123 4567形式の入力を与え、先頭の0が除かれて+2782...になることを確認します。 - サービスIDを確認済み。 IDを推測せず、
GET /api/v1/servicesからカタログを取得します。 - サンドボックスは任意。 サポートに依頼すると、開発アカウントをサンドボックスに切り替えられ、実際の支出の前に、シミュレートされた番号とコードでコードを通せます。
これらをパイプラインに組み込む方法は、CIテストガイドで紹介しています。
南アフリカの番号はどのように保存・正規化すべきですか?
南アフリカでは市外プレフィックスとして0を使います。国内表記の携帯番号は、082 123 4567のように10桁で、国内形式では携帯の番号帯は通常06、07、08で始まります。国際形式では0が消え、同じ回線が+27 82 123 4567、スペースを除くと+27821234567となり、国番号の後に9桁が続きます。
典型的なバグは、フォームが0を落とさずに国番号を国内番号に連結して、+270821234567のような値を保存してしまうことです。入力時に正規化し、E.164のみを保存し、スペース入りの国内形式は表示専用にしてください。自社でSMSを送信する場合も、同じルールを守ることで配信レポートとユーザー検索の整合性が保たれます。
南アフリカの認証番号にコードを送信できるサービスは?
現時点でzaの人気ルートには、WhatsApp、Facebook、Instagram、TikTok、Google(Gmail & YouTube)、Uber、Telegram、Microsoft & Outlook、LinkedIn、Netflix、Amazon、X(Twitter)、ChatGPT(OpenAI)、Discordなどがあります。カタログ全体では、この国は1,700を超えるサービスに対応しており、在庫は一日の中で変動するため、最新の利用可否はAPIで確認してください。
なぜこの市場を選ぶチームが多いのでしょうか。ヨハネスブルグとケープタウンは確立されたテックと金融の拠点で、多くの企業が南部アフリカ全体への展開の拠点として南アフリカを使っています。この国には英語、イシズールー語、イシコサ語、アフリカーンス語など複数の公用語がありますが、認証メッセージのほとんどは英語で届くため、ローカライズQAはSMSの文面そのものよりも、その周辺の画面が中心になる傾向があります。
手順:テストハーネスから南アフリカのOTP APIを呼び出す
リクエストは、Bearerキーを付けてhttps://otproute.com/api/v1に送信します。上限は1分あたり300件です。
GET /api/v1/prices?country=za&service=<id>で、希望する組み合わせのライブ価格を取得します。POST /api/v1/activationsに{"service": "<id>", "country": "za"}を送ると、+27番号が確保され、アクティベーションIDが返ります。- テストがアプリに番号を入力し、SMSをトリガーします。
activation.sms_receivedイベントがWebhookに届きます。信頼する前に、エンドポイントのシークレットで<t>.<raw body>のHMAC-SHA256を再計算し、X-OTPRoute-Signature内のv1と比較し、タイムスタンプが古すぎるリクエストは破棄してください。- ポーリングを好む場合は、
GET /api/v1/activations/{id}を緩やかな間隔で読み取ります。 - 中断した実行では
POST /api/v1/activations/{id}/cancelを呼び出します。GET /api/v1/balanceを使えば、残高が少なくなったときにジョブを早めに止められます。
ルーティングの選択についての詳細は、OTPの国別ルーティングをご覧ください。
運用担当者向けのダッシュボード手順
コードは不要です。OTP Gatewayを開き、南アフリカとサービスを選択し、表示された価格を確認して確定し、+27番号をアプリに貼り付けます。SMSが届くと、アクティベーションのページに表示されます。20分のウィンドウと自動返金は、API経由の場合と全く同じように機能します。
届かない南アフリカのコードのトラブルシューティング
まずお金の面です。20分以内にSMSが届かない場合、またはキャンセルした場合は、全額が自動的にウォレットに戻ります。そのうえで次のように切り分けます。
- まず待つ。 配信速度はサービスとルートによって異なるため、アクティベーションが終了するまで待ちます。
- 受け入れポリシー。 仮想番号を拒否するサービスもあります。その場合の返金は障害ではなく、想定された動作です。
- 時間やルートを変える。 時間をおいて再試行するか、テストケースが許せばナミビアやボツワナなどの近隣ルートを使います。
- 連打しない。 キャンセルと再注文を短い間隔で繰り返してもほとんど効果はなく、レート制限を消費してしまいます。
番号は、ご自身のプロダクトのテストや自社のビジネスアカウントの運用にのみ使用し、各サービスの利用規約を守ってください。また、OTP Routeの利用規定(Acceptable Use Policy)が適用されることにもご留意ください。
南アフリカの長期回線と課金モデル
セルフサービスの長期+27番号はありません。月額$1.95からのDedicated Numberは、米国とカナダのみで提供しています。南アフリカの恒久的な回線が必要なチームは、[email protected]にメールでご相談いただけますが、可否は現地の規則次第です。課金はプリペイドウォレットからの従量課金で、チャージごとにPDFの請求書がメールで届きます。全体像は料金をご覧ください。
よくある質問
現地のSIMなしで、アプリの南アフリカ向けサインアップフローをテストできますか?
はい。OTP Gatewayで+27番号を注文し、ダッシュボードまたはAPIでコードを確認できます。料金は1コード$0.20からで、コードが届いた場合のみ発生します。
南アフリカの番号をE.164に変換するとき、先頭の0は残しますか?
いいえ。市外プレフィックスの0を取り除いて+27を付けます。082 123 4567は+27821234567になります。
南アフリカのAPI国IDは何ですか?
zaで、価格クエリと、+27のアクティベーションを作成する際のJSONボディで使います。
南アフリカの認証SMSはどの言語で届きますか?
複数の公用語がありますが、ほとんどは英語です。文言は送信元のサービスが決めます。
コードが届かなかった場合、返金されますか?
はい。アクティベーションは20分間有効で、何も届かない場合、またはキャンセルした場合は、全額が自動的にウォレットに戻ります。
数か月間保持できる南アフリカの番号を購入できますか?
セルフサービスではできません。Dedicated Numberは米国とカナダ向けのプロダクトです。南アフリカについてはサポートにメールでお問い合わせください。提供をお約束するものではありません。
OTP Routeでは、+27番号で何件のサービスを認証できますか?
直近のスナップショットでは1,700を超えます。可用性は一日の中で変わるため、ライブのカタログをAPIで確認してください。
サービス名はそれぞれの所有者の商標です。OTP Route はこれらの企業と提携していません。番号は合法的にご利用いただき、各サービスの利用規約および当社の利用規定に従ってください。