Twilio は SMS・音声通話・OTP 検証・WhatsApp と、通信チャネルを横断的に扱える API プラットフォームだ。なかでも二要素認証の文脈で使われることが多く、Verify を使えば OTP コードの生成・送信・検証・再送やレート制限まで API 側が面倒を見てくれるため、自前で SMS を送って照合する実装の落とし穴を避けられる。

グローバル配信の強み

Twilio が選ばれる本質的な理由は対応国の広さだ。海外ユーザーを含むサービスで「どの国の番号にも届く」ことを単一の API で担保できるのは大きい。音声通話も TwiML でフローを記述でき、IVR や自動架電を組める。

日本での価格感

料金は国とチャネルごとの従量課金で、SMS の単価は宛先国によって大きく変わる。注意したいのは、日本国内向け SMS が主用途で「とにかく安く」を最優先する場合、Twilio の単価が国内特化のキャリア直結サービスより割高になることがある点だ。グローバル対応と Verify の作り込みに価値を感じるなら Twilio、国内大量配信のコストが事業を左右するなら国内事業者との比較を勧めたい。

規制と送信元の事前確認

SMS は国ごとに送信元番号の登録制度や本文に関する規制がある。日本でも送信元の扱いや、事業者として SMS を送るうえでの審査・登録が絡む場面があり、これを踏まえずに本番投入すると到達率が落ちたり送信そのものが弾かれたりする。Twilio 側のドキュメントで対象国のコンプライアンス要件を確認し、必要なら番号やブランドの登録を先に済ませておきたい。

段階的に増えるコスト

Twilio は基本料金が低くても、電話番号の月額利用料、Verify のチェック回数課金、音声の分課金などが積み重なる構造になっている。チャネルを増やすほど課金項目も増えるため、本番運用前に「どのチャネルをいくつ使うか」を洗い出して試算しておくと、想定外の請求を避けられる。

電話番号の調達と規制が最初の関門

SMS や音声を扱う場合、まず送信元となる電話番号を取得する必要がある。日本国内では、番号の種類や用途によって本人確認や書類提出が要求されることがあり、アカウント作成からすぐに本番送信を始められるとは限らない。検証だけならテスト用の仕組みで進められるが、本番稼働の時期を見積もるときは、この調達期間を工程に入れておく必要がある。

🔴
認証用 SMS は課金攻撃の標的になります

電話番号を入力すると SMS が飛ぶ画面を無防備に公開すると、大量の送信を意図的に発生させられ、通信費だけが積み上がる被害(SMS ポンピング)が起きます。送信レートの制限、同一 IP からの試行回数制限、極端に高額な宛先国のブロックといった対策を、公開前に必ず入れてください。

到達状況をイベントで追う

SMS は送信 API が成功しても、相手の端末に届いたかは別問題だ。ステータスコールバックを受け取って配信結果を記録しておかないと、「認証コードが届かない」という問い合わせに対して何も答えられない。到達しなかった原因(不達、拒否、キャリア側の遮断)を蓄積しておくと、運用の改善にも使える。