Lỗi này không liên quan gì đến mã của bạn: số dư trả trước phía sau khóa đã trống (hoặc bạn đã chạm giới hạn chi tiêu hằng tháng). Dưới đây là sự khác biệt giữa mô hình thanh toán của Anthropic Console và các gateway, cùng các cảnh báo giúp ngăn lỗi tái diễn lúc 2 giờ sáng.
Lỗi
// Anthropic Console (HTTP 400):
{"type":"error","error":{"type":"invalid_request_error",
"message":"Your credit balance is too low to access the Anthropic API..."}}
// OpenAI-compatible gateways, e.g. Kunavo (HTTP 402):
{"error":{"message":"Wallet balance is too low for this request. Top up at https://kunavo.com/app/billing",
"type":"insufficient_quota","code":"insufficient_quota","param":null}}Tổng quan nguyên nhân và cách khắc phục
| Nguyên nhân | Cách khắc phục |
|---|---|
| Số dư trả trước thực sự bằng không | Nạp thêm. Trên Anthropic: Console → Plans & billing. Trên Kunavo: /app/billing (số dư không bao giờ hết hạn). |
| Tự động nạp đang tắt (hoặc thẻ đã hết hạn) | Bật tự động nạp / cập nhật thẻ để các đợt tăng đột biến không làm số dư về 0 mà bạn không nhận ra. |
| Đã đạt giới hạn chi tiêu hằng tháng | Tăng hoặc xóa giới hạn theo khóa / workspace nếu khoản chi tiêu là hợp lệ. |
| Khóa của workspace không đúng | Khóa sử dụng số dư của workspace đã tạo ra khóa — một tổ chức đã nạp tiền cũng không trả tiền cho khóa của workspace khác. |
Xác nhận đây là vấn đề số dư, không phải xác thực
401 = vấn đề về khóa; 400 "credit balance too low" / 402 insufficient_quota = vấn đề về tiền. Đừng xoay vòng khóa vì lỗi thanh toán — khóa mới vẫn đọc cùng một chiếc ví trống.
Nạp tiền, sau đó xác minh bằng một cuộc gọi rẻ
Số dư được áp dụng ngay lập tức trên cả Anthropic và Kunavo — không cần triển khai lại. Hãy xác minh bằng một yêu cầu tối thiểu trước khi bỏ tạm dừng các worker của bạn:
curl -s https://api.kunavo.com/v1/chat/completions \
-H "Authorization: Bearer $KUNAVO_API_KEY" \
-H "content-type: application/json" \
-d '{"model":"claude-haiku-4-5","max_tokens":8,"messages":[{"role":"user","content":"ok?"}]}'Bạn thấy thông báo này trong Claude Code?
Claude Code hiển thị thông báo này khi chạy bằng khóa API Anthropic có số dư Console bằng 0 — tài khoản đăng nhập Pro hoặc Max thay vào đó sẽ gặp giới hạn sử dụng và không bao giờ hiển thị thông báo này. Hãy nạp tiền vào Console hoặc tiếp tục làm việc trên một endpoint tính phí theo mức sử dụng: Claude Code đọc ANTHROPIC_BASE_URL trực tiếp, nên việc chuyển đổi chỉ cần thay đổi vài biến môi trường. Giữ nguyên bốn dòng mô hình — mô hình mặc định của Claude Code cùng các bí danh opus và sonnet của nó đi theo những mô hình mới nhất của Anthropic, còn bí danh sonnet yêu cầu Sonnet 5.5, mô hình mà Kunavo không cung cấp.
export ANTHROPIC_BASE_URL=https://api.kunavo.com
export ANTHROPIC_AUTH_TOKEN=sk-kn-...
export ANTHROPIC_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-5-5
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-5
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5Khiến lần tiếp theo trở nên nhàm chán
Thiết lập cảnh báo số dư thấp (email) và, nếu nhà cung cấp hỗ trợ, tự động nạp lại với hạn mức hàng tháng hợp lý. Việc thanh toán đóng khi hết số dư là đúng — bạn chỉ muốn nhận cảnh báo trước khi chạm tường, không phải sau đó.
Trên Kunavo: đọc phản hồi 402, hoặc để ví tự nạp tiền
Phản hồi 402 từ ví Kunavo cho biết lý do ở dạng máy đọc được: error.code là insufficient_balance, error.balance_usd và error.needed_usd cho biết khoản thiếu, còn error.topup_url và error.auto_recharge_url mở trang thanh toán với cách khắc phục đã được chọn sẵn — cả hai liên kết đều không trừ tiền. Khi tính năng tự động nạp tiền (tùy chọn) đang bật, ví sẽ được nạp số tiền bạn chọn (tối thiểu $10) từ thẻ đã lưu khi số dư (chưa trừ các khoản đang được tạm giữ cho những yêu cầu và tác vụ đang chạy) thấp hơn ngưỡng bạn đặt và việc nạp tiền vẫn nằm trong các giới hạn nạp tiền, trong đó có hạn mức hằng tháng do bạn đặt. Khi số dư ví không đủ cho một yêu cầu, Kunavo sẽ thực hiện lần nạp như vậy rồi thử lại yêu cầu thêm một lần trước khi phản hồi; nếu không có lần nạp nào, hoặc sau khi nạp vẫn không đủ, yêu cầu vẫn bị từ chối, vì vậy bạn vẫn có thể nhận 402 ngay cả khi tính năng tự động nạp tiền đang bật. Trong lúc lần nạp đó vẫn đang được xử lý, 402 sẽ kèm theo Retry-After: hãy thử lại sau khoảng thời gian đó, và ngừng thử lại khi 402 không kèm theo Retry-After.
Nếu bạn gọi qua Kunavo
Kunavo từ chối xử lý ngay khi số dư bằng 0 bằng lỗi 402 insufficient_quota rõ ràng (không bao giờ là lỗi 500 mơ hồ), các yêu cầu thất bại không bị tính phí, và tài khoản đang hoạt động sẽ nhận email cảnh báo số dư thấp kèm thời gian sử dụng còn lại dựa trên tốc độ tiêu thụ riêng trước khi chạm ngưỡng. Số dư là ví trả trước từ $10, không hết hạn, được nạp tại /app/billing bằng thẻ, Apple Pay, Google Pay hoặc Link ngoài Ấn Độ, hoặc bằng phương thức thanh toán địa phương mà Stripe hiển thị theo đơn vị tiền tệ của bạn, chẳng hạn như Pix, WeChat Pay, UPI hoặc KakaoPay. Mức độ sử dụng của mỗi lần nạp tiền phụ thuộc hoàn toàn vào model bạn trỏ tới, còn mức giá theo từng model nằm trong bảng giá Anthropic Claude API.
Câu hỏi thường gặp
Tôi đã nạp tiền — tại sao vẫn nhận được lỗi?
Hãy kiểm tra rằng bạn đã cấp tiền cho đúng tài khoản/workspace đã tạo khóa và rằng hạn mức chi tiêu hàng tháng không phải là nguyên nhân thực sự. Việc áp dụng số dư là tức thì trên cả Anthropic và Kunavo.
API của Claude có gói miễn phí không?
Không — Anthropic tính phí mọi cuộc gọi API từ token đầu tiên (các gói dành cho người dùng Claude.ai tách biệt với tín dụng API). Các gateway cũng trả theo mức sử dụng; Kunavo bắt đầu từ lần nạp $10 với mức giá thấp hơn giá niêm yết.
“Credit balance is too low” trong Claude Code — nhưng tôi trả phí Pro. Tại sao?
Vì Claude Code đang sử dụng khóa API, không phải gói đăng ký của bạn. Khi ANTHROPIC_API_KEY hoặc ANTHROPIC_AUTH_TOKEN được thiết lập, Claude Code tính phí vào khóa và tạm dừng đăng nhập Pro hoặc Max, còn khóa đó sử dụng một số dư Console trả trước riêng. Chạy /status để xem thông tin xác thực nào đang hoạt động; bỏ thiết lập biến này để quay lại gói, hoặc nạp tiền vào số dư của khóa.
OpenClaw báo “API provider returned a billing error” — có phải cùng một vấn đề không?
Đúng. Đây là cách diễn đạt của OpenClaw cho việc nhà cung cấp model từ chối thanh toán: khóa API đã hết tín dụng hoặc có số dư không đủ. Hãy nạp tiền cho nhà cung cấp đó hoặc chuyển OpenClaw sang một nhà cung cấp khác — các hướng dẫn liên quan bên dưới so sánh các lựa chọn.
Hướng dẫn liên quan
- Giá API Anthropic Claude tháng 10 năm 2026 (mức giá chính thức)
- Khóa API Claude Code — lấy ở đâu, đặt ở đâu và vì sao biến sai không báo lỗi
- Claude Code có miễn phí không? Điều gì miễn phí, điều gì không và chi phí một tháng
- API tốt nhất cho OpenClaw: chọn provider và model theo tác vụ
- “Tổ chức của bạn đã vô hiệu hóa quyền truy cập gói thuê bao Claude cho Claude Code” — ba nguyên nhân và cách xử lý
Thông tin chi tiết hơn về ý nghĩa lỗi có trong tài liệu tham chiếu lỗi; bạn chỉ mất một phút để lấy khóa qua đăng ký và hướng dẫn xác thực.