Bird vs Twilio

Bird vs Twilio pour Verify

Bird Verify repose sur le routage des canaux et la vérification du code à partir du destinataire : envoyez un code, avancez dans le plan de livraison et vérifiez la réponse avec la même adresse e-mail ou le même numéro de téléphone.

Utilisé chaque jour par des équipes qui
créent des logiciels de classe mondiale.

Quel flux de vérification convient à votre application ?

Quand Twilio Verify convient

La ressource de vérification de Twilio accepte l'appel vocal et l'authentification silencieuse par réseau en plus de SMS, WhatsApp et l'e-mail. Conservez un canal vocal ou SNA fiable avec un fournisseur qui le prend en charge ; le plan de canaux résolu de Bird prend en charge SMS, WhatsApp, l'e-mail et Telegram.

Twilio Services regroupe la configuration de vérification, y compris la longueur du code et le nom convivial. La requête de création accepte aussi un template, une locale et un code personnalisé. Inventoriez ces choix avant de passer aux paramètres d'espace de travail et aux messages intégrés de Bird.

Le SMS riskCheck de Twilio active ou contourne les protections anti-fraude actives par tentative, y compris Fraud Guard et Geo Permissions. Préservez les décisions de risque de l'application lors de la migration au lieu de traiter les limites de renvoi et de vérification de Bird comme un contrôle équivalent.

Pourquoi choisir Bird Verify ?

Bird résout la livraison à partir du destinataire et du pays. Une requête peut réduire ou réordonner le plan disponible avec options.channels, et un échec de livraison peut le faire avancer automatiquement. Le même destinataire identifie la vérification et la requête de canal suivant.

Le résultat de vérification de Bird expose success, reason et attempts_remaining. Utilisez success: true pour enregistrer l'état vérifié de l'application ; un HTTP 200 peut aussi contenir un résultat de code incorrect.

Le serveur MCP hébergé de Bird et le CLI utilisent le même flux Verify : create, check et next-channel. Un agent peut demander un autre canal de livraison en utilisant le destinataire déjà détenu par l'application.

La matrice

Comment les API Verify se comparent-elles ?

Comparez les contrôles de requête et de cycle de vie utilisés par votre application. La disponibilité des canaux dépend du pays du destinataire et des capacités activées sur le compte.

FonctionnalitéBirdTwilio VerifyQui gagne ?
Requête de créationJSON avec une clé bearer vers /v1/verify/verifications ; to contient une adresse e-mail, un numéro de téléphone ou les deux.Création form-encoded sous un Service SID, avec un destinataire et un canal.
Tentatives sécuriséesIdempotency-Key rejoue une requête. Les renvois au destinataire réutilisent la vérification active, respectent un délai de refroidissement et émettent un nouveau code après celui-ci.Twilio conserve le même token pendant sa période de validité jusqu'à la réussite de la vérification, y compris lorsqu'une autre requête arrive.
Ce qu'un échec de vérification vous indiquesuccess: false, une raison telle que incorrect_code et attempts_remaining. Stockez success: true ; une vérification finalisée renvoie 404 lors d'une nouvelle vérification.Verification Check renvoie status, notamment pending, approved et max_attempts_reached. Les vérifications approved, expired et à tentatives maximales sont supprimées ; une vérification ultérieure renvoie 404.
Canaux par lesquels un code peut être envoyéSMS, WhatsApp, e-mail et Telegram, limités au plan de pays résolu du destinataire.SMS, e-mail, WhatsApp et appel; la même ressource propose aussi sna et auto pour les flux d'authentification silencieuse.
Configuration par requêteoptions.code_length, options.channels et options.language ; l'expéditeur et les paramètres par défaut proviennent de la configuration de l'espace de travail.Sélection du Service plus options de requête pour un template, une locale, un code personnalisé et un nom convivial.
Serveur MCP hébergéLe MCP hébergé et authentifié exécute create, check et next-channel ; le CLI bird expose les mêmes opérations.Le MCP de documentation hébergé par Twilio recherche et récupère la documentation sans exécuter d'appels API. Le proof of concept MCP de Twilio Labs charge des services API sélectionnés ; le CLI Twilio effectue des requêtes API.
Événements de livraisonÉvénements de session et de tentative sur les webhooks de l'espace de travail, signés avec Standard Webhooks. La livraison et l'utilisation réussie du code sont des événements distincts.Verify Events est en phase Pilot avec inscription en libre-service. Il diffuse le statut de vérification et de message pour SMS, WhatsApp, RCS et Voice vers un webhook ou Amazon Kinesis.
Repli de canalUn échec de livraison fait avancer le plan résolu. L'opération next-channel permet à l'application de le faire avancer et envoie un nouveau code ; les codes précédents restent valides.Automatic SMS Fallback tente SNA puis bascule sur SMS. Twilio le qualifie de Pilot et exige de contacter les ventes pour y accéder.

Qui fait avancer le fallback, et quel code reste valide ?

Bird fait avancer le plan résolu du destinataire lorsqu'une livraison échoue. Votre application peut aussi appeler next-channel quand l'utilisateur signale qu'aucun code n'est arrivé. Chaque appel avance d'un canal au maximum et envoie un nouveau code de vérification ; tous les codes de vérification précédents pour cette vérification restent valides.

Bird : create avec to → plan résolu → échec de livraison ou next-channel → nouveau code de vérification → check avec le même to. Un plan épuisé renvoie NoNextChannel. Préservez un succès complété avant de proposer un nouvel envoi.

Twilio : create avec Service SID et channel: auto → tentative SNA → fallback SMS si nécessaire → Verification Check. Le guide automatic-channel décrit ce flux spécifique SNA-vers-SMS et qualifie l'accès de Pilot. Le token de Twilio reste le même pendant toute sa période de validité jusqu'à la réussite.

Que doit stocker votre application après une vérification ?

Stockez le résultat d'authentification réussi. Bird identifie une vérification par l'ensemble exact to : si la création a utilisé à la fois un téléphone et un e-mail, répétez les deux. Une réponse avec success: false et reason: incorrect_code est une vérification échouée même avec HTTP 200. Un 404 E13000 ultérieur ne peut pas annuler un success: true précédent.

Twilio accepte aussi un destinataire pour la vérification, ou un Verification SID, sous le Service SID. Utilisez status: approved comme résultat de réussite. Son booléen valid est une propriété héritée ; la référence oriente les intégrations vers status.

Quels contrôles anti-abus inclure dans la migration ?

Les garde-fous anti-abus de Bird incluent un délai de refroidissement pour le renvoi, un plafond d'envoi par destinataire et des limites de débit de vérification. Demander le canal suivant contourne le délai de refroidissement et le plafond d'envoi horaire, mais le plan de canaux fini limite la progression. Conservez vos propres contrôles de risque au niveau du compte et de la session autour de ces opérations.

Le SMS riskCheck de Twilio peut activer ou contourner Fraud Guard et Geo Permissions pour une tentative. Mappez ces paramètres et leurs décisions opérationnelles explicitement ; une limite de réessai de livraison n'établit pas une détection de fraude équivalente.

Comment la vérification et la livraison sont-elles facturées ?

There's no plan, seat, or platform fee for Bird Verify. Each delivery is charged at that channel's rate for the destination. A resend, or a fallback that moves delivery to a second channel, is a new send and a new charge.

A verdict compares only published delivery rates with the same channel, destination, currency, billing unit and sender type. Per-success verification fees and per-send charges are Not comparable: your own sends and successful checks determine usage.

Pricing verdict: Not comparable

Élément publiéTwilio VerifyPolitique de facturation de Bird
Base pricing

Per successful verification

$0.05 USD

Per successful verification plus standard channel fees.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

SMS (US)

Per SMS

Destination: US

$0.0083 USD

Per SMS (US). The successful-verification fee is charged separately.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

WhatsApp (US)

Per authentication template message

Destination: US

$0.0034 USD

Per authentication template message (US). The successful-verification fee is charged separately.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

Voice

Per successful verification

$0.05 USD

Per successful verification. Voice channel pricing applies separately.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

This method is outside Bird’s documented Verify channel plan.

Email

Per successful verification

$0.05 USD

Per successful verification. Email channel pricing applies separately.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

Silent Network Auth

Per successful verification

$0.05 USD

Per successful verification plus per-country channel fee.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

This method is outside Bird’s documented Verify channel plan.

Push

Per approved or denied request

Push channel fee is included in the verification fee.

It’s charged when a request is approved or denied.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

This method is outside Bird’s documented Verify channel plan.

TOTP

Per approved request

TOTP channel fee is included in the verification fee.

It’s charged when a request is approved.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

This method is outside Bird’s documented Verify channel plan.

Volume pricing

Custom volume

Contact sales

Contact sales for volume-based discounts.

as published

There's no plan, seat, or platform fee for Bird Verify.

Les envois par canal sont facturés séparément. Consultez les tarifs en vigueur par canal ci-dessous.

Bird a publié les tarifs du canal SMS

Bird's SMS catalogue rates are shown by sender type, per message segment. Carrier fees and sender costs may apply separately. These channel rates are not a total verification quote. SMS pricing; carrier fees.

DestinationType d'expéditeurPar segment SMS
USlong_codeEUR 0.003
USlong_codeUSD 0.0035
UStoll_freeEUR 0.003
UStoll_freeUSD 0.0035
USshort_codeEUR 0.006
USshort_codeUSD 0.007

Bird email pricing and Bird WhatsApp pricing publish the other delivery channels.

La même vérification

Comment démarrer une vérification ?

Le SDK Node de Twilio SDK crée une vérification sous un Service. L'endpoint de création de Bird prend directement le destinataire. Réutilisez la clé d'idempotence de l'application pour les réessais de la même requête Bird.

Twilio Verify

verify.ts
import twilio from "twilio";

const client = twilio(process.env.TWILIO_ACCOUNT_SID!, process.env.TWILIO_AUTH_TOKEN!);

try {
  const verification = await client.verify.v2
    .services(process.env.TWILIO_VERIFY_SERVICE_SID!)
    .verifications.create({
      to:      "+15551234567",
      channel: "sms",
    });
  console.log(verification.sid, verification.status);
} catch (err) {
  console.error(err);
}

Bird

verify.ts
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });

const { data, error } = await bird.verify.verifications
  .create(
    {
      to:      { phone_number: "+15551234567" },
      options: { code_length: 6, channels: ["sms"] },
    },
  )
  .safe();

if (error) console.error(error.message);
else console.log(data.id, data.status);

Coût de migration

Que faut-il modifier avant la bascule ?

Inventoriez les canaux, modèles, règles de risque et chemins de repli de chaque Service. Identifiez les destinataires pris en charge et la configuration à l'aide du guide de migration Twilio. Conservez ou repensez tout chemin d'appel, SNA ou message personnalisé dont vous dépendez et que le contrat Bird ne propose pas.

Basculez d'abord les nouvelles créations, puis dirigez chaque vérification vers le fournisseur qui a émis son code jusqu'à l'expiration des vérifications en cours. Conservez le résultat applicatif réussi et testez le renvoi, le changement de canal, l'expiration du code et le comportement en cas de tentatives épuisées. Le guide des expéditeurs de Bird indique les identités et les messages que les utilisateurs reçoivent.

Que vérifier avant de choisir ?

Bird est-il une alternative à Twilio Verify pour SMS et l'e-mail ?
Bird envoie et vérifie des codes pour les destinataires e-mail et téléphone pris en charge, avec une sélection de canal par pays. Évaluez le plan de destination réel et vos chemins de repli. Les options d'appel et SNA de Twilio nécessitent une décision distincte si votre application en dépend.
Une deuxième requête Twilio génère-t-elle un code différent ?
Twilio indique que le jeton reste identique pendant sa période de validité jusqu'à la réussite de la vérification. Le renvoi au destinataire de Bird envoie un nouveau code après le délai de récupération, les codes précédents restant valides pour la vérification en cours. Testez la gestion des codes et le comportement de réessai séparément.
Puis-je migrer tous les modèles et paramètres régionaux Twilio ?
Le create de Twilio accepte des options de modèle et de langue. L'option options.language de Bird choisit une traduction intégrée, tandis que la formulation du message et les expéditeurs suivent la politique de canal de Bird. Vérifiez le message côté destinataire avant la bascule.
Un 404 signifie-t-il que l'utilisateur a échoué la vérification ?
Non. Le point de terminaison de vérification de Bird renvoie 404 E13000 lorsqu'aucune vérification active ne correspond, y compris après achèvement. Le Verification Check de Twilio renvoie également 404 après la suppression d'une vérification approuvée, expirée ou ayant atteint le nombre maximal de tentatives. Conservez le premier résultat réussi dans votre application.

Intégrez la vérification à votre produit.

Échangez avec notre équipe sur vos canaux, votre flux de vérification et le trafic prévu.

Vos coordonnées

Produits d'intérêt

Facultatif

Votre prochaine idée.
Prête à se connecter.