Guide

Client onboarding for accounting firms: how to stop rekeying every new client

Most accounting firms onboard a new client by hand: someone copies details from the proposal into the engagement letter, then into the practice management tool, then into the ledger, then chases ID and prior-year returns by email. It typically takes an hour or more per client, spread across several people and several days.

That hour matters more than it looks. It lands on your best admin or a senior bookkeeper, it happens in the busiest weeks (new clients cluster around year-end and tax deadlines), and every rekey is a chance to get a name, a year-end date or a fee wrong. This guide is for accounting and bookkeeping firms of 10-60 people - a people business, meaning a business that sells its people's expertise and time, like agencies, accountants, lawyers and consultants. It shows how to fix onboarding with the apps you already pay for, and what to do when you outgrow that.

Why it happens

Onboarding breaks because each step lives in a different app, and each app was built to be the centre of the world.

A typical 20-person firm runs something like this:

A proposal tool

such as Ignition, where the client picks services and accepts a fee.

An engagement letter

, sometimes inside the proposal tool, sometimes a Word template sent through an e-signature tool.

A practice management tool

such as Karbon or TaxDome, where jobs, deadlines and owners live.

The ledger

Xero or QuickBooks, where the client needs its own organisation or company file.

A document tool

such as Dext or Hubdoc for receipts and bills.

Email and a shared drive

, where ID documents, prior-year returns and login details actually end up.

Each of those apps knows about the client. None of them agrees on who the client is. The proposal says "Smith & Co Ltd", the practice tool says "Smith and Co", the ledger says "Smith & Co Limited", and someone on your team spends a morning making them match. Then the "what we still need from you" list goes out as an email, and the replies land in three different inboxes.

The fix with what you already have

Before you buy or build anything, most firms can take half the rekeying out with settings they already pay for.

  1. 01

    Make the proposal the single source of truth

    Whatever the client accepts should create the client everywhere else. If you use Ignition and Karbon, connect them: Ignition's own Karbon integration page says that when a proposal is accepted, Ignition creates and assigns work items in Karbon, with client and contact records created or updated. For that to work, link each Ignition service to a Karbon work template, and agree one naming rule for clients (legal name, exactly as on Companies House or the state register) so the two apps match rather than duplicating.

  2. 02

    Connect the practice tool to the ledger

    Karbon's Xero integration matches client contacts between the two systems and creates new ones only when needed, and keeps names and billing details in step. If you use QuickBooks, check what your practice tool offers for QuickBooks Online and turn on contact sync where it exists.

  3. 03

    Put the engagement letter inside the proposal

    If your proposal tool can carry your engagement terms and collect the signature in the same step, use it. One signature, one record, no separate e-signature chase. If your letter has to stay in Word, at least turn it into a template with merge fields, so nobody retypes the client's name and services.

  4. 04

    Use the practice tool's intake form for "what we need from you"

    TaxDome's pricing page lists intake forms for collecting client information upfront in every plan, and Karbon's pricing page lists client requests on all plans with automatic client reminders on Business. Build one standard onboarding request: ID, prior-year accounts and returns, bank feeds, tax registration numbers, access to the previous accountant.

  5. 05

    Write the checklist down

    Most onboarding errors are steps someone forgot, not steps that were hard. Our free client onboarding checklist is a starting point; add a column for "which app" and "who owns it".

Done well, these five steps can take a typical onboarding from several people's time to one person checking that everything arrived.

Setting it up, step by step

The five fixes above are easier to describe than to do. Here is the order we'd suggest, with the work each step involves. Menu names change between releases, so treat this as a plan for the week rather than a click-by-click script, and check each vendor's help centre as you go.

Day 1: agree the client record

Before you touch any setting, the person who owns onboarding writes down the fields every new client needs and which app owns each one. For most firms that's legal name, trading name, entity type, company or registration number, year-end, tax reference, main contact, billing contact, services and fee. Pick one owner per field. The proposal tool owns services and fees; the practice tool owns job owners and deadlines; the ledger owns the chart of accounts. Write the naming rule at the top of the page: legal name, exactly as registered, no abbreviations.

Day 2: tidy Ignition

Go through your service library and remove the near-duplicates that build up over the years ("Monthly bookkeeping", "Bookkeeping - monthly", "BK monthly"). Each service you keep should map to one kind of work in your practice tool. Check your engagement terms are attached to the right services, so a payroll client accepts payroll terms and a sole trader doesn't sign a company director's letter.

Day 3: connect Ignition to Karbon

Turn on the integration, then link each Ignition service to the Karbon work template it should create, with the right default assignee and due-date rule. Send a test proposal to a colleague using a dummy client, accept it, and check what appears in Karbon: one client, one contact, the right work items, the right owners. Fix the mapping and test again until the result is boring.

Day 4: connect Karbon to Xero or QuickBooks

Before you switch contact sync on, clean up the ledger side. Merge the obvious duplicates in Xero practice manager or QuickBooks Online Accountant, archive clients you no longer act for, and fix names that don't follow your new rule. Sync works best when both sides already agree; turned on over a messy list, it can spread the mess.

Day 5: build the onboarding request

In Karbon or TaxDome, create one standard request or intake form for new clients. Split it by client type if you can: a limited company, a sole trader and a payroll-only client need different things. Keep each item short and specific ("Photo ID for each director", not "KYC documents"). Set the reminders, and decide who on your team gets told when a client stalls.

Day 6 onwards: write the checklist and run two real clients through it

Use the client onboarding checklist, add "which app" and "who owns it" columns, and walk the next two new clients through the whole thing with the owner watching each step.

Your onboarding checklist, at a glance

A complete onboarding usually covers these steps. Tick each one off in a single place, not in memory.

  • Proposal accepted and fee agreed
  • Engagement letter signed, with the right terms for each service
  • Client created once, with the agreed legal name, in the practice tool
  • Jobs created for each service, each with an owner and a first deadline
  • Ledger organisation or company file created, client invited, bank feeds requested
  • Identity and anti-money-laundering checks completed and filed
  • Professional clearance requested from the previous accountant
  • Tax agent authorisation requested where you need it
  • Prior-year accounts, returns and trial balance received
  • Receipt capture (Dext or Hubdoc) set up and the client shown how to use it
  • Welcome call booked with the client's named contact
  • First job started, and the onboarding marked complete

When that stops working

The native integrations are good. They also have edges, and firms tend to hit them as they grow. Watch for these signals:

You still keep an onboarding spreadsheet

alongside the practice tool, because it's the only place that shows every new client's status in one view.

Duplicates keep appearing

in the practice tool or the ledger, and someone spends time merging contacts every month.

Your services don't map cleanly.

A bookkeeping-plus-payroll-plus-advisory package becomes three jobs with different owners, and the integration only knows how to create one.

The ledger is left out.

The client exists in the proposal and the practice tool, but someone still creates the Xero organisation or QuickBooks file by hand, and invites the client to it.

Your CRM is somewhere else.

If leads live in HubSpot, nobody's integration connects the won deal to the accepted proposal.

Clients ignore the request list

and your admin chases by email anyway, so the reminders exist but don't do the job.

Onboarding takes longer than a week

and nobody can say why without opening four apps.

If two or three of those are true, the problem is no longer a setting. It is the manual work between apps, and that's where a small custom build pays off.

What a custom build looks like

A custom onboarding build doesn't take the place of Ignition, Karbon or Xero. It's one of the most common things we build for accounting firms, and it sits between them and does the joining-up they don't do on their own.

For a typical firm it looks like this:

  1. The client accepts the proposal. The build picks that up and creates the client once, with one agreed name, in your practice tool and ledger, and sets up the right jobs for each service with the right owners.
  2. The client gets one link. A branded onboarding page asks for exactly what that client's services need - payroll clients see payroll questions, sole traders don't see company questions - and files uploads straight into the client's folder. It uses the same building blocks as the client portal we built for a podcast agency, shaped to an accounting firm.
  3. Chasers go out on a schedule you set, stop the moment the item arrives, and escalate to a named person after the second miss.
  4. A dashboard shows every new client - accepted, signed, set up, documents in, ready to start - so nobody keeps the spreadsheet.
  5. A person checks before anything goes live. The build prepares; your onboarding lead reviews and confirms.

On the open market, a typical onboarding system like this costs $8,000-18,000 to build, plus ongoing monitoring and fixes (see our guide to custom software costs for small businesses). Our prices are published on the pricing page: a two-week ops audit at $2,500 (£2,000), credited to your first month, then a monthly plan at $2,000, $3,500 or $7,500 a month (£1,600, £2,800 or £6,000), with your first build included. The software runs on your own accounts, so you own it and pay those tool costs directly; we keep it monitored and fixed, and improve it as your services change.

If documents are the bigger pain than setup, read our guide on chasing clients for documents next.

A worked example: a 20-person firm

For example, picture a 20-person firm with three partners, two managers, eleven bookkeepers and accountants, a payroll specialist, a practice manager and two admins. It takes on around eight new clients a month, more in the weeks after year-end. It runs Ignition, Karbon, Xero, Dext and Google Workspace, and keeps an onboarding spreadsheet because nothing else shows the whole picture.

Before any changes, a new limited company client goes like this. A partner sends the proposal from Ignition. When it's accepted, the practice manager creates the client in Karbon by hand, sets up three jobs, then creates the Xero organisation and sends the invite. An admin emails a list of what's needed, then chases twice. A senior bookkeeper checks the ID, requests clearance from the old accountant and updates the spreadsheet. Five people have touched the client before any accounting work has started, and the client has had four separate emails.

After the native fixes in this guide, the Ignition-to-Karbon link creates the client and the jobs, Karbon's request list replaces the admin's email, and the reminders do most of the chasing. The practice manager now checks rather than types. The spreadsheet is still there, though, because the Xero organisation is still created by hand and the payroll job still needs adding separately.

After a custom build, acceptance creates the client in Karbon and Xero with the same name, sets up all three jobs, sends one onboarding link with only the questions a limited company with payroll needs, and shows the practice manager a single board of every client in flight. She reviews each new client in a few minutes and confirms it. The spreadsheet goes. The first build on a monthly plan would usually be this one; the same plan then builds, maintains and improves the next tools as the firm finds them, at a typical pace of about ten over three years.

Common mistakes

These are the mistakes we see most often, including in firms that have bought all the right apps.

Switching on sync before cleaning the data.

If Karbon and Xero disagree about 40 client names, the integration will either duplicate them or merge the wrong ones. Clean first.

Too many services in the proposal tool.

Every near-duplicate service is another mapping to keep right. Fewer, clearer services make every downstream step simpler.

One giant request list for every client.

A sole trader who gets asked for a shareholder register stops reading. Split the list by client type.

Nobody owns onboarding.

When it's "everyone's job", the step that falls between two people is the one that gets missed. Name one owner, even if others do parts of it.

Chasing by email on top of the reminders.

If your admin also sends a personal chaser, the client gets two messages and replies to the wrong one. Let the reminders do the first two nudges and keep the personal call for the third.

Treating the welcome call as optional.

It's the first thing that slips in a busy month, and the thing new clients remember.

What good looks like

Good onboarding is quiet. For example, in a firm that has it right:

  • The client is created once, with one name, and that name matches in every app.
  • The client gets one email asking for what they need to send, and one link to send it.
  • Anyone in the firm can see where every new client is without asking.
  • The practice manager spends her onboarding time checking and welcoming, not typing.
  • The first piece of real work starts within a week or two of the engagement letter being signed.
  • When something stalls, a named person hears about it before the client does.

Rolling it out and training the team

Change onboarding with the people who do it today, not around them. Ask the practice manager and the admins to walk you through the last three new clients before you change anything; they'll know where the real delays are. Run the new process on two or three clients while the old one still exists as a safety net, then switch over fully on a set date.

Keep training short and practical: a 30-minute session showing one client going through end to end, a one-page guide pinned in your team chat, and a named person to ask in the first month. Tell clients too. A line in the proposal saying "you'll get one link from us with everything we need" sets the expectation before the first request arrives.

If you're bringing in a custom build, the same rules apply. We roll out alongside your team, take their feedback in the first weeks, and change the tool to fit how they work, not the other way round.

Measuring whether it worked

Pick three or four measures before you change anything, so you have something to compare against. Good ones for onboarding are:

Days from accepted proposal to first job started.

The headline number. Track the typical figure and the slowest client each month.

Touches per new client.

How many people did something to set this client up? Fewer is better, as long as one person still checks.

Duplicates found.

Count the duplicate clients merged in your practice tool and ledger each month. It should fall to near zero.

Chasers sent by a person.

Automatic reminders are fine; personal chasers are the cost you're trying to remove.

What new clients say.

Ask one question at the end of the first month: "How easy was it to get started with us?" The answers tell you more than the numbers.

Check these monthly for the first quarter, then quarterly. If the days-to-start figure isn't moving, look at which step the slowest clients got stuck on; it's usually the same one every time.

Who gets time back, and what they do with it

Onboarding work usually lands on two people: an admin or practice manager who does the setup, and a senior bookkeeper or manager who checks it and chases the gaps.

When the setup happens on its own, your practice manager spends the time she used to spend rekeying on a proper welcome call instead - for example, walking a new client through how the firm works, who their contact is and what happens at year-end. That call is what makes a new client feel looked after in their first month, and it's the thing that usually gets squeezed.

Your senior bookkeeper stops chasing ID documents and starts the first month's books a week earlier. Your partners see new clients start on time, which is when cross-selling advisory work is easiest. Nobody's role changes. The hours move from rekeying to clients. We train the team and roll the tool out with them, so the people doing onboarding today are the ones who shape it.

FAQ

Questions, answered plainly

What is the best way to onboard new clients in an accounting firm?

Make the accepted proposal the single source of truth, so the client is created once and flows into your practice tool and ledger. Collect everything you need through one request list with reminders, and use a written checklist with an owner for each step.

Can Ignition create clients in Karbon automatically?

Yes. Ignition's Karbon integration creates and assigns work items in Karbon when a proposal is accepted, and creates or updates the client and contact records. Link each service to a Karbon work template and keep client names consistent to avoid duplicates.

How long should client onboarding take at an accounting firm?

There's no standard, but if it regularly takes more than a week from signed engagement letter to starting work, or nobody can see where each new client is without checking several apps, the process is costing you hours.

Should the engagement letter be part of the proposal?

Where your proposal tool supports it, yes. One acceptance and one signature means one record, and nobody chases a second signature through a separate tool.

How much does a custom onboarding build cost?

On the open market, typically $8,000-18,000 to build plus ongoing support. With Forge, a two-week ops audit is $2,500 (£2,000), credited to your first month, then $2,000, $3,500 or $7,500 a month (£1,600, £2,800 or £6,000) with your first build included.

Start with a 2-week ops audit - $2,500, credited to your first month.