Skip to content
@Bank8-dev

Bank8

Open-Source Post-Quantum Core Banking Platform (Apache 2.0): ISO 20022 payments, ledger, FX in Rust. Runs on Sentin8.

Bank8 - Finance Vertical

Secure Post-Quantum-Safe Core Banking & ISO 20022 Payments That Heals and Scales Itself - with Products Extended as Code via WASM Edge Functions.

Bank8 is the finance vertical of the Sentin8 platform - a complete retail banking stack: core ledger, payment orchestration (domestic + cross-border), open banking composed from the OpenFin8 vertical, prudential risk measurement, and AML/CTF compliance. All built as six independent Rust services composed on top of the Sentin8 platform for identity, events, workflows, scheduling, and storage.

Extensibility is architectural: custom product logic (fees, tiered interest, velocity limits, sweeps) compiles to WASM and runs in Sentin8:Func, the platform's isolated edge-function service - invoked around the ledger's atomic commit through typed hooks, never inside the transaction loop. There is no fixed product catalog: any financial product - retail checking, savings, credit cards, mortgages, commercial lending, BNPL, wallets, or tokenized asset balances nobody has built yet - is created as data (a free-form type + parameters + validation modules) on the same unified ledger, while behavior beyond the built-in module library is authored as WASM hooks. Products launch and change as data operations (upload → validate → simulate → activate) with zero core restarts; a buggy hook is contained in its sandbox while the posting transaction stays intact.

Infrastructure independence

Sentin8 and Bank8 redefine infrastructure independence by delivering massive scale directly onto bare-metal, private cloud, and all major public cloud environments - including AWS, GCP, and Azure. Engineered to bypass the complexity and overhead of Kubernetes or heavy service meshes, Sentin8 features native auto-scaling and self-healing capabilities built directly into its core with minimal to no external dependencies. It is purpose-built for ultra-low latency and maximum efficiency, proven in testing to power real-time services with a blistering throughput of 5,000,000 transactions per second (TPS). With Sentin8, you get cloud-native resilience and elite performance, stripped of the operational tax.

Architected for ultimate versatility, Sentin8 is being designed and tested to power infrastructure across the entire business spectrum, from Tier 1 global enterprises to fast-growing startups. Whether you are managing massive legacy workloads at the highest enterprise scale or launching a lean, high-velocity application from a garage, Sentin8 provides the exact same battle-tested reliability and performance to match your operational needs.

A note on our history. If you found your way here looking for PRIME - authPrime, exchangePRIME, and family - you're in the right place. Those projects are this one: our open-source work is now rebranded to Sentin8 (this vertical is Bank8) to avoid confusion with other brand names and products. At the same time we left our self-hosted Apache SVN behind and moved everything to GitHub. The lineage goes back further than you might expect - here's a fun LinkedIn read from 2017, when the platform was still called PRIME and still lived on SVN: Advanced Hybrid Securities Exchange.

Services

Service Domain What it does Tables Endpoints
Bank8:Ledger Core Banking Double-entry ledger with an open product factory - any financial product creatable as data (free-form type + parameters + modules, no fixed catalog) - plus accounts, products, postings, balances (3-D), statements, checksum-chained audit trail 44 domain tables + outbox + audit journal 91 endpoints
Bank8:Payments Payment Orchestration ISO 20022 scheme flows (B8 on-us, SEPA, TIPS, SWIFT AGI), card issuing/lifecycle/3DS, mandates, payees, routing rules, recurring payments, sandbox simulators 55 domain tables + outbox + audit journal 90 endpoints
Bank8:Risk Prudential Risk Exposure measurement from posting/payment events, Basel capital, LCR/NSFR liquidity, IFRS 9 ECL staging, limit monitoring with breach events, stress scenarios Event-driven (consumes ledger/payments events) Embedded worker
Bank8:Reporting Regulatory Reporting Jurisdiction registry, filing calendar, return generation (XBRL/CSV), submission/amendment lifecycle, AML/CTF filing executor (STR/SAR/CTR/EFTR/LCTR) Event-driven (consumes risk/compliance events) Embedded worker
Bank8:Compliance AML/CTF KYC/CDD, beneficial ownership, PEP/sanctions screening, transaction monitoring, alert/case lifecycle - detection only, filing via Reporting Event-driven (consumes ledger/payments events) Embedded worker

Open Banking / Open Finance

Verticals owned outside this repository that bank8 composes into its stack. They keep their own tables, endpoints, and lifecycle; bank8 only composes them by enabling them in its environment.

Vertical Domain What it does Service Types
OpenFin8 Open Finance Consent-first financial data sharing (openfin8.dev - org: OpenFin8): the consent authority, recipient registry (two-ledger model), CSDF field-level minimization, HMAC-signed notifications, and per-jurisdiction adapters, all over a shared openfin8-core kernel library One service per market (below); enable individually per environment

OpenFin8 markets - a bank activates a market by enabling one service in an environment, not by porting software:

Service Jurisdiction Standard Status
openfin8:ca Canada FDX v6.x (consumer-driven banking) serving
openfin8:us United States FDX v6.x serving
openfin8:uk United Kingdom OBL Read/Write API v3.1.x serving (FAPI ceremony, intent consents)
openfin8:eu European Union Berlin Group openFinance serving (SCA ceremonies, eIDAS)
openfin8:br Brazil Open Finance Brasil designed
openfin8:au Australia CDR designed

Composition. bank8 composes the provider role by enabling openfin8:ca in its environment (sys.services); OpenFin8 consumes Ledger/Payments via public APIs + the bank8:: SDK contracts only - never the bank8 database (the OBVERT invariant). Tables and endpoints are owned by the OpenFin8 vertical; recipient-only fintechs compose it standalone.

Flutter Apps

Repository Description
bank8-ebank Retail customer banking app
bank8-eteller Branch teller terminal
bank8-admin Vertical admin console (RFW)

The recipient app moved with the open-finance vertical: the former bank8-efintech is now eOpenCA (OpenFin8/openfin8-eopenca).

SDKs & Libraries

Path Purpose
sdk/rust/bank8 Unified Rust SDK facade - typed clients + contracts (bank8::ledger, bank8::payments, etc.)
crates/ledger/contracts Wire DTOs for ledger domain
crates/payments/contracts Wire DTOs for payments domain
openfin8-core (OpenFin8) The open-finance kernel library - traits + shared implementation (the OpenFin8 vertical)
crates/fdx/contracts Wire DTOs for the FDX (open-banking) domain
crates/regulatory/contracts Wire DTOs for regulatory reporting domain

Platform Dependencies

Bank8 depends on these Sentin8 platform services for cross-cutting concerns:

Platform Service What Bank8 gets from it Dependency direction
Sentin8:Auth Identity, sign-in, token issuance (user + M2M), JWKS, RBAC authorization bank8 → Auth (verification + M2M identity)
Sentin8:BFF Proxy, delegation gateway, client session custody, token attach bank8 ← BFF (user tokens proxied to services)
Sentin8:Bus Durable event transport, producer outbox relay, consumer DLQ, SSE push bank8 → Bus (produce + consume domain events)
Sentin8:Flow Multi-step workflow orchestration with retries and wait states bank8 → Flow (payment instruction workflows)
Sentin8:Cron Recurring job scheduling (statement runs, schedule-driven postings) bank8 → Cron (schedule registration)
Sentin8:Func Tenant-authored WASM edge functions (hooks execute outside the core; modules call back through the certificate-bound proxy-back endpoint) bank8 ← Func (proxy-back handlers for hooks; per-product-version module registry)
Sentin8:Storage Object/file storage (statement documents, filing packages) bank8 → Storage (document PUT/GET)
Sentin8:Stat Business metrics aggregation and telemetry bank8 → Stat (event ingestion)
Sentin8:Sys Organization/environment lifecycle, service enablement bank8 → Sys (env-init events)

Key Invariants

  • Double-entry atomicity - posting batches that don't balance per denomination are rejected before any row is written
  • One money-movement executor - all financial movement realizes through Bank8:Ledger via the public API; no service writes another's balances
  • Idempotent by construction - every payment/posting is idempotent; retries can never double-post
  • Terminal states are final - completed/cancelled/revoked states never regress
  • No consent, no data - external data access exists only under explicit, revocable customer consent with field-level minimization
  • Extension code never touches the commit - product logic runs as sandboxed WASM (fuel + memory + deadline, WASI rejected) on the platform side; even a hook-initiated posting re-enters the same validation pipeline

Architecture & Design: bank8 and its underlying concepts were designed by Hamid Jahanzad.

Popular repositories Loading

  1. bank8 bank8 Public

    bank8 — Bank8 vertical group (docs + build orchestration)

    Makefile 1

  2. bank8-admin bank8-admin Public

    bank8-admin — Sentin8 bank8 vertical service repo

    Dart 1

  3. bank8-compliance bank8-compliance Public

    bank8-compliance — Sentin8 bank8 vertical service repo

    Rust 1

  4. bank8-ebank bank8-ebank Public

    bank8-ebank — Sentin8 bank8 vertical service repo

    Dart 1

  5. bank8-efintech bank8-efintech Public archive

    bank8-efintech — Sentin8 bank8 vertical service repo

    Dart 1

  6. bank8-eteller bank8-eteller Public

    bank8-eteller — Sentin8 bank8 vertical service repo

    Dart 1

Repositories

Showing 10 of 14 repositories
  • bank8-site Public

    bank8.dev — the Bank8 finance-vertical public website: ledger, payments, FDX, reporting, risk, compliance + apps (Docusaurus on @sentin8/site-engine)

    Bank8-dev/bank8-site's past year of commit activity
    JavaScript 1 0 0 0 Updated Nov 11, 2026
  • bank8-ledger Public

    bank8-ledger — Sentin8 bank8 vertical service repo

    Bank8-dev/bank8-ledger's past year of commit activity
    Rust 1 0 0 0 Updated Nov 10, 2026
  • bank8-admin Public

    bank8-admin — Sentin8 bank8 vertical service repo

    Bank8-dev/bank8-admin's past year of commit activity
    Dart 1 0 0 0 Updated Nov 10, 2026
  • bank8-ebank Public

    bank8-ebank — Sentin8 bank8 vertical service repo

    Bank8-dev/bank8-ebank's past year of commit activity
    Dart 1 0 0 0 Updated Nov 10, 2026
  • bank8 Public

    bank8 — Bank8 vertical group (docs + build orchestration)

    Bank8-dev/bank8's past year of commit activity
    Makefile 1 0 0 0 Updated Nov 10, 2026
  • .github Public
    Bank8-dev/.github's past year of commit activity
    0 0 0 0 Updated Nov 10, 2026
  • bank8-e2e Public

    bank8-e2e — Playwright end-to-end test suite for the bank8 vertical services

    Bank8-dev/bank8-e2e's past year of commit activity
    TypeScript 1 0 0 0 Updated Nov 9, 2026
  • bank8-reporting Public

    bank8-reporting — Sentin8 bank8 vertical service repo

    Bank8-dev/bank8-reporting's past year of commit activity
    Rust 1 0 0 0 Updated Nov 2, 2026
  • bank8-sdk Public

    bank8-sdk — Sentin8 bank8 vertical service repo

    Bank8-dev/bank8-sdk's past year of commit activity
    Rust 1 0 0 0 Updated Nov 2, 2026
  • bank8-compliance Public

    bank8-compliance — Sentin8 bank8 vertical service repo

    Bank8-dev/bank8-compliance's past year of commit activity
    Rust 1 0 0 0 Updated Nov 2, 2026

People

This organization has no public members. You must be a member to see who’s a part of this organization.