> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Droit Telegram

> Ajoutez automatiquement des clients payants à un chat ou canal Telegram privé lorsqu'ils s'abonnent ou achètent.

<Info>
  Le droit Telegram offre aux clients payants l'accès à un chat ou canal privé. Le bot Telegram de Dodo Payments génère un lien d'invitation à usage unique pour chaque client et les retire en cas d'annulation.
</Info>

## Ce qui est livré

* La subvention est créée en `pending` pendant que le bot prépare l'invitation, puis passe à `delivered` une fois le lien prêt.
* Le client reçoit un lien d'invitation Telegram à usage unique dans son email de livraison et son portail client.
* Ils touchent le lien et le bot les ajoute au chat configuré.
* En cas d'annulation, de remboursement ou de révocation manuelle, le bot les supprime du chat.

Les utilisations courantes incluent les canaux alpha privés, les groupes de signal payants et les avantages de niveau communauté.

## Connecter Telegram

<Steps>
  <Step title="Open Entitlements">
    Dans votre tableau de bord Dodo Payments, allez dans **Droits** et cliquez sur **+**, puis choisissez **Accès Telegram** comme intégration. Le tableau de bord vous demandera votre ID utilisateur Telegram pour que le bot puisse vérifier la propriété des chats qu'il gère.

    <Frame caption="New Entitlement → Telegram Access. The dashboard needs your Telegram user ID before it lists chats.">
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/telegram/connect-prompt.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=dbb8be6964b2cbfb9bbe9902944f3d5f" alt="Nouveau formulaire d'accès à l'accès Telegram demandant l'ID utilisateur Telegram et le bouton Connecter Telegram" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1131" data-path="images/entitlements/telegram/connect-prompt.png" />
    </Frame>

    <Tip>
      Les deux étapes suivantes sont des tâches de configuration sur Telegram et peuvent être effectuées dans n'importe quel ordre — obtenez votre ID utilisateur et ajoutez le bot en tant qu'administrateur de votre chat. Une fois les deux faites, retournez au tableau de bord pour l'étape finale.
    </Tip>
  </Step>

  <Step title="Get your Telegram user ID">
    Sur Telegram, envoyez un message à **`/start`** pour :

    * **`@dodo_payments_bot`** si vous utilisez **Mode Direct**
    * **`@DodoPaymentsTestBot`** si vous utilisez **Mode Test**

    Le bot répond avec votre ID utilisateur Telegram numérique. Copiez-le — vous le collerez dans le tableau de bord lors de la dernière étape.
  </Step>

  <Step title="Add the bot to your chat as an admin">
    Dans le groupe ou canal Telegram que vous souhaitez restreindre, ouvrez la liste des membres et **ajoutez le même bot en tant qu'administrateur** (`@dodo_payments_bot` pour le direct, `@DodoPaymentsTestBot` pour le test) avec ces deux autorisations activées :

    * **Bannir des utilisateurs** — nécessaire pour supprimer des membres en cas de révocation
    * **Ajouter des utilisateurs** — nécessaire pour inviter des clients payants

    Laissez toutes les autres autorisations d'administrateur désactivées.

    <Frame caption="Telegram → Promote to admin. Only Ban Users and Add Users need to be enabled.">
      <img src="https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/telegram/promote-bot-admin.png?fit=max&auto=format&n=do-W-dMDGVB_xzr_&q=85&s=bf927f2ee98616b671257d246de06cd3" alt="Écran de promotion à administrateur Telegram montrant Bannir Utilisateurs et Ajouter Utilisateurs activés pour le bot Dodo Payments" style={{ maxHeight: '500px', width: 'auto' }} width="734" height="1626" data-path="images/entitlements/telegram/promote-bot-admin.png" />
    </Frame>
  </Step>

  <Step title="Connect Telegram and pick the chat">
    De retour dans le tableau de bord, collez l'ID utilisateur de l'étape 2 dans **ID Utilisateur Telegram** et cliquez sur **Connecter Telegram**. Le sélecteur de chat répertorie désormais chaque groupe et canal où le bot est administrateur — choisissez celui que vous voulez restreindre, donnez un nom au droit et cliquez sur **Créer un Droit**.
  </Step>
</Steps>

## Flux client

1. Le client termine son achat.
2. Dodo Payments crée une subvention `pending` et demande au bot de générer un lien d'invitation à usage unique vers le chat configuré.
3. Une fois le lien prêt, la subvention passe à `delivered` et le lien est inclus dans l'email de livraison et le portail client.
4. Le client touche le lien et est ajouté au chat.
5. En cas de révocation, le bot retire le client du chat.

<Tip>
  Le lien d'invitation est à usage unique et expire après que le client ait rejoint. S'ils perdent le lien avant de rejoindre, régénérez-le en renvoyant l'e-mail de livraison ou en révoquant et recréant la subvention depuis le tableau de bord.
</Tip>

## Configuration requise

| Champ     | Requis | Description                                                                                                                       |
| --------- | ------ | --------------------------------------------------------------------------------------------------------------------------------- |
| `chat_id` | Oui    | L'ID du chat Telegram (numérique, souvent négatif pour les groupes/canaux). Le sélecteur de tableau de bord le remplit pour vous. |

## Créer via l'API

<CodeGroup>
  ```typescript TypeScript theme={null} theme={null}
  const entitlement = await client.entitlements.create({
    name: 'Premium Signals Group',
    integration_type: 'telegram',
    integration_config: {
      chat_id: '-1001234567890',
    },
  });
  ```

  ```python Python theme={null} theme={null}
  client.entitlements.create(
      name="Premium Signals Group",
      integration_type="telegram",
      integration_config={"chat_id": "-1001234567890"},
  )
  ```

  ```go Go theme={null} theme={null}
  client.Entitlements.New(ctx, dodopayments.EntitlementNewParams{
    Name:            dodopayments.F("Premium Signals Group"),
    IntegrationType: dodopayments.F(dodopayments.EntitlementIntegrationTypeTelegram),
    IntegrationConfig: dodopayments.F[dodopayments.IntegrationConfigUnionParam](
      dodopayments.IntegrationConfigTelegramConfigParam{
        ChatID: dodopayments.F("-1001234567890"),
      },
    ),
  })
  ```
</CodeGroup>

## Webhooks

Voir [événements webhook `entitlement_grant.*`](/developer-resources/webhooks/intents/entitlement-grant). Les droits Telegram arrivent `pending` et passent à `delivered` une fois que le bot a émis le lien d'invitation.

## Dépannage

<AccordionGroup>
  <Accordion title="Chat doesn't appear in the picker">
    Le bot Dodo Payments doit être ajouté au chat **en tant qu'administrateur** avec **Ajouter des utilisateurs** activé. Le sélecteur lit l'état en direct, donc le chat apparaît dès que le bot est administrateur.
  </Accordion>

  <Accordion title="Customer says the invite link doesn't work">
    Les liens à usage unique Telegram expirent après la première utilisation. Si le client l'a touché sur un appareil déconnecté ou a perdu le lien, révoquez la subvention et rééditez.
  </Accordion>

  <Accordion title="Customer cancelled but is still in the chat">
    Le bot a besoin de l'autorisation d'administrateur **Bannir des utilisateurs** pour supprimer des membres. Ouvrez les paramètres du chat et confirmez que **Bannir des utilisateurs** et **Ajouter des utilisateurs** sont cochés sur le bot Dodo Payments.
  </Accordion>
</AccordionGroup>
