Live in productionCompliance advisory · Case study
An AI operations portal for a firm that can't afford a missed deadline
We built JY Global's internal AI portal: a personal assistant for reminders, tasks, the CRM, invoices and payments; a knowledge hub that answers with citations; a CRM the AI runs, with forms clients fill by link; a chat workspace for the team; and a WhatsApp bot that reads client payments and syncs them to Xero. The AI proposes and a person confirms, every time.
JY GlobalCompliance & governance advisory · Cayman Islands · Live on the firm's own server since 6 Jul 2026
Personal Assistant & payments
Knowledge Hub & Chat Workspace
AI CRM & forms
Proposal to production
22 daysfrom the proposal to the live portal
14 JunProposal
29 JunFirst commit
6 JulPortal live
30 SepLatest release
319pull requests merged, 29 Jun – 30 Sep 2026
2,771automated test cases written against a real database
141API routes, each checking the caller's role
30clickable prototype pages approved before the build
00Project overview
A compliance firm whose clients all have deadlines.
JY Global advises CFD brokers and financial-services operators on compliance and governance across Cayman, Mauritius, Cyprus, the UK, Australia, Hong Kong and Malaysia. Codech took the firm from a proposal to a live AI portal in 22 days, then kept shipping: 319 pull requests by the end of September.
Client
JY Global Limited
Industry
Compliance & governance advisory for financial-services firms
Users
Owners, staff and read-only logins for the firm's own clients
Scope
Proposal, design system, prototype, build, hosting, security audit and handover
Timeline
Proposal 14 Jun 2026 · live 6 Jul 2026 (22 days)
Status
Live and in daily use
The challenge
Hundreds of dates, held in people's heads
Every client carries its own licence renewals, AML refreshes, filings and reporting cycles. Across the portfolio that meant hundreds of dates in one legacy spreadsheet and in senior staff's memory, the same memos rewritten by hand, and two advisers able to answer the same question differently.
Our proposal
Fixed-fee modules, prototyped click by click
We proposed the portal as separate fixed-fee modules, locked a design system taken from the firm's own website, and built a 30-page clickable prototype the Managing Director reviewed before any production code. Every production screen is a faithful port of it.
The solution
JY Global AI Portal
One portal with five modules: a personal assistant, a knowledge hub, an AI-run CRM with client forms, a chat workspace and WhatsApp payments. The AI drafts, reads and suggests; nothing is written until a person confirms it.
Reminders, tasks, invoices and payments from one assistant
Answers that cite the firm's own sources, or say "I don't know"
A CRM the AI runs, with forms clients fill by secure link
Payments read from client WhatsApp groups, synced to Xero
Licence renewals, AML refreshes and filings for every client, tracked in one spreadsheet and in people's memory. Reminders had to reach staff wherever they were.
02
Know-how in individual heads
Jurisdictional nuance lived with whoever had handled it last, so the same question could get two different answers. The firm needed one source that cites itself.
03
Advice, never legal opinions
The firm gives advisory work only. The AI could draft, read and suggest, but it could never write anything a person hadn't approved.
02Personal Assistant & payments Live
The owner's assistant, from deadlines to payments.
A tool-calling assistant with memory across sessions. It answers questions about the whole client portfolio, sets reminders and tasks for you or a teammate, works the CRM, and keeps track of invoices and payments, including payments clients post in their WhatsApp groups. Every action arrives as an editable card that a person confirms.
Portfolio questions
Ask about every client at once
The assistant reads the client register and key dates, so "what's due for Mauritius clients in the next two weeks" gets named deadlines in order of urgency, plus an offer to draft the follow-ups.
Answers stream in, with the model and response time shown
Memory carries across sessions and synced to Telegram
Reminders & assignments
Remind a teammate, on Telegram too
Ask in plain words and the assistant fills in a reminder card: who, when, which client and which channels. You can edit any field before confirming. Reminders fire in the app, as a phone notification and on Telegram.
WhatsApp payments
Paid on WhatsApp. Synced to Xero.
A listen-only bot sits in each client's WhatsApp group. When a client posts a payment and its slip, the AI matches it to the right invoice and asks a person to confirm. The confirmed payment is marked paid in the portal and in Xero.
Documents
Draft the memo, download the Word file
The assistant drafts memos and follow-ups in the firm's format and generates them as Word, PDF, Excel or PowerPoint files. The draft is shown first, and the file is only created once you approve it.
03Knowledge Hub & Chat Workspace Live
The firm's know-how, and one place to work on it.
The AI learns the firm's procedures, policies and templates and answers with citations, or says it doesn't know. In the chat workspace, staff work on shared projects with the AI reading every document in the project.
Cited answers
Every answer points to its source
Questions are answered by retrieval over the firm's own entries, with the passages it used cited inline. Each entry shows how often it has been cited, its version and when it is next due for review.
Folders and standing instructions that always apply
Version history with "Replace file"
Chat Workspace
One project. The team and the AI.
Staff collaborate in project chats with the relevant documents in context. The AI reads them, answers with section references, and helps the team split up the work, so everyone stays on the same page.
Honest gaps
It says "I don't know"
When nothing in the library covers a question, the hub says so and offers to flag the gap for an owner, rather than filling it from the model's general knowledge. For a firm that gives no legal opinions, that matters more than a fluent answer.
Publishing
Scans read, overlaps caught before publishing
Scanned PDFs are read with OCR, and tables in Word and Excel files are extracted. Before a new entry is published, the hub checks it against the library and warns when it overlaps an existing one.
04AI CRM & forms Live
A CRM the owner designs and the AI runs.
Record types, fields and tabs are fully customisable. The AI can retrieve anything and perform any action on a record, always through a confirmation card. Application forms are drafted with AI, sent by secure link, and answers land on the client's record.
Client forms
The client uploads a certificate. The AI reads it. The client confirms.
When a client uploads a document to their form, the AI reads it and pre-fills the answers it found. Nothing is saved until the client confirms, and staff then verify or query each answer before it reaches the CRM record.
Passcode-gated link, progress saved automatically
Staff accept or query each answer
AI-run CRM
Ask the record, or tell it what to change
Each client record opens on an AI brief built from approved registry facts and linked work, with each claim linked to its source. The record's copilot can propose a change, such as a new key date, and shows it on a card for you to confirm.
Entity builder
Fully customisable: the owner defines the record types
Record types, their fields, templates and tabs are data the owner edits, not code. A new type, such as Fund, gets its own register, and changes wait as drafts until they are published.
Access is data too: owners edit a permission grid per role, record groups scope which clients each member sees, and the AI can only do what the person's role allows elsewhere.
The key design decision
The AI proposes. A person confirms.
JY Global gives advisory work only, never legal opinions, so the product couldn't either. The AI reads, drafts and suggests, but it has no way of writing to the database on its own.
Every write it wants to make arrives as an editable confirmation card. A person checks it, and only then does an ordinary API route perform the write, with the same permission check as any other screen and an audit record of who approved it.
The AI drafts the changeA reminder, a key date, a form answer or a document, with every field visible.
A person edits and confirmsOn an editable card, in the app, in the form or on the record.
An ordinary route does the write
Same permission check as the API, plus an audit rowNo grant, no tool: the AI can't even offer it
05How it works
From a request to an approved, audited change.
Whether the request comes from the chat, Telegram, a client form or a record, it goes through the same path. All model calls run through one server-side orchestrator; the browser never calls the model.
RequestChat, Telegram, a record's copilot or an uploaded document
OrchestratorOne server-side gateway for every model call, with encrypted keys and tracing
ContextCited knowledge entries and registry facts the person may see
PermissionEach tool asks for the same grant as its API route
Confirm cardThe person edits and approves the proposed change
Write + auditAn ordinary route writes it and records who approved it
Slow work runs in the background. A separate worker fires reminders, parses and OCRs uploads, scans every file for viruses and embeds knowledge into the vector index, so the app stays responsive.
Hosted on the firm's own server. The portal runs on a Singapore server the firm owns, with nightly backups. The model is OpenAI's, called through the server only, so staff in different countries all reach it the same way.
06Integrations
Plugged into the channels the team already uses.
Staff work in the portal, on their phones and in Telegram. Everything runs on one stack the firm owns.
Channels02
TelegramReminders delivered and the assistant answered on the go
WhatsAppBot reads payment messages in client groups
AI01
OpenAIGPT-5 for the assistant, GPT-5 mini for reading documents
Platform02
PostgreSQL + pgvectorRecords, audit log and the knowledge vector index
DockerWeb, worker, database and listener on the firm's own server
Accounting01
XeroConfirmed payments marked paid in Xero
07How we delivered
From a proposal to a portal in 22 days.
The same three steps as every Codech project: a written proposal, a clickable prototype the client approves screen by screen, then the build. Here are JY Global's real ones.
01
AI proposalFreeWe map the workflow and price it as fixed-fee modules
02
Clickable prototypeFree30 pages reviewed by the MD before any code
Highlights from the interactive proposal: the platform, the assistant, the knowledge hub, the client register and the architecture.
Free AI proposal + prototype
Want a proposal and prototype like this for your firm?
Tell us about one workflow you'd like AI to handle. We'll send you a proposal like this one, with the AI design, the screens and the plan, plus an interactive prototype you can click through. Free.
Approved by the MD, then prototyped
Step 02 · The prototype
Click through before anything is built
The Managing Director reviewed these 30 pages before the build. New screens are still prototyped first.
Loading…
Real files from the engagement, with demo data and demo names. Prices have been removed. A few prototype pages (Meetings, Pipeline, Campaigns) are designs for later phases.
01
Step 01Live in 22 days
Proposal on 14 Jun 2026, first commit on 29 Jun, the portal live on the firm's own server on 6 Jul.
02
Step 02Keep shipping
319 pull requests by 30 Sep: forms, two-factor sign-in, IP allow-lists, an audit log viewer and virus scanning.
03
Step 03Hand over cleanly
A CI gate, handover chapters and a test suite of 2,771 cases, so a successor developer can take it on.
08Under the hood
Built to be trusted with client files.
01Six files scanned in four weeks
The virus scanner had reported healthy for four weeks but had checked 6 of 377 files, because only the client-form path called it. Scanning moved into the one function every attachment passes through, the size limits are now checked against each other, and the backlog was rescanned.
02The assistant must obey the role
The client asked whether a role without Reminders could still create one by asking the AI. It could. Now every assistant tool asks for the same permission as its API route, and a role with no grants gets no gated tools at all.
03Seven failures in a week became a CI gate
One security header silently blocked PDF previews for four days. The written evidence of seven uncaught failures became a GitHub Actions gate: tests, type checks, lint and build on every change.
Want an AI portal built around how your firm works?
Reach out to us now. We'll look at where your deadlines, documents and know-how live today and show you what an AI portal on your own server would change, in a free 45-minute call. Then we send you a free AI proposal and an interactive prototype.