Arhitektura platforme

Jedno jezgro, mnogo površina — kako platforma zaista radi.

Pregled platforme od ledgera naviše: računi, KYC, kartice i kripto dijele isto double-entry jezgro, kako se jedno plaćanje kreće od kreiranja do usklađivanja, te gdje se nalaze aplikacijski sloj, operatorska konzola i regulisana linija.

Jezgro

Jedan ledger ispod svega.

U središtu platforme je jedan ledger računa. Svaki račun — korisnički wallet, saldo trgovca, račun naknada, settlement račun — čvor je na tom ledgeru, a svako kretanje vrijednosti je double-entry knjiženje: jedan račun se zadužuje, drugi odobrava, a obje strane su uvijek jednake. Ledger je samo za dodavanje (append-only). Unosi se nikada ne mijenjaju niti brišu; ispravka je novi, suprotan unos, pa je cijela historija nastanka salda uvijek moguće rekonstruisati. Računi, KYC status, izdate kartice i kripto adrese vezani su za isti model računa, zbog čega se autorizacija kartice, bankovni transfer i on-chain uplata mogu knjižiti na isti saldo bez sloja usklađivanja koji spaja zasebne sisteme.

  1. 01Double-entry: svako knjiženje je uravnoteženo, dugovanja jednaka potraživanjima
  2. 02Append-only: ispravke su novi unosi, nikada izmjene
  3. 03Jedan model računa za fiat, kartice i kripto
  4. 04KYC status ide uz račun, a ne u pomoćnu tabelu

Plaćanje od početka do kraja

Jedno plaćanje, od kreiranja do usklađivanja.

Plaćanje nije jedan poziv nego kratak životni ciklus, a svaka faza je stanje koje vide i ledger i vaši sistemi. Svaka promjena stanja šalje webhook, a svaki upis je idempotentan — isti ključ vraća isti rezultat, pa ponovljeni zahtjev nikada ne naplaćuje dvaput.

  1. 01

    Kreiranje

    Otvara se namjera plaćanja: iznos, valuta, uključeni računi. Ništa se još nije pomjerilo — ledger bilježi unos na čekanju.

  2. 02

    Autorizacija

    Šina provjerava sredstva i rizik te postavlja blokadu. Kod kartice to je autorizacija; kod transfera se rezerviše zaduženje.

  3. 03

    Capture

    Blokirani iznos se potvrđuje. Ledger knjiži double-entry koji zaista pomjera vrijednost između dva računa.

  4. 04

    Poravnanje

    Sredstva se poravnavaju preko osnovne šine — kartične šeme, banke ili chaina — a settlement računi se usklađuju sa stvarnim novcem.

  5. 05

    Usklađivanje

    Platforma upoređuje vlastita knjiženja s izvještajem šine o poravnanju; sve što se ne poklapa označava se, a ne skriva.

Webhookovi i idempotentnost prisutni su na svakoj ivici ovog toka. Vaši sistemi saznaju da je plaćanje izvršeno primanjem događaja, a ne pollingom, a svaki zahtjev koji ponovite nakon timeouta, uz svoj ključ idempotentnosti daje isti rezultat, pa ponavljanje nikada ne naplaćuje dvaput. Servis koji izvršava authorize i capture je payment gateway.

Aplikacijski sloj

Whitelabel aplikacije na vrhu, jedna platforma ispod.

Jezgro izlaže mogućnosti; aplikacijski sloj ih pretvara u proizvode. Svaka aplikacija okrenuta korisniku — web i mobilna — whitelabel je klijent koji iste račune, plaćanja i kartice prikazuje kroz vlastiti brend. Tematizacija je vođena tokenima: boje, tipografija, radijus i razmaci dolaze iz sistema design tokena (PDS), pa operator cijelu površinu restilizira promjenom tokena, bez forkanja aplikacije. Ista platforma može se usmjeriti u vrlo različitim pravcima — potrošački neobank, aplikacija za acquiring trgovaca, program izdavanja kartica, kripto on/off-ramp ili interni operativni alat — a da ne postane pet zasebnih proizvoda. To je jedna platforma s različitim izgledima, svaki konfigurisan, a ne iznova građen.

  1. 01Whitelabel web i mobilni klijenti na zajedničkim API-jima
  2. 02Tematizacija putem tokena (PDS): restilizacija konfiguracijom, ne forkom
  3. 03Pet primjera pravaca — neobank, acquiring, issuing, ramp, ops
  4. 04Nove površine se konfigurišu, ne grade iznova

Operacije

Upravljajte iz konzole, uz razlog u zapisu.

Iza svake aplikacije stoji operatorska konzola. Tu agent podrške pronalazi račun, analitičar rizika zamrzava karticu, a voditelj operacija stornira knjiženje. Pristup za čitanje je širok; privilegovane radnje nisu. Sve što pomjera novac, mijenja limite ili dira korisnikova sredstva zahtijeva navedeni razlog prije izvršenja i upisuje nepromjenjiv revizijski zapis — ko je djelovao, na čemu, kada i zašto. Pristup slijedi princip najmanjih privilegija, pa svaki operator vidi i radi samo ono što mu uloga dopušta. Tako je u Protocore Center, operatorskoj konzoli, a isti pristup ugrađen je u svaki sistem na platformi: osjetljive radnje su promišljene, jasno pripisive i naknadno provjerljive.

  1. 01Široko čitanje, kontrolisano pisanje — privilegovane radnje su izuzetak
  2. 02Obavezan razlog prije svake radnje koja dira sredstva
  3. 03Nepromjenjiv revizijski trag: ko, šta, kada, zašto
  4. 04Najmanje privilegije po ulozi operatora

Kripto most

Kripto i fiat na istom ledgeru.

Kripto nije zaseban silos na platformi; kripto adresa je samo još jedan račun na istom ledgeru. On/off-ramp pretvara fiat u digitalnu imovinu i obrnuto na rubu sistema — korisnik puni saldo karticom ili transferom i dobija kripto, ili prodaje kripto i isplaćuje na bankovni račun. On-chain vrijednost može se poravnati sve do bankovne šine: dolazna on-chain uplata knjiži se na račun, konvertuje i isplaćuje na IBAN, pa primalac vidi običan novac na običnom bankovnom računu. Budući da se obje strane knjiže na jedan double-entry ledger, kretanje koje počinje on-chain a završava bankovnim transferom jedna je uskladena historija, a ne dva sistema usklađivana ručno.

  1. 01Kripto adresa je račun kao i svaki drugi
  2. 02On/off-ramp: fiat i digitalna imovina konvertuju se na rubu
  3. 03On-chain settlement sve do isplate na IBAN
  4. 04Jedna uskladena historija za obje strane

Površina za razvoj

API-ji, webhookovi i sandbox za razvoj.

Sve što aplikacije rade, rade putem dokumentovanog API-ja — kreiranje računa, otvaranje plaćanja, izdavanje kartice, pokretanje ramp-a. Ilustrativni pozivi izgledaju poput POST /v1/wallets ili POST /v1/payments; oblik je REST s idempotency ključem na svakom upisu. Promjene stanja isporučuju se kao webhookovi, pa vaši sistemi reaguju na događaje umjesto da ih stalno provjeravaju. Razvoj se odvija na sandbox tenantu — izolovanoj kopiji platforme s testnim šinama, gdje možete proći cijeli tok od kreiranja do usklađivanja bez pomjeranja stvarnog novca. Šta vam svaki proizvod izlaže, i na kojem nivou, određuje njegov pristupni paket; stranice pojedinih proizvoda navode šta koji paket uključuje.

  1. 01Dokumentovan REST API, idempotentni upisi
  2. 02Webhookovi za svaku promjenu stanja — vođeno događajima, bez pollinga
  3. 03Sandbox tenant s testnim šinama, izolovan od produkcije
  4. 04Opseg i limite određuju pristupni paketi po proizvodu

Iskrena granica

Protocore gradi softver. Licenca drži regulisanu liniju.

Platni proizvod su dvije spojene stvari: regulisana dozvola za držanje i prenos novca te softver koji ga usmjerava, bilježi i usklađuje. Protocore gradi softver. Regulisana djelatnost — držanje sredstava korisnika, otvaranje računa, prenos novca na šemi — ostaje kod operatorove vlastite licence ili licenciranog partnera: banke, EMI-ja ili platne institucije. Platforma je građena da se uklopi u regulisane šine koje donesete i da podatke o karticama drži na šini, tako da nikada ne dođu do vaših servera; ona nije, kao što ni jedan softver nije, zamjena za tu dozvolu. Gdje će proći regulisana linija odluka je koju donosite s partnerom, a arhitektura je osmišljena da čisto stoji sa obje njene strane.

  1. 01Softverski sloj, a ne licenca
  2. 02Regulisana djelatnost ostaje kod operatora ili licenciranog partnera
  3. 03Podaci o karticama ostaju na šini, van vaših servera
  4. 04Građeno da se uklopi u regulisane šine koje donesete

Trebate arhitekturu za svoj projekat?

Recite nam šta gradite. Vratit ćemo se s dizajnom sistema i mjestom regulisane linije — ne s prezentacijom.