Billing for software

Prepaid credits billing, on one ledger

Credit-based pricing without a homemade wallet: customers buy credits up front, usage draws them down, one ledger records it all.

Get in touch
Free to start. No contract. We'll show you what your finance stack is costing you.
The problem

Credit-based pricing moved faster than the billing behind it

Credit-based pricing sells a prepaid pool of credits — dollars, tokens or abstract units — and draws it down as the customer uses the product. It became the default for AI products in 2025–26: GitHub moved every Copilot plan to AI Credits on 1 June 2026, and OpenAI moved Codex to token-based credits in April 2026. The billing problem is that a credit balance is money you owe back in service. It has to be topped up, drawn down in the right order, expired on schedule, reported as a liability and shown to the customer before it runs out — usually in a wallet table someone built in a weekend.

For a UK seller, a credit top-up from an EU consumer is a VAT event from the first sale — there is no threshold under the non-Union One Stop Shop — and the balance still sits in your accounts as a liability until it is used. The ledger has to say which credit was drawn when, against which invoice.

Credit ledger · Northwind AIAppend-only
Top-up · purchased
£5,000
Promotional · onboardingexpires 31 Dec
£500
Drawn · invoice 2610AABafter tax
−£1,240
Liability · outstanding
£4,260
What Fynex runs

How prepaid credits run on Fynex

Sell the pool, draw it down, report it — without building a wallet.

Credit ledger

Top-ups, grants and eight credit types

Purchased, promotional, gift, manual, enterprise, marketplace, AI-token and proration credit — each granted with an amount, a currency, a reason and an optional expiry through one idempotent call. Nothing is edited in place: every movement is a new ledger entry.

Applied as payment

Drawdown at issue, after tax

Credit is drawn when an invoice is issued and applied after VAT, as a payment rather than a discount — so the VAT on the invoice stays correct. An invoice covered in full by credit is settled from the ledger with nothing to collect.

Expiry & alerts

Expiry and depletion, on schedule

Promotional credit expires on its date; the expiry is a ledger entry, not a silent deletion. `CreditApplied` and `CreditDepleted` webhooks tell your product the moment a balance moves or runs out, so the top-up prompt arrives before the customer is blocked.

Revenue recognition

The liability, reported

The outstanding balance per customer and in total exports as a liability report — the deferred-income figure your accountant asks for at year end, from the same ledger that drew the credit.

Credit liabilities · 30 Sep
Purchased
£184,200
Promotionalexpiring in 30 days
£12,400
Customers with balance
1,146
How we compare

The same job, with the leaks closed

Point tools solve part of it. Fynex runs the whole thing on one platform.

The problem
Other platforms
Recommended
!Store a credit balance
✕Other platformsA wallet table in your database, reconciled against invoices by hand.
✓FynexAn append-only credit ledger: top-up, deduction, expiry and reversal entries.
!Apply credit to an invoice
✕Other platformsOften modelled as a discount, which changes the taxable amount.
✓FynexDrawn at issue and applied after tax, as a payment.
!Expire promotional credit
✕Other platformsA cron job someone wrote once.
✓FynexExpiry dates per grant, with expiry recorded as its own ledger entry.
!Report the liability
✕Other platformsA query against the wallet table at month end.
✓FynexA liability export per customer and in total.
FAQ

Questions, answered

Credit-based pricing sells customers a prepaid pool of credits and draws the pool down as they use the product. Credits can be denominated in money, tokens or abstract units, and are often combined with a subscription that includes a monthly allowance. It is now the common model for AI products because it lets the price follow a variable cost per request.
You grant prepaid credit on a customer's contract — purchased, promotional, gift, manual, enterprise, marketplace, AI-token or proration — with an amount, currency, reason and optional expiry. When an invoice is issued, available credit is drawn against it after tax. Every top-up, drawdown, expiry and reversal is an entry on an append-only ledger, readable per contract or across all customers.
No. A discount reduces the price and therefore the tax base; a prepaid credit is money the customer already paid, applied as payment against the invoice total after tax. Treating credits as discounts understates the tax on the invoice, which is why Fynex applies credit after tax.
For a UK business selling digital services to EU consumers there is no registration threshold: VAT is due at the customer's local rate from the first sale, usually declared through the non-Union One Stop Shop. The outstanding credit balance is also a liability in your accounts until used. Fynex records every top-up and drawdown on its ledger so both are traceable to the invoice.
Yes. Balances are readable per contract through the Billing API, and `CreditApplied` and `CreditDepleted` webhooks fire as balances move, so your product can show the balance, prompt a top-up before the customer runs out, and never surprise them with a blocked account. The endpoints are in the credits reference; pricing credits for an AI product is covered in billing for AI companies.

Find what you're leaking, for free

Send us your setup. We run a free diagnostic and show you what your payment stack costs you today.

One recent diagnostic found £2M in hidden fees across 10 processors for a proptech client.
Get in touch
Compliance, handled

Your money, held under a licence, not a promise

We can be your Merchant of Record and hold the funds. Most tools can't, because they don't hold the licence.

FCA-authorised EMI

An e-money institution via Fondy. We can hold and move your funds.

Licence
E-money institution
FCA
Client funds
Safeguarded

PCI DSS Level 1

The highest card-data security standard, on by default.

Card data
PCI DSS
Level 1
Encryption
On by default

Audit logs

Every movement traceable and ready for review.

Activity
Payout · £23,84714:02:11
Logged
Split · ORD-2024-00114:02:09
Logged

Built-in KYC / KYB

The switch that turns the business on.

Verification
KYB · Northwind Labs Ltd
Approved
KYC · J. Whitfield
Approved
We do Fridays so you don't have to.Payouts at midnight. You, asleep.Invoices that chase themselves. Ruthlessly.We carry the chargebacks. You carry on.We do Fridays so you don't have to.Payouts at midnight. You, asleep.Invoices that chase themselves. Ruthlessly.We carry the chargebacks. You carry on.We do Fridays so you don't have to.Payouts at midnight. You, asleep.Invoices that chase themselves. Ruthlessly.We carry the chargebacks. You carry on.

Sell it up front. Draw it down right

Get in touch
Spreadsheets, retired with honours.Month-end close, minus the month-end.FX fees, caught red-handed.Fewer tools. Fewer tabs. Fewer tears.Your CFO's favourite coworker never takes lunch.Spreadsheets, retired with honours.Month-end close, minus the month-end.FX fees, caught red-handed.Fewer tools. Fewer tabs. Fewer tears.Your CFO's favourite coworker never takes lunch.Spreadsheets, retired with honours.Month-end close, minus the month-end.FX fees, caught red-handed.Fewer tools. Fewer tabs. Fewer tears.Your CFO's favourite coworker never takes lunch.
Book a demo