---
title: "Connecter un fournisseur VoIP"
description: "Connectez un fournisseur que vous utilisez déjà (Twilio ou Telnyx via clé API ; SignalWire, Vonage, Plivo ou n’importe quel trunk SIP via SIP), ou ouvrez un nouveau compte Telnyx avec une configuration guidée."
---

Le trafic de production doit passer par des numéros que vous possédez via votre propre
fournisseur VoIP. La page **Connexions → VoIP** du tableau de bord
(`/dashboard/voip-connections`) connecte votre compte fournisseur ; une fois
connecté, importez les numéros compatibles avec les appels **entrants et sortants**.

Cliquez sur **Nouvelle connexion** et choisissez l’une des deux options : **Connecter un fournisseur que vous utilisez déjà** ou **Configurer un nouveau compte Telnyx**.

## Connectez un fournisseur que vous utilisez déjà

Choisissez le fournisseur auprès duquel se trouvent vos numéros :

| Fournisseur | Mode de connexion |
|----------|-----------------|
| Twilio | Clé API : collez votre SID de compte et votre jeton d’authentification |
| Telnyx | Clé API : collez votre clé API v2 |
| SignalWire | Configuration SIP |
| Vonage | Configuration SIP |
| Plivo | Configuration SIP |
| Autre fournisseur | Configuration SIP avec l’assistant de configuration de ThunderPhone, pour tout autre opérateur ou PBX que vous exploitez |

Pour Twilio et Telnyx, collez les identifiants et cliquez sur **Connecter et
tester**. ThunderPhone les vérifie et configure le fournisseur pour vous.
Pour Telnyx, ThunderPhone ajoute une connexion SIP lui appartenant à votre
compte Telnyx (nommée `thunderphone-production-<org>-outbound-<id>`) et passe
les appels sortants par son intermédiaire ; Telnyx vous facture donc ces appels.
ThunderPhone utilise le profil vocal sortant de la connexion Telnyx sur laquelle
se trouvent vos numéros ; les pays autorisés et les limites de dépenses de ce
profil s’appliquent donc. Si cette connexion ne dispose d’aucun profil vocal
sortant et que votre compte possède exactement un profil activé, ThunderPhone
utilise celui-ci. Pour en utiliser un autre, attribuez-le à la connexion dans le
portail Telnyx, puis enregistrez de nouveau la connexion ThunderPhone. Si le
compte ne possède aucun profil activé, ou en possède plusieurs, attribuez-en un
à la connexion dans le portail Telnyx, puis enregistrez de nouveau la connexion
ThunderPhone. D’ici là, les appels sortants échouent avec
`outbound_trunk_unavailable` ; les appels entrants continuent de fonctionner.

Lorsque Telnyx refuse un appel sortant (par exemple SIP 403 Forbidden), le refus
provient de votre propre compte Telnyx. Les causes habituelles sont l’absence de
crédit disponible, un numéro d’appelant qui n’appartient pas à ce compte Telnyx,
ou un profil vocal sortant qui n’autorise pas le pays de destination.

### Configuration SIP pour SignalWire, Vonage et Plivo

Ces trois options ouvrent le [formulaire SIP manuel](#manual-sip-configuration)
avec les étapes propres à ce fournisseur en haut de page, un lien vers le guide
de configuration du fournisseur et un exemple de domaine SIP :

- **SignalWire :** créez des identifiants SIP pour les appels sortants, saisissez
  le domaine SIP, le nom d’utilisateur et le mot de passe, puis attribuez à
  chaque numéro un script SWML qui connecte les appels entrants au point de
  terminaison SIP ThunderPhone.
- **Vonage :** dans le tableau de bord SIP Trunking, créez un trunk avec des
  identifiants sortants, saisissez son domaine (par exemple
  `your-trunk.sip-us.vonage.com`) et les identifiants, ajoutez le point de
  terminaison SIP ThunderPhone comme URI SIP entrant du trunk, puis associez vos
  numéros au trunk.
- **Plivo :** créez un trunk sortant avec un identifiant et saisissez son domaine
  SIP de terminaison (`<trunk-id>.zt.plivo.com`), le nom d’utilisateur et le mot
  de passe ; créez un trunk entrant dont l’URI principale est le point de
  terminaison SIP ThunderPhone suivi de `;transport=tcp` ; définissez ensuite le
  type d’application de chaque numéro sur ce trunk.

Le résultat est une connexion SIP manuelle (`provider: "manual"` dans l’API),
testée et vérifiée exactement comme une connexion saisie à la main. La carte de
connexion affiche le nom du fournisseur, par exemple
**SignalWire · SIP**.

## Configurer un nouveau compte Telnyx

Vous n’avez pas encore de fournisseur ? Le flux guidé vous accompagne pour ouvrir un compte Telnyx
et le connecter :

<Steps>
  <Step title="Créer le compte">
    Cliquez sur **Ouvrir l’inscription Telnyx**, créez votre compte, puis cochez
    « J’ai créé mon compte. »
  </Step>
  <Step title="Obtenir une clé API">
    Cliquez sur **Ouvrir la page des clés API**, générez une clé, puis collez-la dans
    **Clé API (v2)**. Vous pouvez également nommer la connexion.
  </Step>
  <Step title="Connecter et tester">
    Cliquez sur **Connecter et tester** — ThunderPhone vérifie les identifiants
    et provisionne les éléments nécessaires côté Telnyx avant l’enregistrement.
  </Step>
</Steps>

### Ce que ThunderPhone configure dans Telnyx

Sauf si vous saisissez votre propre ID de connexion, les deux méthodes Telnyx (la
configuration guidée et le collage d'une clé API) créent le même élément dans votre
compte Telnyx : une connexion SIP nommée
`thunderphone-<your organization id>`. Il s'agit d'une **connexion FQDN**
dont l'enregistrement FQDN pointe vers le point de terminaison SIP de ThunderPhone, et
chaque numéro que vous importez lui est attribué. Telnyx envoie les appels destinés à ces
numéros directement à ThunderPhone via SIP.

- Ses champs de webhook sont volontairement vides. Aucun webhook, aucune application
  Call Control, aucune application TeXML ni aucun téléphone SIP enregistré n'est impliqué.
- Ne déplacez pas les numéros importés vers une autre connexion ou application, et
  n'enregistrez pas d'appareil sur cette connexion.
- Si vous avez saisi votre propre ID de connexion lors de la connexion, ThunderPhone
  utilise cette connexion à la place et ne la modifie jamais ; il doit s'agir d'une
  connexion FQDN pointant vers le point de terminaison SIP de ThunderPhone.

Avant le 30 août 2026, la connexion `thunderphone-…` créée par ThunderPhone
était une **connexion Credential**, qui ne peut pas recevoir d'appels.
Si la vôtre apparaît encore comme une connexion Credential, contactez le support et
nous la convertirons.

## Configuration SIP manuelle

Les vignettes SignalWire, Vonage et Plivo ouvrent ce formulaire, tout comme
**Je saisirai moi-même chaque paramètre** sous **Autre fournisseur**. Tout trunk SIP fonctionne, y compris DIDWW ou un PBX que vous exploitez
vous-même. Saisissez le nom de la connexion, le **domaine / URI SIP**,
le nom d’utilisateur et le mot de passe facultatifs, le port et le transport ; les **Paramètres
avancés** ajoutent le chiffrement des médias (SRTP). Le formulaire affiche également l’adresse SIP à laquelle votre trunk doit envoyer les appels entrants : `sip.thunderphone.com`,
sur le port 5060 pour UDP ou TCP, ou 5061 pour TLS. Avec TLS, la
signalisation SIP reste chiffrée jusqu’à LiveKit Cloud, où
ThunderPhone gère l’appel ; l’audio ne transite jamais par
`sip.thunderphone.com`, donc SRTP fonctionne comme auparavant. Adressez chaque appel au
numéro composé au format E.164, avec le même numéro, y compris le
`+`, dans la ligne de requête et l’en-tête `To` : par exemple
`sip:+14155550142@sip.thunderphone.com`. Le `+` permet à
ThunderPhone de traiter l’appel dans la bonne région (voir la note sous
[Liste d’autorisation IP](#ip-allowlisting-and-trunk-authentication)).
Les trunks configurés auparavant avec une adresse `<your-project>.sip.livekit.cloud`
continuent de fonctionner tant que **IP sources autorisées** est vide ; vous n’avez pas besoin de les modifier. ThunderPhone
transforme ces paramètres en une paire dédiée de trunks SIP sur LiveKit
Cloud : les appels sortants
depuis les numéros de la connexion sont acheminés vers votre domaine SIP avec vos
identifiants, et les appels entrants vers ces numéros sont acceptés depuis n’importe
quelle adresse, sauf si vous renseignez le champ facultatif **IP sources autorisées**.
Renseignez-le uniquement si votre opérateur publie des IP de signalisation fixes : une liste erronée
ou incomplète amène ThunderPhone à refuser les appels entrants de votre opérateur. Deux boutons effectuent l’essentiel :

- **Générer le guide de configuration IA** — rédige des instructions spécifiques
  au fournisseur pour la configuration de liaison requise.
- **Tester et enregistrer la connexion** — vérifie que le point de terminaison SIP se résout
  vers une adresse publique et que, pour TCP/TLS, il accepte une connexion sur le port
  choisi (les hôtes UDP ne reçoivent que la vérification DNS), puis enregistre. Il ne peut pas
  encore placer d'appel, car la connexion n'a aucun numéro ; la véritable vérification a lieu
  lors de l'importation (ci-dessous).

Modifier une connexion ultérieurement relance la même vérification sur vos
paramètres modifiés avant tout enregistrement, puis reconstruit le trunk et
revérifie chaque numéro de la connexion avec un court appel de test en
arrière-plan — les numéros apparaissent comme *Provisionnement* jusqu’à ce que leur appel de
test réussisse. Modifier uniquement **IP sources autorisées** sur une connexion
*Connectée* est différent : cela n’affecte jamais les appels sortants, donc
ThunderPhone met immédiatement à jour la liste sur le trunk entrant et les
numéros restent *Actifs*. Leur test d’appel entrant est réinitialisé à *non testé* ;
relancez-le ou passez un appel réel via votre opérateur pour confirmer que la
nouvelle liste laisse passer les appels. Le test échoue lorsque son appel serait refusé
par la liste. Les mots de passe enregistrés ne sont jamais réaffichés ; laissez le
mot de passe vide pour le conserver, ou cochez « Supprimer le mot de passe enregistré » pour un
trunk authentifié par IP.

### Liste d'autorisation IP et authentification de liaison

Certains opérateurs (DIDWW, connexions Telnyx avec authentification IP, la plupart des PBX derrière un
pare-feu) n'acceptent le trafic SIP que depuis des adresses que vous avez placées sur liste d'autorisation, ou
authentifient les appels sortants par IP source. ThunderPhone utilise deux ensembles
d'adresses.

**Périphérie SIP.** Les appels entrants que vous envoyez vers `sip.thunderphone.com` passent
par la périphérie SIP de ThunderPhone, qui ne transporte que la signalisation SIP. Le
premier INVITE est envoyé à `sip.thunderphone.com` ; le reste de la
signalisation de l'appel (ACK, raccrochage, transferts) s'effectue entre votre opérateur et le
serveur périphérique qui a pris l'appel, `sip-1` ou `sip-2`. Si votre pare-feu
filtre la signalisation SIP, autorisez les trois, sur les ports UDP et TCP 5060 et le
port TLS 5061 :

| Hôte | Adresse IP |
|------|------------|
| `sip.thunderphone.com` | `172.170.39.202` |
| `sip-1.thunderphone.com` | `13.86.104.121` |
| `sip-2.thunderphone.com` | `20.80.98.90` |

**LiveKit Cloud.** L'audio (RTP) de chaque appel, ainsi que la signalisation SIP
des appels sortants, circulent entre votre opérateur et LiveKit Cloud, jamais
via la périphérie SIP. Autorisez **toutes** les plages ci-dessous, pour la signalisation
SIP comme pour les médias :

{/* generated:livekit-static-ips:start */}
{/*
  GENERATED BLOCK — do not edit by hand.
  Source: scripts/docs-freshness/data/livekit-static-ips.json
  Regenerate: python3 scripts/docs-freshness/generate_livekit_static_ips.py
  CI regenerates this block and fails on drift
  (scripts/docs-freshness/generators.d/30-livekit-static-ips.sh).
*/}

| Plage d'adresses IP |
|----------|
| `143.223.88.0/21` |
| `161.115.160.0/19` |
| `153.57.128.0/18` |

LiveKit applique ces plages à Realtime, à la signalisation et aux médias SIP, ainsi qu'aux Webhooks, et elles couvrent les appels traités dans ses régions Canada, UE, Inde, Japon et États-Unis. Noms de région pour un point de terminaison fixé : `canada`, `eu`, `india`, `japan`, `us`.
{/* generated:livekit-static-ips:end */}

<Note>
  Les appels envoyés à `sip.thunderphone.com` sont traités dans une région prise en charge.
  Un numéro précédé d'un `+` dans l'en-tête `To` et comportant un indicatif de pays japonais, indien,
  de l'UE/EEE, britannique ou suisse est envoyé dans cette région. Tous les autres appels
  sont traités dans la région LiveKit la plus proche de la périphérie SIP de ThunderPhone,
  actuellement les États-Unis. Un trunk qui pointe encore vers une adresse `<your-project>.sip.livekit.cloud`
  est acheminé via la région LiveKit la plus proche de l'appelant, qui
  peut être hors des régions prises en charge si votre opérateur l'est. Déplacez-le vers
  `sip.thunderphone.com`, ou épinglez-le en insérant un nom de région juste
  avant `.sip.livekit.cloud` : par exemple
  `<your-project>.japan.sip.livekit.cloud`. La correspondance des numéros entrants n'est
  pas affectée.
</Note>

Quelques règles pratiques pour la liaison elle-même :

- **ThunderPhone ne s'enregistre pas.** Il n'envoie jamais de requête SIP `REGISTER` à
  votre opérateur ; configurez donc le trunk pour une authentification basée sur IP et/ou par identifiants
  (nom d'utilisateur + mot de passe), et non par enregistrement.
- **Les appels sortants doivent utiliser des identifiants.** Activez l'authentification par nom d'utilisateur/mot de passe
  côté opérateur et saisissez les mêmes valeurs dans le formulaire SIP manuel. Considérez la liste d'autorisation d'IP comme une seconde couche, et non comme
  la seule : les appels sortants vers des destinations hors des régions prises en charge
  peuvent provenir d'autres adresses.
- **Les appels entrants suivent la direction inverse.** Le champ facultatif **IP sources
  autorisées** du formulaire permet de saisir les adresses de signalisation de *votre opérateur* afin que ThunderPhone n'accepte que les appels provenant de celles-ci. Saisissez des adresses IP ou des plages CIDR ; les noms d'hôte ne correspondent jamais. Laissez ce champ vide
  sauf si votre opérateur publie une liste fixe. ThunderPhone vérifie la
  liste pour chaque appel entrant par rapport à l'adresse vue par sa périphérie SIP ; une
  fois la liste définie, envoyez vos appels à `sip.thunderphone.com`. Un
  appel provenant d'une adresse absente de la liste, ou envoyé directement vers une
  adresse `<your-project>.sip.livekit.cloud`, est refusé : il échoue ou
  se connecte puis se termine immédiatement.

Les plages sont publiées par LiveKit dans
[Régions, points de terminaison régionaux et IP statiques](https://docs.livekit.io/deploy/admin/regions/endpoints/) ;
ThunderPhone vérifie cette page chaque semaine et met à jour ce guide lorsqu'elle
change.

## Après la connexion

Importez des numéros depuis **Numéros de téléphone → Ajouter un numéro → Connecter un fournisseur VoIP** (ou directement depuis la connexion). Chaque numéro importé est vérifié avant d’être activé. Pour une connexion SIP manuelle, cette vérification effectue un court appel de test (quelques secondes) **depuis votre numéro, via votre trunk SIP, vers un numéro ThunderPhone** : le nom d’utilisateur, le mot de passe, le transport et le routage sortant de votre opérateur sont ainsi réellement testés. Votre opérateur facture cet appel comme n’importe quel autre.

Si l’opérateur le refuse, le numéro reste en *Provisionnement* et la page des numéros de téléphone affiche la réponse de l’opérateur (par exemple, « identifiants ThunderPhone refusés (SIP 401) ») ; corrigez la connexion et vérifiez à nouveau. Si votre opérateur accepte le trunk, mais que son plan de routage ne couvre pas le numéro de test ThunderPhone (DIDWW répond « Numéro de destination mis sur liste noire par le plan de routage »), le numéro s’affiche comme *Vérifié · opérateur accepté* : il est utilisable, mais les appels vers d’autres destinations n’ont pas été testés. Cet appel prouve que votre trunk peut *émettre* des appels en utilisant ce numéro ; il ne prouve pas que vous possédez le numéro et ne teste pas les appels *vers* ce numéro ; le test entrant facultatif ci-dessous le fait. Les numéros vérifiés prennent en charge les appels entrants et sortants, ce qui débloque les [campagnes sortantes](/fr/guides/outbound-campaigns) et les [appels sortants](/fr/guides/place-outbound-calls) programmatiques.

### Test d'appel entrant

**Vérifier le numéro** ouvre une boîte de dialogue qui peut également tester les appels
entrants. Le test appelle votre numéro, vérifie que l'appel atteint
ThunderPhone, puis raccroche sans démarrer votre agent :

- **Les numéros disposant de leur propre trunk SIP sortant** (numéros SIP manuels et
  numéros Twilio une fois que ThunderPhone a configuré les appels sortants dans votre
  compte Twilio) s'appellent d'abord eux-mêmes : ThunderPhone compose le numéro
  depuis ce numéro, via ce trunk. La boîte de dialogue vous l'indique avant de
  passer l'appel. L'appel sort via votre opérateur et, si votre routage entrant est
  correct, revient directement vers ThunderPhone. Lorsqu'il revient avec l'identifiant
  de l'appelant du numéro lui-même, cet unique appel prouve à la fois que votre
  opérateur accepte les appels de ThunderPhone comme provenant de ce numéro et que les
  appels vers ce numéro atteignent ThunderPhone, dans n'importe quel pays. Certains
  opérateurs refusent ou ne connectent pas un appel d'un numéro vers lui-même ; cela
  n'indique rien sur votre routage. ThunderPhone appelle alors depuis l'un de ses
  propres numéros. Si votre numéro est transféré ailleurs, ce téléphone peut sonner
  deux fois : d'abord en affichant l'identifiant de l'appelant du numéro lui-même, puis
  le numéro de test de ThunderPhone.
- **Les autres numéros** (ainsi que la solution de repli ci-dessus) sont appelés depuis
  l'un des propres numéros de ThunderPhone. ThunderPhone ne peut actuellement passer
  ces appels que vers des numéros américains et canadiens ; pour les autres numéros, le
  test indique qu'il n'a pas pu être exécuté, avec la réponse de votre opérateur si
  l'auto-appel a été refusé.

Si votre opérateur modifie l'identifiant de l'appelant en chemin, ThunderPhone ne peut
pas reconnaître l'appel. Votre agent peut donc y répondre pendant un instant. Le test
entrant est facultatif. Ignorez-le et le numéro fonctionnera quand même ; la page des
numéros de téléphone affichera alors *Entrant non testé*, et vous pourrez l'exécuter
plus tard avec **Tester** ou l'élément de menu **Tester les appels entrants** du numéro.
Juste après une importation, la page des numéros de téléphone vous demande également de
tester les appels entrants sur les nouveaux numéros. Aucun appel n'est composé tant que
vous ne confirmez pas dans la boîte de dialogue.

Si votre fournisseur envoie le numéro ailleurs, ce vers quoi il pointe peut sonner
pendant jusqu'à 8 secondes par appel avant que ThunderPhone ne raccroche. Si quelque
chose répond d'abord (une application Twilio qui répond puis transfère, un menu
téléphonique), le test attend que l'appel transféré atteigne ThunderPhone :
jusqu'à 8 secondes pour l'auto-appel et 15 secondes pour un appel depuis un numéro
ThunderPhone. Le résultat reste associé au numéro (*Entrant* réussi ou
échoué) jusqu'à ce que vous modifiiez la connexion ou réimportiez le numéro, ce qui le
réinitialise à *non testé*. Modifier une connexion revérifie les appels sortants en
arrière-plan, mais n'appelle jamais votre numéro sans vous le demander.

## Résolution des problèmes d'appels entrants

Le bouton **Tester** de la connexion vérifie les identifiants, et la vérification
contrôle les appels sortants. Pour vérifier les appels entrants, exécutez le test d'appel
entrant ci-dessus, ou appelez le numéro depuis un téléphone et recherchez l'appel dans
**Historique des appels**.
Les tests **Parler** dans le navigateur et les simulations de bot à bot ne passent pas par
votre opérateur ; ils n'indiquent donc pas si les appels entrants fonctionnent. Une simulation
qui cible le numéro de téléphone (bouclage SIP) le compose bien via votre
opérateur ; si elle reçoit une réponse, elle teste donc le routage entrant.

- **Vous entendez le message de votre opérateur mobile** (par exemple « Bienvenue
  chez Verizon » ou « le numéro que vous avez composé n'est pas en service ») : l'
  appel a échoué avant d'atteindre ThunderPhone. Vérifiez que le numéro est
  actif dans votre compte fournisseur et attribué à la connexion ou au trunk
  ThunderPhone.
- **Tonalité d'occupation ou l'appel sonne sans réponse :** le fournisseur a accepté l'appel
  mais n'a pas pu le livrer. Avec Telnyx, vérifiez la
  **Connexion** du numéro dans le portail Telnyx : il doit s'agir de la connexion FQDN
  `thunderphone-…` décrite ci-dessus, ou de votre propre connexion FQDN
  pointant vers le point de terminaison SIP de ThunderPhone. Avec Twilio, le
  numéro doit être associé au trunk SIP ThunderPhone plutôt qu'à un webhook
  Voice ou à une application TwiML.
- **Les journaux de votre opérateur affichent `404 No trunk found`** (SIP manuel) : l'
  appel a atteint ThunderPhone, mais ne correspondait à aucun trunk. Vérifiez que le numéro
  est importé dans cette connexion et que le trunk pointe vers
  `sip.thunderphone.com`. S'il pointe vers une adresse
  `<your-project>.sip.livekit.cloud`, les **IP sources autorisées**
  doivent être vides : lorsqu'une liste est définie, seuls les appels envoyés à
  `sip.thunderphone.com` sont acceptés.
- **`404 Not Found` depuis `sip.thunderphone.com`** (SIP manuel) : l'
  appel n'était pas adressé à un numéro de téléphone, ou la ligne de requête et l'
  en-tête `To` indiquent des numéros différents. Envoyez le numéro composé dans les deux,
  comme ci-dessus.
- **`403 Forbidden` depuis `sip.thunderphone.com` :** la ligne de requête
  indique un autre hôte. Adressez l'appel à `sip.thunderphone.com`, par
  exemple `sip:+14155550142@sip.thunderphone.com`.
- **L'appel atteint ThunderPhone, mais le mauvais agent répond, ou personne ne répond :**
  vérifiez l'agent entrant du numéro dans **Numéros de téléphone**.

Le copilote intégré à l'application peut vérifier un numéro pour vous : demandez-lui pourquoi les appels vers
ce numéro échouent. Pour les connexions Telnyx, il recherche également, en lecture seule et pour les
administrateurs de l'organisation, la connexion à laquelle Telnyx attribue le numéro.

---

## Étapes suivantes

<CardGroup cols={2}>
  <Card title="Obtenir un numéro de téléphone" icon="phone" href="/fr/guides/get-a-phone-number">
    Le flux complet d’ajout de numéro, les numéros ThunderPhone et la VoIP.
  </Card>
  <Card title="Apporter vos propres numéros (API)" icon="code" href="/fr/guides/bring-your-own-numbers">
    Le même flux de connexion, d’importation et de vérification via REST.
  </Card>
  <Card title="Lancer des campagnes sortantes" icon="megaphone" href="/fr/guides/outbound-campaigns">
    Listes CSV, plages horaires d’appel et politique de relance.
  </Card>
  <Card title="Référence des connexions VoIP" icon="phone-volume" href="/api-reference/voip-connections">
    Tous les champs des connexions, des preuves et des importations.
  </Card>
</CardGroup>
