Skip to content

0xshalah/prototype-kasai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

27 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ™οΈ KasAI

Voice-to-Ledger-to-Trust Pipeline untuk UMKM Indonesia

Asisten Akuntansi Voice-First yang Mengubah Ucapan Menjadi Pencatatan Keuangan Terstruktur

Status: Prototype PIDI DIGDAYA 2026 Core Stack Prototype Stack


⚠️ DISCLAIMER: Proyek ini adalah PROTOTYPE / Proof of Concept yang dibangun untuk submission Hackathon PIDI DIGDAYA x Bank Indonesia 2026. Sistem ini BELUM siap untuk penggunaan produksi dan TIDAK dimaksudkan sebagai pengganti software akuntansi profesional, sistem pemeringkat kredit formal, atau layanan keuangan berlisensi.


πŸ“‹ Daftar Isi


Tentang Proyek

KasAI adalah prototype solusi voice-first bookkeeping untuk UMKM mikro Indonesia. Sistem ini mengubah ucapan transaksi harian (contoh: "Bayar listrik 300 ribu") menjadi:

  1. Pencatatan keuangan terstruktur β€” jurnal double-entry sesuai prinsip SAK EMKM
  2. Sinyal underwriting alternatif β€” alternative credit signal berbasis perilaku pencatatan
  3. Jejak audit kriptografis β€” hash chain SHA-256 yang tamper-evident

Prototype ini dibangun untuk menjawab Problem Statement: Inklusi Ekonomi (UMKM) pada Hackathon PIDI DIGDAYA x Bank Indonesia 2026, khususnya sub-kategori Pemanfaatan Data Alternatif / Credit Scoring.


Problem Statement

Indonesia memiliki lebih dari 65 juta UMKM yang menyumbang ~60% PDB nasional. Namun:

  • >80% UMKM tidak memiliki pencatatan keuangan yang memadai
  • 93,5% UMKM membiayai operasional secara mandiri
  • Hanya ~6,7% yang memiliki akses ke pembiayaan perbankan
  • Kesenjangan pembiayaan UMKM diperkirakan mencapai US$234 miliar

Akar masalahnya: lembaga keuangan membutuhkan data terstruktur untuk menilai kelayakan kredit, namun data tersebut tidak tersedia karena UMKM tidak melakukan pencatatan. KasAI dirancang untuk memutus siklus ini.


Cara Kerja

πŸŽ™οΈ Suara β†’ πŸ“‘ Transkripsi AI β†’ 🧠 Parsing β†’ πŸ›‘οΈ Guardrail β†’ πŸ“’ Ledger β†’ πŸ“Š Score β†’ πŸ”’ Vault
Tahap Proses Teknologi
1. Input Pengguna berbicara atau mengetik transaksi MediaRecorder (timeslice 100ms)
2. Transkripsi Audio β†’ Teks (3-layer failover) Groq Whisper β†’ VPS β†’ OpenAI
3. Parsing Teks β†’ Objek transaksi terstruktur Groq Llama 3.3 70B + fallback regex
4. Validasi Cek ambiguitas + kecukupan saldo GuardrailService (deterministik)
5. Ledger Simpan transaksi + jurnal double-entry LedgerService + Prisma $transaction
6. Scoring Hitung alternative credit signal ScoreService (3 faktor)
7. Audit Buat block hash SHA-256 VaultService (hash chain)

Prinsip arsitektur: AI hanya berperan sebagai parser. Semua keputusan pencatatan final melewati validator deterministik di server. Database adalah source of truth.


Tech Stack

πŸ—οΈ Arsitektur Produksi (Target)

KasAI dirancang dengan arsitektur produksi berbasis Go dan Rust β€” dua bahasa yang dipilih karena performa, keamanan memori, dan kesesuaian untuk sistem keuangan:

Layer Teknologi Alasan Pemilihan
Backend / Orkestrasi Go Layanan inti yang efisien untuk orkestrasi API, validasi bisnis, dan manajemen ledger. Go dipilih karena performa tinggi, concurrency model yang kuat, dan ekosistem yang matang untuk microservices.
Trust Engine / Vault Rust Komponen audit trail dan verifikasi integritas data. Rust dipilih karena keamanan memori tanpa garbage collector, performa deterministik, dan jaminan zero-cost abstractions β€” kritis untuk komponen yang menangani integritas keuangan.
Database PostgreSQL Penyimpanan utama untuk ledger, jurnal, dan vault blocks
Job Queue Redis + BullMQ Pemrosesan asinkron untuk audio dan batch scoring
Object Storage S3-compatible Penyimpanan file audio dan bukti digital
AI Abstraction Provider-agnostic layer Agar integrasi AI provider tetap fleksibel

πŸ§ͺ Stack Prototype Saat Ini

Untuk keperluan validasi konsep dan demo hackathon, prototype dibangun menggunakan stack berikut:

Layer Teknologi
Framework Next.js 15 (App Router) + TypeScript
UI React 19 + Tailwind CSS
Validasi Zod
ORM Prisma 6.19
Database PostgreSQL (Supabase)
AI Transkripsi Groq Cloud (Whisper-large-v3)
AI Parsing Groq Cloud (Llama 3.3 70B Versatile)
Kriptografi Node.js crypto (SHA-256)
Deployment Vercel (function region: hnd1 / Tokyo)

Catatan: Prototype Next.js ini membuktikan bahwa alur end-to-end berjalan. Arsitektur produksi akan memigrasikan layanan inti ke Go (orkestrasi, guardrail, ledger, scoring) dan Rust (trust engine, hash chain verification, audit service), dengan PostgreSQL dan Redis sebagai infrastruktur pendukung.


Fitur Prototype

βœ… Yang Sudah Diimplementasikan dan Diverifikasi

  • Voice input via browser + timesliced recording (100ms)
  • Transkripsi sub-detik (Groq Whisper-large-v3)
  • 3-layer failover transkripsi (Groq β†’ Sovereign VPS β†’ OpenAI)
  • Filter anti-halusinasi untuk audio kosong/noise
  • AI parsing dengan JSON mode + temperature 0.1
  • Fallback rule-based parser (regex) jika AI gagal
  • Validasi Zod untuk setiap request
  • Guardrail ambiguitas entitas (memaksa klarifikasi pribadi/usaha)
  • Guardrail kecukupan saldo (menolak jika kas tidak cukup)
  • Jurnal double-entry otomatis (2 entri per transaksi)
  • Balance snapshot (kas, beban, prive) diperbarui atomik
  • Alternative credit signal (3 faktor, skala 300–850)
  • Hash chain audit trail (SHA-256, tamper-evident)
  • Tamper simulation untuk demo integritas
  • Chain verification (linkage + digest + data consistency)
  • Deterministic reset untuk repeatability demo
  • Cloud database (Supabase PostgreSQL, persisten)
  • Production build berhasil (Exit 0)

Batasan Prototype

Penting: Bagian ini menjelaskan apa yang BELUM ada dan TIDAK diklaim oleh prototype ini.

  • ❌ Bukan software akuntansi berlisensi β€” chart of accounts terbatas (4 akun: Kas, Pendapatan Usaha, Beban Operasional, Prive Pemilik)
  • ❌ Bukan sistem pemeringkat kredit formal β€” ACS scoring masih menggunakan delta konstan per transaksi, belum weighted berdasarkan periode/tren
  • ❌ Bukan blockchain β€” hash chain adalah tamper-evident log lokal, bukan distributed ledger
  • ❌ Single tenant β€” belum ada autentikasi atau multi-user (businessId di-hardcode)
  • ❌ Belum ada export laporan β€” tidak ada PDF/CSV
  • ❌ Belum terintegrasi dengan lembaga keuangan manapun
  • ❌ Confidence score AI bersifat statis β€” bukan probabilitas real-time dari model
  • ❌ Belum divalidasi terhadap data gagal bayar aktual

Instalasi & Setup

Prasyarat

  • Node.js 18+
  • npm atau yarn
  • Akun Groq (untuk API key)
  • Akun Supabase (untuk PostgreSQL)

Langkah

# 1. Clone repository
git clone https://github.com/0xshalah/prototype-kasai.git
cd prototype-kasai

# 2. Install dependencies
npm install

# 3. Setup environment variables
cp .env.example .env
# Edit .env dan isi:
#   DATABASE_URL    β†’ Connection string Supabase (Transaction Pooler, port 6543)
#   DIRECT_URL      β†’ Connection string Supabase (Session Pooler, port 5432)
#   GROQ_API_KEY    β†’ API key dari console.groq.com
#   AI_PROVIDER     β†’ "groq"

# 4. Push schema ke database
npx prisma db push
npx prisma generate

# 5. (Opsional) Seed data awal
npm run prisma:seed

# 6. Jalankan development server
npm run dev

Buka http://localhost:3000 di browser.


Struktur Proyek

β”œβ”€β”€ prisma/
β”‚   └── schema.prisma          # Data model (6 tabel)
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ api/
β”‚   β”‚   β”‚   β”œβ”€β”€ transcribe/    # Voice β†’ Text (3-layer failover)
β”‚   β”‚   β”‚   β”œβ”€β”€ parse/         # Text β†’ Structured Transaction
β”‚   β”‚   β”‚   β”œβ”€β”€ commit/        # Orchestrator: Guardrail β†’ Ledger β†’ Score β†’ Vault
β”‚   β”‚   β”‚   β”œβ”€β”€ audit/         # Verify chain + Tamper simulation
β”‚   β”‚   β”‚   └── ledger/        # Read balance & journal data
β”‚   β”‚   └── page.tsx           # Main dashboard UI
β”‚   β”œβ”€β”€ components/            # React components
β”‚   β”œβ”€β”€ hooks/
β”‚   β”‚   └── useVoiceCapture.ts # Browser audio recording hook
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   └── db.ts              # Prisma client singleton
β”‚   └── server/
β”‚       β”œβ”€β”€ ai/
β”‚       β”‚   └── providers/     # Groq, OpenAI, Alibaba adapters
β”‚       β”œβ”€β”€ repositories/      # Database access layer
β”‚       └── services/          # Domain services
β”‚           β”œβ”€β”€ guardrail.service.ts
β”‚           β”œβ”€β”€ ledger.service.ts
β”‚           β”œβ”€β”€ score.service.ts
β”‚           β”œβ”€β”€ vault.service.ts
β”‚           └── audit.service.ts
β”œβ”€β”€ docs/                      # Dokumentasi arsitektur & demo
β”œβ”€β”€ vercel.json                # Region pinning (hnd1/Tokyo)
└── package.json

Tim

KasAI Labs β€” Tim pengembangan mandiri untuk Hackathon PIDI DIGDAYA x Bank Indonesia 2026.

Nama Peran Institusi
Shalahuddin Al-Ayyubi Product Designer, AI Engineer, Backend Engineer, Full-Stack Developer Politeknik Negeri Batam

Konteks Hackathon

Item Detail
Kompetisi PIDI DIGDAYA x Hackathon 2026 β€” Bank Indonesia
Problem Statement Peningkatan Produktivitas, Ketahanan Pangan, dan Penciptaan Lapangan Kerja
Sub-Problem Inklusi Ekonomi (UMKM) β€” Pemanfaatan Data Alternatif / Credit Scoring
Status Inovasi Prototype / Functional Prototype yang sudah berjalan dan dideploy

Referensi

  1. Kementerian Koperasi dan UKM RI. (2023). Data UMKM Indonesia
  2. World Bank. (2022). MSME Finance Gap
  3. OJK. (2024). POJK No. 29 Tahun 2024 tentang Pemeringkat Kredit Alternatif
  4. Bank Indonesia. (2023). Blueprint Sistem Pembayaran Indonesia 2030
  5. IAI. SAK EMKM β€” Standar Akuntansi Keuangan Entitas Mikro, Kecil, dan Menengah

Lisensi

Proyek ini dibuat untuk keperluan Hackathon PIDI DIGDAYA x Bank Indonesia 2026. Hak cipta Β© 2026 KasAI Labs. All rights reserved.


⚠️ PROTOTYPE β€” Dibangun untuk hackathon, bukan untuk penggunaan produksi.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors