Fintech · payments

One ledger, and rails you can unplug.

A single wallet carrying fiat and crypto balances alongside issued cards — arranged so that opening a new market means changing a provider, never rebuilding the product.

01 — The challenge

The product most tightly bound to its first jurisdiction.

Few things are harder to carry across a border than a wallet. Moving money and issuing cards are licensed activities, granted one country at a time, and whichever banking partner a team integrates first has a habit of quietly becoming the architecture. Its assumptions settle into the data model, the reconciliation logic, the onboarding flow. By the time a second market reaches the roadmap, unpicking them costs more than the original build did.

The brief reversed that order. Treat every licensed dependency as a component to be exchanged per market, and hold the parts that genuinely belong to the product — the application, the ledger, the crypto layer — identical wherever it operates.

02 — The approach

Licensed at the edges, uniform at the centre.

Every regulated dependency was pushed out to the boundary of the system. Money movement runs through embedded-finance providers that already hold permissions across many jurisdictions behind a single interface, and issuance sits on a platform spanning several regions and card networks. Either can be replaced, or run in parallel with another, without the application being aware anything changed.

Custody rests on MPC key material, which by construction has no jurisdictional anchor — there is no one country where the keys live. Card numbers are exchanged for tokens the moment they arrive, so the application never holds a PAN and stays outside PCI scope in every market it reaches.

03 — The outcome

One application, any market.

A double-entry ledger indifferent to denomination treats every balance as the same kind of object, whether it represents fiat or a token. One service layer speaks to whatever rail happens to be live for that user, and adding another leaves the ledger entirely untouched.

Residency requirements are met by region-segmented infrastructure that pins records where local rules demand, without forking the codebase to do it. Key management on KMS and HSM, held to a SOC 2 trajectory, clears most regulators without market-specific rework.

The rail, the issuer and the custodian each change per market. The application, the ledger and the crypto layer never do.

Project record

Client
Withheld under NDA
Sector
Fintech / payments
Regions
APAC
Engagement
Full build
Platforms
iOS · Android
Ledger
Double-entry, currency-agnostic

Confidential · anonymised

  • React Native
  • TypeScript
  • NestJS
  • PostgreSQL
  • Card issuing
  • Token vault
  • MPC custody
  • AWS
Results

What shipped.

The properties the system holds today, rather than the ambitions it started with.

  • Double-entry ledger indifferent to currency and asset class
  • Virtual and physical issuance from a single platform
  • Card data token-vaulted, keeping the application out of PCI scope
  • MPC custody carrying no jurisdictional dependency
  • Region-pinned residency without forking the codebase
  • KMS and HSM key management on a SOC 2 trajectory
Get in touch

Have a system like this on your hands?

Tell us what you're trying to ship. We'll tell you honestly whether we're the right team for it — and what it would take.

Prefer email? info@triyant.sg

We reply within one business day. Your details are used only to respond to this enquiry and are never shared with third parties.