
Zad Top là một bot Telegram và API HTTP độc lập dành cho đại lý bán lại, cửa hàng, panel và bot tùy chỉnh. Dịch vụ hỗ trợ Free Fire, PUBG Mobile, Yalla Ludo, Jawaker, iTunes và Razer Gold, bao gồm đổi mã, kiểm tra thẻ, tra cứu người chơi, đổi kho mã và ảnh chụp đơn hàng.
Kho lưu trữ là trung tâm dành cho nhà phát triển công khai thay vì mã nguồn của bot. Tài liệu API trực tuyến có tại api.zadtop.com/docs, cùng với giao diện Swagger tương tác và tài liệu OpenAPI.

Bạn có thể xây dựng gì
Với Zad Top, bạn có thể tạo quy trình bán lại để gửi mã kỹ thuật số đến ID người chơi, kiểm tra các thẻ được hỗ trợ trước khi đổi, lấy tên và khu vực trong trò chơi của người chơi, cũng như đổi sản phẩm từ kho đã lưu. Bạn cũng có thể yêu cầu ảnh đơn hàng của cửa hàng sau khi đổi thành công.
- Đổi mã Free Fire, PUBG Mobile UC, Kim cương và Vàng Yalla Ludo, cùng token Jawaker.
- Kiểm tra thẻ Free Fire, PUBG, Kim cương Yalla Ludo, iTunes và Razer Gold được hỗ trợ.
- Nạp mã PIN Razer Gold vào ví của bạn.
- Tra cứu tên trong trò chơi và khu vực của người chơi trước khi sử dụng mã.
- Lưu mã trong bot và đổi các gói mã trong kho thay vì gửi từng mã riêng lẻ.
- Lấy ảnh chụp đơn hàng cho quy trình của cửa hàng.

Chuẩn bị quyền truy cập và xác thực
Để sử dụng API HTTP, hãy mở @ZadTopBot trong Telegram và chọn Subscription, sau đó chọn HTTP API. Bạn cần một gói đang hoạt động và tiện ích bổ sung HTTP API. README liệt kê tiện ích bổ sung này với giá 15 USDT trong 30 ngày. Gói đăng ký Code checking riêng có thể tự gọi các route kiểm tra.
Sau khi nhận khóa API, hãy gửi khóa trong header X-API-Key ở mọi yêu cầu cần xác thực:
X-API-Key: pk_YOUR_KEY
Tạo khóa mới sẽ thu hồi khóa trước đó, vì vậy hãy cập nhật cấu hình ứng dụng mỗi khi xoay vòng thông tin xác thực. Giữ khóa trên máy chủ và không để lộ khóa trong mã phía trình duyệt hoặc kho lưu trữ công khai.
Thực hiện lần đổi mã tức thì đầu tiên
Route POST /v1/jobs/instant-redeem đổi một hoặc nhiều mã cho một ID người chơi. Yêu cầu sử dụng JSON và cần có header khóa API cùng header loại nội dung.
curl -sS -X POST https://api.zadtop.com/v1/jobs/instant-redeem \
-H "X-API-Key: pk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"player_id":"2186053213","codes":["4233939008625064"],"game":"freefire"}'Giá trị game trong ví dụ này là freefire. Các giá trị được hỗ trợ khác gồm pubg, ludo, ludogold, jawaker, razer_recharge và các giá trị riêng cho từng dịch vụ khác được mô tả trong tài liệu API.
Yêu cầu đổi mã là các job. Job đạt trạng thái done nghĩa là quá trình xử lý đã hoàn tất, nhưng mỗi mã được gửi có kết quả success riêng và, khi phù hợp, có err_code. Đừng coi một job đã hoàn tất là bằng chứng cho việc mọi mã đều thành công.

Theo dõi job và kết quả
Sử dụng GET /v1/jobs/{id} để lấy trạng thái và kết quả của một job. Bạn có thể thêm ?wait=25 để chờ trong khoảng thời gian được chỉ định thay vì thăm dò ngay lập tức.
curl -sS "https://api.zadtop.com/v1/jobs/JOB_ID?wait=25" \
-H "X-API-Key: pk_YOUR_KEY"
Một tích hợp thực tế nên lưu ID job, yêu cầu kết quả job, sau đó kiểm tra kết quả ở cấp độ từng mã. Báo cáo riêng các mã thành công và thất bại cho khách hàng hoặc bảng điều khiển của đại lý.
Kiểm tra mã trước khi đổi
Route POST /v1/codes/check kiểm tra tối đa 20 thẻ mà không đổi chúng. Với các lô lớn hơn, hãy sử dụng POST /v1/jobs/code-check, hỗ trợ tối đa 10.000 thẻ dưới dạng một job.

Kết quả được hỗ trợ phụ thuộc vào trò chơi. Free Fire có thể báo trạng thái chưa sử dụng, đã sử dụng hoặc không hợp lệ, đồng thời có thể bao gồm gói. PUBG có thể báo trạng thái chưa sử dụng, đã sử dụng, hết hạn hoặc không hợp lệ, đồng thời có thể bao gồm giá trị nếu cửa hàng biết giá trị đó. Có thể kiểm tra Kim cương Yalla Ludo, nhưng Vàng không có route kiểm tra. Mã Vàng gửi đến trình kiểm tra Kim cương có thể bị sử dụng, vì vậy hãy xác minh loại sản phẩm trước khi gửi.
Kết quả kiểm tra iTunes trả về số dư theo đô la. Lần đọc đầu tiên sau một khoảng thời gian không hoạt động có thể mất tối đa một phút. Kiểm tra Razer Gold trả về trạng thái còn hiệu lực, đã sử dụng hoặc không hợp lệ mà không sử dụng mã PIN, nhưng README quy định giới hạn năm yêu cầu cho mỗi mã PIN.
Tra cứu người chơi trước
Trước khi đổi, hãy gọi GET /v1/player/lookup để lấy tên trong trò chơi và khu vực. Điều này giúp tránh gửi mã hợp lệ đến sai ID người chơi.
curl -sS "https://api.zadtop.com/v1/player/lookup?player_id=2186053213&game=freefire" \
-H "X-API-Key: pk_YOUR_KEY"Sử dụng thông tin nhận dạng được trả về làm bước xác nhận trong giao diện người dùng. README nêu rõ bạn chịu trách nhiệm về ID người chơi đã chọn, và mã hợp lệ sẽ được ghi có vào tài khoản được gửi từ lần liên hệ thành công đầu tiên với cửa hàng.

Sử dụng đổi mã từ kho
Nếu bạn quản lý hàng tồn kho trong Zad Top, hãy sử dụng POST /v1/jobs/stock-redeem để đổi mã từ kho đã lưu thay vì dán mã vào từng đơn hàng. Route GET /v1/stock/summary báo cáo hàng tồn kho theo trò chơi và gói.
curl -sS https://api.zadtop.com/v1/stock/summary \
-H "X-API-Key: pk_YOUR_KEY"Các trường đổi mã từ kho và mã định danh gói chính xác nên được lấy từ tài liệu tham khảo trực tiếp hoặc hướng dẫn endpoint trong repository. Điều này giúp tránh việc hard-code các giả định về những danh mục hàng tồn kho hiện có.
Lưu ý riêng theo trò chơi
- Free Fire: Hỗ trợ đổi mã và kiểm tra.
- PUBG Mobile: Hỗ trợ đổi và kiểm tra UC.
- Yalla Ludo: Sử dụng
ludohoặcludogoldtùy trường hợp. Đổi mã yêu cầutier. Có thể kiểm tra Diamonds, nhưng không thể kiểm tra Gold. - Jawaker: Hỗ trợ đổi mã, nhưng không có chức năng kiểm tra riêng cho PIN 12 ký tự.
- iTunes: Chỉ hỗ trợ kiểm tra số dư thông qua dịch vụ được liệt kê; yêu cầu đầu tiên sau một thời gian không hoạt động có thể mất tối đa một phút.
- Razer Gold: Hỗ trợ kiểm tra PIN mà không sử dụng PIN. Thao tác
razer_rechargeghi có PIN vào ví của bạn và yêu cầu địa chỉ email cùng mật khẩu. Mật khẩu không được lưu trữ.
Thêm thao tác tài khoản và cửa hàng
API cũng cung cấp các route dành cho tài khoản và đại lý bán lại:
GET /v1/međể lấy thông tin tài khoản.GET /v1/quotađể lấy thông tin hạn mức.GET /v1/historyđể xem lịch sử thao tác.GET /v1/playersđể xem người chơi đã lưu.POST /v1/order/screenshotđể lấy ảnh đơn hàng của cửa hàng sau khi đổi mã thành công.

Các route này có thể hỗ trợ bảng điều khiển quản trị, trong khi các route job và tra cứu có thể vận hành quy trình đặt hàng hướng đến khách hàng.
Hiểu giới hạn và chi phí sử dụng
README nêu rằng một lần đổi mã tốn một request cho mỗi mã, một lần kiểm tra tốn một request cho mỗi thẻ, và một lần kiểm tra Razer Gold tốn năm request cho mỗi PIN. Một lần tra cứu người chơi tốn 0.25 request. Việc cửa hàng từ chối và lỗi xảy ra trước khi trả về kết quả cũng được tính theo quy tắc sử dụng đã được nêu trong tài liệu.
Giới hạn hằng ngày được đặt lại vào 00:00 UTC và được dùng chung giữa các trò chơi trong gói, bot Telegram và API. Tài khoản mới nhận 10 lượt đổi mã miễn phí. Giá và tình trạng cung cấp của các gói có thể thay đổi, vì vậy hãy xác nhận điều khoản hiện tại qua bot hoặc trang web chính thức trước khi xây dựng quy trình thanh toán.
Quy trình tích hợp đề xuất
- Thu thập trò chơi, ID người chơi, sản phẩm và mã của người chơi.
- Gọi endpoint tra cứu người chơi và hiển thị tên cùng khu vực được trả về để xác nhận.
- Đối với các sản phẩm được hỗ trợ, kiểm tra mã trước khi đổi.
- Gửi job đổi mã tức thì hoặc đổi mã từ kho.
- Thăm dò
/v1/jobs/{id}hoặc sử dụng tham sốwait. - Kiểm tra trạng thái tổng thể của job cùng các trường
successvàerr_codecủa từng mã. - Hiển thị kết quả rõ ràng cho khách hàng và tùy chọn yêu cầu ảnh chụp đơn hàng.
Mẹo triển khai nâng cao
Bảo vệ thông tin xác thực
Lưu API key trong biến môi trường phía máy chủ hoặc trình quản lý secrets. Tránh đưa key vào ứng dụng di động, JavaScript frontend, nhật ký hoặc ảnh chụp màn hình hỗ trợ.

Thiết kế cho xử lý bất đồng bộ
Các thao tác đổi mã và kiểm tra hàng loạt là các job. Hãy lưu mã định danh job, hỗ trợ thử lại khi đọc trạng thái an toàn và phân biệt lỗi truyền tải với lỗi cấp mã. Một job done vẫn cần kiểm tra kết quả của từng mã.
Xác thực tổ hợp sản phẩm và trò chơi
Sử dụng ánh xạ sản phẩm rõ ràng trong ứng dụng để Diamonds, Gold, UC và các sản phẩm khác không thể vô tình được gửi đến route hoặc trình kiểm tra sai. Điều này đặc biệt quan trọng với Yalla Ludo, nơi Gold không thể kiểm tra và có thể bị sử dụng bởi một yêu cầu kiểm tra không phù hợp.
Tính đến độ trễ và hạn mức
Dành thêm thời gian cho việc đọc số dư iTunes và các job hàng loạt. Theo dõi mức sử dụng quota cục bộ, đặc biệt với các lần kiểm tra Razer, vì một PIN có thể tiêu tốn năm request. Đồng thời tính đến hạn mức hằng ngày dùng chung giữa hoạt động của bot và API.
Kết luận
Zad Top cung cấp API chuyên biệt cho quy trình của đại lý bán lại trò chơi kỹ thuật số và thẻ quà tặng. Hãy bắt đầu bằng quyền truy cập API và header X-API-Key, xác minh danh tính người chơi, sử dụng chức năng kiểm tra khi được hỗ trợ, gửi các job đổi mã và đánh giá kết quả cấp mã. Để biết chi tiết endpoint và hành vi hiện tại của dịch vụ, hãy tham khảo tài liệu tham khảo HTML API, tài liệu Swagger và repository GitHub của dự án.
Zad Top là một dịch vụ độc lập và không liên kết với Garena, Krafton, Tencent, Yalla Games, Apple, Razer hoặc Jawaker.
