Actual Budget: pengelola anggaran pribadi milik Anda di VPS
Aplikasi perbankan menunjukkan ke mana uang Anda sudah dibelanjakan. Actual Budget menjawab pertanyaan yang berbeda: berapa banyak dari saldo yang tersedia yang benar-benar boleh Anda belanjakan, ketika sebagian saldo sudah dialokasikan untuk sewa rumah, bahan makanan, liburan, dan pengeluaran tak terduga?
Actual Budget adalah pengelola keuangan pribadi gratis dan bersumber terbuka. Aplikasi ini bekerja secara lokal, melakukan sinkronisasi melalui server Anda sendiri, dan mendukung enkripsi end-to-end. Panduan ini membahas fitur, keterbatasan, dan cara memasangnya di VPS.
Actual Budget dalam tujuh langkah
- Buat VPS Linux dan arahkan subdomain ke VPS tersebut, misalnya
budget.example.com. - Pasang Docker dan Docker Compose.
- Jalankan container resmi dengan direktori data persisten.
- Aktifkan HTTPS melalui Caddy.
- Tetapkan kata sandi server dan buat anggaran.
- Tambahkan akun, kategori, aturan, dan pembayaran berulang.
- Aktifkan enkripsi dan konfigurasikan pencadangan eksternal.
Apa itu Actual Budget?
Actual Budget adalah aplikasi self-hosted untuk mengelola anggaran pribadi atau keluarga. Aplikasi ini sering dianggap sebagai alternatif open-source untuk YNAB, tetapi Anda juga dapat memulai dengan anggaran yang benar-benar baru.
Layanan ini menggunakan metode penganggaran amplop virtual. Misalnya, seluruh akun Anda berisi Rp100.000. Dari jumlah tersebut, Rp40.000 diperlukan untuk tempat tinggal, Rp20.000 untuk bahan makanan, Rp10.000 untuk utilitas, dan Rp15.000 untuk dana darurat. Setelah uang dialokasikan, hanya Rp15.000 yang tersisa untuk pembelian opsional—bukan seluruh Rp100.000.
Pendekatan ini mengubah peran aplikasi. Pelacak pengeluaran biasa menjelaskan pengeluaran yang sudah terjadi, sedangkan Actual Budget membantu Anda mengambil keputusan sebelum melakukan pembelian. Uang yang tidak terpakai dalam suatu kategori akan dibawa ke periode berikutnya, dan ketika Anda membelanjakan lebih dari anggaran, Anda dapat memindahkan uang dari amplop lain.
Perbedaan lainnya adalah arsitektur local-first. Anggaran disimpan di perangkat yang terhubung dan tetap tersedia tanpa koneksi internet. Ketika koneksi tersedia kembali, perubahan disinkronkan melalui server. VPS terutama digunakan untuk bertukar data antara komputer, ponsel, dan browser, bukan untuk memproses setiap operasi.
Fitur utama Actual Budget
- Penganggaran amplop. Anda hanya mengalokasikan uang yang sudah benar-benar diterima.
- Akun dan transaksi. Aplikasi mendukung transfer, pembagian satu pembelian ke beberapa kategori, catatan, dan rekonsiliasi saldo.
- Aturan dan jadwal. Anda dapat merapikan keterangan transaksi bank, menetapkan kategori, serta merencanakan gaji, sewa, atau langganan sebelumnya.
- Impor. CSV, QIF, OFX, QFX, dan CAMT didukung. Format yang menyertakan pengenal transaksi memberikan perlindungan yang lebih baik terhadap duplikasi.
- Laporan. Tersedia laporan arus kas, kekayaan bersih, pengeluaran, dan grafik yang dapat disesuaikan.
- Migrasi dan API. Aplikasi dapat mengimpor data dari YNAB4 dan versi YNAB saat ini, serta menyediakan API untuk integrasi khusus.
Di ponsel, Actual Budget dipasang sebagai PWA—aplikasi web yang ditambahkan ke layar utama. Sebaiknya periksa antarmuka selulernya terlebih dahulu untuk memastikan aplikasi ini sesuai dengan kebutuhan Anda.
| Parameter | Layanan cloud | Actual Budget |
|---|---|---|
| Penyimpanan | Di penyedia layanan | Di perangkat dan server Anda sendiri |
| Penggunaan offline | Bergantung pada layanan | Fitur inti tersedia secara lokal |
| Pemeliharaan | Ditangani penyedia layanan | Ditangani pemilik |
| Biaya perangkat lunak | Langganan atau paket gratis | Tidak ada langganan wajib |
| Kontrol data | Mengikuti kebijakan penyedia | Dikendalikan pemilik server |
Actual Budget cocok bagi orang yang menghargai privasi dan kontrol. Layanan cloud lebih praktis jika Anda tidak ingin memelihara server.
Persyaratan server Actual Budget
Proyek ini tidak menerbitkan persyaratan minimum CPU dan RAM yang ketat. Server terutama menyinkronkan sejumlah kecil data keuangan, sehingga konfigurasi awal yang masuk akal untuk satu orang atau keluarga adalah:
- 1 vCPU;
- RAM 1 GB;
- SSD 10 GB;
- Ubuntu 24.04 LTS;
- domain atau subdomain;
- penyimpanan eksternal untuk pencadangan.
Ini adalah rekomendasi praktis, bukan persyaratan minimum resmi. Jika Anda berencana menjalankan container lain, sebaiknya alokasikan RAM 2 GB.
Cara memasang Actual Budget di VPS
Contoh ini menggunakan Ubuntu 24.04 dan subdomain budget.example.com.
1. Siapkan server
Buat record DNS A yang mengarah ke alamat IP VPS, sambungkan melalui SSH, lalu buka hanya port yang diperlukan:
ssh root@SERVER_IP
apt update && apt upgrade -y
apt install -y ca-certificates curl ufw
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable2. Pasang Docker
Tambahkan repositori Docker resmi:
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
-o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
cat > /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
apt update
apt install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin3. Jalankan Actual Budget
mkdir -p /opt/actual-budget/data
cd /opt/actual-budget
cat > compose.yml <<'EOF'
services:
actual:
image: actualbudget/actual-server:latest
restart: unless-stopped
ports:
- "127.0.0.1:5006:5006"
volumes:
- ./data:/data
EOF
docker compose up -d
docker compose psMengikat layanan ke 127.0.0.1 mencegah port 5006 terbuka langsung ke internet. Anggaran disimpan di /opt/actual-budget/data dan tidak terhapus ketika container diperbarui.
4. Aktifkan HTTPS
apt install -y caddy
cat > /etc/caddy/Caddyfile <<'EOF'
budget.example.com {
reverse_proxy 127.0.0.1:5006
}
EOF
caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddyKetika DNS sudah mengarah ke VPS dan port 80 serta 443 dapat diakses, Caddy akan memperoleh sertifikat TLS secara otomatis. Buka https://budget.example.com dan tetapkan kata sandi server yang panjang.
Cara menyiapkan anggaran pertama
Anda tidak harus mulai dengan mengimpor riwayat transaksi selama beberapa tahun. Lebih cepat jika Anda menambahkan akun yang saat ini digunakan, memasukkan saldo saat ini, lalu membuat kategori untuk pembayaran wajib, pengeluaran sehari-hari, tabungan, dan biaya tidak rutin.
Alokasikan hanya uang yang sudah tersedia sampai jumlah “To Budget” menjadi nol. Setelah itu, impor transaksi terbaru, verifikasi saldo, dan buat aturan untuk toko, langganan, serta transfer yang sering digunakan.
Kategori seharusnya membantu Anda mengambil keputusan. Amplop terpisah untuk “perawatan kesehatan”, “perbaikan perangkat”, dan “langganan tahunan” lebih berguna daripada satu kategori umum “lain-lain”.
Hal yang perlu diketahui tentang sinkronisasi bank
Koneksi bank tidak tersedia di setiap negara dan bergantung pada penyedia API yang didukung. Koneksi tersebut memerlukan server Anda sendiri dan kredensial tambahan. Actual Budget tidak menjalankan sinkronisasi sepenuhnya secara otomatis: pengguna memulainya dari antarmuka.
Token koneksi bank disimpan secara terpisah di server dan tidak dilindungi oleh enkripsi end-to-end milik anggaran. Jika bank tertentu tidak didukung, transaksi dapat diimpor dari rekening koran. OFX dan QFX biasanya lebih praktis daripada CSV karena menyertakan pengenal transaksi.
Enkripsi, pencadangan, dan pembaruan
Enkripsi end-to-end diaktifkan secara terpisah untuk setiap anggaran. Simpan kata sandinya di pengelola kata sandi karena server tidak dapat memulihkannya. Actual Budget tidak mengenkripsi salinan lokalnya sendiri, sehingga ponsel dan komputer harus dilindungi dengan kode kunci serta enkripsi disk.
Sinkronisasi bukan pengganti pencadangan. Ekspor anggaran secara berkala dari pengaturan, lalu salin direktori data ke lokasi lain:
cd /opt/actual-budget
docker compose stop
tar -czf /root/actual-budget-$(date +%F).tar.gz data
docker compose startPindahkan arsip tersebut ke luar VPS. Sebelum melakukan pembaruan, buat salinan lain, kemudian jalankan:
cd /opt/actual-budget
docker compose pull
docker compose up -dUntuk penggunaan reguler, pilih tag stabil latest, bukan tag eksperimental nightly.
VPS mana yang sebaiknya dipilih untuk Actual Budget?
Instance pribadi tidak membutuhkan server yang bertenaga besar. VPS Linux dasar dari tropic.host sudah cukup untuk menjalankan Actual Budget, Caddy, dan subdomain dengan HTTPS. Memulai dengan RAM 1 GB adalah pilihan yang wajar; tingkatkan sumber daya hanya ketika Anda menambahkan layanan self-hosted lain.
Jangan membuka port 5006 langsung ke internet, pasang pembaruan, dan simpan setidaknya satu salinan cadangan di luar VPS utama. Keamanan layanan self-hosted bergantung pada cara pemilik mengonfigurasikannya.
Keterbatasan Actual Budget
Actual Budget memerlukan pemeliharaan mandiri. Sinkronisasi bank dibatasi oleh negara dan penyedia layanan, versi seluler bekerja sebagai PWA, dan kehilangan kata sandi enkripsi dapat membuat anggaran tidak dapat diakses.
Layanan ini tidak cocok untuk semua orang, tetapi menyelesaikan tugas tertentu dengan baik: menggabungkan penganggaran amplop, otomatisasi, dan kontrol atas data Anda tanpa memerlukan langganan.
Ringkasan
Actual Budget mengubah pelacakan pengeluaran menjadi sebuah rencana: setiap uang yang Anda terima diberi tujuan terlebih dahulu. Aplikasi ini bekerja secara lokal, melakukan sinkronisasi melalui server Anda sendiri, serta mendukung impor, aturan, laporan, dan enkripsi.
VPS kecil sudah cukup untuk menjalankannya. Setelah instalasi, langkah terpenting adalah mengaktifkan HTTPS, menyimpan kata sandi enkripsi dengan aman, dan menyiapkan pencadangan eksternal.
FAQ
Apakah Actual Budget gratis?
Ya. Aplikasi ini bersumber terbuka dan tidak mewajibkan langganan. VPS, domain, dan penyimpanan cadangan tetap harus dibayar secara terpisah.
Apakah saya harus memasang Actual Budget di VPS?
Tidak. Anda dapat menggunakannya secara lokal di satu komputer. Server diperlukan untuk sinkronisasi antarperangkat, koneksi bank, akses API, dan akses web permanen.
Bisakah Actual Budget dihubungkan ke rekening bank saya?
Bisa, selama bank dan wilayah Anda didukung oleh salah satu penyedia yang tersedia. Jika tidak, transaksi dapat diimpor dari file CSV, QIF, OFX, QFX, atau CAMT.
Apakah aman menyimpan anggaran di server sendiri?
Aman jika dikonfigurasi dengan benar, tetapi pemilik bertanggung jawab atas keamanannya. Anda memerlukan HTTPS, kata sandi yang panjang, enkripsi, pembaruan, dan pencadangan eksternal.
Berapa banyak RAM yang dibutuhkan Actual Budget?
Tidak ada batas minimum resmi. Untuk instance pribadi, RAM 1 GB adalah titik awal yang praktis; jika Anda meng-host layanan lain, sebaiknya alokasikan RAM 2 GB.
