Penahanan saldo dan pendebitan
MarkdownCara Ailoot menghitung biaya: dana ditahan sebelum permintaan, didebit sekali setelahnya, dan saldo tidak pernah negatif.
Ringkasan
- Penahanan saldo — sebelum mengirim permintaan teks baru, Ailoot menahan saldo berdasarkan perkiraan input dan respons tipikal, sesuai ketentuan yang disetujui untuk permintaan tersebut. Untuk output gambar, video, dan audio, penahanan saldo sebesar biaya penuh hasil tetap berlaku.
- Pendebitan — dilakukan sekali berdasarkan pemakaian aktual dalam
usage. Sisa saldo yang ditahan langsung dikembalikan. - Jika dana tidak cukup bahkan untuk penahanan saldo minimum — permintaan tidak dikirim ke model; Anda menerima kesalahan 402 dengan pesan yang jelas. Tidak ada pendebitan.
Panduan lengkap
Ringkasan
- Harga — dalam dolar per 1 juta token input dan output (atau per satuan: gambar, detik video, karakter). Harga setiap model tersedia di katalog.
- Penahanan saldo — sebelum mengirim permintaan teks baru, Ailoot menahan saldo berdasarkan perkiraan input dan respons tipikal, sesuai ketentuan yang disetujui untuk permintaan tersebut. Untuk output gambar, video, dan audio, penahanan saldo sebesar biaya penuh hasil tetap berlaku.
- Batas diturunkan agar permintaan tetap berjalan — jika jumlah saldo yang harus ditahan berdasarkan perhitungan melebihi saldo yang tersedia atau batas kunci, batas respons hanya dapat diturunkan untuk model dan metode tertentu yang benar-benar mematuhinya, hingga sesuai dana yang tersedia tanpa turun di bawah minimum yang berlaku. Model yang mendukungnya dijelaskan di bawah.
- Pendebitan — dilakukan sekali berdasarkan pemakaian aktual dalam
usage. Sisa saldo yang ditahan langsung dikembalikan. - Jika biaya respons melebihi saldo yang ditahan — selisih diambil dari saldo bebas yang tidak ditahan untuk permintaan lain. Pendebitan tidak pernah melebihi saldo Anda: saldo tidak menjadi negatif.
- Jika dana tidak cukup bahkan untuk penahanan saldo minimum — permintaan tidak dikirim ke model; Anda menerima kesalahan 402 dengan pesan yang jelas. Tidak ada pendebitan.
- Kegagalan tanpa hasil tidak dikenai biaya. Jika koneksi terputus, periksa permintaan melalui Request ID dalam riwayat dasbor sebelum mengirim ulang.
Cara menghitung penahanan saldo
- Input ditahan berdasarkan perkiraan ukuran permintaan dan lampiran yang didukung, bukan berdasarkan pemakaian aktual yang sudah diketahui. Untuk permintaan teks baru, isi permintaan dan lampiran diperkirakan sesuai jenisnya. Perhitungan «4 token per byte, minimal 4096 token» berlaku bagi penahanan saldo versi lama yang telah disetujui sebelumnya dan tidak menjelaskan penahanan saldo untuk permintaan teks baru. Jika lampiran dikirim melalui tautan (
fileData) atau alat bawaan diaktifkan, untuk permintaan teks yang didukung digunakan perkiraan tersendiri atas lampiran dan penggunaan alat; keberadaan lampiran atau alat saja tidak berarti seluruh jendela input ditahan. Penahanan saldo terdahulu tetap mengikuti ketentuan yang telah disetujui, sedangkan untuk output media, perhitungan mencakup hasil secara penuh. - Output untuk penahanan saldo pada permintaan teks baru diperkirakan berdasarkan panjang respons tipikal dan ketentuan yang telah disetujui. Batas yang diminta ditetapkan melalui
max_tokens(max_output_tokensdalam Responses). Batas yang diminta tidak otomatis sama dengan jumlah token yang menjadi dasar perhitungan saldo yang ditahan, dan tidak menjamin panjang respons aktual jika model tidak memiliki pembatasan yang andal. Nilai awal 4096 hanya berlaku pada rute yang sesuai; aturan tepatnya bergantung pada model dan metode. - Harga untuk penahanan saldo teks baru yang memperhitungkan ketentuan permintaan ini ditentukan dengan mempertimbangkan mode standar atau prioritas serta tingkatan harga yang dapat dicapai berdasarkan perkiraan input. Dalam ketentuan yang dipilih, perhitungan tetap konservatif; mode flex tidak mengurangi saldo yang ditahan. Untuk permintaan prioritas, saldo yang ditahan dapat memperhitungkan mode termahal yang berlaku, termasuk priority, flex, atau fast. Penahanan saldo yang telah disetujui sebelumnya tanpa ketentuan tersebut tetap memakai perhitungan awal berdasarkan tarif maksimum.
- Penurunan batas — ketika jumlah saldo yang perlu ditahan berdasarkan perhitungan tidak dapat dipenuhi dan model serta metode tertentu memungkinkan pembatasan respons: dana yang tersedia harus cukup untuk perkiraan input dan jumlah output minimum. Batas yang diturunkan tidak boleh kurang dari 256 token (1025 dengan penalaran dalam format Anthropic). Model menerima batas yang sudah diturunkan.
Contoh perhitungan
Model claude-sonnet-5-5: input $2, output $10 per 1 juta token. Anda mengirim 20 000 token, model membalas dengan 1 200 token.
| Langkah | Perhitungan | Jumlah |
|---|---|---|
| Input aktual | 20 000 × $2 / 1 000 000 | $0.0400 |
| Respons aktual | 1 200 × $10 / 1 000 000 | $0.0120 |
| Didebit | satu pendebitan berdasarkan pemakaian aktual | $0.0520 |
Dalam contoh aritmetika ini, biaya aktualnya adalah $0.0520. Pendebitan yang ditampilkan mengasumsikan bahwa jumlah saldo yang telah disetujui untuk ditahan dan saldo bebas yang tersedia cukup untuk menutup biaya tersebut. Besarnya saldo yang ditahan tidak dihitung di sini: untuk permintaan teks baru, jumlahnya ditentukan secara terpisah berdasarkan perkiraan input dan respons tipikal, dan dapat lebih besar atau lebih kecil daripada biaya aktual. Saldo yang ditahan tetapi tidak terpakai dibebaskan; batas pendebitan ditunjukkan dalam rumus di bawah.
Pendebitan aktual = min(total biaya aktual, cadangan yang diterima + saldo bebas yang tidak dicadangkan). Saldo yang ditahan untuk permintaan lain yang masih terbuka tetap terlindungi; karena itu, saldo total tidak harus menjadi nol. Saldo tidak menjadi negatif. Jika biaya aktual melebihi jumlah saldo yang telah disetujui untuk ditahan ditambah saldo bebas yang tidak sedang ditahan, selisih yang tidak tertutup menjadi kerugian Ailoot: selisih tersebut tidak menjadi utang Anda dan tidak ditagih kemudian.
Klien terputus
Menutup koneksi, timeout aplikasi Anda, atau menolak membaca respons yang sudah siap tidak otomatis membatalkan permintaan: respons model yang selesai dikenai biaya sekali. Jika hasil tidak terkirim karena kesalahan Ailoot, dana dikembalikan. Jika koneksi terputus, periksa permintaan melalui Request ID dalam riwayat dasbor sebelum mengirim ulang.
Mengapa kadang diperlukan saldo lebih besar
- Untuk permintaan teks baru, jumlah saldo yang ditahan untuk respons dihitung berdasarkan panjang tipikal, dengan mempertimbangkan nilai yang ditetapkan untuk
max_tokensdan ketentuan model yang digunakan. Ini adalah perkiraan saldo yang ditahan, bukan jaminan panjang atau biaya respons yang sebenarnya. - Pada model yang tidak memiliki batas panjang respons aktual yang andal, perkiraan saldo yang ditahan tidak berubah menjadi pembatas panjang. Untuk permintaan teks baru, perkiraan ini tidak otomatis diganti dengan biaya respons terpanjang. Penahanan saldo yang sudah disetujui sebelumnya tetap mengikuti ketentuan awalnya.
- Gambar input menambahkan perkiraan biayanya ke saldo yang ditahan.
- Agen (Claude Code, Codex CLI, Cline) mengirim konteks besar pada setiap langkah: satu langkah dapat menahan puluhan sen. Sediakan setidaknya beberapa dolar dalam saldo.
- Tips: tetapkan nilai yang wajar untuk
max_tokens— ini mengurangi saldo yang ditahan pada model yang panjang responsnya dapat dibatasi.
Cache prompt
Model dengan cache memiliki harga terpisah untuk penulisan dan pembacaan cache. Pembacaan biasanya beberapa kali lebih murah daripada input biasa. Harga tersedia pada kartu model dalam katalog.
Kesalahan 402
Jika saldo bebas tidak cukup bahkan untuk saldo yang ditahan minimum, Ailoot tidak mengirim permintaan dan mengembalikan 402 dengan kode insufficient_balance. Jika batas pengeluaran total kunci habis — kodenya api_key_quota_exhausted. Jika akun memiliki utang akibat pembayaran yang disengketakan — kodenya payment_disputed: permintaan baru ditangguhkan hingga utang dilunasi.
{
"error": {
"code": "insufficient_balance",
"reason": "insufficient_balance",
"type": "insufficient_quota",
"param": null,
"message": "Your balance is too low to start this request. … Request ID: 5c0e7a1d-….",
"request_id": "5c0e7a1d-…"
}
}Tempat melihat biaya
Riwayat permintaan dan pendebitan tersedia dalam dasbor di ailoot.ai. Setiap permintaan menampilkan model, token, dan jumlah biaya.