Chuyển đến nội dung chính

Chăm sóc khách hàng

Nút bấm cho bot Telegram: reply keyboard, nút inline và xin số điện thoại hoặc vị trí chỉ với một chạm

Bot Telegram có hai loại nút và chúng hoạt động rất khác nhau. Reply keyboard gửi chữ vào cuộc trò chuyện và có thể xin số điện thoại hoặc vị trí; nút inline nằm dưới một tin nhắn, mở liên kết hoặc kích hoạt thao tác. Bài viết này giải thích khi nào dùng loại nào và cách thiết lập trong MonoChat.

Đội ngũ MonoChat Cập nhật: 10 phút đọc

Trong trang này
  1. Hai loại nút trong nháy mắt
  2. Reply keyboard: câu trả lời như thể khách tự gõ
  3. Nút inline: thao tác dưới một tin nhắn
  4. Dùng loại nào khi nào
  5. Cách tạo nút Telegram trong MonoChat
  6. Ví dụ: bot giao hàng của một nhà thuốc
  7. Những lỗi nên tránh
  8. Nguồn

Nút bấm quyết định bot Telegram của bạn giống một nhân viên tư vấn nhanh nhẹn hay một tờ khai. Khách có thể chạm “Theo dõi đơn hàng” hay “Gửi số điện thoại” sẽ trả lời trong một giây. Khách phải tự gõ mã đơn, số điện thoại đúng định dạng hay địa chỉ đầy đủ thường bỏ dở giữa chừng.

Telegram cung cấp cho bot hai loại nút rất khác nhau, và nhầm lẫn giữa chúng là lý do phổ biến nhất khiến bot trở nên vụng về. Bài viết giải thích reply keyboard và nút inline, cách xin số điện thoại hoặc vị trí chỉ với một chạm, và cách dựng tất cả trong MonoChat. Telegram cho biết có hơn 1 tỷ người dùng hoạt động; với các doanh nghiệp phục vụ khách nước ngoài, như khách sạn ở Đà Nẵng hay Phú Quốc hoặc doanh nghiệp xuất khẩu, bot thường là nơi khách gặp bạn đầu tiên.

Hai loại nút trong nháy mắt

Reply keyboardInline keyboard
Xuất hiện ở đâuThay cho bàn phím của khách, dưới ô nhập tin nhắnDưới một tin nhắn cụ thể
Chạm vào thì saoChữ trên nút được gửi vào cuộc trò chuyện, như thể khách gõGửi dữ liệu ẩn cho bot, mở liên kết hoặc Mini App; không có gì hiện trong chat
Xin được số điện thoại hoặc vị tríCó (request_contact, request_location), trong chat riêngKhông
Sau khi chạmCó thể tự ẩn (one_time_keyboard)Vẫn nằm dưới tin nhắn
Phù hợp choCâu trả lời cần nằm trong chat: menu, Có/Không, chia sẻ liên hệ hoặc vị tríThao tác trên một tin nhắn: liên kết, xác nhận/hủy, chọn từ thẻ

Trong Bot API, chúng là ReplyKeyboardMarkup với các đối tượng KeyboardButton, và InlineKeyboardMarkup với các đối tượng InlineKeyboardButton. Hướng dẫn bot của Telegram tóm gọn: khác với reply keyboard, bấm nút inline không gửi tin nhắn nào vào cuộc trò chuyện.

Reply keyboard: câu trả lời như thể khách tự gõ

Reply keyboard đổi bàn phím chữ của khách thành một lưới các nút của bạn. Khi khách chạm “Giờ mở cửa”, dòng chữ “Giờ mở cửa” xuất hiện trong chat từ phía khách, và bot đọc nó như mọi tin nhắn khác. Vì vậy nó rất hợp cho menu và câu trả lời ngắn: lịch sử chat dễ đọc, nhân viên mở cuộc trò chuyện sau đó thấy rõ khách đã chọn gì.

Một số tùy chọn quyết định cách nó hoạt động:

  • resize_keyboard thu chiều cao bàn phím vừa với số nút. Không có tùy chọn này, chỉ hai nút cũng chiếm cả chiều cao bàn phím.
  • one_time_keyboard ẩn bàn phím ngay sau khi dùng. Khách vẫn mở lại được bằng biểu tượng trong ô nhập, nhưng bàn phím chữ trở lại.
  • input_field_placeholder hiện gợi ý dài 1–64 ký tự trong ô nhập, ví dụ “Chọn một mục”.
  • is_persistent giữ các nút hiển thị kể cả khi bàn phím thường bị ẩn.

Vì mỗi lần chạm gửi chữ thường, nhãn nút cũng chính là khóa định tuyến. Hãy giữ nhãn ngắn, không trùng và cố định: nếu đổi “Theo dõi đơn” thành “Đơn của tôi đâu?”, nhớ cập nhật luôn điều kiện trong luồng đang chờ dòng chữ đó.

Xin số điện thoại bằng nút “Chia sẻ liên hệ”

Bot Telegram không bao giờ tự thấy số điện thoại của khách. Cách duy nhất là hỏi: một nút bàn phím có request_contact bằng true. Khi khách chạm vào, Telegram gửi số của họ cho bot dưới dạng danh bạ. Bot API ghi rõ tính năng này chỉ hoạt động trong chat riêng.

Cách này đáng tin hơn nhiều so với “vui lòng nhập số điện thoại”: không thiếu mã +84, không có khoảng trắng lạ, và đó chính là số đã đăng ký tài khoản Telegram. Đây là bước đầu tự nhiên khi bạn cần khớp khách với đơn hàng, lịch hẹn hay hồ sơ CRM.

Hai thói quen giúp khách sẵn lòng chạm hơn:

  1. Nói rõ lý do. “Anh/chị chia sẻ số điện thoại để bên em tìm đơn hàng nhé” hiệu quả hơn một nút trơn. Số điện thoại là dữ liệu cá nhân theo Nghị định 13/2023/NĐ-CP, nên nêu mục đích là điều nên làm.
  2. Chừa đường khác. Có khách không muốn chia sẻ số. Hãy nhận cả mã đơn hoặc email, hoặc chuyển chat cho nhân viên.

Xin vị trí

request_location hoạt động tương tự: một chạm gửi vị trí hiện tại của khách dưới dạng tin nhắn vị trí. Phù hợp cho địa chỉ giao hàng, chi nhánh gần nhất, cử kỹ thuật viên hoặc kiểm tra địa chỉ có nằm trong khu vực phục vụ không. Cũng chỉ trong chat riêng, và khách là người quyết định.

Nút inline: thao tác dưới một tin nhắn

Nút inline thuộc về một tin nhắn, nên hợp lý khi lựa chọn liên quan đến chính tin nhắn đó: “Xác nhận” và “Đổi giờ” dưới bản tóm tắt lịch hẹn, “Xem thực đơn” dưới lời chào của nhà hàng, “Thanh toán” dưới hóa đơn. Ba loại doanh nghiệp dùng nhiều nhất:

  • Nút callback gửi tối đa 64 byte dữ liệu (callback_data) cho bot. Không có gì hiện trong chat; bot quyết định bước tiếp theo.
  • Nút URL mở một trang web, ví dụ bảng giá hoặc trang tra cứu vận đơn GHN.
  • Nút Web App mở một Mini App ngay trong Telegram, ví dụ form đặt lịch hoặc catalog.

Một chi tiết quyết định cảm giác khi dùng bot. Sau khi chạm nút callback, Telegram hiển thị biểu tượng đang tải cho đến khi bot gọi answerCallbackQuery, và Telegram yêu cầu bot gọi lệnh này kể cả khi không cần hiển thị gì. Bot bỏ qua bước này sẽ để nút “đang tải” mãi, và khách bấm đi bấm lại.

Lưu ý về tài khoản Telegram Business. Nếu bạn kết nối bot với một tài khoản Telegram Business để bot trả lời trong các chat cá nhân của bạn, Telegram không hỗ trợ reply keyboard và nút Web App trong tin nhắn gửi thay mặt tài khoản đó. Chúng hoạt động trong chat với chính bot, và đó là cách một bot kết nối bằng token BotFather, như trong MonoChat, trò chuyện với khách.

Dùng loại nào khi nào

Tình huốngDùng
Menu chính: “Bảng giá”, “Giờ mở cửa”, “Gặp nhân viên”Reply keyboard (trả lời nhanh)
Có/Không, chấm điểm, chọn khung giờReply keyboard tự ẩn sau một chạm
Lấy số điện thoại của kháchNút chia sẻ liên hệ
Địa chỉ giao hàng hoặc chi nhánh gần nhấtNút gửi vị trí
Xác nhận hoặc hủy lịch hẹn trong tin nhắn nàyNút inline callback
Mở website, trang tra cứu đơn hoặc trang thanh toánNút inline URL
Form hoặc catalog ngay trong TelegramNút inline Web App

Quy tắc đơn giản: nếu câu trả lời cần hiện trong cuộc trò chuyện, dùng reply keyboard. Nếu nút thao tác trên một tin nhắn hoặc dẫn ra ngoài Telegram, dùng nút inline.

Cách tạo nút Telegram trong MonoChat

MonoChat kết nối bot Telegram của bạn bằng token BotFather (xem cách tạo bot và lấy token). Từ phiên bản 3.8.41 (1/11/2026), MonoChat gửi trả lời nhanh, yêu cầu vị trí và yêu cầu thông tin liên hệ dưới dạng nút reply keyboard của Telegram, hiển thị phần đầu là ảnh, video hoặc tài liệu của tin nhắn có nút, phản hồi mọi lần chạm để nút không còn quay mãi, và có thể hiện chỉ báo đang nhập.

1. Trả lời nhanh (reply keyboard). Trong luồng, thêm node Gửi tin nhắn (hoặc tạo một trong các Tin nhắn ngắn) và chọn loại Văn bản. Viết nội dung, bật Trả lời nhanh, rồi ở phần Nút bấm Thêm cho từng nút. Đặt Loại là text và viết nhãn nút cho từng ngôn ngữ bạn phục vụ. Telegram hiển thị các nút dưới ô nhập, hai nút mỗi hàng, vừa kích thước. Tin nhắn ảnh, video và tài liệu cũng có thể kèm trả lời nhanh.

2. Xin số điện thoại. Chọn loại Yêu cầu thông tin liên hệ và viết tin nhắn, ví dụ “Để tìm đơn hàng, anh/chị vui lòng chia sẻ số điện thoại.” Telegram hiển thị nút Chia sẻ thông tin liên hệ bằng ngôn ngữ của khách. Nút ẩn đi sau một chạm, và số điện thoại vào chat dưới dạng danh bạ. Một nút trả lời nhanh loại user-phone-number cũng làm việc tương tự trong menu.

3. Xin vị trí. Chọn loại Yêu cầu vị trí. Khách thấy nút Gửi vị trí, và vị trí của họ đến dưới dạng tin nhắn vị trí.

4. Nút inline. Chọn loại Nút. Chọn Loại tiêu đề nếu muốn có ảnh, video hoặc tài liệu ở trên, viết nội dung (tối đa 1.024 ký tự) rồi thêm nút: postback cho callback, web-url cho liên kết và app-url cho Mini App. Nhãn nút tối đa 20 ký tự. Lần chạm vào postback hiện trong chat dưới dạng Phản hồi nút.

5. Rẽ nhánh theo câu trả lời. Bắt đầu luồng bot bằng sự kiện Đã nhận tin nhắn mới và bật Là bot?. Sau câu hỏi, thêm node Nếu với điều kiện Nội dung tin nhắn cho nhãn trả lời nhanh, hoặc Loại tin nhắn để phân biệt liên hệ hay vị trí được chia sẻ với chữ khách gõ. Khách chọn “Gặp nhân viên” được chuyển đến node Phân công phiên.

6. Cho khách thấy bạn đang nhập. Trong cài đặt kênh, bật Bật chỉ báo đang nhập. Khách sẽ thấy “đang nhập” khi nhân viên gõ trong ô tin nhắn và khi một node AI trong luồng đang soạn câu trả lời; khi ảnh hoặc tài liệu đang tải lên, Telegram cho biết một ảnh hoặc tệp đang được gửi.

Mọi cuộc trò chuyện, lần chạm nút và liên hệ được chia sẻ đều về cùng hộp thư đến nhóm với các cuộc trò chuyện WhatsApp, Instagram và Messenger, nên nhân viên tiếp nhận thấy ngay khách đã chạm gì.

Ví dụ: bot giao hàng của một nhà thuốc

Khách: /start Bot: Chào anh/chị, Nhà thuốc Minh Tâm Quận 3 xin nghe. Bên em hỗ trợ gì ạ? (nút: Giao thuốc tận nhà · Giờ mở cửa · Hỏi dược sĩ) Khách: Giao thuốc tận nhà Bot: Anh/chị chia sẻ số điện thoại để bên em tìm đơn thuốc nhé. (nút: Chia sẻ thông tin liên hệ) Khách: (chia sẻ liên hệ) Bot: Cảm ơn anh/chị. Giao đến đâu ạ? (nút: Gửi vị trí) Khách: (chia sẻ vị trí) Bot: Bên em giao hôm nay từ 16h đến 18h. (nút inline: Xác nhận · Đổi giờ)

Ba reply keyboard thu câu trả lời ngay trong chat, một inline keyboard để khách xác nhận tóm tắt. “Hỏi dược sĩ” chuyển thẳng tới người thật.

Những lỗi nên tránh

  • Quá nhiều nút. Hai đến sáu lựa chọn mỗi bàn phím là dễ đọc trên điện thoại. Menu dài nên chuyển sang Mini App hoặc bước thứ hai.
  • Xin số điện thoại ngay câu đầu. Hãy hỏi khi khách đã hiểu để làm gì.
  • Bàn phím không bao giờ ẩn. Khách tưởng không gõ được. Dùng bàn phím một lần cho câu hỏi một lần.
  • Nút im lặng. Mỗi lần chạm cần một phản hồi, dù chỉ là “Bên em nhận rồi, chờ chút ạ”.
  • Không có đường đến người thật. Luôn giữ “Gặp nhân viên”. Bài Telegram cho doanh nghiệp của chúng tôi nói về chuyển tiếp và giờ làm việc.

Nếu bạn cũng dùng WhatsApp, ý tưởng vẫn vậy nhưng giới hạn khác: xem bài tin nhắn tương tác WhatsApp. Muốn thêm câu trả lời AI giữa các nút, hãy đọc cách tạo bot AI trên Telegram.

Bắt đầu miễn phí tại app.monochat.ai và kết nối bot Telegram trong vài phút.

Nguồn

Câu hỏi thường gặp

Câu hỏi thường gặp

Reply keyboard và inline keyboard trong Telegram khác nhau thế nào?

Reply keyboard thay bàn phím thường của khách bằng các nút của bạn, và mỗi lần chạm sẽ gửi chữ trên nút vào cuộc trò chuyện như thể khách tự gõ. Inline keyboard gắn dưới một tin nhắn; chạm vào sẽ gửi dữ liệu ẩn cho bot hoặc mở liên kết hay Mini App, và không có tin nhắn mới nào xuất hiện.

Bot Telegram lấy số điện thoại của khách bằng cách nào?

Chỉ khi khách tự chia sẻ. Bạn gửi một nút bàn phím có request_contact; khi khách chạm vào, Telegram gửi số điện thoại cho bot dưới dạng danh bạ. Trong MonoChat, chỉ cần chọn loại tin nhắn Yêu cầu thông tin liên hệ: khách sẽ thấy nút Chia sẻ thông tin liên hệ bằng ngôn ngữ của họ.

Nút inline có xin được số điện thoại hoặc vị trí không?

Không. Trong Bot API, request_contact và request_location chỉ có ở nút reply keyboard (KeyboardButton) và chỉ hoạt động trong chat riêng với bot. Nút inline gửi dữ liệu callback, mở URL hoặc mở Mini App.

Vì sao nút Telegram cứ quay vòng tải mãi?

Sau khi khách chạm nút callback, Telegram hiển thị biểu tượng đang tải cho đến khi bot gọi answerCallbackQuery. Nếu bot không phản hồi, nút trông như bị treo. Từ MonoChat 3.8.41, mọi lần chạm đều được phản hồi: biểu tượng dừng lại và lần chạm hiện trong cuộc trò chuyện dưới dạng Phản hồi nút.

Có cần lập trình để thêm nút vào bot Telegram không?

Không. Kết nối token BotFather với MonoChat rồi soạn tin nhắn trong node Gửi tin nhắn hoặc trong tin nhắn ngắn: trả lời nhanh, tin nhắn loại Nút có nút inline, Yêu cầu vị trí và Yêu cầu thông tin liên hệ. Luồng sẽ dẫn khách đi tiếp theo nút họ đã chạm.

Miễn phí tháng đầu gói Growth

Quản lý WhatsApp, Instagram và Messenger trong một hộp thư

Bắt đầu miễn phí với MonoChat: hộp thư chung cho đội ngũ, trợ lý AI, mẫu tin nhắn và chiến dịch trên API chính thức của Meta.

Mỗi doanh nghiệp một mã • 30 ngày để sử dụng • Không cần thẻ

$150 để bắt đầu.

Nhận