jakloan

Retail banking herdefiniëren: hoe we JakLoan bouwden, het mobiele leningecosysteem op ondernemingsniveau van Bank DKI
Elke moderne bank wordt geconfronteerd met een bepalend moment waarop legacy-systemen transformeren van betrouwbare werkpaarden naar operationele knelpunten. Voor Bank DKI, een vooraanstaande regionale financiële instelling, brak dat moment aan bij de afdeling leningverstrekking. In het verleden moesten eigenaren van kleine bedrijven die een microlening zochten, of ambtenaren die een multifunctionele financiering aanvroegen, een papieren rompslomp doorlopen. Kredietadviseurs reisden dagenlang tussen veldaudits, regiokantoren en fysieke archiefkasten. Het verzamelen van documenten van aanvragers, het handmatig controleren van kredietbureaus en het opstellen van papieren risicobeoordelingen zorgden er regelmatig voor dat de doorlooptijden opliepen van dagen tot weken.
Als product- en engineeringteam stonden we voor een enorme opgave: het volledig digitaliseren en automatiseren van de end-to-end leningverstrekking van Bank DKI en de levenscyclus van kredietacceptatie. Het resultaat van ons werk was JakLoan, een reeks native Android-applicaties op ondernemingsniveau die de handmatige workflows van de bank transformeerde in een zeer efficiënte, mobile-first ervaring.
Om aan verschillende kredietmarkten te voldoen, hebben we het platform opgesplitst in twee afzonderlijke applicaties: een kernapplicatie voor meerdere producten die micro- (Mikro) en sharia-conforme (Syariah) financiering ondersteunt, en een gespecialiseerde, gestroomlijnde app die exclusief is gebouwd voor multifunctionele leningen (Kredit Multiguna - KMG) gericht op loonlijstklanten en ambtenaren. Dit is het verhaal van hoe we deze transformatie hebben ontworpen, gearchitecteerd en gerealiseerd.
De uitdaging: privacy, legacy-frictie en de offline realiteit
Toen we begonnen met het in kaart brengen van de klantreizen voor onze belangrijkste persona — de Account Officer in het veld — realiseerden we ons al snel dat het bouwen van een standaard consumentenbank-app niet voldoende zou zijn. Deze adviseurs brachten hun dagen door op drukke traditionele markten, afgelegen bouwplaatsen en gemeentelijke kantoren waar de internetverbinding zeer onvoorspelbaar was. Toch moesten ze zeer gevoelige persoonlijk identificeerbare informatie vastleggen, officiële identiteitsdocumenten scannen, zakelijke adressen verifiëren en ter plekke complexe financiële berekeningen uitvoeren.
We stonden voor drie grote uitdagingen. Ten eerste moesten we zorgen voor totale beveiliging en naleving van de regelgeving. We hadden te maken met gevoelige gegevens van Dukcapil en financiële geschiedenis van het Indonesische kredietbureau (SLIK OJK). Elk lokaal datalek zou catastrofaal zijn, wat betekende dat onze opslag- en transmissieprotocollen ongelooflijk veilig moesten zijn.
Ten tweede moesten we offline-frictie overwinnen. Een Account Officer die bij een afgelegen marktkraam stond, kon het zich niet veroorloven om een heel concept voor een leningaanvraag te verliezen, alleen omdat de netwerkverbinding wegviel. De applicatie moest werken volgens een offline-first-paradigma, waarbij complexe formulierstatussen, geotags en foto-uploads met een hoge resolutie lokaal werden opgeslagen en vervolgens naadloos werden gesynchroniseerd zodra er weer verbinding was.
Ten slotte moesten we de complexiteit van de bedrijfslogica beheren. Het platform moest conventionele microleningen ondersteunen die fysieke onderpandsbeoordelingen vereisten, sharia-conforme financiering met gespecialiseerde winstmargerekeningen en contractselecties, en gestroomlijnde loonlijstleningen die integratie met overheidsdatabases van werkgevers vereisten. Het beheren van deze uiteenlopende workflows in één enkele codebase zou hebben geleid tot een ononderhoudbaar systeem, wat ons ertoe aanzette om een zeer modulaire, tweeledige applicatiearchitectuur te ontwerpen.
De technische strategie: modulaire architectuur & offline-first beveiliging
Om een solide basis te leggen voor het JakLoan-ecosysteem, heeft ons team gekozen voor een native Android-stack aangedreven door Kotlin en Java, met Android Studio als onze primaire ontwikkelomgeving. We hebben de applicaties gestructureerd op basis van Clean Architecture-principes in combinatie met het Model-View-ViewModel-ontwerppatroon (MVVM) en het Repository-patroon. Deze scheiding van belangen hield onze bedrijfslogica losgekoppeld van de UI, waardoor we een hoge testbaarheid konden behouden en gegevensbronnen eenvoudig konden uitwisselen.
Voor dependency injection hebben we Google Hilt en Dagger2 geïmplementeerd om afhankelijkheden zoals onze API-clients en lokale repositories over de gehele levenscyclus van de applicatie te beheren. Onze lokale gegevenspersistentie vertrouwde op een Room-database die fungeerde als een offline cache. Wanneer een adviseur een veldbezoek of een acquisitie-activiteit startte via de routine saveDataCanvasing, schreef de applicatie rechtstreeks naar Room.
Een offline statusmanager hield de synchronisatiestatus bij, met behulp van achtergrondservices zoals SignalStrengthLevel om de verbinding te controleren. Als het signaal sterk was, synchroniseerde de app de offline wachtrij terug naar onze servers met behulp van Retrofit2 en OkHttp3, ondersteund door robuuste Moshi JSON-serialisatie en aangepaste Kotlin-adapters.
Beveiliging werd rechtstreeks in onze gegevenslaag geïntegreerd. Om man-in-the-middle-aanvallen te voorkomen, hebben we strikte SSL Certificate Pinning afgedwongen op onze API-endpoints, gericht op de beveiligde domeinen van Bank DKI. Alle lokaal opgeslagen gegevens, zoals actieve sessiegegevens, worden bewaard in Encrypted SharedPreferences met behulp van PrefData.
We hebben ook een sessiebeveiligingsmechanisme geïntegreerd dat wordt aangestuurd door achtergrondservices zoals LogoutService. Deze service controleerde actief netwerkwijzigingen en inactiviteit van gebruikers, wiste gevoelige geheugenreferenties en logde de gebruiker uit als er verdachte activiteit werd gedetecteerd. Tijdens de ontwikkeling hebben we Chucker gebruikt als netwerkinterceptor om API's te debuggen, maar we hebben onze build-varianten zo geconfigureerd dat Chucker volledig werd verwijderd en alle autorisatieheaders werden weggelaten voordat we productiebuilds compileerden.
Achter de functies: een dag in het veld met JakLoan
Om echt te begrijpen hoe deze technische strategieën werden vertaald in bedrijfswaarde, kunnen we de reis volgen van een Account Officer genaamd Budi die JakLoan in het veld gebruikt om een leningaanvraag voor een micro-onderneming te verwerken.
Budi begon zijn ochtend met het openen van de JakLoan-app. Het pipeline-dashboard presenteerde hem onmiddellijk zijn dagelijkse planning, met actieve leads, openstaande follow-ups en zijn geotagged acquisitiedoelen. Toen hij op een lokale markt aankwam om een aanvrager te ontmoeten, opende Budi de digitale e-Form-module.
In plaats van lange formulieren in te typen, startte hij de aangepaste camera-interface. De app maakte gebruik van een OCR-scanner op het apparaat om de Indonesische KTP-kaart van de aanvrager vast te leggen, waarbij de naam, het adres en het nationale identiteitsnummer direct in de formuliervelden werden ingevuld. Deze gegevens werden vervolgens in real-time geverifieerd met de nationale database van Dukcapil.
Nadat de identiteit van de aanvrager was gevalideerd, voerde Budi een onmiddellijke pre-screening uit. De app stuurde een API-verzoek naar het centrale kredietbureau om de SLIK OJK-database te raadplegen. Binnen enkele ogenblikken downloade en beoordeelde Budi een uitgebreid kredietrapport.
Als de klant deze eerste controle had doorstaan, paste de app de beschikbare leninglimieten aan op basis van overheidssubsidiegegevens via onze database-integratie, waardoor het risico in een vroeg stadium werd geminimaliseerd.
Vervolgens voerde Budi de fysieke controle ter plaatse uit. Hij legde geverifieerde GPS-coördinaten en foto's van de kraam van de aanvrager vast en beoordeelde de onderpanden. Dankzij de multi-onderpandsengine van de Core-app kon hij vijf verschillende soorten onderpand verwerken, van onroerend goed tot vergunningen voor marktkramen, waarbij de gezondheid van het bedrijf rechtstreeks vanaf zijn mobiele apparaat werd beoordeeld.
Voor sharia-conforme aanvragers berekende de applicatie automatisch de winstmarges opnieuw en verifieerde de contractovereenkomsten ter plaatse.
Zodra de gegevensverzameling voltooid was, berekende de ingebouwde kredietbeoordelingsengine van de applicatie een real-time risicoscore. Budi diende het ingevulde dossier in, waarna de aanvraag naar de regionale Branch Manager werd gestuurd.
Terug op het kantoor beoordeelde de manager de uitgebreide kredietanalysememo, keurde de aanvraag goed en genereerde een officiële digitale offerte voor de lening. Budi kon het goedgekeurde document vervolgens nog dezelfde dag downloaden en uitprinten voor de klant.
Resultaten & De toekomst van retail leningen leveren
Door trage, papieren processen te vervangen door een geïntegreerde, mobile-first ervaring, hebben we de levenscyclus van de kredietacceptatie van Bank DKI aanzienlijk verbeterd. De implementatie van JakLoan verkortte de gemiddelde doorlooptijd van de leningverwerking van de bank met ongeveer 60%. Wat voorheen enkele dagen handmatige gegevensinvoer, fysieke verificatie en administratieve routing kostte, werd gereduceerd tot een paar uur gestroomlijnde mobiele handelingen.
Door identiteitscontroles via Dukcapil te automatiseren en real-time rapportage van kredietbureaus te integreren, hebben we de bank geholpen om identiteitsfraude en wanbetalingen in een vroeg stadium aanzienlijk te verminderen.
Bovendien zorgde het vereisen van geverifieerde GPS-geotagging voor alle veldbezoeken ervoor dat audits nauwkeurig ter plaatse werden uitgevoerd, waardoor regionale kantoordirecteuren duidelijk inzicht kregen in de activiteiten van hun veldteams.

Belangrijkste inzichten & lessen uit het veld
Het bouwen van JakLoan heeft ons team een aantal belangrijke lessen geleerd over het inzetten van digitale systemen op ondernemingsniveau binnen legacy-bancaire omgevingen.
Ten eerste hebben we geleerd dat ontwerpen voor de offline gebruikerservaring net zo belangrijk is als het schrijven van veilige backend-code. Door prioriteit te geven aan een offline-first-architectuur met behulp van Room en achtergrondsynchronisatiediensten, hebben we ervoor gezorgd dat kredietadviseurs efficiënt konden werken zonder te worden gehinderd door onregelmatige mobiele verbindingen.
Ten tweede hebben we de waarde ontdekt van het prioriteren van modulariteit in een vroeg stadium van de ontwikkelingslevenscyclus. Door het platform op te splitsen in een Core-applicatie en een gespecialiseerde KMG-app konden we twee op maat gemaakte gebruikerservaringen leveren zonder onze codebase te ingewikkeld te maken. Deze duidelijke scheiding van belangen maakte het veel gemakkelijker om beide applicaties onafhankelijk te onderhouden, te testen en te schalen.
Uiteindelijk heeft JakLoan aangetoond dat traditionele bankworkflows met succes kunnen worden gemoderniseerd zonder in te leveren op beveiliging of naleving van de regelgeving. Door een schone Android-architectuur te combineren met robuuste beveiliging en een gebruiksvriendelijke mobiele ervaring, hebben we Bank DKI geholpen de overstap te maken naar een sneller, flexibeler en papierloos digitaal leningtijdperk.