Eno jedro, mnogo aplikacij: kako deluje whitelabel bančna platforma
Whitelabel bančna platforma je eno bančno jedro z zamenljivim sprednjim delom. Jedro je del, ki mora biti pravilen: glavna knjiga z dvostavnim knjiženjem, računi strank, KYC in uvajanje, izdajanje in procesiranje kartic, kripto in stablecoin poti ter operaterska konzola, ki teče za vsem tem. Aplikacija je del, ki ga vidi stranka — njeno ime, barve, oblika zaslonov, podmnožica vklopljenih funkcij. Whitelabel pomeni, da lahko eno jedro nosi mnogo obrazov, ne da bi ga bilo treba za vsakega znova graditi. Eno jedro, mnogo aplikacij.
Povedano preprosto, gre za trditev o tem, kje potekajo šivi. Vse, kar se dotika denarja, je skupno, revidirano in usklajeno enkrat; vse, kar se dotika stranke, je konfigurirano po tenantu. Pomembno inženirstvo je ohranjati to mejo poštenö — sprednji del naj se prosto razlikuje, jedro, na katerem stoji, pa se nikoli ne razveji. To je razčlenitev tega, kako se meja potegne in zakaj je z oblikovalskimi tokeni boljša kot z forkom.
Kar se nikoli ne spreminja: jedro
Začnimo s polovico, ki ne sme biti ustvarjalna. Prenos se knjiži enako, ne glede na to, ali ga aplikacija imenuje pošiljanje, plačilo ali izplačilo: dva vnosa v glavni knjigi z dvostavnim knjiženjem, nič pa se nikoli ne briše — knjiga le dodaja, zato je povračilo protivnos, ki se sklicuje na izvirnika, ne izbris. Tu živijo računi, stanja in avtorizacijske blokade. Tako tudi KYC in uvajanje, izdajanje in poravnava kartic ter kripto in stablecoin poti. Za njimi stoji ena operaterska konzola, kjer vsako privilegirano dejanje zahteva razlog in pristane v revizijski sledi.
Vsakega od teh je natanko eno in v tem je bistvo. Poravnavo, uskladitev in skladnost je težko narediti prav in drago narediti narobe, zato jih zgradite enkrat in pustite, da vsaka aplikacija podeduje rezultat. Ko tenant uvede stranko, ji KYC stopnja, ki jo določi jedro, sledi v konzolo ne glede na to, zaslone katere aplikacije so zajeli dokumente. Jedra ne zanima, kako se imenuje aplikacija nad njim — vidi račune in vnose, ne blagovnih znamk.
Kar se spreminja: oblikovni jezik, informacijska arhitektura, nabor funkcij
Vse nad jedrom se lahko prosto spreminja, po treh oseh. Prva je oblikovni jezik: barva, tipografija, zaobljenost vogalov, razmiki, gibanje — vizualna slovnica blagovne znamke. Druga je informacijska arhitektura: kaj stoji na začetnem zaslonu, kako so tokovi poimenovani in razvrščeni, katero dejanje je oddaljeno en dotik in katero tri. Tretja je nabor funkcij: kateri moduli so sploh vklopljeni. Vitka aplikacija za prenose in gosta super-aplikacija lahko poganjata isto jedro, pa si ne delita niti enega zaslona.
Stran izdelka na /products/pay prikazuje pet izdelanih smeri, najbolje pa jih je brati kot primere neskončno mnogih, ne kot jedilnik petih. Halcyon je čista borza — zadržana, z malo površinami, trgovanje v ospredju. Lumen je super-aplikacija, v kateri se denar premika znotraj pogovora, na začetnem zaslonu pa si delijo mesto klepetalna plačila, naročnine in varčevanje z donosom. Fern vodi s prenosi — najprej paketna izplačila in pravilom podrejena zamenjava valut. Volt je temna stablecoin izvedba s sortirnikom plač in ekipnimi karticami. Meridian je večvalutni: račun v EUR ob USDC, potovalno stanje v GBP in račun v BTC, kamor pristanejo nagrade s kartic. Pet blagovnih znamk, pet informacijskih arhitektur, pet naborov funkcij — pod vsemi pa ena glavna knjiga, en KYC, en procesor kartic.
Nič od tega ne pomeni, da je izdelek pet aplikacij. Teh pet je smeri, ki jih lahko ubere isti cevovod; pomembno število ni pet, ampak toliko, kolikor tenantov uvedete. Vsaka je dokaz, da se sprednji del lahko razlikuje vse do oblike začetnega zaslona, jedro pod njim pa tega nikoli ne opazi.
Jedra ne smete na novo izumljati; aplikacije ne smete omejevati. Whitelabel platforma je disciplina, ki obe trditvi ohranja resnični hkrati.
Zakaj tematiziranje na ravni tokenov premaga razvejanje kode
Obstajata dva načina, kako narediti, da en izdelek izgleda kot mnogo. Očitni je fork: kodo kopiraš za vsakega kupca, jo preoblikuješ in izdaš. Deluje za natanko eno izdajo. Potem je treba vsak popravek in vsako regulatorno spremembo uporabiti N-krat na N razhajajočih se kopijah, kopije se razsinhronizirajo, varnostna površina, o kateri morate razmišljati, pa se pomnoži s številom kupcev. Fork spremeni en sistem, ki ga razumete, v mnogo takih, ki jih ne.
Tematiziranje na ravni tokenov to obrne. Koda je ena. Blagovna znamka je nabor vrednosti — tokeni za barvo, pisavo, zaobljenost in razmike; konfiguracija komponent; nabor feature flagov — ki se ob gradnji razreši v aplikacijo z lastno podobo. Spremenite token in se premaknejo vsi zasloni, ki ga berejo, ker nič ne vsebuje trdo zapisane vrednosti, ki bi jo moralo vleči iz tokena. Popravek tока prenosa gre naenkrat k vsem tenantom, ker je za popravilo le en tok prenosa. Blagovne znamke se razlikujejo po konfiguraciji, ne po izvorni kodi.
Kje stoji oblikovalski sistem
Tokeni niso ohlapna zamisel, ampak izdan artefakt. Protocore Design System — /products/pds — je 144 oblikovalskih tokenov in 889 utility razredov: besednjak, v katerem je tematizirana vsaka aplikacija. Je dark-first, vodi ga token, privzeta zaobljenost pa je nič, isti nabor tokenov pa se izdaja za splet, .NET in native, tako da barva, definirana enkrat, pomeni isto barvo na zaslonu v Reactu, namizni konzoli in native mobilni izvedbi. Blagovna znamka tenanta je izražena kot prepisi nad tem besednjakom, zato je preoblikovanje aplikacije sprememba konfiguracije, ne prepis.
Prav zaradi tega je sprednji del resnično svoboden, ne le svoboden znotraj predloge. Ker oblikovni jezik živi v tokenih in utility razredih, ne v enkratnih slogovnih datotekah, lahko oblikovalec tenanta potisne daleč od referenčne izvedbe — lastna paleta, pisava, gostota in ritem — brez posega v jedro in brez forka aplikacije. Barva gre globoko, a je še vedno le barva; napeljava pod njo je skupna.
Aplikacija je konfiguracija, ne gradnja
Nabor funkcij sledi istemu pravilu. Vsak modul — klepetalna plačila, varčevanje z donosom, kripto, kartice, naročnine, ekipne kartice, priporočila — je stikalo, vklopljeno po tenantu, zastavica pa se lahko pred splošno uvedbo sprosti na delu uporabnikov. Operaterji jih preklapljajo v konfiguracijski plošči, ne z deployem. Razlika med skromno aplikacijo za prenose in polno super-aplikacijo torej ni dva projekta, ampak dve konfiguraciji enega projekta. Referenčna aplikacija, iz katere začne vsak tenant, je nevtralna izvedba z blagovno znamko Protocore s celotnim menijem — vsak whitelabel je ta izvedba s prepisanimi tokeni in vklopljenimi ali izklopljenimi moduli.
Odkrita meja
Eno jedro, mnogo aplikacij je vredno tega aparata le, če mnogo aplikacij tudi imate — ali eno, ki jo nameravate sčasoma preoblikovati, preurediti in preusmeriti, ne da bi vsakič znova gradili banko. Če izdajate eno samo fiksno aplikacijo, ki ne bo nikoli nosila druge blagovne znamke, whitelabel platforme ne potrebujete; potrebujete aplikacijo. Svoje upraviči v primeru, za katerega je bila zgrajena: platforma, ki tenant za tenantom postavlja bančne izdelke z lastno blagovno znamko, vsakega vidno svojega, nobenega forka. Celotna razčlenitev — pet smeri, referenčna aplikacija in operaterska konzola za njimi — je na /products/pay, oblikovalski sistem pod njimi pa na /products/pds.
Imate sistem za izdelavo?
Opišite nam problem. Vrnili se bomo z arhitekturo in načrtom.