How We Automated a Client's Onboarding Process: Case Study
A 12-step manual process. Three staff members. Five to seven days to complete. Here is how we reduced it to a four-hour automated workflow with zero manual steps — and what we learned along the way.
- Client: A London-based accounting firm (anonymised) with a 12-step manual onboarding process.
- Before: 5–7 days, 3 staff involved, 2.3 average errors per onboarding, clients frustrated by delays.
- After: Under 4 hours, 0 staff involvement, 0 errors, clients onboarded before their first meeting.
- Tools: n8n + Python + DocuSign API + Xero API + HubSpot + Slack + client portal API.
- Key lesson: The hardest part was not the build — it was mapping the hidden steps nobody had written down.
The Client: A London Accounting Firm
Our client is a mid-size accounting and business advisory firm based in London. They work with 200+ SME clients across the UK, primarily in the professional services, e-commerce, and property sectors. Like most professional services firms, they had grown their client onboarding process organically — adding steps as the business grew, without ever redesigning the process from scratch.
By the time they came to us, the onboarding process had ballooned to 12 steps involving three members of staff: a client manager, an admin assistant, and an IT administrator. New clients were waiting 5–7 business days from signing a contract to having full access to their services — a delay that was starting to affect client satisfaction scores and lead to pre-start cancellations.
The Before State: 12-Step Manual Onboarding
| Step | Action | Owner | Avg Time | Error Rate |
|---|---|---|---|---|
| 1 | Send welcome email manually | Client manager | 15 min (+ delay) | High (forgotten) |
| 2 | Email engagement letter for signature | Client manager | 20 min | Medium (wrong template) |
| 3 | Chase for signed letter | Client manager | Variable | — |
| 4 | Trigger ID verification process | Admin | 10 min | Medium (missed step) |
| 5 | Enter client data into HubSpot CRM | Admin | 25 min | High (data entry errors) |
| 6 | Post Slack announcement to team | Client manager | 5 min | High (often skipped) |
| 7 | Create project in ClickUp | Client manager | 30 min | Medium (missed tasks) |
| 8 | Create client portal account | IT admin | 15 min (+ wait) | Medium |
| 9 | Send portal access credentials | IT admin | 10 min | Low |
| 10 | Create client in Xero | Finance | 15 min | High (duplicate records) |
| 11 | Raise first invoice | Finance | 20 min | Medium |
| 12 | Update CRM with all completion dates | Admin | 15 min | High (often skipped) |
Total manual time per client: approximately 3 hours across 3 staff. Elapsed calendar time: 5–7 business days due to handoffs, delays, and waiting. Average errors per onboarding: 2.3.
What We Automated
After the process mapping workshop, we identified that 10 of the 12 steps were fully automatable. Steps 3 (chasing) and 4 (ID verification) required human involvement by law — ID verification must be done by a qualified staff member under AML regulations, and chasing requires relationship awareness. Everything else could run automatically.
Trigger: Client manager marks a deal as Won in HubSpot CRM.
- Welcome email sent automatically — personalised template with client name, assigned manager, and next steps. Fires within 30 seconds of deal Won.
- DocuSign envelope sent — engagement letter pre-populated from CRM deal data (client name, registered address, fee structure, services selected). Sent via DocuSign API automatically.
- On DocuSign completion event: webhook fires to n8n, which archives the signed document in Google Drive, updates HubSpot, and moves to the next steps.
- ID verification task created — a task created in ClickUp and assigned to the compliance officer with the client's details and a deadline. (Human still completes the ID check — only the admin is automated.)
- HubSpot CRM populated — all contact and company fields populated from DocuSign form data. No manual entry required.
- Slack announcement posted — formatted message to the #new-clients channel with client name, services, assigned manager, and a link to the CRM record.
- ClickUp project created — from a template with all standard onboarding tasks pre-created, assigned, and dated.
- Client portal provisioned — Python script calls the portal's API to create the account, set permissions, and trigger the welcome email with login credentials.
- Xero client created — Python script calls Xero API to create the contact with all company data. Duplicate check runs first.
- First invoice created in Xero — based on the fee structure from the deal. Created as a draft for finance review.
Tools and Architecture Used
n8n self-hosted on a £15/mo VPS — handles all workflow logic, event listening, and API calls.
DocuSign API — envelope creation, template population, webhook event on completion.
HubSpot API — deal data source, contact creation, deal stage updates.
Xero API — contact creation, invoice generation, duplicate detection.
Python scripts for portal provisioning API (no n8n connector), duplicate detection logic, and data transformation.
Slack API — formatted new client announcements, failure alerts to admin channel.
Results
Lessons Learned
- The hidden steps matter most. The process mapping workshop revealed three steps that nobody had written down anywhere — they were done informally by one specific person, and would have been missed entirely if we had just automated what was in the checklist.
- DocuSign webhook reliability is critical. Our automation waits for the DocuSign completion event. We built retry logic and a fallback alert if the webhook doesn't fire within 2 hours of expected completion. This saved us on two occasions.
- Duplicate data is the enemy. The biggest technical challenge was Xero duplicate detection. We built a search-before-create pattern: the Python script searches Xero for an existing contact with the same company name and email before creating a new one.
- Staff adoption required communication. The client manager was initially concerned the automation would reduce their visibility into new clients. We added a daily Slack digest summarising all automation activity — this gave them back the oversight without the manual work.
- The 4-hour limit is DocuSign. The theoretical limit on the automated process time is now determined solely by how quickly the client signs their engagement letter. The automation itself takes under 60 seconds once signing is complete.
Generalised Framework for Onboarding Automation
Whether you are a law firm, a marketing agency, an accountant, or an IT service provider, the framework is the same:
- Define the trigger — what event starts onboarding? (Deal won, contract signed, payment received)
- Map every step — including the informal, undocumented ones
- Identify which steps are fully automatable, which need human review, and which are regulatory requirements
- Choose your orchestration tool (n8n for technical teams; Make or Zapier for simpler flows)
- Build integrations for each system: CRM, contracts, project management, accounting, communication
- Add error handling and alerting — every failure should notify a human immediately
- Run parallel with manual process for 2 weeks
- Decommission the manual process and monitor
Want the Same for Your Business?
SpiderHunts Technologies designs and builds automated onboarding workflows for professional services firms, SaaS companies, and agencies across the UK. We run the process mapping workshop, design the to-be workflow, and build every integration.
Start Your Onboarding Automation →