Skip to content

Billing Engine

Every penny tracked. Every payment on time.

The full billing lifecycle end-to-end: from recurring Direct Debit runs to one-click refunds, with full visibility and auditability. Built for finance teams and operators who have been burned by billing failures before.

Billing Engine staff console showing the Reject Uploads screen for processing Direct Debit AUDDIS rejection files from BACS, with summary cards for pending review, processed today, and this month counts, plus a table of recent uploads with status indicators
Built with AI

Developed using AI-augmented engineering, delivering production-quality billing logic 80-90% faster than traditional development.

AI-Powered Onboarding

Upload your contracts and terms. The AI extracts billing rules into structured, confidence-scored rules that require human approval before going live.

Configurable Rules Engine

Change pricing tiers, eligibility policies, and billing rules without raising a support ticket or waiting for a release.

Enterprise AI-Ready

Designed for integration into your enterprise AI via MCP. Your AI tools can query billing data and trigger actions directly, not as an isolated system.

Payment infrastructure

Recurring payments that just work

Payment runs, mandate management, bank holiday awareness, and multi-site Direct Debit schemes. Configured per club, not forced into a single template.

Payment runs

Each run is linked to a payment method (e.g. Direct Debit) and a specific provider. Configurable mandate settings control whether mandates must be requested and how many days' notice to give.

Bank holiday awareness

The engine knows not to submit collections on bank holidays. Operators configure whether weekends count toward notice periods. Payment request lead days control when instructions hit the bank.

Multi-site DD schemes

Clubs are assigned to payment runs, so multi-site operators can run different Direct Debit schemes per location, each with its own provider and schedule.

Analytics

A finance dashboard your team will actually use

Previous month vs current month, batch drill-downs, member-level breakdowns, and multi-club filtering. The numbers that matter, with no spreadsheet required.

Month-over-month comparison

A live finance dashboard shows the previous month's completed batches and the current month's forecast side-by-side, with trend indicators (percentage change) for total members billed and total revenue.

Batch drill-down

Drill into any batch to see a member breakdown: new joiners, cancellations, members whose amount changed (freeze/unfreeze), and unchanged members, all with counts and GBP totals.

Multi-club filtering

See which clubs contributed to a combined batch, then filter down to a single site's slice. Ideal for operators managing estates with different billing configurations.

Finance items

Your SKU catalogue, with flexible discounts

Joining fees, recurring charges, pro-rata adjustments, and ad hoc charges. Discounts that expire automatically after a set number of billing cycles.

SKU catalogue

Finance items cover joining fees, recurring charges, pro-rata adjustments, and ad hoc charges. Each carries a tax rate and availability flags. Unique SKU enforcement prevents duplicates.

Flexible discounts

Discounts support percentage, monetary, and monetary-target types with min/max validation. Recurring count limits control how many billing cycles a discount applies before it expires automatically.

Member payments

Every member's payment story, in one place

Full transaction history, summary cards, invoices, and receipts. Staff see everything they need without switching between systems.

Full transaction history

Per-member payments tab shows every transaction: date, description, type, status, and amount, all in GBP with the newest first.

Summary cards

The numbers that matter at a glance: total paid, outstanding balance, last payment, and next scheduled payment date and amount.

Invoices and receipts

Invoices (charge breakdowns with line items, quantities, tax) and receipts (payment-applied breakdown) accessible in a single click from any transaction row.

Refunds and write-offs

Handle the difficult cases cleanly

Full and partial refunds with validation. Write-offs with mandatory reasons and clear audit trails. No ambiguity, no loose ends.

Refunds

Staff initiate from the payment row, see the full receipt in context, and can issue full or partial refunds. Amount validation prevents over-refunding. The backend queues the refund and returns 202 Accepted.

Write-offs

Unpaid or failed charges can be written off with a mandatory reason. The action is irreversible and surfaced with a clear warning. The charge transitions to "Written Off" immediately.

Lifecycle consistency

One billing engine for every event

Signup, freeze, unfreeze, plan change, cancellation: they all flow through the same shared billing orchestration layer. No special cases, no edge-case surprises.

Single SQL transaction

Every lifecycle operation commits in a single SQL transaction. If anything fails, nothing is persisted. No partial charges, no phantom payments.

Idempotent operations

Retrying a failed signup or plan change never creates duplicate pending charges. The same recurring billing rules power both nightly jobs and lifecycle events, so pro-rata calculations are always consistent.

Freezes are the lifecycle event that tests a billing engine hardest. Our guide on how membership freezes should work explains the fee-replacement and preview design this layer implements.

Why this engine

What sets it apart

One engine, not patched integrations

Billing is built from the ground up as a single, cohesive system. No middleware glue, no payment provider workarounds, no data reconciliation between disconnected tools.

Full auditability

Every charge, payment, refund, and write-off is traceable. Field-level diffs, actor attribution, and timestamps on every event. Built for regulated operators who need evidence, not promises.

Operator-controlled DD per site

Multi-site operators configure Direct Debit schemes, providers, and schedules independently per location. Not a one-size-fits-all setup that forces compromises.

Enterprise AI-ready via MCP

Expose billing capabilities to your organisation's AI tools (Copilot, ChatGPT, Claude, internal agents) via the Model Context Protocol. Your enterprise AI can query billing data, surface insights, and trigger actions directly.

Best-practice UX, WCAG AA

Every screen is designed to meet WCAG AA accessibility standards with a modern, intuitive interface. Finance teams get a product that is clear and efficient from day one.

Your brand, delivered fast

The UI is built to be re-themed quickly. We use AI-assisted tooling to apply your brand colours, typography, and identity so the product looks and feels like yours within days, not weeks.

Enterprise-grade

Secure, scalable, observable

Built on Microsoft Azure with Clean Architecture and domain-driven design. Every charge, payment, and refund is logged, traced, and auditable.

.NET and C#

Clean Architecture with CQRS. Shared billing orchestration layer, immutable domain models, and full test coverage.

Microsoft Azure

AKS, Azure SQL, Redis, Azure OpenAI. Background billing jobs orchestrated with Azure Aspire.

Single-transaction consistency

Every billing event commits atomically. Partial charges and phantom payments are architectural impossibilities.

Full audit trail

Every charge, payment, refund, write-off, and policy change recorded with actor, timestamp, and field-level diffs.

Works with

Part of a connected platform

The Billing Engine integrates seamlessly with the Booking Engine and Membership modules for a complete operational platform.

The Billing Engine shares the platform's domain-modelled data layer and API-enforced business rules, so every module benefits from the same constraints, audit trail, and reporting foundations. For franchise operators, the optional Franchising module adds multi-level permissions, MSF calculation, and network dashboards on top of the core platform.

FAQ

Frequently asked questions

How does the billing engine handle Direct Debit?

Payment runs define the method, provider, and schedule. The engine manages mandate creation, notice periods, bank holiday avoidance, and payment request lead days. Clubs are assigned to payment runs, so multi-site operators can run different DD schemes per location.

Can I see a breakdown of what changed between billing cycles?

Yes. The billing analytics dashboard lets you drill into any batch and see new joiners, cancellations, freeze/unfreeze changes, and unchanged members, each with counts and GBP totals. Month-over-month trend indicators show percentage changes for revenue and member count.

How are refunds processed?

Staff initiate a refund from the payment row in the member's transaction history. They see the full receipt in context and can choose full or partial refund. Amount validation prevents over-refunding. The refund is queued asynchronously and the system returns 202 Accepted, so the UI never blocks on bank processing time.

What happens if a billing operation partially fails?

It cannot. Every billing event (signup, freeze, unfreeze, plan change, cancellation) commits in a single SQL transaction. If anything fails, nothing is persisted. There are no partial charges, no phantom payments, and no inconsistent member states. Operations are idempotent, so retrying a failed operation never creates duplicate charges.

Can I configure different pricing and discounts per club?

Yes. Finance items (SKUs) carry availability flags and tax rates. Discounts support percentage, fixed monetary, and monetary-target types with min/max validation and configurable billing cycle limits. Pricing is managed via the Membership accelerator which handles club-specific pricing bands.

Is the billing engine suitable for regulated operators?

Yes. Full audit trails, ISO 27001 certification, Cyber Essentials Plus accreditation, and single-transaction consistency make the engine suitable for regulated operators across sectors including education, public sector, and membership organisations. Audit evidence is built in from day one, not retro-fitted.

How does AI help with billing configuration?

The AI-powered onboarding wizard extracts billing rules from your existing contracts, terms, and policy documents. It converts them into structured, reviewable rules using Azure OpenAI. Each rule is confidence-scored and requires human approval before going live. The configurable rules engine then lets operators change pricing tiers and billing policies without raising a support ticket.

How does the billing engine integrate with our enterprise AI?

The billing engine is designed to be embedded into your enterprise AI ecosystem via MCP (Model Context Protocol). Your AI assistants and agents can query billing data, surface financial insights, and trigger actions through a standardised interface. This means your organisation gets one connected AI experience, not a separate tool with its own siloed intelligence.

What licence do we get?

You receive a perpetual source code licence. You own all project-specific code outright, and you hold a perpetual licence to the underlying accelerator components. You can choose to have Talk Think Do provide ongoing support, or you can self-support with your own team. There is no lock-in.

Get started

Ready to see the billing engine in action?

Book a consultation and we will walk you through the platform, discuss your requirements, and show you how quickly we can have you live.

Book a demo

or call 01202 006729