How We Built an Internal Business Dashboard for R&D Projects and B2B Revenue That Cut Work Time by Two-Thirds for Just $13
- Jul 15
- 9 min read

Hi, this is the AIEEV Biz & Strategy Team.
When a business grows, it isn't just revenue that goes up. The number of proposals and contracts per client increases, and so does the number of quotes and delivery statements you have to draft. Checking tax invoice dates and payment status, then tracking down and resending issued files, grows right along with it.
AIEEV went through the same shift as our B2B projects and Air Cloud platform business grew together. PoCs, build projects, and platform usage with client companies all increased at once, and at times we were issuing and managing roughly 10 to 30 tax invoices a month. The number of R&D projects we were managing also passed 10, and our R&D PMs were carrying an increasingly heavy load.
It was a welcome sign that the business was doing well, but our management method was still scattered across multiple spreadsheets, Word documents, and local folders. Add government-funded project budgets and supporting documents on top of that, and the time spent figuring out “who issued which document, when, and where it was saved” kept climbing fast.
So instead of building a tool just for government-funded projects, we started building an internal dashboard the whole Biz team could use together, covering everything from B2B revenue to platform metrics, revenue documentation, and R&D projects with AI, ourselves.
1. More work was a welcome problem, but our workflows weren't connected
At first, we thought tidying up our existing spreadsheets a bit would be enough. But once we looked closer, the real problem wasn't the file format. It was workflows that weren't connected to each other.
Expected revenue on the sales pipeline and actual won deals lived in separate tables.
For the same client, we had to redraft the quote, the delivery statement, and the official letter separately, every time.
We had to check tax invoice targets, issue dates, amounts, status, and payment separately.
When the person in charge changed, it took time to track down the issued documents and the folder they were saved in.
Every government-funded project had its own budget, expense categories, documentation format, and document order.
The more documents we issued, the higher the risk of duplicate or missing document numbers.
Once you start processing 10 to 30 tax invoices a month, a system built on memory for a case or two simply stops working. We needed to check, in one flow, whether the quoted amount matched the tax invoice amount, whether the delivery statement went out with it, and whether payment came in after issuance.
What we needed wasn't one more spreadsheet. It was an operating system where sales opportunities flow into revenue documents and actual revenue, with a full issuance history.
2. We split the whole business into four flows
We organized the dashboard into four flows that matched how the team actually works.
First, the B2B project pipeline. It shows expected revenue, stage, owner, and deadline for every project on one screen, along with deal count and weighted expected revenue by stage. Even when several deals such as PoC, proposal, contract negotiation, and closed-won are moving at once, you can quickly spot where the bottleneck is.
Second, Air Cloud platform metrics. This shows signups, organizations, active users, paid revenue, and tax-invoiced revenue together. It's connected to the platform's internal metrics API to pull real usage data, and we're extending it to also show website traffic.
Third, B2B revenue document issuance. Select a deal from the pipeline or a tax invoice record, and you can generate a quote, delivery statement, or official letter. Issued documents are saved as A4 PDFs, and the issuer, document number, recipient, and file name all accumulate in an issuance log.
Fourth, government-funded project management and documentation. You can check each project's budget and remaining budget, and once you select an expense category, the required work proposal, meeting minutes, travel request, travel report, or expenditure request appears automatically, based on the rules.
3. From quote to tax invoice, we connected revenue documents to a single source of data
Before, once a quote turned into a contract, we had to re-enter the same client name, line items, and amount into a delivery statement. Issuing a tax invoice meant cross-checking the amount against earlier documents all over again. That's manageable at a few documents a month, but once you hit 10 to 30, that repeated data entry itself becomes a real operational risk.
On the dashboard, selecting a B2B deal or an Air Cloud tax invoice record as the document target pulls the existing data straight into the document template. What you enter on the quote carries over into the delivery statement draft, and the company seal and company details are automatically placed in the right spots.
Issued PDFs are filed into each client's existing folder. Even if a folder name is slightly different, the system uses the existing folder once it recognizes it's the same client, instead of endlessly creating new ones. Even with multiple people issuing documents, anyone can check the list in the issuance log and re-download a file.
Tax invoices are managed on a data-entry screen for issue target, amount, and status, and we connected it to an external e-tax-invoice API for issuance requests and result lookups. Before going live, we verified it in test mode, and at the actual issuance step, the person in charge does one final check of the recipient details and amount. The goal of automation here isn't to remove approval. It's to cut down on repeated data entry and missed issuances.
As a result, a project on the sales pipeline now flows through a single chain: quote, delivery statement, tax invoice, and issuance log. Even as revenue volume grows, no one has to rely on memory for “what did we issue this month, and what's still left.”

4. For government-funded projects, we connected everything from budget lookup to supporting-document issuance
Separate from revenue documents, each government-funded project comes with its own operating rules. The required documents change depending on the expense category, such as operating expenses, travel, and research activity costs, and work proposals, meeting minutes, and expenditure requests all need to line up in date order.
On the government documents screen, selecting a project and expense category surfaces only the documents that category requires. Document numbers continue from the existing issuance history, and PDFs are saved into a folder for that project. Issuing a document also updates the issuance log and remaining budget, so multiple users can see the same up-to-date status.
This feature replaced a process that used to mean checking remaining budget in a spreadsheet, finding the right Word template, copying content over, and then hunting down the right folder to save it in. Now all of that happens on one screen. The time spent on repetitive paperwork dropped to roughly a third of what it used to be, and the person in charge could focus more on reviewing whether the amount and supporting documents were appropriate.
5. We used Air API for document drafts and today's work priorities
Some fields in supporting documents follow clear rules, like amount and date. But others, like the purpose of a trip, meeting content, or the background of a task, are narrative fields that have to be written fresh every time.
We connected AIEEV's Air API to both government documents and B2B documents. When a user enters the project, expense category, date, and core purpose, it drafts the narrative for government supporting documents; for B2B documents, it only writes the parts that have to be freshly written each time, the project description on a quote, the item description on a delivery statement, or the subject and body of an official letter. The person in charge reviews the facts and compliance before issuing the PDF. (Each call costs about ₩1, well under a cent!!)
We also added a Today's Biz Brief to the dashboard's home screen. It pulls together overdue pipeline deals, tax invoice issuance and payment status, Air Cloud usage metrics, and government project execution status, then has Air API pick out the three tasks to check first today. You can see exactly where to start each morning without opening screen after screen.

Air API serves open-source AI models as a serverless API with an OpenAI-compatible interface. That let us plug generative AI into our existing internal tools without setting up our own GPU servers or deploying models ourselves. We kept the API key out of the browser entirely and managed it as a server-side environment variable.
We limited which fields AI can generate so it can't arbitrarily change dates, amounts, client names, document numbers, attendees, or actual results. The dashboard displays Biz Brief's amounts and counts directly from the source data, and Air API only gets to choose the priority order among predefined task types. When actual results haven't been entered yet, instead of inventing content, it leaves a note that says “actual result needs to be entered” so the person in charge fills it in. Right now, generating one short document draft like this costs roughly ₩1 on Air Cloud.
6. Three things we learned building this dashboard
First, growth demands an operating system alongside it. More revenue and more clients is a good thing, but if document issuance and payment confirmation depend on one person's memory, you can't keep up with the pace of growth. To reliably handle 10 to 30 tax invoices a month, the data and issuance history had to be connected first.
Second, data structure came before screens. We had to map out the relationships between clients, projects, quotes, delivery statements, tax invoices, and payment status before the revenue flow became visible. The same was true for government-funded projects: nothing worked properly until we defined the relationships between project, expense category, document type, date, and document number.
Third, AI worked best focused on review, not replacing people. It generates repetitive sentences and document formats quickly, but people still make the final call on client details, amounts, tax invoice issuance, and project regulations.
7. A starter prompt if you want to build one yourself
If your team is wrestling with something similar, you can adapt the prompt below to your own situation and get started. Rather than trying to build every feature at once, it's better to first connect the spreadsheets and document templates you're already using, then add features step by step.
Build an internal business dashboard that manages our company's B2B sales,
revenue documents, platform metrics, and R&D projects in one place.
Screens needed
1. B2B pipeline: client, project, expected amount, sales stage, owner, deadline,
deal count and weighted expected revenue by stage
2. Platform metrics: signups, active users, paid revenue, tax-invoiced revenue
3. Data entry: a shared screen where multiple users can enter and edit fields
the API can't pull automatically
4. B2B documents: issue quotes, delivery statements, and official letters as
A4 PDFs, accumulated in an issuance log
5. R&D projects: budget and remaining budget per project, supporting documents
by expense category, document numbers and issuance history
6. Today's briefing: gather overdue deals, unpaid invoices, pending issuances,
and budget status, then suggest the three tasks to check first
Implementation principles
- First analyze our existing spreadsheets, Word templates, and folder structure,
and reuse them as much as possible
- Never let AI generate or change amounts, dates, client names, or document
numbers
- AI should only handle draft description text and priority ordering among
predefined tasks
- Never put API keys or passwords in browser code. Manage them as server
environment variables
- Use shared storage so multiple users can see the same data and issuance
history
- Verify features and A4 PDF output locally, then commit to Git and deploy
to production
First analyze the current files and data structure, then implement the
smallest working piece first.
After each step, verify the actual screen, the saved output, and whether
any errors occurred.
This prompt isn't a one-shot order for a finished ERP system. It's closer to a design memo that gets an AI coding tool and the actual team member starting from the same requirements. The more you feed it your company's real templates, approval rules, and data structure, the more precisely the result fits. (We're still doing this ourselves, feeding it more data and requirements bit by bit as we keep improving it!
Closing Thoughts
This project didn't start with building a giant new ERP system. It started from small but time-consuming repeated tasks: questions like “why do we keep re-entering the same client and amount across multiple documents?” and “why do we have to hunt through a different folder every time for revenue documents versus government project records?”
Right now, AIEEV's internal dashboard is bringing the B2B pipeline, Air Cloud platform metrics, quotes/delivery statements/official letters, tax invoice issuance and payment records, and government project budgets and supporting documents together into a single workflow.
AI coding tools let us turn practical ideas into working screens quickly, and Air API let us build repeated document drafting and daily task prioritization directly into our actual workflow. As the business grows, admin work grows with it, but now we have the foundation to absorb that growth through data and systems instead of more manual repetition.
Going forward, AIEEV will keep applying our own AI infrastructure and APIs to our internal work first, and keep sharing what we learn: the trials, errors, and results along the way.
If you'd like to connect generative AI features to your own service or internal tools using Air API, you can find more details below.
- Air API Overview: https://www.aieev.com/post/air-api-is-now-live - Get Started with Air Cloud: https://ap-1.aieev.cloud:3007 - Contact Us: https://www.aieev.com/contact

| Biz & Strategy Team
| Edited by Karen Kim
| Site: Linkedin



