sector

exchanges, wallets, remittance and subscription billing that has to reconcile

An exchange match engine, wallets and payouts, a remittance platform scoped against a formal RFP, and subscription migrations run on live revenue.

9
fintech engagements
6.4K
lines in the match engine
10 yrs
in one financial estate
0
acceptable billing errors
Recognised by

the problem

what this sector actually deals with.

Financial software has a property almost nothing else has: being nearly right is worse than being obviously broken. A checkout that fails is an annoyance. A subscription migration that double-charges half your base, or a wallet that credits twice under load, is an incident with a regulator attached.

sound familiar?

  • Two code paths can complete the same payment, and sometimes both do
  • Subscription migrations have a cutover date and no rollback
  • Wallet balances have to survive concurrency, not just work in testing
  • Regulated features — KYC, screening, reporting — are not negotiable, and everything else is
  • The store platforms have opinions about how you are allowed to take money

what we have built here

systems delivered in this sector.

01

An exchange match engine

Roughly 6,400 lines of PHP covering the match engine, buy and sell orders, wallet handling, issuance strategies and currency rates — modernised onto current Doctrine and a real test suite.

02

Wallets, payouts and coins

A two-sided marketplace wallet with one gateway for top-up and another for UPI withdrawals, running against real per-minute paid services.

03

Outward remittance, scoped honestly

A white-labelled online remittance platform proposed against a formal RFP — with the deferrable items marked in red, so the client had to decide what compliance they were actually willing to postpone.

04

Live subscription migrations

A WooCommerce Subscriptions migration on a revenue-generating membership base, with two parallel plan types, store credit and a hard cutover date.

the hard part

two paths completed the same order, and three real customers paid for it.

On a live ticketing platform, upfront web orders were being processed concurrently by two routes — the payment provider's success redirect and its webhook — with nothing coordinating them.

  1. 01

    At a live festival, three real orders ended in an inconsistent state: payment taken, order not completed, tickets not sent. Not a load-test scenario. Named orders, real people, at the gate.

  2. 02

    The fix was two-part: isolate the webhook so it only handles the payment types it should, using provider metadata to tell them apart, and apply row-level database locks to the order-completion path so it cannot run twice.

  3. 03

    Then repair the damage — the affected orders corrected in the database, statuses fixed and tickets reissued — and give the client a written explanation of both the cause and the fix rather than a quiet patch.

  4. 04

    The general lesson is the one worth hiring for: if two code paths can complete the same financial transaction, eventually both will, and the day it happens will be your busiest.

what it runs on

the stack we reach for here.

Chosen for the sector requirements and for maintainability over the life of the system.

Ledgers
Row-locked completion paths, idempotency keys, reconciled against provider records
Gateways
Stripe, Razorpay, Cashfree, PayPlug, EasyPay — chosen per market, not per preference
Subscriptions
WooCommerce Subscriptions and custom billing, delivered as must-use plugins so they cannot be deactivated
Exchange
PHP match engine on Doctrine, with a test suite
Compliance
KYC and document verification flows, tested against mismatched documents on purpose

how an engagement runs

what the first weeks look like.

01

Model the money first

States, transitions, failure modes and who is allowed to move a balance. On paper, before code, every time.

02

Decide what is deferrable

On a regulated product, the useful conversation is which compliance elements are genuinely phase two. We will make you answer it.

03

Build the reconciliation with the feature

Not after. A payment feature without a reconciliation path is half a feature.

04

Migrate with a rehearsal

Live billing migrations get a dry run against a copy of production before the cutover date, not a hopeful weekend.

selected work

written up in full

The engagements with the detail attached — and the numbers.

Creoate product interface01
CreoateB2B commerce

The engineering partnership behind a cross-border wholesale marketplace.

Next.js storefront, Python ingestion pipelines, DynamoDB data layer and AWS infrastructure.

8+ yearsone team, still shipping
Ontick product interface02
OntickEvent technology

A commission-free ticketing platform built for ownership and scale.

Multi-organiser commerce, Stripe instalments and two native apps in one connected platform.

£2M+processed since launch
Easyship product interface03
EasyshipGlobal logistics

Embedded product engineering for a global shipping platform.

Rate, tax and duty calculators, server-rendered courier pages and a custom MongoDB CMS.

550+couriers on the calculator
Decofetch product interface04
DecofetchLuxury commerce

A custom furniture marketplace engineered from storefront to infrastructure.

Server-rendered Next.js commerce over a Laravel API, bespoke operations tooling and re-architected AWS infrastructure.

0→livecustom, front to back
BA Engine Room product interface05
BA Engine RoomAI operations

An AI-native operating system that runs a consultancy lead to invoice.

Discovery briefs, e-signed contracts, Stripe deposits, delivery milestones and time tracking in one operational system.

0→1built from the ground up
PlusHeat product interface06
PlusHeatHome services

A conversion platform for a growing UK boiler-cover provider.

Custom plan configuration, postcode-qualified lead journeys, CRM synchronisation and campaign landing pages.

5 yrsweb partner since 2021
Léonia product interface07
LéoniaBeauty commerce

A custom Shopify store for a French beauty brand.

Custom theme, customer accounts, loyalty rewards, referrals and gift-with-purchase offers.

5 yrspartners since 2021
Shutters 365 product interface08
Shutters 365Home improvement

Made-to-measure shutters with live pricing.

A seven-step product builder with live previews, sample orders and supplier tools.

7-stepconfigurator, live pricing
Bloc Ads Manager product interface09
Bloc Ads ManagerAdvertising

A self-service advertising platform for venues.

Campaign creation, audience targeting, in-app ads and reporting linked to venue check-ins.

check-insclosed-loop attribution
Bloc product interface10
BlocSocial events

An events app with the tools to run it.

Mobile app, backend, advertising tools, a digital marketplace and website.

4+ yrsone team, five codebases
Zonely product interface11
ZonelySocial mobile

Two mobile apps for real-time companionship.

Customer and buddy apps with per-minute billing, wallets, moderation and admin tools.

2 appsconsumer + buddy, iOS & Android
Player Profile Hub product interface12
Player Profile HubGrassroots football

Player profiles and discovery for youth football.

Verified profiles, video highlights, coach discovery and safeguarding on web and mobile.

0→1built from the ground up
DeepSpatial product interface13
DeepSpatialGeospatial AI

Websites and a talent platform for DeepSpatial.

Corporate and investor pages, the Xploor talent platform and ongoing releases on AWS Amplify.

2 yrsone team, ongoing
Yippee Malta product interface14
Yippee MaltaTravel

Tour bookings with a custom mobile-first checkout.

A multilingual website connected to the booking API, with deposits, coupons and affiliate tracking.

90+core web vitals, mobile & desktop
Professional Energy product interface15
Professional EnergyEnergy brokerage

One platform for tenders, contracts and accounts.

Supplier tenders, contract management, brokerage accounting and client records.

100+suppliers in one tender

Teams that trusted us with the thing that matters

UK · Europe · Worldwide

the practices behind it

what this work is made of.

reviews · verified on clutch

the people who signed off the work

Clutch★★★★★5.0 / 5.0

Across 18 independently published client reviews

They have a deeper technical knowledge than any web designer I've met to date.

01 / 04

faq

questions from this sector

Have you migrated a live subscription base before?

Yes, with two parallel plan types, store credit and a fixed cutover date. The operational detail that matters: subscription queries run against active and on-hold statuses only, never pending. That is the kind of thing you learn by doing it, not by reading the docs.

Can you deal with App Store rules on payments?

We have argued a person-to-person services exemption successfully rather than surrendering margin to in-app purchase, and scoped the fallback design in parallel in case the appeal failed.

Do you handle KYC?

Yes, including the unglamorous part — testing verification against deliberately mismatched documents, which is how we found a flow that accepted the wrong country's ID.

Who owns the code?

You do, from day one. On financial systems that matters more than anywhere else.

keep reading

the other sectors we work in.

money moving through code you did not write?

A thirty-minute call with the engineer who would lead the work.

Book a call