> ## 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.

# Telegram 権限

> 支払いを行った顧客を、購読や購入時に自動的にプライベートなTelegramチャットやチャンネルに追加します。

<Info>
  Telegramの権限により、支払いを行った顧客がプライベートチャットやチャンネルにアクセスできます。Dodo PaymentsのTelegramボットは、各顧客に一回限りの招待リンクを生成し、キャンセル時に削除します。
</Info>

## 何が提供されるか

* ボットが招待を準備する間、権限は `pending` に作成され、リンクが準備できると `delivered` に移行します。
* 顧客は、配信メールとカスタマーポータルで一回限りのTelegram招待リンクを受け取ります。
* リンクをタップすると、ボットが設定されたチャットに追加します。
* キャンセル、返金、または手動の取り消し時には、ボットがチャットから削除します。

一般的な使い道には、プライベートアルファチャンネル、有料シグナルグループ、コミュニティ層の特典があります。

## Telegramの接続

<Steps>
  <Step title="Open Entitlements">
    Dodo Paymentsダッシュボードで**Entitlements**に移動し、**+**をクリックしてから**Telegram Access**を統合として選択します。ダッシュボードは、ボットが管理するチャットの所有権を確認するためにTelegramユーザーIDを求めます。

    <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="TelegramユーザーIDとTelegram接続ボタンのプロンプトを表示する新しい権限Telegramアクセスフォーム" style={{ maxHeight: '500px', width: 'auto' }} width="2000" height="1131" data-path="images/entitlements/telegram/connect-prompt.png" />
    </Frame>

    <Tip>
      次の2つのステップはTelegramでのセットアップタスクで、順序は自由です。ユーザーIDを取得して、ボットを管理者としてチャットに追加します。両方が完了したら、ダッシュボードに戻って最終ステップを実施してください。
    </Tip>
  </Step>

  <Step title="Get your Telegram user ID">
    Telegramで **`/start`** にメッセージを送信します：

    * **`@dodo_payments_bot`** を使用する場合、**ライブモード**
    * **`@DodoPaymentsTestBot`** を使用する場合、**テストモード**

    ボットが数値のTelegramユーザーIDと共に返信します。それをコピーして、最後のステップでダッシュボードに貼り付けます。
  </Step>

  <Step title="Add the bot to your chat as an admin">
    制限を掛けたいTelegramグループまたはチャンネルで、メンバーリストを開き、**管理者として同じボットを追加します**（ライブの場合は `@dodo_payments_bot`、テストの場合は `@DodoPaymentsTestBot`）この2つの権限を有効にしてください：

    * **Ban Users** — 取り消し時にメンバーを削除するために必要です
    * **Add Users** — 支払いを行った顧客を招待するために必要です

    他の管理権限はすべてオフにしてください。

    <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="Ban UsersとAdd UsersがDodo Paymentsボットのために有効になっているTelegram管理者に昇格画面" 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">
    ダッシュボードに戻り、ステップ2からのユーザーIDを**TelegramユーザーID**に貼り付け、**Connect Telegram**をクリックします。チャットピッカーには、ボットが管理者としているすべてのグループとチャンネルがリストされます。制限を掛けたいものを選択して、権限に名前を付け、**Create Entitlement**をクリックします。
  </Step>
</Steps>

## 顧客フロー

1. 顧客がチェックアウトを完了します。
2. Dodo Paymentsが `pending` 権限を作成し、ボットに設定されたチャットへの一回限りの招待リンクを生成するよう依頼します。
3. リンクの準備が整うと、権限は `delivered` に移行し、リンクは配信メールとカスタマーポータルに含まれます。
4. 顧客がリンクをタップしてチャットに追加されます。
5. 取り消し時には、ボットが顧客をチャットから削除します。

<Tip>
  招待リンクは一回限りで、顧客が参加した後に無効になります。参加前にリンクを失った場合は、配信メールを再送信するか、ダッシュボードから権限を取り消して再作成してください。
</Tip>

## 必要な構成

| フィールド     | 必須 | 説明                                                                |
| --------- | -- | ----------------------------------------------------------------- |
| `chat_id` | はい | TelegramチャットID（数値、グループ/チャンネルの場合は多くの場合負）。ダッシュボードのピッカーによって自動入力されます。 |

## 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

[`entitlement_grant.*` webhookイベント](/developer-resources/webhooks/intents/entitlement-grant)を参照してください。Telegramの権利は `pending` として到着し、ボットが招待リンクを発行すると `delivered` に移行します。

## トラブルシューティング

<AccordionGroup>
  <Accordion title="Chat doesn't appear in the picker">
    Dodo Paymentsボットは、**Add Users**が有効な**管理者として**チャットに追加されなければなりません。ピッカーは実際の状態を読み込み、ボットが管理者になるとチャットが表示されます。
  </Accordion>

  <Accordion title="Customer says the invite link doesn't work">
    Telegramの一回限りのリンクは初回使用後に失効します。顧客がログアウトしたデバイスでタップしたり、リンクを失った場合は、権限を取り消して再発行します。
  </Accordion>

  <Accordion title="Customer cancelled but is still in the chat">
    ボットはメンバーを削除するために**Ban Users**管理権限が必要です。チャット設定を開き、Dodo Paymentsボットに**Ban Users**と**Add Users**の両方の権限がチェックされていることを確認してください。
  </Accordion>
</AccordionGroup>
