# 텔레그램 봇 만드는 법

단계별 안내: @BotFather, /newbot, 토큰, 명령어, 버튼, 코드 실행.

https://shiba-bank.com/ko/guides/create-telegram-bot

2026. 10. 2. 업데이트 · 3분 분량

텔레그램 봇은 공식 봇 [@BotFather](https://t.me/botfather)와의 채팅에서 만듭니다. `/newbot`을 보내 봇의 이름을 정하고 `bot`으로 끝나는 사용자 이름을 고르세요. BotFather가 토큰을 보내 주는데, 이것이 내 프로그램이 봇을 제어하는 열쇠입니다. 봇을 만드는 데 비용은 들지 않습니다. 텔레그램은 봇 플랫폼에 대해 사용자에게도 개발자에게도 요금을 받지 않습니다. 다만 BotFather는 봇을 등록해 줄 뿐입니다. 봇이 누군가에게 답하려면 내 컴퓨터나 서버에서 프로그램이 실행되고 있어야 합니다.

## BotFather에서 봇 만드는 방법

1. [@BotFather](https://t.me/botfather)를 열고 시작을 누릅니다.
2. `/newbot` 명령을 보냅니다.
3. 봇의 **이름**, 즉 표시되는 이름을 입력합니다.
4. **사용자 이름**을 입력합니다. 봇의 주소이며 `@my_shop_bot` 같은 형태입니다. 5자에서 32자, 라틴 문자, 숫자, 밑줄만 쓸 수 있고 `bot`으로 끝나야 합니다.
5. BotFather가 **토큰**을 보내 줍니다. 이제 봇이 생겼습니다.

> **중요:** 이름은 나중에 `/setname`으로 바꿀 수 있지만, 텔레그램 문서에 따르면 사용자 이름은 만든 뒤에는 바꿀 수 없으니 신중하게 고르세요.

## 토큰: 무엇이고 어떻게 안전하게 보관하나

토큰은 콜론으로 나뉜 숫자와 문자로 보입니다. 이것을 가진 사람은 봇을 완전히 제어할 수 있으므로, 텔레그램은 안전한 곳에 보관하고 직접 접근이 필요한 사람에게만 공유하라고 권합니다.

- 토큰을 공개 코드, GitHub, 채팅에 올리지 마세요.
- 유출되었다면, 텔레그램 문서에 따르면 BotFather의 `/token` 명령으로 새 토큰을 만들 수 있습니다. 그다음 프로그램이 토큰을 쓰는 모든 곳을 갱신하세요.
- 토큰은 봇 전용입니다. `api_id`와 `api_hash`는 사용자로 로그인하는 프로그램을 위한 다른 키입니다: 받는 방법.

## BotFather에서 설정할 것

`/mybots`는 내 봇들의 설정을 대화형 메뉴로 열어 주며, [BotFather 미니 앱](https://t.me/botfather?startapp)에서도 같은 것을 할 수 있습니다. 봇의 겉모습은 별도의 명령으로도 정할 수 있습니다.

- `/setname` — 봇의 이름.
- `/setdescription` — 봇의 설명으로, 최대 512자의 짧은 글입니다.
- `/setabouttext` — “소개” 정보로, 최대 120자의 더 짧은 글입니다.
- `/setuserpic` — 봇의 프로필 사진.
- `/setcommands` — 명령어 목록. 누군가 `/`를 입력하면 텔레그램이 이를 제안합니다.
- `/setjoingroups` — 봇을 그룹에 추가할 수 있는지 여부.
- `/setprivacy` — 그룹에서 봇이 받는 메시지의 범위.
- `/deletebot` — 봇을 삭제하고 사용자 이름을 반환합니다.

## 봇이 답하게 만들기

봇은 [Bot API](https://core.telegram.org/bots/api)를 통해 텔레그램과 대화하는 프로그램입니다. 모든 요청은 `https://api.telegram.org/bot<token>/METHOD`로 갑니다. 메시지를 받는 방법은 두 가지이며, 동시에 쓸 수는 없습니다.

- **getUpdates**(롱 폴링): 내 프로그램이 텔레그램에 새 메시지를 요청합니다. 공개 주소가 필요 없어 시작하기 가장 쉽습니다.
- **웹훅**: 텔레그램이 내 서버로 메시지를 보냅니다. HTTPS와 443, 80, 88, 8443 중 하나의 포트가 필요합니다.

HTTP 요청을 보낼 수 있는 언어라면 무엇으로든 코드를 쓸 수 있습니다. 널리 쓰이는 라이브러리로는 Python용 aiogram과 python-telegram-bot, JavaScript용 grammY와 Telegraf가 있습니다. 공식 튜토리얼은 Java 봇을 처음부터 끝까지 다룹니다: [BotFather에서 “Hello World”까지](https://core.telegram.org/bots/tutorial). 봇은 내 컴퓨터가 켜져 있는 동안 그 컴퓨터에서 실행하거나, 하루 종일 작동하도록 VPS에서 실행할 수 있습니다.

## 봇의 버튼과 명령어

- **명령어**는 봇이 처리하는 `/start` 같은 단어이며, 힌트 목록은 `/setcommands`로 정합니다.
- 메시지 아래의 **인라인 버튼**은 채팅에 텍스트를 보내지 않고, 봇에게 눌림을 전달하거나 링크를 엽니다.
- **응답 키보드**는 일반 키보드 대신 미리 준비된 답변을 보여 줍니다.
- **미니 앱**은 텔레그램 안에서 열리는 완전한 인터페이스입니다.

자세한 내용은 [봇 기능 개요](https://core.telegram.org/bots/features)에 있습니다.

## 봇의 결제

봇의 디지털 상품과 서비스는 Telegram Stars로 결제합니다. 청구서는 통화 `XTR`을 쓰며 결제 제공업체가 필요 없습니다. 설정 방법은 내 봇에서 Stars 받기에 있고, 봇이 모은 Stars는 Fragment를 통해 출금합니다: [봇에서 Stars 출금하는 방법](https://shiba-bank.com/ko/guides/withdraw-stars-from-bot).

> **팁:** 내 프로그램이 사용자를 위해 Stars나 Premium을 사야 하나요? Shiba Bank 봇에는 이를 위한 API가 있습니다: Telegram Stars API.

[모든 것이 텔레그램 안에서 — 앱 열기](https://t.me/barboskich_stars_bot?startapp=site_ai_ko)

## 자주 묻는 질문

### 코딩 없이 텔레그램 봇을 만들 수 있나요?
@BotFather로 봇을 등록하는 것은 1분이면 되지만, 봇이 무언가를 하게 하려면 코드가 필요합니다. 텔레그램도 봇을 만들려면 적어도 어느 정도의 프로그래밍 능력이 필요하다고 안내합니다.

### 텔레그램 봇을 만드는 데 비용이 얼마나 드나요?
들지 않습니다. 텔레그램은 봇 플랫폼에 대해 사용자에게도 개발자에게도 요금을 받지 않습니다. 봇을 직접 서버에 올린다면 그 서버 비용만 내면 됩니다.

### BotFather란 무엇인가요?
봇을 만들고 이름, 설명, 사진, 명령어, 토큰을 관리하는 텔레그램의 공식 봇입니다.

### BotFather 토큰은 어떻게 받나요?
토큰은 `/newbot` 직후에 도착합니다. 유출되었다면 BotFather의 `/token` 명령이 새 토큰을 발급해 줍니다.

### 봇의 사용자 이름은 어떤 것이 가능한가요?
5자에서 32자의 라틴 문자, 숫자, 밑줄이며 반드시 `bot`으로 끝나야 합니다. 예: `my_shop_bot`.

### 텔레그램 봇에 버튼은 어떻게 추가하나요?
버튼은 봇의 코드에서 정의합니다. 메시지 아래의 인라인 버튼과 응답 키보드가 있습니다. `/` 메뉴의 명령어 목록은 BotFather에서 `/setcommands`로 정합니다.
