Financial software
Systems where being wrong costs money immediately
Trading platforms, payments, and the verification that sits between somebody and their money. We have been building this class of system since before it was called fintech, and everything on this page is a named client or a listed system you can check on the rest of the site.
4
Clients in this sector
9
Systems listed here
1
Worked up as case studies
22
Largest standing team
We are not a fintech boutique and will not pretend to be one. We are a software company that has spent 23 years being handed other people's production systems, and a meaningful share of them have had money moving through them. What that buys you is not domain glamour: it is engineers who have already met the failure modes this sector actually has — a connection dropping over an open position, a reconciliation that has to be right rather than fast, and a release process that cannot include the word 'downtime'.
The work, at the level of detail you would ask for
All workFraud prevention · Real estate finance
CertifID
A standing team building real-time identity and document verification for the moment money moves in a property transaction.
- Engagement
- Offshore Development Center
- Shape
- Standing team, client's process
- Server
- C#, ASP.NET Web API
- Client
- React, TypeScript
- Domain
- Title, real estate, lending
- Status
- Active
What this class of system demands
Each of these comes from an engagement named on this site, and says which. A constraint without a source is an adjective.
01
There is no maintenance window
A trading platform cannot be taken offline to be improved. Components get replaced under live traffic behind feature flags, with a written rollback plan and a fallback to the service being superseded, so that a failed release returns traffic to the old stable path and the user sees nothing.
Source · WealthCharts
02
State has to survive the network
Connections drop while positions are open. That is a routine event, not an exception path, so order state is fully reconciled after every reconnect rather than assumed to have persisted.
Source · WealthCharts
03
Precision is a requirement, not a rounding decision
Tick-level price precision is carried end to end, because the number rendered on the screen is the number somebody trades on.
Source · WealthCharts
04
Fraud is an adversary, not an error rate
A verification flow has to hold up against somebody actively trying to defeat it, not merely handle the honest path — and the data that verification collects is precisely the data an attacker in that market wants, which constrains architecture rather than just access control.
Source · CertifID
05
Payments bring their compliance with them
Card and voucher flows have been built PCI-compliant against European payment providers, and the till software underneath our point-of-sale work carries payment processing at the point money changes hands.
Source · the delivery record
Who bought it
WealthCharts
Trading platforms · Market data
Retail trading platform: charting, scanners, options and futures, and a white-label platform proprietary trading firms run their own businesses on. We build the broker integration layer, the scripting language users write their own indicators in, the multi-tenant prop platform, and the rebuild of the production cloud infrastructure underneath all of it.
- Model
- Offshore Development Center
- Team
- 22 engineers
- Built on
- TypeScript · Node.js · React · .NET · Lua · WebAssembly · Redis Streams · WebSocket
Case study · held for client approval
CalibrateHCM
HR & payroll · Data integration
Retrieves HR and payroll records on an employer's behalf from systems that publish no API for them. We built the retrieval platform, the declarative integration layer and the tenant isolation model.
- Model
- Offshore Development Center
- Team
- 4 engineers
- Built on
- Python · Django · React · Redux Toolkit · AWS · AWS Transcribe
Case study · held for client approval
CertifID
Fraud prevention · Real estate finance
Real-time identity and document verification for wire transfers in the title, real estate and lending industries. We build and run the platform team.
- Model
- Offshore Development Center
- Built on
- C# · ASP.NET Web API · React · TypeScript · HTML/CSS
Allen & Company
Investment banking
Multiple internal business-process automation projects, including the conference management platform and the candidate interview application used to run their hiring.
- Model
- Offshore Development Center
- Built on
- C# · ASP.NET MVC · ASP.NET Web API · AngularJS · Breeze · iOS · Android
Every system in this sector we can name
The full recordWealthScript
The scripting language platform users write their own indicators and strategies in. Formulas compile server-side through an ANTLR grammar to Lua bytecode and execute in a WebAssembly Lua VM inside the charting library. 216 functions and 68 values, with the editor's completion and documentation generated from the compiler itself.
.NET · ANTLR · Lua · WebAssembly · TypeScript
White-label prop-trading platform
Multi-tenant SaaS on which proprietary trading firms run their own branded business: evaluations, funded accounts, risk rules, payouts, affiliates and support. Each firm gets its own domain, branding and rule set off one codebase and one database under tenant isolation, with a stream-processing worker consuming live trading events to keep account risk and drawdown state current.
TypeScript · Express · TypeORM · React · WebSocket
WealthCharts broker integration layer
One interface in front of seven live broker connections, each speaking its own protocol — binary protobuf over WebSocket, REST, proprietary SDKs. Capabilities are declared per broker, so a new one is brought online without touching the trading terminal. Handles subscription multiplexing, stream throttling and order-state reconciliation after a dropped connection.
Node.js · WebSocket · Protocol Buffers · REST
WealthCharts partner event stream
Platform actions published to partner firms as message events over Redis streams — every firm served at once, each stream isolated so no firm sees another's activity.
Node.js · Redis Streams
WealthCharts trading competitions
Tracks trader performance across defined competition periods and drives public real-time leaderboards.
Node.js · React · WebSocket · REST
Ultrade
DeFi trading platform on the Algorand blockchain: limit orderbook spot DEX, swaps and leveraged perpetuals.
Python · Algorand · Blockchain
CertifID
Identity verification for people, banks and insurers, built to cut the rate at which transfers are sent to fraudulent accounts. Back office with document management, individual verification profiles, and a hard personal-data security boundary.
C# · ASP.NET Web API · React · TypeScript
TranxPay
Mobile banking app for local and cross-border transactions: exchange rates, payment processing, real-time tracking and reporting.
JavaScript · PostgreSQL
Snap Networks
Merchant analytics: sales channel and operations tracking, customer relationship management, and chargeback trend control.
ASP.NET · MySQL · WebForms · jQuery
Two ways to buy it
Offshore Development Center
A standing, full-time team we hire, house and manage, working as an extension of your own development organisation. You take part in choosing the people; a senior engineer of ours runs the team day to day. No office or infrastructure for you to set up.
- Shape
- Dedicated team
- Clients on this model
- 15
- Payment
- Time and materials
- Best for
- Long-term product work
Custom software development
A project with a defined shape: requirements analysis, architecture, build, QA, delivery and maintenance. Priced hourly against a written estimate, with the assumptions under that estimate stated and reported against as the work runs.
- Shape
- Project, full cycle
- Clients on this model
- 4
- Payment
- Time and materials
- Best for
- Defined, boundable builds
What we have not done
We have not built a core banking ledger, we are not a regulated entity, and we do not carry a compliance practice that will file with your regulator for you. Where an engagement needs one of those, it needs a specialist we do not employ and we will say so on the first call rather than the third.
Send us the part of your system you are worried about
An engineer who has worked on this class of system reads it and answers within 12 hours.