Terbilang Online — Kalkulator Terbilang Rupiah & Angka ke Huruf (Python)
Terbilang online ini adalah kalkulator terbilang gratis yang mengubah angka ke huruf dalam bahasa Indonesia. Hasilnya langsung siap ditempel di kuitansi, faktur, cek, atau dokumen kantor. Ketik 1.250.000,50 atau 1250000.50, lalu aplikasi menuliskan “satu juta dua ratus lima puluh ribu rupiah lima puluh sen” sesuai kaidah EYD Edisi V. Anda tidak perlu lagi mengeja nominal besar secara manual dan berisiko salah tulis.
🛠️ Tool gratis & open source ini adalah karya JoinBareng — platform patungan langganan premium di Indonesia.
Daftar Isi
- Apa Itu Terbilang
- Fitur Utama
- Cara Install dan Menjalankan
- Cara Pakai dan Contoh Output Asli
- Aturan Membaca Titik dan Koma
- Cara Menulis Terbilang Secara Manual
- Tabel Referensi Satuan Bilangan
- Terbilang di Kuitansi Cek dan Faktur
- Kesalahan Umum Menulis Terbilang
- Cara Membuat Terbilang di Excel
- FAQ
- Metodologi Pengujian dan Sumber
- Tentang Pembuat
- Disclaimer
- Kontribusi
- Lisensi
- Dukung Proyek Ini
- Tools Lainnya dari Seri Ini
Apa Itu Terbilang
Dalam KBBI, terbilang berarti “dapat dihitung”. Di dunia administrasi, kata ini dipakai untuk menyebut bilangan yang ditulis dengan huruf, biasanya di belakang angka. Contohnya pada kuitansi: “Rp750.000,00 (tujuh ratus lima puluh ribu rupiah)”. Tujuannya jelas: nominal sulit dipalsukan dan tidak salah dibaca.
Proyek terbilang online ini adalah aplikasi baris perintah (CLI) dalam satu berkas Python tanpa pustaka tambahan, dan bisa diimpor sebagai modul. Meski namanya terbilang online, semua perhitungan berjalan di komputer Anda tanpa internet, jadi nominal yang Anda ketik tidak dikirim ke mana pun.
Fitur Utama
Fitur terbilang online ini dirancang untuk kebutuhan administrasi sehari-hari:
- Angka ke huruf dari nol hingga 999.999.999.999.999.999 (kurang dari 10^18): satuan, belasan, puluhan, ratusan, ribu, juta, miliar (bukan “milyar”), triliun, dan kuadriliun.
- Negatif dibaca “minus …”; desimal dibaca “koma” lalu digit per digit (3,14 → tiga koma satu empat).
- Mode terbilang rupiah (
--rupiah): “… rupiah”, dan jika ada sen dua digit menjadi “… rupiah … sen”. - Dua format input: gaya Indonesia
1.250.000,50dan gaya biasa/Inggris1250000.50atau1,250,000.50, dengan deteksi ambiguitas yang jelas. - Gaya huruf: kecil (default), Kapital Tiap Kata (
--kapital), HURUF BESAR (--besar), plus--kwitansiuntuk membungkus hasil dengan# … #. - Banyak angka sekaligus: lewat beberapa argumen atau stdin per baris, cocok untuk daftar harga.
- Bisa jadi library:
from terbilang import terbilang. - Mode interaktif saat dijalankan tanpa argumen.
Cara Install dan Menjalankan
Untuk menjalankan terbilang online ini, Anda hanya butuh Python 3.8 atau lebih baru. Tidak ada pip install.
git clone https://github.com/redyopa2929/terbilang-online.git
cd terbilang-online
python3 terbilang.py
Perintah terakhir membuka mode interaktif; bantuan lengkap ada di python3 terbilang.py -h. Di Windows, ganti python3 dengan python atau py.
Cara Pakai dan Contoh Output Asli
Semua contoh terbilang online di bawah ini adalah hasil menjalankan aplikasi secara langsung, disalin tanpa diubah.
Mode interaktif
$ python3 terbilang.py
=== Terbilang Online v1.0.0 — ubah angka ke huruf ===
Mode: 1) angka biasa 2) rupiah [1]: 2
Gaya huruf: 1) kecil 2) Kapital Tiap Kata 3) HURUF BESAR [1]: 1
Bungkus untuk kuitansi (# ... #)? (y/n) [n]: n
Ketik angka, mis. 1.250.000,50 atau 1250000.50 (Enter kosong untuk keluar).
Angka: 1.250.000,50
satu juta dua ratus lima puluh ribu rupiah lima puluh sen
Angka: 75000
tujuh puluh lima ribu rupiah
Angka:
Sampai jumpa.
Angka ke huruf biasa
$ python3 terbilang.py 1250000
satu juta dua ratus lima puluh ribu
$ python3 terbilang.py 1.234.567
satu juta dua ratus tiga puluh empat ribu lima ratus enam puluh tujuh
Terbilang rupiah dan sen
$ python3 terbilang.py --rupiah 1.250.000,50
satu juta dua ratus lima puluh ribu rupiah lima puluh sen
$ python3 terbilang.py --rupiah --kapital --kwitansi 900.500,50
# Sembilan Ratus Ribu Lima Ratus Rupiah Lima Puluh Sen #
$ python3 terbilang.py --besar --rupiah 2500000
DUA JUTA LIMA RATUS RIBU RUPIAH
Contoh kedua sengaja memakai nominal dari contoh resmi EYD V, yaitu Rp900.500,50. Hasilnya sama kata per kata dengan rujukan tersebut.
Banyak angka, negatif, dan desimal
$ python3 terbilang.py -1.250.000 3,14 0,05 1000000000
-1.250.000 → minus satu juta dua ratus lima puluh ribu
3,14 → tiga koma satu empat
0,05 → nol koma nol lima
1.000.000.000 → satu miliar
Jika ada lebih dari satu angka, hasil diawali angka dalam format Indonesia agar terlihat bagaimana input dibaca. Tambahkan --hanya-hasil jika hanya butuh teks terbilangnya.
Membaca daftar dari berkas (stdin)
$ python3 terbilang.py --rupiah --hanya-hasil < daftar-harga.txt
seratus lima puluh ribu rupiah
dua juta tujuh ratus lima puluh ribu rupiah
dua belas juta lima ratus ribu rupiah
Berkas daftar-harga.txt berisi 150000, 2750000, satu baris komentar berawalan #, dan 12500000. Baris kosong dan komentar dilewati.
Input salah
$ python3 terbilang.py 1.25.000 1000000000000000000 abc
Error: '1.25.000': pemisah ribuan '.' tidak valid (harus per 3 digit, mis. 1.250.000).
Error: '1000000000000000000': angka terlalu besar: maksimal 999.999.999.999.999.999 (kurang dari 10^18).
Error: 'abc': hanya boleh berisi angka, titik, dan koma (boleh diawali Rp atau tanda minus).
Pesan error ditulis ke stderr dan exit code bernilai 1, sehingga mudah dipakai di skrip otomatis.
Memakai modul sebagai library Python
$ python3 -c "from terbilang import terbilang; print(terbilang(1500)); print(terbilang('Rp7.500.000,-', rupiah=True, gaya='kapital', kwitansi=True))"
seribu lima ratus
# Tujuh Juta Lima Ratus Ribu Rupiah #
Fungsi terbilang(angka, rupiah=False, gaya="kecil", kwitansi=False, format="auto") menerima int, str, Decimal, atau float. Untuk uang, pakai str atau Decimal: float biner bisa membawa digit tak terduga, misalnya 0.1 + 0.2 di Python bernilai 0.30000000000000004.
Daftar opsi
| Opsi | Fungsi |
|---|---|
--rupiah |
tambahkan “rupiah”, desimal dua digit dibaca sebagai sen |
--kapital / --besar |
gaya Kapital Tiap Kata / HURUF BESAR |
--kwitansi |
bungkus hasil dengan # … # |
--format auto/id/en |
cara membaca titik dan koma |
--hanya-hasil |
cetak terbilang saja |
Aturan Membaca Titik dan Koma
Masalah terbesar kalkulator terbilang adalah angka seperti 1.250. Dalam format Indonesia, angka ini berarti seribu dua ratus lima puluh. Dalam format Inggris, artinya satu koma dua lima. Aturan mode auto dibuat tegas dan bisa ditebak:
- Ada titik dan koma sekaligus: tanda yang muncul terakhir adalah desimal. Jadi
1.250.000,50dan1,250,000.50sama-sama 1.250.000,50. - Hanya koma: satu koma dianggap desimal (gaya Indonesia), contohnya
3,14. Lebih dari satu koma dianggap pemisah ribuan gaya Inggris, contohnya1,250,000. - Hanya titik: lebih dari satu titik berarti pemisah ribuan (
1.250.000). Satu titik yang diikuti tepat tiga digit, dengan bagian depan 1–3 digit dan tidak diawali 0, dianggap pemisah ribuan (5.000). Selain itu titik dianggap desimal (3.14,1250000.50). - Kasus ambigu (
1.250atau1,250) dibaca sesuai format Indonesia, dan aplikasi mencetak catatan di stderr. AwalanRpatau akhiran,-dianggap konteks rupiah, sehinggaRp5.000tidak dianggap ambigu. - Ingin kepastian? Pakai
--format id(titik = ribuan, koma = desimal) atau--format en(koma = ribuan, titik = desimal).
$ python3 terbilang.py 1.250
Catatan: '1.250' dibaca 1.250 (format Indonesia: titik = pemisah ribuan). Jika maksud Anda format Inggris, pakai --format en.
seribu dua ratus lima puluh
$ python3 terbilang.py --format en 1.250
satu koma dua lima nol
Cara Menulis Terbilang Secara Manual
Algoritmanya sama dengan cara kita mengeja angka di sekolah:
- Pisahkan angka menjadi kelompok tiga digit dari kanan.
- Baca setiap kelompok (1–999) dengan aturan: 1 = satu, 10 = sepuluh, 11 = sebelas, 12–19 = … belas, 20–99 = … puluh …, 100 = seratus, 200–900 = … ratus.
- Tambahkan nama tingkat di belakang kelompok: ribu, juta, miliar, triliun, kuadriliun. Kelompok yang bernilai 000 dilewati.
- Kelompok ribuan yang bernilai tepat 1 dibaca seribu, bukan “satu ribu”. Tingkat juta ke atas tetap “satu juta”, “satu miliar”.
Contoh langkah demi langkah: 1.234.567
-
Kelompok: 1234567 1+ juta → satu juta234+ ribu → dua ratus tiga puluh empat ribu567→ lima ratus enam puluh tujuh- Hasil: satu juta dua ratus tiga puluh empat ribu lima ratus enam puluh tujuh
Contoh rupiah: Rp900.500,50
- Bagian rupiah 900.500 → sembilan ratus ribu lima ratus + rupiah
- Bagian sen 50 → lima puluh sen
- Hasil: sembilan ratus ribu lima ratus rupiah lima puluh sen, sama persis dengan contoh EYD V.
Satu digit sen ditafsirkan sebagai puluhan sen, jadi 0,5 rupiah berarti lima puluh sen. Lebih dari dua digit sen ditolak dengan pesan error, karena pembulatan uang sebaiknya Anda putuskan sendiri.
Tabel Referensi Satuan Bilangan
| Angka | Terbilang | Catatan |
|---|---|---|
| 10 | sepuluh | bukan “satu puluh” |
| 11 | sebelas | bukan “satu belas” |
| 100 | seratus | bukan “satu ratus” |
| 1.000 | seribu | bukan “satu ribu” |
| 1.000.000 | satu juta | 10^6 |
| 1.000.000.000 | satu miliar | 10^9; bentuk tidak baku: milyar, miliyar |
| 1.000.000.000.000 | satu triliun | 10^12; bentuk tidak baku: trilyun |
| 1.000.000.000.000.000 | satu kuadriliun | 10^15 (sistem Amerika) |
Menurut KBBI, miliar adalah satuan dengan sembilan nol di belakang angka 1–999. Triliun bernilai 12 nol dalam sistem yang juga digunakan di Indonesia. Kuadriliun adalah sepuluh pangkat lima belas dalam sistem Amerika. Terbilang online ini memakai sistem tersebut (skala pendek).
Terbilang di Kuitansi Cek dan Faktur
EYD Edisi V, bagian Angka dan Bilangan, mengatur dua hal penting untuk dokumen keuangan:
- Butir 8: penulisan bilangan dengan huruf seperti dalam peraturan perundang-undangan, akta, dan kuitansi. Bilangan utuh ditulis secara mandiri, misalnya lima puluh lima ribu (55.000).
- Butir 11: bilangan dalam peraturan, akta, atau kuitansi dapat ditulis dengan angka lalu diikuti huruf. Contoh resminya: Rp900.500,50 (sembilan ratus ribu lima ratus rupiah lima puluh sen) dan Rp200.000.000,00 (dua ratus juta rupiah).
Aturan tanda baca juga relevan. Menurut EYD V, tanda titik dipakai untuk memisahkan bilangan ribuan yang menunjukkan jumlah. Tanda koma dipakai sebelum angka desimal atau di antara rupiah dan sen, misalnya Rp500,50. Contoh-contoh EYD menulis Rp langsung menempel pada angka, tanpa titik dan spasi.
Banyak orang juga mengapit terbilang dengan tanda pagar, misalnya # lima juta rupiah #, agar tidak ada kata yang bisa disisipkan. Ini kebiasaan praktis, bukan aturan EYD, sehingga --kwitansi hanya opsi. Ikuti format yang berlaku di kantor atau bank Anda.
Catatan ejaan: bentuk baku menurut KBBI adalah kuitansi, sedangkan kwitansi tidak baku. Nama opsi --kwitansi dipertahankan karena itulah kata yang paling sering diketik orang; di dokumen resmi, tulislah “kuitansi”.
Kesalahan Umum Menulis Terbilang
- “Milyar” dan “trilyun”. KBBI mencatat keduanya sebagai bentuk tidak baku. Yang baku adalah miliar dan triliun.
- “Satu ribu”, “satu ratus”, “satu belas”. Yang benar seribu, seratus, sebelas. Sebaliknya, untuk juta ke atas tulis satu juta, satu miliar.
- Kelompok nol terbaca. 1.000.500 adalah satu juta lima ratus, bukan “satu juta nol ribu lima ratus”.
- Sen dibaca sebagai desimal biasa. Pada mode rupiah, 1.250.000,50 dibaca … rupiah lima puluh sen, bukan “koma lima nol”.
- Salah format karena ekspor Excel. Angka hasil ekspor sering berformat
1250000.5. Modeautomembacanya dengan benar, tetapi periksa catatan ambiguitas jika muncul.
Cara Membuat Terbilang di Excel
Banyak orang mencari “terbilang excel” karena mengira ada fungsi =TERBILANG(). Kenyataannya, daftar resmi fungsi Excel dari Microsoft tidak memuat fungsi terbilang bahasa Indonesia. Yang ada justru BAHTTEXT, yang mengubah angka menjadi teks berbahasa Thailand. Jika Anda melihat =TERBILANG() di sebuah berkas, hampir pasti itu fungsi buatan pengguna (VBA) atau add-in pihak ketiga.
Pilihan yang umum dipakai:
- Fungsi kustom VBA (user-defined function). Panduan Microsoft menjelaskan langkahnya: buka Visual Basic Editor (Alt+F11), pilih Insert > Module, lalu tulis prosedur
Function. Agar tersedia di semua workbook, simpan sebagai Excel Add-In (.xlam). Jika disimpan di workbook biasa, pakai format.xlsm, karena format.xlsxtidak bisa menyimpan kode VBA. Logikanya bisa meniru algoritma di atas. - Add-in pihak ketiga. Pastikan sumbernya tepercaya, karena add-in berisi makro yang bisa menjalankan kode di komputer Anda.
- Pakai terbilang online ini lalu tempel ke Excel. Salin kolom angka ke
angka.txt, jalankanpython3 terbilang.py --rupiah --hanya-hasil < angka.txt > hasil.txt, lalu tempel isihasil.txtke kolom sebelahnya. Urutan barisnya sama selama tidak ada baris kosong atau komentar.
Kode VBA siap pakai tidak kami sertakan di sini. Kami belum mengujinya di berbagai versi Excel, dan kami tidak ingin menyebarkan kode makro yang belum terverifikasi.
FAQ
Apakah terbilang online ini gratis dan aman untuk data keuangan? Gratis dan open source (MIT). Semua proses berjalan lokal; tidak ada data yang dikirim ke internet.
Apa bedanya kalkulator terbilang ini dengan situs terbilang rupiah lain? Aplikasi ini bisa dijalankan tanpa internet, bisa memproses ratusan angka sekaligus dari berkas, dan kodenya bisa Anda periksa sendiri.
Bagaimana cara menulis terbilang kwitansi yang benar?
Tulis angka lalu huruf dalam kurung, sesuai EYD V. Contohnya: Rp900.500,50 (sembilan ratus ribu lima ratus rupiah lima puluh sen). Gunakan --rupiah dan, jika perlu, --kwitansi.
Yang benar milyar atau miliar? Miliar. KBBI mencatat “milyar” sebagai bentuk tidak baku.
Kenapa 1.250 dibaca seribu dua ratus lima puluh, bukan satu koma dua lima?
Karena aplikasi memprioritaskan format Indonesia. Pakai --format en jika maksud Anda desimal.
Apakah bisa mengubah angka ke huruf di atas kuadriliun? Belum. Batasnya 999.999.999.999.999.999.
Bagaimana cara membuat terbilang di Excel tanpa makro? Gunakan cara ketiga di bagian Excel: proses kolom angka dengan tool ini, lalu tempel hasilnya.
Bisakah dipakai di aplikasi Python saya?
Bisa. Salin terbilang.py ke proyek Anda, lalu from terbilang import terbilang.
Metodologi Pengujian dan Sumber
Logika inti terbilang online ini (bilangan_bulat, parse_angka, terbilang) dipisahkan dari kode CLI, lalu diuji dengan unittest:
python3 -m unittest discover -s tests -v
Hasil pada versi ini: Ran 15 tests ... OK. Satu test bisa memeriksa banyak nilai sekaligus. Yang diuji antara lain:
- Nilai referensi 0, 1, 10, 11, 12, 19, 20, 21, 100, 101, 111, 999, 1.000 (seribu), 1.001, 1.100, 2.000, 10.000, 11.000, 100.000, 1.000.000, 1.001.000, 1.000.000.000 (satu miliar), 1.000.000.000.000, 10^15, dan 1.234.567, dicocokkan dengan hitungan manual.
- Contoh resmi EYD V: Rp900.500,50, Rp200.000.000,00, dan 55.000 harus menghasilkan kata yang sama persis.
- Batas atas 10^18 − 1 berhasil, sedangkan 10^18 ditolak.
- Negatif (termasuk tanda minus Unicode),
-0tidak menjadi “minus nol”, desimal per digit, serta rupiah dengan sen. - Parsing format Indonesia dan Inggris menghasilkan nilai yang sama. Kasus ambigu ditandai, dan input invalid (
abc,1.25.000,1,2,3,5.) ditolak. - CLI: argumen negatif, banyak angka, stdin per baris, dan exit code 1 saat ada error.
Sumber rujukan yang kami baca dan cocokkan:
- EYD Edisi V — Angka dan Bilangan: ejaan.kemendikdasmen.go.id/eyd/penulisan-kata/angka-dan-bilangan/
- EYD Edisi V — Tanda Titik: ejaan.kemendikdasmen.go.id/eyd/penggunaan-tanda-baca/tanda-titik/ dan Tanda Koma: ejaan.kemendikdasmen.go.id/eyd/penggunaan-tanda-baca/tanda-koma/
- Dasar hukum EYD V: Keputusan Kepala Badan Pengembangan dan Pembinaan Bahasa Kemendikbudristek Nomor 0424/I/BS.00.01/2022, ditetapkan 16 Agustus 2022 — ejaan.kemendikdasmen.go.id/eyd/surat-keputusan/. Laman EYD kini dikelola Badan Bahasa di bawah Kementerian Pendidikan Dasar dan Menengah.
- KBBI VI Daring: miliar, triliun, kuadriliun, kuitansi
- Microsoft Support: Excel functions (alphabetical), BAHTTEXT function, Create custom functions in Excel, File formats that are supported in Excel
Tentang Pembuat
Proyek ini adalah karya JoinBareng dan dikelola oleh @redyopa2929. JoinBareng adalah platform patungan langganan premium (Netflix, Spotify, YouTube Premium, ChatGPT, dll.) plus marketplace akun digital yang aman dan transparan. Seri tools Python ini dibuat sebagai alat kecil yang berguna sehari-hari, dengan kode terbuka untuk diperiksa siapa saja.
Disclaimer
Terbilang online ini membantu menulis terbilang sesuai kaidah umum EYD V dan KBBI. Untuk dokumen hukum, perbankan, atau perpajakan, selalu periksa ulang hasilnya dan ikuti format yang ditetapkan instansi terkait. Kami tidak bertanggung jawab atas kerugian akibat kesalahan input atau penggunaan hasil tanpa pemeriksaan.
Kontribusi
Menemukan bug di terbilang online ini atau angka yang terbaca keliru? Silakan buka issue di github.com/redyopa2929/terbilang-online/issues dan sertakan input serta hasil yang Anda harapkan. Pull request diterima selama semua test lulus dan tidak menambah dependency eksternal.
Lisensi
Dirilis dengan lisensi MIT. Lihat berkas LICENSE.
Dukung Proyek Ini
Jika terbilang online ini menghemat waktu Anda, beri ⭐ star pada repositori agar lebih mudah ditemukan. Tagihan langganan aplikasi kantor atau hiburan juga ikut membengkak? Hemat biaya langganan aplikasi premium dengan patungan di JoinBareng.
Tools Lainnya dari Seri Ini
- Kalkulator Jadian — hitung lama hari jadian & anniversary
- Kalkulator Jasmani Polri — hitung nilai kesamaptaan jasmani
- Hitung WR ML — hitung win rate Mobile Legends
- Tasbih Online — tasbih digital penghitung dzikir
- Kalkulator Selamatan — hitung selamatan orang meninggal adat Jawa
- Kalkulator Saham — average down, compounding, ARA/ARB
- Kalkulator Bangunan — keramik, hebel, kubikasi, besi
- Konversi Koordinat — DMS, desimal, UTM
- Cek Weton — cek weton & neptu dari tanggal lahir
Terakhir diperbarui: 21 Oktober 2026