# Thanh toán và giới hạn

> So sánh các gói, nạp thêm phút và xem cách tính phí. Tra cứu giới hạn request và số job chạy cùng lúc.

Canonical: https://transcript1.com/vi/docs/billing-and-limits
Language: vi
Last updated: 2026-10-14

Bạn trả phí theo thời lượng audio hoặc video. Mỗi gói có sẵn một số phút và hạn mức request riêng. Phần dưới giải thích cách tính phút, dùng phút trong gói và nạp thêm khi cần.

## Chọn gói

| | Free | Monthly | Annual |
|---|---|---|---|
| Giá gói | $0, không cần thẻ thanh toán | $9 / tháng | $90 / năm |
| Phút được cấp | 60 phút một lần | 1.000 / tháng | 1.000 / tháng |
| Giá nạp thêm | Không hỗ trợ | $6 / 1.000 phút | $5 / 1.000 phút |
| Số request mỗi phút | 30 | 200 | 300 |
| Job chạy cùng lúc | 2 | 10 | 20 |

Mở [“Billing”](https://transcript1.com/dashboard/billing) trong bảng điều khiển để đổi gói hoặc nạp thêm phút.

## Cách tính phút

- 1 credit tương ứng 1 phút audio hoặc video, làm tròn lên. Ví dụ, video 61 giây dùng 2 phút; mỗi job dùng tối thiểu 1 phút.
- Link YouTube, X, TikTok, Instagram, Facebook, Bluesky, các nền tảng hỗ trợ khác và file tải lên đều có cùng giá mỗi phút. Nếu lấy phụ đề, hệ thống đo thời lượng video; nếu chạy speech-to-text, hệ thống đo thời lượng audio. Phụ đề YouTube, X, TikTok và Bluesky áp dụng cùng cách tính.
- Gửi lại video đã xử lý vẫn tạo lần tính phí mới. Muốn lấy lại job gần đây của chính bạn cho cùng video mà không mất thêm phút, dùng `reuse_recent=true`. Xem [Tài liệu API](https://transcript1.com/vi/docs/api-reference).
- Nếu job thất bại hoặc bạn hủy, bạn không mất phí. Phút đã trừ cho job sẽ được hoàn lại.

## Nhận 60 phút miễn phí

Xác minh email để nhận 60 phút miễn phí cho tài khoản. Đăng ký bằng Google hoặc Microsoft thì nhận ngay. Số phút này chỉ cấp một lần, gói Free không tự gia hạn. Khi email chưa được xác minh, gọi `POST /v1/transcriptions` sẽ nhận `403 email_not_verified`.

## Dùng phút trong gói và phút nạp thêm

Số phút bạn có gồm hai loại:

- **Phút theo chu kỳ:** số phút có sẵn trong gói. Đầu mỗi chu kỳ, số phút được cấp lại; phần chưa dùng không cộng dồn. Monthly và Annual đều cấp 1.000 phút mỗi tháng.
- **Phút nạp thêm:** mua theo gói nhỏ 1.000 phút, mỗi lần từ 1 đến 20 gói. Bạn cần có gói trả phí để mua. Hệ thống dùng hết phút theo chu kỳ rồi mới dùng phần nạp thêm. Phút nạp thêm không hết hạn khi gói trả phí còn hiệu lực.

Hủy gói trả phí thì tài khoản quay về Free, không còn phút theo chu kỳ. Phút nạp thêm vẫn được giữ lại, nhưng chỉ dùng tiếp được khi bạn có gói trả phí trở lại. Nếu nâng cấp từ Free, số phút miễn phí chưa dùng sẽ chuyển thành phút nạp thêm.

## Kiểm tra số phút còn lại

Gọi `GET /v1/account` để xem số phút còn lại. Lệnh này không mất phí:

```bash
curl https://api.transcript1.com/v1/account \
  -H "Authorization: Bearer $TRANSCRIPT1_API_KEY"
```

| Trường | Thông tin trả về |
|---|---|
| `minutes.remaining` | Phút có thể dùng ngay: `cycle` cộng thêm `topup` nếu `topup_usable` là `true`. |
| `minutes.cycle` | Phần phút trong chu kỳ chưa dùng. |
| `minutes.topup` | Tổng phút nạp thêm đang có. |
| `minutes.topup_usable` | Cho biết có dùng được phút nạp thêm không; là `true` khi gói trả phí còn hiệu lực. |
| `minutes.resets_at` | Thời điểm cấp lại phút theo chu kỳ, hoặc `null`. |
| `limits` | Hai hạn mức `requests_per_minute` và `max_active_jobs`. |

Bạn cũng nhận được gói đang dùng trong `plan` và thời điểm gia hạn trong `renews_at`.

Nếu hết phút, `POST /v1/transcriptions` trả `402 insufficient_minutes`. Mở `action_url` trong lỗi để đến trang “Billing”. transcript1 cũng gửi email báo khi số phút còn lại về 0, tối đa một lần mỗi chu kỳ.

## Giới hạn request

Hạn mức tính theo tài khoản, không theo từng khóa. Mọi khóa API, phiên đăng nhập bảng điều khiển và kết nối MCP đều dùng chung hạn mức.

- **Số request mỗi phút:** Free là 30, Monthly là 200, Annual là 300. Hệ thống đếm request theo từng khung một phút.
- Response `/v1` của request đã xác thực luôn có `X-RateLimit-Limit` là hạn mức và `X-RateLimit-Remaining` là số request còn lại trong khung hiện tại.
- Vượt hạn mức sẽ nhận `429 rate_limited`. Header `Retry-After` cho biết cần chờ bao nhiêu giây đến khung tiếp theo.
- Các request gửi chunk dùng token tải lên để xác thực và không tính vào hạn mức này.

## Số job chạy cùng lúc

Job có trạng thái `queued`, `fetching` hoặc `transcribing` đều chiếm một chỗ xử lý. Free có 2 chỗ, Monthly có 10 và Annual có 20. Khi đã dùng hết, tạo job mới sẽ nhận `429 too_many_active_jobs` kèm `Retry-After`. Chờ một job đang chạy kết thúc rồi thử lại.

Phiên tải lên theo chunk còn ở `awaiting_upload` chưa chiếm chỗ xử lý. Tuy vậy, mỗi team chỉ có tối đa 20 phiên chưa hoàn tất; vượt mức cũng nhận `429 too_many_active_jobs`. Khi gọi hoàn tất tải lên, job được đưa vào hàng đợi nên hệ thống kiểm tra giới hạn job đang chạy ở bước đó.

Tra cứu [Xử lý lỗi](https://transcript1.com/vi/docs/errors) để biết cách xử lý từng mã response.
