Everything you need to run a real fintech.
Dogma Nexus is four systems working as one: a control plane you never see, a Hub that owns vendor integrations, a Spoke that owns your business data, and a frontend that dresses it all in your brand.
Wallet & ledger
Double-entry from day one.
Every state change is a signed WalletTransaction insert with a matching offsetting entry. Balance is SUM(amount) — always computed, never stored as a mutable column. Pessimistic locking on debits prevents double-spend under contention.
- Immutable double-entry ledger
- SELECT … FOR UPDATE on debits
- Idempotency-Key required on every write
- decimal(19,4) end-to-end — no float, ever
Payment services
Ten rails. One integration.
DMT, AEPS, UPI, Payouts, Payment Gateway, Credit-Card Bill Pay, Micro-ATM, Express Transfer, and in-house services like BrainBucks & eVyapar — all behind one Hub API.
- 16 vendor integrations, expanding
- Per-service vendor routing
- Signed, idempotent vendor webhooks
- Nightly reconciliation from launch
RBAC & context auth
Permission-first, never role-first.
Firebase proves who you are; a Context Token proves in what capacity you're acting right now. Every guarded endpoint checks a permission code. Roles are convenience bundles — renaming one changes no code.
- Two-token flow (Identity + Context)
- 60s Assignment Cache, instant revocation via permHash
- Custom roles per business, scoped to their context_id
- System roles versioned via migrations
Branded experience
Ship on your own domain, under your own brand.
Customer Portal is per-business build, per-business domain. Business Admin is one shared build, one domain per business (admin.mypay.com). Cross-domain requests fail at the auth layer, not just at the UI.
- Domain-based tenant isolation
- Per-tenant branding tokens
- Runtime theme + copy resolution
- One admin codebase, N businesses
Every payment rail your customers ask for
Ship an all-in-one platform without integrating 16 different vendors yourself. One API surface, one billing pipeline, one place to reason about failure.
Domestic Money Transfer
Cash-to-account transfers to any Indian bank.
Aadhaar Enabled Payments
Cash withdrawal against Aadhaar biometric at the counter.
UPI Payouts
Push money to any VPA or bank account via UPI rails.
Bank Payouts
Bulk NEFT / IMPS / RTGS disbursement at scale.
Credit-Card Bill Pay
Pay any Indian credit card bill from the retailer counter.
Payment Gateway (Wallet top-up)
Let end-users load their wallet from any card / UPI / netbanking source.
Micro-ATM
Card + PIN cash withdrawal from a retailer's terminal.
Express Transfer
Bulk vendor payouts with penny-drop verification.
BrainBucks
In-house rewards + loyalty ledger for your customers.
eVyapar Storefront
Give retailers a mini-storefront + digital catalog + collections.
Financial-integrity guardrails, enforced by tests
One bug here can end a payments business. These aren't optional and they aren't convention — they're required by code review and property-based tests.
Data ownership flips
Each business gets its own Postgres. Their transactions live in their DB, not ours. Central Dogma DB stores only vendor creds and billing metadata.
Append-only audit log
Postgres role has INSERT-only permission on AuditLog. No UPDATE, no DELETE — not even for support engineers.
Transactional outbox
Every Spoke→Hub call is written to the outbox in the same DB transaction as the ledger entry. Crash-safe by construction.
Cloud-agnostic core
Docker + standard Postgres + EF Core. Moving off Google Cloud is a connection-string swap and one middleware change.
Ready to launch a fintech of your own?
We onboard new businesses in about a week. You'll walk out with a live Spoke, your own database, your own Firebase project, and a customer portal at your domain.