Cashtella

WebAutomationStartup

A multi-currency fintech wallet platform with an FX-conversion engine spanning NGN, USD, CAD, and USDC, backed by a double-entry ledger, KYC tiering, and a routed multi-provider payments layer.

  • NestJS
  • TypeORM
  • PostgreSQL
  • React
  • Redis
  • Bull
Cashtella website screenshot

The challenge

Moving money across NGN, USD, CAD, and USDC means stitching together bank rails and crypto off-ramps that each model accounts, banks, and settlement differently, while still keeping one consistent ledger and one set of compliance limits for the user.

The approach

A NestJS backend centers on a provider-registry service that routes conversions, funding, and payouts to whichever third-party provider is configured per currency pair, with built-in failover across providers competing for the same route — including a genuine Yellow Card integration with an HMAC-signed client for live NGN/USDC rates, virtual NGN collection accounts, and NGN bank payouts. Money movement is recorded through a dedicated double-entry ledger module alongside wallet, transaction, and provider-account entities for atomicity and reconciliation. A KYC-tier service enforces daily deposit, transfer, and withdrawal limits per tier, with separate risk and sanctions-screening services. Inbound provider webhooks are verified, persisted for audit, and matched to users to credit wallets. Two front-end React apps consume the API: a customer-facing dashboard (wallets, payments, scheduled payments, invoices) and a separate staff admin dashboard (KYC review, audit log, OTC desk, revenue and exchange reporting, user management).

What’s live

  • Multi-provider FX and payments routing with per-currency-pair failover
  • Yellow Card integration: signed live rates, virtual NGN collection accounts, and NGN bank payouts
  • Double-entry ledger module backing wallet balances
  • KYC-tier system enforcing per-tier daily transaction limits
  • Signed provider webhook ingestion with audit persistence and automatic wallet crediting
  • Separate staff admin panel (KYC, audit log, OTC desk, revenue reporting) from the customer dashboard

Have a similar project in mind?