Last reviewed: 14 August 2026

Quick summary

  • Record setup work, recurring support and reimbursed or client-paid software as separate commercial lanes.
  • A Stripe payout is a net settlement. Preserve the gross charge, processor fee, refund, dispute and payout link behind it.
  • Client location, contract wording and what is supplied can matter for VAT, especially for digital services. Check current rules with an accountant before making assumptions.

Direct answer

Do not record every Custom GPT payment as a single vague "AI income" line. Your clients buy different things: a paid discovery or scoping phase, a fixed build and handover, an ongoing maintenance or optimisation retainer, and sometimes a third-party platform, API or software cost. Each has a different delivery story and may be refunded, disputed or renewed in a different way.

For every payment, keep the client agreement or proposal, invoice or Stripe order, gross amount charged, processor fee, refund or dispute, payout reference and bank settlement. HMRC's general self-employed record guidance expects you to retain records of income and expenses. The practical version for an AI service business is a project ledger that lets you start at a client job and reach the exact Stripe line and bank payment.

The four revenue lanes for a Custom GPT builder

1. Discovery, audit or scoping fee

This might cover a workshop, knowledge-base review, prompt strategy or technical specification. Keep the proposal and define what the client receives. It prevents a cancelled build being confused with a full project refund.

2. Build and implementation fee

This is the delivery of the Custom GPT, templates, integrations, training or handover. Record the milestone or delivery date, what was included and any change request. A project that grows from a simple GPT into an automation setup should not be buried in the original invoice without an amended scope.

3. Monthly support or optimisation retainer

A recurring charge can cover prompt changes, knowledge-base refreshes, monitoring, user support, small automations or a fixed number of improvement hours. Record the service period, renewal date and whether unused work rolls over. It is a different money model from a one-off build.

4. Third-party tools and pass-through costs

ChatGPT subscriptions, API usage, hosting, workflow tools and client-owned accounts can be paid in different ways. Keep the contract wording and invoice trail. An amount you collect for a tool is not automatically identical to a cost you personally bear for your own business. Ask an accountant to review the facts, particularly if charges are being marked up or supplied across borders.

How to reconcile Stripe without losing the real sales figure

Stripe is useful for taking payment, but its bank payout is often the least detailed view of the transaction. A GBP 2,000 setup invoice can lead to a Stripe charge, a processor fee, a partial refund following a scope change and a later bank payout grouped with other clients. If you record only the payout, you lose the gross charge, the fee and the refund history.

  1. Give each client project an ID, for example CLIENT-024-BUILD.
  2. Save the signed proposal or written scope and the invoice or checkout receipt under that ID.
  3. Export or save the Stripe charge record, fee, refund, dispute or balance adjustment.
  4. Match the Stripe payout to the bank entry, noting if several client transactions are in one settlement.
  5. Keep an exceptions list for unpaid invoices, deposits, chargebacks, credits and work delivered before a payment is settled.

This protects you when a client asks why an old card was charged, when a refund is made after a milestone, or when an accountant asks why the bank is lower than your invoices. It also makes turnover and VAT-threshold monitoring more reliable than watching only cash payouts.

Three commercial patterns worth recording properly

A GBP 500 audit becomes a GBP 3,000 build

Keep the audit invoice and scope separate from the build contract. If the audit is credited against the build, show the credit clearly. You want a reader of the ledger to see whether GBP 500 was a completed service, a deposit, or a discount against a later project.

A monthly retainer includes API charges

If a client pays GBP 300 per month for support and there is an API cost, do not let the statement become "Stripe GBP 300" and "OpenAI card charge" with no link. Add the client, service period, actual tool payer, included usage and overage rules. This is operationally helpful even before the tax treatment is considered.

A client receives a partial refund after a delayed launch

Keep the original charge, written reason, credit note or refund, Stripe evidence and revised scope. A partial refund should not be quietly deleted from sales records, and a later goodwill support month should not be recorded as if it were a new unrelated sale.

What to gather before speaking to an accountant

  • Client proposals, statements of work, change requests and signed terms.
  • Invoices or Stripe receipts showing gross amounts and the client country or billing details held.
  • Stripe exports for charges, fees, refunds, disputes, balance adjustments and payouts.
  • Bank statements matched to payouts and any direct-transfer clients.
  • Tool invoices for AI subscriptions, API usage, automation platforms, hosting and domains.
  • A project list showing discovery, build, support, handover and renewal status.
  • Any VAT registration, threshold-monitoring or overseas-client notes.
  • Evidence for gifts, affiliates, templates or platform sales that sit alongside client services.

Common mistakes

Calling net Stripe payout revenue. It hides fees and refunds, and makes it difficult to reconcile sales.

Using a generic "software" pot for client tools. You need to know whether it was your own operating cost, a client reimbursable cost, or part of what you supplied.

Forgetting recurring renewal dates. A support retainer should show its service period and client status. A cancelled card payment is a business issue before it becomes an accounting adjustment.

Assuming all digital work has the same VAT treatment. Direct client services, consumer digital services, platform sales and overseas work can raise different questions. Do not rely on a social-media rule of thumb.

What competitors often miss

Custom GPT agencies tend to explain prices and deliverables, while generic freelancer tax pages say "keep invoices and receipts." The gap is the operational ledger between the two: a client project can have a paid discovery phase, scoped implementation, Stripe fees, support retainer, API usage and a late refund. That ledger is useful for cash flow, client management and accountant conversations, not only compliance.

Questions to ask an accountant

  • Should I set up separate income categories for discovery, build and recurring support?
  • How should I reconcile Stripe gross charges, fees, refunds and grouped payouts?
  • How should I record client-funded AI, API or hosting costs under my contracts?
  • What do I need to monitor for VAT as my project and retainer revenue grows?
  • What client-location and service details should I preserve for VAT review?

Related guides

Key takeaway

A Custom GPT business needs a project ledger, not just a payment processor export. Keep the scope, revenue lane, gross charge, fees, refund and bank settlement connected for every client.

Official guidance checked on 14 August 2026

FAQs

Can I use Stripe reports instead of invoices?

Stripe reports are important payment evidence, but a proposal or invoice explains what you promised to supply and why the charge exists. Keep both.

What if a client pays a personal PayPal or bank account?

Record it in the same project ledger and preserve the invoice, payment evidence and purpose. Separate personal and business cash as soon as practical.

Should I include free support in income records?

Keep a brief scope note. It may be part of the build agreement rather than a new sale, and the record prevents later confusion about what was paid for.