FinantssüsteemidTurvalisus ja vastavusAPI liidestamineMakselahendusedFront-end arendusSüsteemiarhitektuur
Ülevaade
aastal asutatud Inbank oli teerajaja visioonis tuua pangateenused otse müügikohta — sinna, kus igapäevane ostlemine toimub.
nodeSWATi partnerlus Inbankiga sai alguse 2018. aastal, kui nad pöördusid meie poole, et arendada nende kaupmeestest partneritele platvorm, mis võimaldaks lõppklientidel taotleda "osta kohe, maksa hiljem" järelmaksu.
Lahendus tõi kasu mõlemale poolele: kaupmehed said pakkuda finantseerimisvõimalusi rohkematele klientidele ja Inbank laiendas oma krediidilepingute kliendibaasi.
550,000+
Aktiivset kliendilepingut neljas riigis
100+
Kaupmeest platvormil
Väljakutse
Projekt oli mitmel põhjusel märkimisväärselt keerukas:
Rakendus pidi toetama arvukalt erinevaid taotlusvoogusid
Inbanki portfellis oli mitu krediidilahendust, millest igaühel olid tagasimaksestruktuurist tulenevad omad nõuded
Iga krediidivoog vajas kaupmehepõhist seadistatavust
Inbank tegutses mitmes riigis, kus kohalikud pangandusreeglid tõid kaasa täiendavaid erisusi
nodeSWATi ülesanne oli arendada süsteemi rakenduskiht ja nõustada Inbanki põhisüsteemis vajalike muudatuste osas. Ainus etteantud tehniline nõue oli Vue.js-i kasutamine.
Tehniline lähenemine
Meie kogemus raamistikega nagu Angular, React ja Next.js võimaldas kiiresti omandada Vue.js-i mustrid. Valisime täisvirna raamistikuks Nuxt.js-i — Vue vaste Next.js-ile — mis andis keerukale ja suure jõudlusega rakendusele vajaliku vundamendi.
Kasutajaliidese kihis valisime algul Bootstrapi, mis tagantjärele vaadates tekitas kohandamispiirangute tõttu raskusi. Järgmistes Inbanki projektides läksime üle Tailwind CSS-ile, mis parandas oluliselt nii arendajakogemust kui ka hallatavust.
Platvorm andis kaupmeestele terviklikud tööriistad klientide haldamiseks ja finantseerimislepingutega liitmiseks. Tehniliselt kõige keerukam osa — ja selle kliendiloo fookus — oli väga hästi seadistatava krediiditaotluse voo loogika arendamine.
Teostuse strateegia
Mitme vormipõhise töövoo keerukate nõuete lahendamiseks ehitasime seadistussüsteemi, mis suutis hallata:
Väljade dünaamilist valikut ja järjestust
Astmelist valideerimisloogikat (alates lihtsast kohustuslik/valikuline kontrollist kuni keerukate väljadevaheliste sõltuvusteni)
Riigi- ja tootepõhiseid erisusi
Meie lahenduse keskmes olid:
JSON-seadistusfailid: igal voo variandil oli oma seadistusfail, mis määras vormiväljad, järjestuse ja valideerimisreeglid
Vue mixin'id: lõime mixin'id, mis võtsid sisendiks voo tunnuse, viitasid õigele seadistusfailile, laadisid valideerijad ja seadsid vormi algseisu
Dünaamilise renderdamise abivahendid: omaloodud utiliidid töötlesid seadistusandmeid ja genereerisid vastavad vormielemendid
Hübriidseadistus: süsteem ühendas nii sisemise seadistuse kui ka välised parameetrid Inbanki põhisüsteemi API-st, mis said väljade kuvamist konkreetse laenutoote või riigi põhjal üle kirjutada
Arhitektuur läbis mitu iteratsiooni ja täiendust ning andis lõpuks skaleeritava lahenduse, mis vastas kliendi nõuetele.
Tulemused ja mõju
Kaupmeeste platvorm osutus väga edukaks ja tõestas oma väärtust tegevustõhususega. Kui Inbank soovis laieneda uutesse riikidesse või lisada krediiditooteid, oli seadistusprotsess märkimisväärselt sujuv — uue voo seadistamiseks ja testimiseks kulus tavaliselt vähem kui nädal.
€75.5m
Puhaskasum kokku (miljonites eurodes)
Õppetunnid
Kuigi meie tehnilised valikud olid teostamise ajal asjakohased, on maastik vahepeal oluliselt muutunud. Täna kasutaksime:
Aastatepikkusest reaalsest kasutusest ja tagasisidest saadud teadmisi
Laienenud partnerlus
Meie koostöö Inbankiga kestis ligi kuus aastat ja hõlmas mitut projekti:
Kliendile suunatud makselahendus: sarnane kaupmeeste platvormile, kuid mõeldud lõppklientidele, võimaldades "osta kohe, maksa hiljem" finantseerimist veebiostu vormistamisel
Integreeritud laenukalkulaator: vidin e-poodidele, mis lubab klientidel katsetada erinevaid laenusummasid, maksestruktuure ja tähtaegu
Täisfunktsionaalne internetipanga rakendus: terviklik platvorm, kus kliendid saavad hallata olemasolevaid lepinguid ja taotleda uusi finantstooteid
Lisaprojektid: sealhulgas uus tagakontori platvorm, dokumentide genereerimise mikroteenus ja ühtne kasutajaliidese teek
Tehnoloogia areng
Meie tehnoloogiavirna tuum püsis kogu partnerluse vältel sama — Vue.js ja Nuxt.js — koos strateegiliste täiendustega:
Algul kasutasime Fastify-põhist proxy API-d, et suunata päringud Inbanki põhisüsteemi API-sse
Hiljem viisime proxy-funktsionaalsuse otse Nuxt.js-i serverikihti, vähendades taristukulusid ja parandades arendajakogemust
Läksime hilisemates projektides Bootstrapilt üle Tailwind CSS-ile, mis muutis kasutajaliidese arenduse oluliselt tõhusamaks