nodeSWAT
KLIENDILUGU

Inbank: piiramatu potentsiaaliga finantseerimisplatvorm

FinantssüsteemidTurvalisus ja vastavusAPI liidestamineMakselahendusedFront-end arendusSüsteemiarhitektuur

Ülevaade

  1. 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)

Inbank

Õppetunnid

Kuigi meie tehnilised valikud olid teostamise ajal asjakohased, on maastik vahepeal oluliselt muutunud. Täna kasutaksime:
  • Vue 3 Composition API-d mixin'ite asemel
  • Kaasaegseid vormiteekide hook'e
  • Tailwind CSS-i tõhusamaks kasutajaliidese kohandamiseks
  • 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
Inbank

https://www.inbank.ee


Tech stack used in the project

Front-end

Vue.JS
Nuxt.JS
Bootstrap
Tailwind

Back-end

Ruby on Rails
Java
PostgreSQL

Taristu

Jenkins
Docker
AWS
VÕTA ÜHENDUST
base@nodeswat.com
LINKEDIN
linkedin.com/company/nodeswat
Vaata
BRONEERI KÕNE
Arutame teemat
Broneeri kõne
nodeSWAT
Tallinn Office
Valukoja 8, "Öpiku maja"
C-entrance, 9th floor
Tallinn, Estonia
Copyright © nodeSWAT OÜ