Anonymized Case — AI Content & Lead-Gen Platform for a CPA Firm: AI writes daily, nothing publishes without a CPA sign-off
In professional services, AI can't speak for the firm. This platform lets AI do the producing and a licensed CPA do the signing — turning content marketing into an accountable daily pipeline.
A bilingual website and content platform for a Greater Vancouver CPA firm: an AI content engine fetches tax and finance news daily and rewrites it into original articles, a CPA reviews and signs off in a dedicated publishing desk before anything goes live, and an embeddable support chatbot catches visitor inquiries. Client identity anonymized.
An accounting firm wins clients on professional trust: someone searches a tax question, finds your explainer, then picks up the phone. But partners have no time to write daily, and outsourced ghostwriting can't guarantee professional accuracy — one wrong piece of tax guidance puts the license holder's reputation on the line. NexAgent applied the same philosophy as our education case: AI sits in the production layer, the professional sits in the sign-off layer. The engine fetches, filters, and rewrites industry news into original bilingual drafts every day; a CPA reviews, edits, and signs off in a dedicated desk — nothing is published without that signature.
Privacy note: firm name, domain, and personnel details have been removed. Only architecture, workflow, and delivered outcomes are described.
The challenge
The firm needed a steady stream of professional content for lead generation, but partners had no time to write — and raw AI generation carries professional-liability risk, since incorrect tax content lands on the license holder. The site also had to serve a bilingual local audience and catch visitor inquiries in real time instead of losing them to an inbox.
Our approach
Separate the power to produce from the power to publish. The AI content engine runs on a daily schedule: fetch tax/finance sources → filter topics relevant to the practice → rewrite into original bilingual drafts → queue for review. The CPA logs into a purpose-built publishing desk (a CMS customized into a CPA sign-off station), reviews each piece, edits or rejects, and approved articles publish automatically. An embedded chatbot answers common questions from a knowledge base the firm maintains itself, and hands anything beyond scope to a human with contact capture.
Results
Delivered a six-container production system: bilingual marketing site, CMS publishing desk, AI content engine, and chatbot service, all exposed through a Cloudflare Tunnel with zero public inbound ports. The firm gets daily original professional content — and every published piece carries a CPA sign-off record. Volume and professional accountability hold at the same time.
The CPA Publishing Desk: a professional is the final gate
The desk is not a generic CMS — it is a publishing station designed around professional responsibility.
- Every AI draft lands in a review queue, hidden by default.
- The CPA can edit, reject, or sign off and publish.
- Every published article keeps a record of who approved it and when.
- The desk is reachable only over a private channel — no public login surface.
Same design philosophy as the teacher review ledger in our education case: AI raises throughput, a human signs for the outcome.
The AI content engine: fetch → rewrite → queue
A deterministic pipeline runs daily:
- Fetches authoritative tax and finance sources, filtered to topics relevant to the practice.
- AI rewrites into original articles — not translation, not reposting — avoiding copyright and sameness.
- Produces English and Chinese in parallel for the bilingual local market.
- Queues everything for review; nothing bypasses the sign-off.
Embeddable support chatbot
Visitors ask tax questions outside office hours. The chatbot answers common inquiries from the firm's own knowledge base (filing deadlines, documents to prepare, scope of services). Anything beyond the knowledge base is not improvised — the bot captures contact details and hands off to a human. Better to answer less than to answer wrong.
Technical breakdown
- Next.js bilingual site + Payload CMS publishing desk, all content in PostgreSQL.
- Python AI content engine (multi-step orchestrated pipeline): fetch, filter, rewrite, and queue are separate auditable stages.
- Chatbot runs as its own service; the knowledge base is maintained by the firm inside the CMS.
- Full stack on Docker Compose behind a Cloudflare Tunnel — the server exposes no public inbound ports.
Reusable lessons
- For AI content systems in regulated industries, the sign-off workflow is the core product, not an add-on.
- AI rewriting beats AI free-writing: feeding the engine authoritative sources keeps quality and professional accuracy far more stable.
- In professional services, a chatbot that says 'let me get you a human' is worth more than one that chats about everything.
Want results like these?
Tell us about your business and we'll scope a proof of concept.