Skip to content
SaaS Billing and Subscriptions: What to Build, What to Buy, and What US and UK Founders Overlook
  Posted on 03 Oct, 2026
  SaaS and Cloud

Many SaaS founders plan billing as a single task: "add Stripe." Then a customer upgrades mid-month, a card fails on renewal, and a buyer in Texas or Manchester asks for a tax invoice. This guide explains what a SaaS billing system has to do, which parts to buy, which parts you still have to build, and the tax and compliance questions US and UK founders tend to discover late.

It is general guidance, not tax, accounting or legal advice. Rules differ by state and country and change over time, so confirm your own position with a qualified adviser.

Quick answer

  • Buy the billing engine. Recurring charges, proration, invoices, payment retries and card storage are solved problems. Building them yourself is rarely a good use of budget.
  • Build the layer between billing and your product. Plan and feature access, usage metering, webhook handling and the in-app billing screens are specific to your product, and no provider does them for you.
  • Decide early who the seller is. With a payment processor you are the merchant of record and own tax registration and filing. With a merchant of record provider, the provider sells to your customer and takes on those duties, in exchange for less control.
  • Your pricing model sets the difficulty. Flat pricing is simple. Per seat adds proration. Usage based pricing adds a metering pipeline that must be accurate and auditable.
  • Tax follows the customer, not your office. US states treat SaaS differently from each other, and the UK expects VAT on digital services sold to UK consumers even from overseas sellers.

Pricing models and what each one demands of the billing system

Billing providers support the common models out of the box. Stripe, for example, documents flat rate, per-seat, tiered and usage-based pricing. What differs is how much work lands on your side of the integration.

ModelHow the customer is chargedWhat the billing system must handleTypical trouble spot
Flat rateA fixed price per plan (for example Basic, Pro)Plan catalog, renewals, plan changesOld plans and prices that existing customers must keep
Per seatPrice multiplied by the number of usersQuantity changes during the period, proration, seat limits enforced in the appSeat counts in your app and in the billing provider drifting apart
TieredUnit price changes with quantity or usageTier rules, clear invoice linesCustomers not understanding whether one rate applies to everything or only to units inside each tier
Usage basedCharge for measured consumption, often billed after the periodEvent collection, aggregation, usage visibility for customers, credits and alertsLost, duplicated or late usage events, and disputed invoices

Tiered pricing has two meanings. Either the whole quantity is charged at the rate of the tier reached (volume), or each band is charged at its own rate (graduated). The invoices differ, so state on your pricing page which one applies.

Usage based pricing is an engineering project. Your product has to record every billable event reliably and send it to the billing system. Stripe's documentation now recommends its Metronome platform for new usage-based integrations and notes that its older Billing Meters approach only reconciles usage at invoice time. That matters if you sell prepaid credits: the comparison page says that with the basic approach customers can exceed their balance during the cycle. If customers need a live usage figure or a hard spending cap, plan for that from the start.

The subscription lifecycle: where the real work is

Signing up a customer is the easy part. Most billing defects appear in the events that follow.

Trials

Decide whether a trial requires a card. A card-free trial lowers friction but means you must decide what happens when the trial ends with no payment method. Stripe's trial documentation lists three end behaviors: create an invoice (the subscription becomes past due if it cannot be paid), cancel, or pause. It also sends a "trial will end" event, three days before the end by default, which you can use to trigger a reminder email. Your application has to grant or remove access for each outcome.

Upgrades, downgrades and proration

Proration means charging or crediting a customer for part of a billing period after a change. Providers calculate it, but the defaults may surprise you. According to Stripe's proration guide:

  • Prorations are calculated to the second by default.
  • The default behavior creates proration items, but positive prorations are not billed immediately and negative prorations are not refunded automatically. You choose whether to invoice at once, wait for the next invoice, or disable proration.
  • Usage-based charges are not prorated.
  • You can preview the resulting invoice before applying a change, which lets you show the customer the exact amount first.

Decide the rules before development starts: does an upgrade charge today or at renewal, and does a downgrade apply now with a credit or at period end?

Failed payments and dunning

Dunning is the process of recovering a failed payment through retries and customer reminders. Cards expire, get replaced and hit limits, so some renewals fail for customers who never intended to leave. Stripe's Smart Retries documentation states a recommended default of 8 tries within 2 weeks and explains that some hard declines, such as a card reported lost or stolen, cannot be retried without a new payment method.

What the provider cannot decide for you is the access policy. When retries are exhausted, Stripe lets you cancel the subscription, mark it unpaid, leave it past due, or pause it. You decide whether a past-due customer keeps full access, gets read-only access, or is locked out, and for how long. A short grace period with clear in-app warnings is usually kinder to business customers than an abrupt lockout over an expired card.

Cancellations and refunds

Cancellation can be immediate or at the end of the paid period. Stripe's cancellation guide notes that cancellation through the API takes effect immediately by default, and that a credit owed after cancellation can sit on the customer's balance unless you issue a refund. Refund policy is yours to define.

A hosted portal removes a good deal of work. Stripe's customer portal lets customers update payment methods, change or cancel subscriptions, and download invoices. Check the documented limitations first: for subscriptions with multiple products or usage-based billing, customers can cancel in the portal but cannot update the subscription.

Build vs buy: the realistic options

Writing your own subscription engine on top of a raw payment API is possible, but it only pays off for unusual contracts that no provider can model. For most teams the real choice is how much of the selling relationship to hand over.

Payment processor vs merchant of record

A payment processor moves money from your customer to you. You are the seller, so you are the merchant of record: your name is on the transaction, and tax registration, tax filing, refunds and disputes are your responsibility, even where tools help. A merchant of record (MoR) provider is the legal seller to your customer. Paddle describes this model in its merchant of record explainer as a legal entity responsible for selling to the end customer and taking on liabilities such as sales tax, refunds and chargebacks, and its developer documentation says it calculates, collects and remits taxes on the seller's behalf.

QuestionProcessor plus billing engine (for example Stripe Billing)Merchant of record (for example Paddle, Stripe Managed Payments)
Who is the legal seller?YouThe provider
Who registers for and remits sales tax or VAT?You, with tooling to calculate, monitor and help fileThe provider
Subscription logic (proration, retries, invoices)ProvidedProvided
Control over checkout and payment flowsHighMore limited
Best suited toTeams that want control and can manage tax complianceSmall teams selling to many countries from day one

Some details worth knowing:

  • Tax tools do not move liability. Stripe's description of Stripe Tax is explicit about the split: you register, Stripe Tax calculates and collects, and you file and remit, optionally through Stripe or its filing partners. It also monitors where you may have obligations.
  • Stripe has its own MoR product. Managed Payments makes Stripe the merchant of record for digital products including SaaS, handling indirect tax in more than 80 countries according to its documentation. It works with Checkout and Payment Links only and does not support Connect platforms, so check eligibility before planning around it.
  • An MoR still needs integration. Paddle's documentation lists proration, trials, pauses, upgrades, invoicing and credit notes in its billing engine, but you still connect its events to access control in your product.

Fees differ between these options and change over time, so compare the providers' current pricing pages against your expected volume and countries.

What you build in every case

  • Entitlements: the mapping from plan to features, limits and seats, checked by your application on every relevant request.
  • Webhook handling: Stripe states that a subscription integration requires a webhook destination because most subscription activity happens asynchronously.
  • Usage metering, if you charge by usage.
  • In-app billing screens and admin tools for support staff: credits, extensions, manual plan changes, and an audit trail of who changed what.

What US and UK founders overlook

US sales tax on SaaS varies by state

There is no single US rule for SaaS. In South Dakota v. Wayfair (decided June 21, 2018), the Supreme Court overruled the physical presence rule, which allows states to require out-of-state sellers to collect sales tax once they pass an economic threshold. Those thresholds differ: the Streamlined Sales Tax Governing Board's remote seller state guidance shows that some states use a sales figure, some a transaction count, and some a combination.

Whether SaaS is taxable at all also depends on the state. Two examples from state tax authorities: the Texas Comptroller treats software as a service as a taxable data processing service, with 20 percent of the charge exempt, and New York's tax department states that a license to remotely access prewritten software sold to a purchaser in New York is subject to sales tax. Other states take different positions, and a non-US company selling into the US is not automatically outside these rules.

UK VAT on digital services

For UK-established businesses, VAT registration becomes compulsory when taxable turnover passes GBP 90,000 over the last 12 months. That threshold does not protect overseas sellers: the same GOV.UK page says a business based outside the UK must register if it supplies any goods or services to the UK, with no turnover threshold.

For sales to private consumers, HMRC's guidance on digital services says the place of supply is where the consumer usually lives, and that a business based outside the UK whose supplies are liable to UK VAT needs to register for UK VAT. Electronically supplied services in that guidance include software and web hosting, so consumer-facing SaaS will usually fall within it. Sales to UK VAT-registered businesses work differently: under the place of supply rules in VAT Notice 741A, the UK business customer generally accounts for the VAT itself through the reverse charge. Your billing system therefore needs to capture whether the buyer is a business, its VAT number, and evidence of location.

Card data and PCI DSS scope

PCI DSS applies to entities that store, process or transmit cardholder data. Using a provider reduces your obligations but does not remove them. Stripe's integration security guide calls PCI compliance a shared responsibility and says a business accepting payments must still attest to compliance annually. The practical rule: collect card details only through the provider's hosted checkout or hosted fields so that card numbers never touch your servers. Stripe's PCI guide associates those integrations with the lightest self-assessment questionnaire and direct handling of card data through the API with the heaviest. Never log, email or store full card numbers.

Strong customer authentication for UK payments

The FCA explains that strong customer authentication (SCA) rules have applied since 14 September 2019 to how payment providers verify that a person is permitted to make a payment. For card payments this is normally done through 3D Secure, where the customer's bank asks them to approve the payment.

Subscriptions are affected in two places. The first payment, made while the customer is present, may need authentication. Later renewals happen without the customer present; Stripe's SCA guide explains that a properly set up saved card lets these be treated as merchant-initiated transactions, but that exemptions are not guaranteed and a bank can still ask for authentication. Your product needs a path for that case: an email and an in-app prompt that bring the customer back to approve the payment. Teams used to US-only payments often skip this.

Invoices and revenue reporting

Business customers expect proper invoices. In the UK, VAT invoices must include your VAT number and show the VAT separately. Corrections should be made with credit notes, not by editing or deleting issued invoices.

Cash collected is also not the same as revenue. Under IFRS 15, issued together with the equivalent US standard (FASB Topic 606), revenue is recognized as the promised service is transferred to the customer. An annual plan paid upfront is therefore generally spread over the year instead of being counted in full on day one. Providers offer tooling for this, such as Stripe Revenue Recognition, but your accountant should decide the treatment.

For technical readers

  • Treat the provider as the source of truth for billing state. Keep a local copy of status, plan and period end for access checks, update it from webhooks, and reconcile on a schedule.
  • Verify webhook signatures and make handlers idempotent. Events can arrive more than once or out of order.
  • Do not grant access from the checkout redirect alone. Confirm the subscription status first, and handle every status (incomplete, past due, unpaid, paused), not only active and canceled.
  • Keep your own raw usage log so usage invoices can be explained and recomputed.
  • Reference prices through configuration, not code, and test trial end, renewal and retry exhaustion in the provider's sandbox.

Frequently asked questions

Should a SaaS startup build its own billing system?

Almost never the core engine. Use a billing provider for recurring charges, proration, invoices and retries, and build only what is specific to your product: feature access, usage metering, webhook handling and billing screens.

What is the difference between a payment processor and a merchant of record?

A payment processor moves money while you remain the legal seller, responsible for tax registration, filing, refunds and disputes. A merchant of record is the legal seller to your customer and takes on those responsibilities, typically with less control over checkout and payment flows.

Do I have to charge sales tax on SaaS in the United States?

It depends on the state and on how much you sell there. Some states, such as Texas and New York, tax SaaS or remotely accessed software, and others do not. Since the Wayfair decision, a state can require collection from sellers with no physical presence once its threshold is passed.

Does a US company selling SaaS to UK customers need to charge VAT?

Often yes for consumer sales. GOV.UK guidance says digital services sold to UK consumers are taxed where the consumer lives, and businesses based outside the UK have no registration threshold. Sales to UK VAT-registered businesses are generally handled by the customer through the reverse charge. Confirm your position with an adviser.

Does using Stripe or Paddle make my SaaS PCI compliant?

It reduces your scope considerably if card details are entered only in the provider's hosted checkout or hosted fields. It does not remove your obligations: with a processor you still confirm compliance each year and must keep card data out of your servers, logs and support tools.

Conclusion and next step

Good SaaS billing comes from a few early decisions: a pricing model your team can actually meter, written rules for upgrades, failed payments and refunds, a clear choice between being the merchant of record or using one, and an early conversation with a tax adviser about the states and countries you sell into.

A useful next step is a one-page billing specification covering plans, lifecycle rules, target markets and preferred provider. If you plan to hand the build to an external team, our guide on how to outsource software development from the US or UK covers how to evaluate one. Entrant Technologies builds web applications and custom software, including Laravel-based SaaS products, and you can request a quote if you want a billing integration scoped.

Post Written by
"Entrant Technologies is one of the leading web, software, iPhone & Android app development company which deliver robust results for great brands worldwide. We deliver software solutions that meet the customers and business expectations."
Latest Blogs
 
If you ask three vendors what it costs to build an AI agent, you will probably get three figures that are far apart, and none of them will be wrong. They are pricing different things: a different scop ...
on 03 Oct, 2026 Read More
 
Most people have been stuck with a bad support bot: it misreads the question, repeats the same help article, and hides the route to a person. The bots people dislike usually fail for design reasons, n ...
on 03 Oct, 2026 Read More
 
Most software projects now include an API, whether or not anyone asked for one by name. Your mobile app needs it to talk to your servers. Your accounting system needs it to receive orders. A partner w ...
on 03 Oct, 2026 Read More