Architecture

How PLATMA works inside the bank

On-premise deployment. Integration through Node-RED. AI runs inside the bank's perimeter — no data leaves your data centre.

Bank systems Core Banking CRM · ERP Legacy DBs External APIs 14+ sources Node-RED Integration layer 80+ orchestration flows Real-time data bus JWT · RBAC · audit low-code On-premise storage PostgreSQL 16 + pgvector + pg_trgm Golden Profile 360 your data centre AI engine OpenAI · Claude or local Ollama SQL generation Narrative briefs pluggable Bank staff Banker portal Ops portal Bank clients Owner portal Mobile · web All four blocks run on-premise — your data centre, your perimeter, your control.
Four layers

How data flows from core systems to the user

🗄️

Disparate bank systems

Core Banking, CRM, ERP and legacy databases. PLATMA does not replace them. It unifies access to them through a real-time data bus.

🔌

Node-RED integration layer

Eighty plus orchestration flows joining bank systems into a single stream. JWT authentication, RBAC, audit trail on every API call. Low-code visual editor.

🔐

Unified on-premise storage

PostgreSQL with pgvector for embeddings and pg_trgm for fuzzy matching. Data is aggregated and normalised. Golden Profile 360 — single source of truth for every client.

🧠

Pluggable AI engine

OpenAI, Anthropic Claude or local Ollama — switch by one environment variable. AI never receives anything beyond what your data security policy allows.

Data fabric

Connect your data — and the registries you can't reach today

Node-RED connects to public sources and licensed closed registries, pulls the data, normalises and enriches it. You plug in your access — the platform turns scattered lookups into one live profile. This is the layer most banks simply do not have.

🏛️

State company registry (EGRPO)

Status, directors, beneficial owners.

public
⚖️

Sanctions OFAC / EU / UN / CBU

Screening and near-match detection.

public
📜

Courts and enforcement

Disputes, claims, enforcement proceedings.

public
🧾

e-soliq (tax authority)

Turnover, VAT, tax discipline.

closed · by licence
📊

KATM credit bureau

Credit history and scoring.

closed · by licence
🏷️

Pledge registry (Garov)

Collateral and existing encumbrances.

closed · by licence
🚢

Customs (Davlat bojxona)

Foreign trade, import / export volumes.

closed · by licence
🏠

Real-estate cadastre

Property owned and its value.

closed · by licence

Every connector is pluggable: you provide the legal basis and access, the platform logs every registry call. Raw data stays inside your perimeter.

Agentic layer

Agents that gather, reason and show their work

On top of the data fabric, specialist agents pull from many sources, reason over them and produce a decision-support answer — with a visible trace of every step. Each cabinet has its own.

🏦

Banker · registry enrichment

From a single tax ID the agent queries seven registries and returns a verified 360° profile, risk flags and source links — in seconds instead of days.

📈

Owner · financial co-pilot

Reviews cashflow, tax, customer concentration and obligations, then gives a personal brief, actions and a financing-readiness signal.

🛡️

Ops · AML analyst

Gathers case context and recommends a disposition with evidence. Sanctions matching stays deterministic; the officer makes the final call.

The agent advises — a human decides. Scoring and sanctions matching stay deterministic. Only anonymised data reaches the model. Every step is in the trace and the audit log.

Inside Node-RED

One real orchestration flow — visualised

Below is the live data path that the platform takes when an owner asks for the cashflow brief. Every block is a real Node-RED node — one of eighty currently deployed.

Flow:/v2/owner/cashflow/forecast· 9 nodes
HTTP IN POST /forecast JWT verify + RBAC function node Build SQL query function node PostgreSQL query 90 days · ~2,500 rows Build LLM prompt function node LLM API call OpenAI · Claude Parse LLM JSON + fallback rules Merge + format function node HTTP RESPONSE 200 OK · ~1.2s Node colours HTTP endpoint JavaScript function PostgreSQL External API (LLM)
Inside Node-RED

The enrichment agent — visualised

When a banker opens a client, this is the live path: the agent queries the registries, anonymises the metrics, asks the model (or falls back to rules) and returns a verdict with a full trace. Every block is a real Node-RED node.

Flow:/v2/banker/clients/:id/enrich· 10 nodes
HTTP IN request from cabinet JWT verify function node Registry connectors 7 registries · source + date Build LLM request anonymised metrics only LLM API Claude / OpenAI · or rules Parse + compose verdict + trace HTTP Response verdict · flags · trace

The agent advises — a human decides. Sanctions matching stays deterministic, no PII reaches the model, and every step is in the trace and the audit log.

Why on-premise

Three reasons banks choose PLATMA

🔒

No vendor lock-in

Your bank owns the deployed platform. Export clean code at any time. Scale independently. Customise without asking the vendor.

🏛️

On-premise sovereignty

Everything runs in your data centre. Data never leaves the perimeter. Compliant with the strictest banking regulators.

Lower cost

Low-code construction. Fewer engineers needed to build, maintain and scale. Significant savings on infrastructure thanks to optimised platform.

Want a deep technical session?

Our solution architects walk through deployment, integration points, security model and AI provider configuration.

Book architecture review See pilot timeline