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.
Developed using AI-augmented engineering, delivering production-quality billing logic 80-90% faster than traditional development.
Upload your contracts and terms. The AI extracts billing rules into structured, confidence-scored rules that require human approval before going live.
Change pricing tiers, eligibility policies, and billing rules without raising a support ticket or waiting for a release.
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.
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.
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.
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.
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.
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.
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.
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.
Capabilities in depth
Feature-by-feature detail for evaluators: what each capability does, how it is modelled, and why it matters.
Payment runs and batches: recurring collection you can audit
How the Billing Engine organises recurring Direct Debit collection: payment runs per site, request batches per cycle, notice-day arithmetic, and batch-level status.
Direct Debit mandates and the Bacs cycle: collected on time, every time
How the Billing Engine runs the full Bacs cycle: AUDDIS lodgement, advance notice, automated submission, ARUDD returns, ADDACS amendments, and cut-off arithmetic that maximises every collection.
Refunds and write-offs: money out, with guardrails
How the Billing Engine handles refunds and write-offs: refundable-balance validation, mandatory reasons, guarded status transitions, and a full audit trail.
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.
Part of a connected platform
The Billing Engine integrates seamlessly with the Booking Engine and Membership modules for a complete operational platform.
Booking Engine
Real-time scheduling, capacity management, waitlists, and credit-based bookings. API-first policy enforcement across all channels.
Membership
Flexible packages, multi-site pricing bands, scheduled price changes, and credit-based rewards. Lifecycle events flow through the shared billing orchestration layer.
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.
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.
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 demoor call 01202 006729