SaaS Product Development

The Hard Part of SaaS Is Getting Paid Every Month

Founders arrive wanting to talk about the product. The thing that decides whether a UK subscription business survives its second year is duller: VAT on digital services, Direct Debit through Bacs, what happens on the morning a card declines, and whether annual plans are quietly funding your payroll. We build all of that, then the product.

Where the Money Goes Wrong

Nobody Loses a SaaS Business to a Missing Feature

These are the failure modes we are called in to fix, in roughly the order we meet them.

Expired cards nobody chased, discovered at year end
VAT charged at the wrong rate to overseas customers for a year
Invoices that a UK finance department will not accept or pay
Accounts still fully active nine months after they stopped paying
Plan changes mid-month that nobody can explain to the customer
The payment provider holds the truth and your database disagrees
Support staff needing a developer to extend a trial by a week
An enterprise buyer asking for a purchase order and the answer being no
VAT on Digital Services

The Tax Rules Are Your Accountant’s Job. Implementing Them Is Ours.

Selling software by subscription from the UK means VAT enters the product, not just the accounts. We are developers rather than tax advisers and we will not tell you what to charge. What we will do is build a billing layer that can implement whatever your accountant decides, and which keeps the evidence they will want when they ask.

In practice that means the same handful of mechanisms, whatever rules apply to you:

  • Prices stored and displayed excluding VAT for business buyers, with VAT added and shown as a separate line. UK business customers expect this and a price that quietly includes tax causes arguments at renewal.
  • Customer status captured at signup. Business or consumer, country, and where it is claimed, a VAT registration number that is validated against the official service rather than accepted as typed.
  • Evidence of location retained. Billing address, the country of the card or bank account, and the time it was captured, stored with the subscription so that a question three years later has an answer.
  • The rate applied at the point of sale and stored on the invoice, never recalculated later. If a rate changes, historic invoices keep the rate they were issued with.
  • Sequential, immutable invoice numbering. Invoices are never edited; corrections are issued as credit notes. This is the single most common thing missing from a SaaS product built without an accountant in the room.
  • An export your bookkeeper can reconcile and that lines up with what the payment provider actually settled into your bank account.

If you are not yet VAT registered, we still build the structure, because crossing the registration threshold mid-year with a billing system that cannot add a tax line is a genuinely unpleasant fortnight. It costs very little to have the field there and set to zero.

Collecting the Money

Cards, Direct Debit, or the Combination Most UK Products End Up With

This choice changes your cash flow, your churn and your ability to sell to a finance department. It is worth twenty minutes of thought rather than a default.

Cards through Stripe

  • Instant. Someone signs up at 11pm and is a paying customer at 11pm
  • Ideal for self-serve signup where nobody speaks to a salesperson
  • Fees are a percentage plus a small fixed amount, which hurts most on larger monthly values
  • Cards expire, get replaced after fraud and get declined, which is the main source of involuntary churn
  • Strong customer authentication means some payments need the cardholder present, so the first charge and the renewals behave differently
  • Card details are held by the provider and never touch your servers, which keeps you out of most of the compliance burden

Direct Debit through Bacs, usually via GoCardless

  • The instrument UK finance departments actually prefer, and it does not expire
  • Materially cheaper than card fees once the monthly value gets past a few hundred pounds
  • Collection takes several working days rather than clearing instantly, so cash arrives on a schedule you can plan around but not immediately
  • A mandate must be set up first, and you must give advance notice of each collection and of any change to the amount
  • The Direct Debit Guarantee lets a payer reclaim a payment, so your system needs to handle an indemnity claim rather than assume settled means final
  • Best paired with an invoice, which makes it the natural fit for annual, enterprise and purchase-order sales

Most UK SaaS products we build offer cards for anyone who signs up on the website and Direct Debit for anything above a threshold or sold through a conversation. Supporting both is not double the work if it is designed in from the start; it is close to double the work if it is added in year two.

Dunning

What Happens Between a Declined Payment and a Closed Account

Failed payments are not an edge case. They are a steady percentage of your book every month, and the sequence below is worth more to a subscription business than most features.

Day 0 — The charge fails

Nothing visible happens to the customer yet. The failure is recorded against the subscription with the reason the provider gave, because an expired card, insufficient funds and a bank block need different treatment. The account keeps working. Cutting someone off within an hour of a routine decline is how you lose a customer who would happily have paid.

Day 1–2 — A quiet automatic retry

Many failures are temporary, and a retry a day or two later succeeds without anybody being troubled. Retries are spaced deliberately rather than hammered, and they stop after a set number of attempts so that a genuinely dead card does not generate a fortnight of noise for the customer’s bank.

Day 3 — The first email, written like a human wrote it

A short message with a single link straight to a page where the payment details can be updated, with no login required beyond a signed token. Most recovery happens here, and most of the recovery that does not happen is lost to an email that read like a legal notice or a link that demanded a forgotten password first.

Day 7–10 — A second attempt and a nudge to the right person

On a team account the person who signed up is often not the person who holds the card. We send the second reminder to the account’s billing contact as well as the original signup, which sounds trivial and recovers a meaningful share of failures in business-to-business products.

Day 14 — Restrict, but do not destroy

The account moves into a restricted state: people can log in and export their data but cannot use the paid features. Nothing is deleted. This is the point at which people who have been ignoring emails actually respond, and it is also the difference between a customer who comes back and one who tells their network you deleted their work.

Day 30–60 — Close, with the data retained to a written policy

The subscription is closed and your staff get it on a list to look at. Data retention after closure follows the schedule you set under UK GDPR rather than being kept indefinitely because nobody decided. A final export link and a clear statement of when the data will be deleted goes out before it is.

Illustrative schedule. The actual intervals are yours to set, and we build them as configuration rather than hard-coded values so you can adjust them without a release.

Plan Shapes

Monthly Feels Safer. Annual Pays the Wages.

Both belong in version one. The reason is less about pricing strategy than about how painful it is to add the second one afterwards.

ConsiderationMonthlyAnnual
Cash positionArrives in twelve instalments, so hiring lags revenueTwelve months of cash in week one, which is what funds a second developer
Customer decisionRevisited every month, consciously or notMade once, which measurably reduces churn
Accounting treatmentStraightforward, earned as it is billedDeferred revenue: you hold money for service not yet delivered
Refunds and cancellationsSimple, the customer just stopsNeeds a written policy and code to calculate the unused portion
Mid-term changesEasy, the change applies next cycleRequires proration, credit notes and a clear explanation on the invoice
What it flattersNothing muchA growth chart drawn from cash received rather than revenue earned
Who it suitsSelf-serve signups and smaller customersBusiness buyers, purchase orders, procurement and Direct Debit

An annual discount is a financing decision rather than a marketing one. You are paying a customer for a year of cash up front, and whether that is a good trade depends on what the cash lets you do this quarter.

Tenancy and Teams

Keeping One Customer’s Data Away From Another’s

Not the first thing to talk about, but the first thing to get right. A leak between two customers is the one bug a SaaS business rarely recovers from.

One database, isolation enforced in code

The default for almost every product. Every record carries the account it belongs to and access is filtered at the data layer rather than remembered by each developer. It is cheap to run, simple to back up and simple to deploy.

Separate database per customer

Worth it when a customer contract genuinely demands it, usually in financial services or health. It buys you a clean answer in a security questionnaire and costs you a materially harder job every time you change the schema or run a migration.

Tested rather than assumed

We write automated tests that deliberately try to read another account’s data through every endpoint. Isolation that nobody tests is isolation you are hoping for, and hoping is not a control you can describe in a due diligence questionnaire.

Teams, seats and invitations

Most business software is bought by one person and used by several. Invitations, a way to remove someone who has left, and a clear rule about whether a seat is billed the moment it is invited or the moment it is used. That last decision affects both revenue and how annoyed customers get.

Two roles, not nine

An owner who can change billing and an ordinary member covers the great majority of products at launch. Custom role builders are a genuine feature request from large customers and an expensive distraction before you have any. We build the mechanism so the third role is easy, and we resist adding it.

The person who left

Deactivating a user has to leave their work intact and their name on the audit trail. Products that delete a user record and orphan everything they created generate a support ticket the first week a customer has staff turnover.

Scope

What Ships in Version One and What We Argue About Later

Drawn from the products we have scoped. The right-hand columns are where first budgets die.

Version one

The money has to work

Sign up, tenant isolation, one owner role and one member role, the core feature, sterling subscriptions with VAT handled, card payments, invoices with sequential numbering, dunning, transactional email, and an admin view good enough to answer a support email.

Version one if you sell to businesses

Worth pushing for

Annual plans, Direct Debit through GoCardless, team invitations, a proper onboarding sequence, usage counters where the plan depends on them, and data export. Any of these can wait one release. Not three.

When a named customer asks

Wait to be asked

Single sign-on with Microsoft Entra ID, custom roles, a public API, webhooks, purchase orders and invoice-on-terms, white labelling, a second currency, and a mobile app. Each is real work and each is worth doing when a signed contract depends on it.

Not before you have customers

Where first budgets die

A marketplace of integrations, an in-product analytics suite, machine learning features, multi-region deployment, a partner programme, and a settings screen with forty options. Every one of these has consumed a first build that never reached a paying customer.

The Back Office

The Screen Your Own Staff Use, Which Nobody Puts in the Budget

Every SaaS product needs a second application that customers never see, and it is almost always missing from the brief. Without it, every routine support request becomes a developer task, and your engineering time gets consumed by things that should take a support agent forty seconds.

The minimum useful version, which we build as a matter of course:

  • Find an account by company name, email address or invoice number, without knowing an internal identifier
  • See the subscription state, the plan, the next collection date and every failed payment with its reason
  • Extend a trial, apply a credit, change a plan and issue a refund, each of them logged against the staff member who did it
  • View the product as the customer sees it, as an explicit and recorded action rather than by sharing a password
  • Resend an invoice or a receipt, which is a surprisingly large share of inbound support
  • Export an account’s data, which doubles as your subject access request mechanism under UK GDPR
  • A view of accounts in dunning, so someone can pick up the phone before an account closes itself

It does not need to be beautiful. It needs to exist, and it needs an audit trail, because the day a customer disputes a charge you will want to know exactly who changed what and when.

Be Honest

Three Businesses That Should Not Be Sold by Subscription

Software used once a year. An annual returns tool or a one-off assessment product is not a subscription, however hard you push it. Charging monthly for something people touch each March produces eleven months of resentment and a cancellation. Sell it as a transaction, or as a licence with a support element you can actually justify.

A product with one customer. If a single company is funding the build and wants it shaped to their process, you are building bespoke business software and calling it SaaS. That is a fine business, and it should be priced and contracted as a bespoke build with a support agreement, not architected for a multi-tenant market that does not exist yet.

Something the market already gives away. If the closest equivalent is a free tier from a large platform, the subscription question is really a differentiation question. We would rather have that conversation in the first meeting than deliver a polished product into a market that will not pay for it.

None of this is a reason not to build software. It is a reason to be deliberate about the commercial model before the architecture is chosen, because multi-tenancy, billing and roles are the three things that are genuinely hard to add later.

FAQ

Billing Questions Founders Ask Us

Can we charge in pounds and in other currencies?

You can, and the question is whether you should yet. Charging in sterling only is simplest: one price list, one set of figures in your accounts, no exchange-rate exposure. Adding currencies means deciding a price per currency rather than converting at checkout, because a price that moves with the exchange rate looks unserious. Stripe handles the mechanics in either case. Most UK products we build start in sterling and add a second currency once a specific market is actually producing customers.

How does VAT work on a subscription sold to a customer abroad?

It depends on whether the customer is a business or a consumer and where they are, and your accountant makes that call rather than us. What we build around it is the same either way: capture and validate a VAT number where the customer claims to be a business, store the evidence of where they are, apply the right rate at the point of sale, show VAT as a separate line on every invoice, and keep the records your accountant needs at quarter end. Getting this wrong is expensive to unpick later because it is retrospective, so we settle the rules with your accountant before billing is built.

Should we offer Direct Debit as well as cards?

If your average subscription is large or your customers are businesses, usually yes. Direct Debit through Bacs, most simply via GoCardless, costs less than card fees on bigger invoices, does not expire the way a card does, and finance departments prefer it. The trade-offs are real: collection takes several working days rather than being instant, you must give advance notice of each collection, and a payer can claim a refund under the Direct Debit Guarantee. Most products we build end up offering cards for self-serve signups and Direct Debit for anything invoiced.

What actually happens when a payment fails?

A sequence you decide in advance and we implement, rather than a member of staff noticing. A typical one: retry automatically after a couple of days, email the customer with a link to update their details, retry again, then restrict the account rather than deleting anything, and only close it after a defined period. The two mistakes we see are cutting people off instantly, which loses customers who simply got a new card, and never cutting anyone off, which quietly grows a population of users you are paying to serve for nothing.

Is an annual plan worth discounting for?

Often, because you are buying cash and certainty. A year of revenue collected in one go funds hiring now instead of in twelve instalments, and annual customers churn less because they decide once rather than monthly. The costs are that you have taken money for work not yet delivered, so it sits on your balance sheet as deferred revenue, refunds get awkward, and a growth chart based on cash received will flatter you. We build both plans from the start because adding annual billing later means touching every part of the subscription code.

Can we start on Stripe and change billing providers later?

You can, and it is a lot easier if we assume it from day one. That means your own subscription records are the authority on who is on which plan and what they owe, with the payment provider handling only the movement of money. Products that let the provider hold the subscription state are the ones where a migration becomes a project. Card details themselves are held by the provider and can usually be migrated between providers directly, which is worth confirming before you commit.

How much of a first SaaS budget goes on things customers never see?

More than founders expect. Tenant separation, accounts, roles, invitations, billing, dunning, transactional email and an admin area for your own support staff are all invisible to the person buying, and together they routinely account for around half the first build. The feature you are actually selling is the other half. We would rather show that split in the estimate than discover it in month three, which is why our scoping document lists the plumbing as line items instead of folding it into a total.

Tell Us What You Are Charging For, and How Often

Send the pricing page you have sketched, or just the sentence describing what customers pay for. We will come back with a scope, a delivery window and a sterling figure excluding VAT within two working days.