Bán sản phẩm số qua chatbot AI không cần giữ tiền
Nỗi đau khi bán hàng qua chatbot AI
Bạn vừa xây dựng một chatbot AI để bán khóa học lập trình. Khách hàng rất hứng thú, nhưng khi đến khâu thanh toán, bạn gặp vấn đề:
- Phải tích hợp gateway thanh toán phức tạp
- Tiền khách gửi vào ví trung gian của bạn rồi phải chuyển đi
- Sợ rủi ro, phát sinh phí, độ trễ thường xuyên
- Bot không thể tự động confirm đơn hàng mà phải chờ bạn xử lý thủ công
Bạn nghĩ: "Có cách nào để chatbot tự thu tiền trực tiếp vào tài khoản ngân hàng của mình không?" Câu trả lời là có — và nó gọi là AgentPay VN.
AgentPay VN là gì?
AgentPay VN là một bộ công cụ Python mã nguồn mở (MIT) cho phép AI agent tạo và quản lý yêu cầu thanh toán VietQR. Điểm đặc biệt:
- Không giữ tiền: QR code trỏ thẳng vào tài khoản ngân hàng của bạn
- Xác nhận tức thì: Dùng bank feed để tự động biết khi khách thanh toán
- Dễ tích hợp: 3 dòng code Python, hoặc dùng MCP server với Claude
- Miễn phí: Open-source, bạn hoàn toàn kiểm soát luồng tiền
Thay vì bạn là "người trung gian", chatbot giờ là "nhân viên bán hàng" của bạn — tạo hóa đơn, gửi QR thanh toán, kiểm tra tiền về, tự động xác nhận đơn.
Tại sao bạn cần AgentPay VN ngay bây giờ?
1. Tự động hoá toàn bộ quy trình bán hàng
Có 3 bước chính:
- create_payment_request — AI agent tạo yêu cầu thanh toán với số tiền
- send checkout_url — Bot gửi QR code + link thanh toán cho khách
- await_settlement — Chờ tiền về tài khoản ngân hàng, tự động confirm
Không cần bạn can thiệp. Chatbot tự xử lý từ đầu đến cuối.
2. Giảm chi phí và rủi ro
- Không phí trung gian (so với Stripe, Zalopay, v.v.)
- Tiền về ngân hàng trong vòng vài giây
- Bạn kiểm soát 100% dòng tiền
3. Tăng tin tưởng khách hàng
Khách thấy QR code từ ngân hàng chính hãng → an tâm thanh toán → tỷ lệ hoàn thành cao hơn.
Cách cài đặt AgentPay VN
Bước 1: Cài đặt Python SDK
pip install agentpay-vn
Chỉ cần 1 lệnh. Tất cả dependency sẽ được cài tự động.
Bước 2: Lấy thông tin ngân hàng
Bạn cần:
- Bank account: Số tài khoản ngân hàng (VietQR)
- Bank code: Mã ngân hàng (ví dụ: 970 cho Techcombank)
- Bank feed credentials (tùy chọn): Để tự động kiểm tra tiền về
Bước 3: Setup MCP server (nếu dùng Claude)
Nếu bạn muốn tích hợp trực tiếp với Claude AI:
pip install agentpay-mcp
Cấu hình file claude_config.json:
{
"mcpServers": {
"agentpay-vn": {
"command": "python",
"args": ["-m", "agentpay_mcp.server"],
"env": {
"AGENTPAY_BANK_ACCOUNT": "0123456789",
"AGENTPAY_BANK_CODE": "970",
"AGENTPAY_BANK_FEED_API_KEY": "your-api-key-here"
}
}
}
}
Claude sẽ tự động gọi hàm create_payment_request hay await_settlement khi cần.
Ví dụ thực tế: Bot bán khóa học
Tưởng tượng bạn chạy một chatbot trên Telegram / Facebook / website để bán khóa học Python giá 299.000 VND. Dòng chảy:
Kịch bản
Khách: "Em muốn mua khóa học Python cơ bản"
Bot: "Khóa học Python cơ bản giá 299.000 VND. Em thanh toán bây giờ có được không?"
Khách: "Được, em thanh toán luôn"
Bot: [Gọi AgentPay] → Tạo QR code → Gửi cho khách
Bot: "Đây là QR thanh toán. Em quét và chuyển khoản 299.000 VND nhé. Bot sẽ tự động confirm khi tiền về."
Khách: Quét QR, thanh toán qua app ngân hàng → 5 giây sau, tiền vào tài khoản bạn
Bot: [Nhận signal từ bank feed] → "Cảm ơn em! Khóa học đã được mở khoá. Link học tập: [link]"
Code Python cho kịch bản này
from agentpay_vn import PaymentClient, PaymentRequest
# Khởi tạo client
client = PaymentClient(
bank_account="0123456789",
bank_code="970", # Techcombank
bank_feed_api_key="your-api-key"
)
# Khách muốn mua khóa học
product_price = 299000 # VND
product_name = "Khóa học Python cơ bản"
customer_id = "user_12345"
# Bước 1: Tạo yêu cầu thanh toán
payment_req = PaymentRequest(
amount=product_price,
description=product_name,
customer_id=customer_id,
reference_id=f"course_{customer_id}_{int(time.time())}"
)
payment = client.create_payment_request(payment_req)
print(f"QR Code URL: {payment.checkout_url}")
# Output: "https://vietqr.io/..." hoặc QR image
# Bước 2: Gửi URL cho khách
send_to_customer(
message=f"Vui lòng thanh toán {product_price:,} VND tại: {payment.checkout_url}",
customer_id=customer_id
)
# Bước 3: Chờ tiền về (có thể chạy async)
result = client.await_settlement(
payment_id=payment.id,
timeout=600 # Chờ tối đa 10 phút
)
if result.is_settled:
print(f"✅ Tiền đã vào! Số tiền: {result.amount} VND")
# Mở khoá khóa học cho khách
unlock_course_for_customer(customer_id, "python-basics")
send_to_customer(
message="Khóa học đã được mở khoá! Bắt đầu học tại: [link]",
customer_id=customer_id
)
else:
print("⏱️ Hết thời gian chờ, khách chưa thanh toán")
send_to_customer(
message="Yêu cầu thanh toán hết hạn. Vui lòng liên hệ admin.",
customer_id=customer_id
)
Giải thích từng dòng:
PaymentClient: Khởi tạo kết nối với ngân hàng của bạnPaymentRequest: Định nghĩa thông tin thanh toán (số tiền, mô tả, ID khách)create_payment_request(): Tạo QR code và nhận checkout_urlsend_to_customer(): Hàm của bạn để gửi message (Telegram, SMS, email)await_settlement(): Bot chờ cho đến khi tiền về. Bank feed sẽ thông báo tự độngunlock_course_for_customer(): Hàm tự động xác nhận và mở khoá hàng
Cách tích hợp với Claude (MCP server)
Nếu bạn dùng Claude AI làm chatbot chính, không cần viết code Python phức tạp. Cấu hình MCP server, Claude sẽ tự gọi AgentPay khi cần.
Setup MCP server
agentpay-mcp start --port 8000
Prompt Claude
Bạn là chatbot bán khóa học. Khi khách muốn mua:
1. Yêu cầu họ thanh toán bằng create_payment_request(amount=299000, description="Khóa học Python")
2. Gửi checkout_url cho khách
3. Dùng await_settlement(payment_id) để chờ tiền
4. Nếu settlement thành công, gửi link học tập
Sử dụng tools: create_payment_request, await_settlement, send_message
Claude sẽ tự động sử dụng AgentPay như một "skill" của mình.
Nên vs Không nên khi dùng AgentPay VN
| Điều | Nên ✅ | Không nên ❌ |
|---|---|---|
| Sản phẩm số | Mua ngay, giao tức thì (khoá học, ebook, phần mềm) | Hàng vật lý cần giao (vận chuyển, xác nhận địa chỉ) |
| Tự động hoá | Bot tự tạo QR, chờ tiền, xác nhận | Cần bước xác nhận thủ công từ nhân viên |
| Phí & chi phí | Bạn muốn giảm chi phí gateway | Chấp nhận phí cao cho dịch vụ toàn diện |
| An toàn | Bạn có tài khoản ngân hàng đã xác minh | Bạn không tin tưởng ngân hàng hoặc dùng tài khoản cá nhân |
| Quy mô | Từ 10 - hàng triệu đơn/tháng | Một vài đơn một tháng (overhead cài đặt không đáng) |
Ví dụ nâng cao: Multi-product bot
products = {
"python-101": {"name": "Python cơ bản", "price": 199000},
"python-pro": {"name": "Python nâng cao", "price": 499000},
"web-fullstack": {"name": "Web Fullstack", "price": 799000},
}
def handle_purchase(customer_id, product_key):
product = products[product_key]
payment_req = PaymentRequest(
amount=product["price"],
description=product["name"],
customer_id=customer_id,
reference_id=f"{product_key}_{customer_id}_{time.time()}",
metadata={"product_key": product_key} # Lưu info để dùng sau
)
payment = client.create_payment_request(payment_req)
return payment.checkout_url
# Bot: "Bạn muốn mua khóa nào?"
# Khách: "Python nâng cao"
# Bot: checkout_url = handle_purchase("user_123", "python-pro")
# Gửi QR cho khách → Chờ → Xác nhận → Mở khoá
Với cách này, bạn có thể bán nhiều sản phẩm khác nhau mà không cần thay đổi logic chính.
FAQ - Các câu hỏi thường gặp
1. Tiền về tài khoản tôi mất bao lâu?
Do VietQR được xử lý bởi hệ thống ngân hàng, thường vào trong 2-5 giây. Không có độ trễ do trung gian. AgentPay chỉ "theo dõi" các giao dịch, không giữ tiền.
2. Nếu khách quét QR nhưng không thanh toán thì sao?
Bạn có thể set timeout. Ví dụ, await_settlement(timeout=600) sẽ chờ 10 phút. Nếu hết thời gian, bot sẽ yêu cầu khách thanh toán lại hoặc liên hệ support.
3. Tôi không muốn lưu bank feed credentials. Có cách khác không?
Có. Bạn có thể dùng webhook hoặc polling. AgentPay hỗ trợ cả hai. Nếu không cấu hình bank feed, bạn phải tự check số dư tài khoản qua API ngân hàng (ví dụ: Techcombank API).
4. AgentPay VN có an toàn không? Tiền có bị mất không?
Absolutely. Tiền không bao giờ qua hệ thống AgentPay. QR code trỏ thẳng vào tài khoản ngân hàng bạn. AgentPay chỉ là "cầu nối" giữa bot và ngân hàng. Code mở nguồn (MIT), bạn có thể review.
Tóm tắt nhanh
- ✅ AgentPay VN = Python SDK + MCP server để bot AI tạo & quản lý thanh toán VietQR
- ✅ Không giữ tiền: Tiền vào tài khoản ngân hàng của bạn trực tiếp, không qua trung gian
- ✅ 3 bước: create_payment_request → send_checkout_url → await_settlement
- ✅ Tự động hoá: Bot tự xác nhận đơn hàng khi tiền về
- ✅ Giảm chi phí: Không phí gateway, không phí trung gian
- ✅ Thích hợp cho: Khóa học, ebook, phần mềm, dịch vụ số
- ✅ Dễ cài:
pip install agentpay-vn+ 20 dòng code Python
Bước tiếp theo
Bắt đầu ngay hôm nay
-
Cài đặt SDK:
bash pip install agentpay-vn -
Xem tài liệu đầy đủ: 👉 AgentPay VN Docs
-
Clone example project: 👉 GitHub - AgentPay VN
-
Thử demo: - Fork repository - Điền bank account & credentials - Chạy example bot - Gửi QR cho bạn bè test
Tích hợp sâu hơn
Nếu bạn muốn bot hoạt động 24/7: - Deploy trên Replit / Railway / Fly.io (miễn phí hoặc rẻ) - Setup webhook từ ngân hàng để nhận thông báo tiền về ngay lập tức - Tích hợp database (SQLite / PostgreSQL) để lưu lịch sử giao dịch - Thêm analytics: bot bạn bán được bao nhiêu / ngày
AgentPay VN sẽ làm phần thanh toán, bạn tập trung vào trải nghiệm khách hàng.
Câu hỏi cuối cùng: Bạn còn chờ gì? Chatbot AI của bạn đã sẵn sàng bán hàng, chỉ cần thêm AgentPay vào. Hãy thử ngay! 🚀