Báo tiền vào nhóm Zalo
Video hướng dẫn
Xem transcript video (8 phần)
Cả nhóm cùng nhận tin
Bạn bán hàng theo nhóm Zalo nhưng mỗi lần khách chuyển vẫn phải chờ chủ tài khoản kiểm tra rồi báo lại. Trong vài phút, video này nối bot Gấu Mona để thu ngân, bán hàng và kế toán cùng nhận tin tiền vào. Cách làm không cần Zalo OA, không cài thêm ứng dụng và không viết code. Mình sẽ đi từ điều kiện có bot trong nhóm, lấy group_id, tạo cấu hình, chọn sự kiện đến gửi thử và đọc lỗi.
Điều kiện có bot
Điều kiện đầu tiên là nhóm phải có bot Gấu Mona. Nếu bạn là khách hàng MONA, nhờ Account phụ trách thêm bot và lấy group_id từ PMS tại dự án, phần kết nối Zalo, trường chatId. Nếu chưa là khách hàng MONA, hiện chưa thể tự thêm bot; gọi tổng đài để được nối nhóm và cấp group_id. Mã này phải là chuỗi từ mười đến hai mươi lăm chữ số.
Thêm nhóm trên dashboard
Vào my.monapay.vn, mở mục Zalo rồi chọn Thêm nhóm. Đặt tên gợi nhớ, dán group_id, chọn VA và sự kiện nếu cần, sau đó lưu cấu hình. Bạn có thể nối nhiều nhóm. Ví dụ nhóm bán hàng chỉ nhận tiền vào một VA, còn nhóm kế toán nhận mọi giao dịch. Không gửi mã đăng nhập, OTP ngân hàng hoặc mật khẩu vào nhóm vì các dữ liệu đó không cần cho việc báo tiền.
Mẫu tin và biến
Bấm Gửi thử. Khi nhóm nhận tin bắt đầu bằng biểu tượng gấu và nội dung MONA Pay đã nối nhóm này, kết nối đã chạy. Tin giao dịch mặc định hiển thị số tiền, số tài khoản, nội dung, mã giao dịch và thời gian. Khi sửa mẫu, dùng {amount}, {description}, {virtual_account_number}, {transaction_code} và {transfer_date}. Zalo chỉ nhận text thuần, nên dấu Markdown hoặc thẻ HTML sẽ hiện nguyên dạng.
Chọn sự kiện cần báo
Bốn sự kiện có thể chọn là TRANSACTION_IN khi có tiền vào, CHECKOUT_PAID khi trang thanh toán được trả đủ, WEBHOOK_FAILED khi webhook thất bại và VA_CREATED khi tạo xong tài khoản ảo. Nếu gọi API mà không truyền events, cấu hình nhận TRANSACTION_IN. Hệ thống gửi tối đa một tin cho mỗi giao dịch trên mỗi cấu hình và chống trùng theo mã giao dịch, nên không dùng kênh này để quảng cáo hay gửi hàng loạt.
Tạo nhóm bằng API
Nếu đội kỹ thuật cấu hình bằng API, dùng POST /api/v1/zalo-groups để tạo nhóm, lấy data.id, rồi gọi endpoint có ID đó và đuôi /test. Bearer token dùng cho mọi request, còn lệnh ghi bằng token dashboard thêm X-Client-Secret. Log xem tại /api/v1/zalo-groups/logs, có thể lọc ok hoặc failed. Agent cũng làm cùng chuỗi: tạo nhóm, lấy ID, gửi thử rồi đọc log.
Đọc log khi lỗi
Gửi thử mà nhóm không có tin thì kiểm tra hai điểm trước: bot Gấu Mona đã thật sự ở trong nhóm chưa và group_id có đúng chuỗi chữ số do MONA cung cấp không. API trả lỗi định dạng nếu mã không hợp lệ; máy chủ chưa bật relay có thể trả trạng thái kênh chưa mở. Sau khi sửa, gửi thử lần nữa rồi đọc log failed để xem lý do, chỉ kết luận xong khi log là ok.
Hoàn tất nhóm Zalo
Vậy là nhóm Zalo đã có một nguồn báo chung: bot đúng nhóm, mã nhóm đúng, sự kiện đúng và tin thử đã tới. Từ đây đội bán hàng xác nhận dựa trên giao dịch thật, không cần chia sẻ app ngân hàng. Xem lại mẫu tin, biến, API và câu hỏi thường gặp tại monapay.vn/docs/zalo. Đăng ký tại my.monapay.vn. Cần MONA nối bot hoặc hỗ trợ cấu hình, gọi một chín không không, sáu ba sáu, sáu bốn tám.
Chủ shop không cần mở ứng dụng ngân hàng rồi báo lại cho từng người. Khi tài khoản hoặc VA đã chọn có tiền vào, MONA Pay gửi ngay 1 tin vào nhóm Zalo để đội bán hàng, thu ngân và kế toán cùng thấy. Cách này không cần Zalo OA, không cần cài thêm ứng dụng và không cần viết code.
MONA Pay gửi tin qua bot Gấu Mona của MONA đang có mặt trong nhóm. Vì vậy, nhóm muốn nhận tin phải có bot Gấu Mona trước khi bạn tạo cấu hình.
Điều kiện trước khi kết nối
- Bạn là khách hàng MONA: nhờ Account phụ trách thêm bot Gấu Mona vào nhóm. Account lấy
group_idtrong PMS tại dự án → kết nối Zalo →chatId, hoặc nhờ đội MONA tra theo tên nhóm. - Bạn chưa là khách hàng MONA: hiện chưa thể tự thêm bot. Gọi 1900 636 648 để MONA nối nhóm Zalo và cung cấp
group_id. group_idphải là chuỗi từ 10 đến 25 chữ số, ví dụ7119000000000000000.
Không gửi mã đăng nhập, OTP ngân hàng hoặc mật khẩu vào nhóm Zalo.
Thiết lập trên dashboard
- Vào my.monapay.vn, mở mục Zalo rồi chọn Thêm nhóm.
- Đặt tên gợi nhớ, dán
group_id, chọn VA và sự kiện nếu cần, sau đó lưu cấu hình. - Bấm Gửi thử. Nhóm nhận tin “🐼 MONA Pay đã nối nhóm này…” là kết nối đã chạy.
Bạn có thể nối nhiều nhóm. Ví dụ, nhóm bán hàng chỉ nhận tiền vào một VA, còn nhóm kế toán nhận mọi giao dịch.
Mẫu tin và biến
Tin mặc định cho một giao dịch tiền vào có dạng:
Khi sửa mẫu tin, bạn dùng được dạng {amount} hoặc {{amount}}. Các biến được hỗ trợ:
| Biến | Nội dung |
|---|---|
{amount} |
Số tiền giao dịch |
{description} |
Nội dung chuyển khoản |
{virtual_account_number} |
Số tài khoản ảo nhận tiền |
{transaction_code} |
Mã giao dịch dùng để đối soát |
{transfer_date} |
Thời điểm giao dịch |
Ví dụ mẫu gọn cho nhóm bán hàng:
Sự kiện có thể nhận
| Sự kiện | Khi nào MONA Pay gửi |
|---|---|
TRANSACTION_IN |
VA thật hoặc VA sandbox có tiền vào; giao dịch sandbox có tiền tố [THỬ] |
CHECKOUT_PAID |
Một phiên trang thanh toán đã được trả đủ |
WEBHOOK_FAILED |
Webhook gửi thất bại |
VA_CREATED |
Một tài khoản ảo mới được tạo |
Nếu không truyền events khi gọi API, cấu hình nhận TRANSACTION_IN theo hợp đồng API.
Giới hạn cần biết
- Zalo không phân tích Markdown. Dấu
**, thẻ HTML và cú pháp tạo liên kết sẽ hiện như text thường. - Kênh này chỉ gửi vào nhóm đã có bot Gấu Mona, không gửi tin nhắn riêng cho tài khoản Zalo.
- MONA Pay gửi tối đa 1 tin cho mỗi giao dịch trên mỗi cấu hình và chống gửi trùng theo mã giao dịch.
- Không dùng kênh để quảng cáo, gửi hàng loạt hoặc spam thành viên trong nhóm.
API nhóm Zalo
Mọi request cần Authorization: Bearer <token>. Lệnh ghi bằng token dashboard cần thêm X-Client-Secret. Response dùng envelope chung {"success":true,"message":"...","data":...}.
| Endpoint | Việc |
|---|---|
GET /api/v1/zalo-groups |
Liệt kê cấu hình nhóm |
POST /api/v1/zalo-groups |
Tạo cấu hình; group_id phải có 10 đến 25 chữ số |
PUT /api/v1/zalo-groups/{id} |
Cập nhật cấu hình theo ID cấu hình |
DELETE /api/v1/zalo-groups/{id} |
Xoá cấu hình |
POST /api/v1/zalo-groups/{id}/test |
Gửi tin xác nhận kết nối |
| `GET /api/v1/zalo-groups/logs?limit=20&status=ok | failed` |
POST trả 503 Kênh Zalo chưa mở nếu máy chủ chưa bật relay. group_id sai định dạng trả 422. Gửi thử thất bại thường có lý do kèm nhắc nhóm phải có bot Gấu Mona.
cURL: tạo cấu hình
Lấy data.id trong response rồi dùng ID đó để gửi thử:
Công cụ MCP cho nhóm Zalo
Sau khi cài monapay-mcp, agent có thể quản lý trọn luồng bằng 6 công cụ:
| Công cụ | Việc |
|---|---|
monapay_list_zalo_groups |
Liệt kê nhóm đã nối |
monapay_create_zalo_group |
Tạo cấu hình nhóm |
monapay_update_zalo_group |
Sửa tên, nhóm, VA, mẫu tin, sự kiện hoặc trạng thái |
monapay_delete_zalo_group |
Xoá cấu hình |
monapay_test_zalo_group |
Gửi tin thử |
monapay_zalo_group_logs |
Đọc log ok hoặc failed |
Prompt mẫu, thay phần 7119… bằng group_id thật do MONA cung cấp:
Agent nên gọi công cụ tạo nhóm, lấy id, gọi công cụ gửi thử rồi đọc log. Nếu gửi thất bại, kiểm tra bot Gấu Mona và group_id trước khi kết luận.
Câu hỏi thường gặp
Có cần đăng ký Zalo OA không?
Không. MONA Pay gửi qua bot Gấu Mona của MONA nằm trong nhóm, nên bạn không phải tạo hoặc duy trì Zalo OA riêng.
Lấy group_id ở đâu?
Khách hàng MONA nhờ Account lấy trong PMS tại dự án → kết nối Zalo → chatId, hoặc nhờ đội MONA tra theo tên nhóm. group_id là chuỗi 10 đến 25 chữ số.
Chưa là khách hàng MONA có tự thêm bot được không?
Hiện chưa. Bạn gọi 1900 636 648 để MONA hỗ trợ nối bot vào nhóm và cung cấp group_id.
Vì sao bấm Gửi thử nhưng nhóm không có tin?
Nguyên nhân thường gặp là nhóm chưa có bot Gấu Mona hoặc group_id không đúng. Kiểm tra lại với Account MONA, gửi thử lần nữa rồi xem log failed để đọc lý do từ relay.