Most automation stories end where the document begins. A workflow collects the data, routes the approval, updates the record, and then someone still has to produce the actual PDF that the business runs on. Stubber, an AI consulting company that builds agents and automates processes for other businesses, closed that gap by building PDF Generator API directly into its own agent platform.
Today a single Stubber process can start with an email, run several large language models to extract and classify the data, send a manager a WhatsApp message asking for approval, and return a finished purchase order PDF to the requester. The account now holds 213 templates across the client base, and Luke Steffens, Solutions Architect at Stubber, estimates the setup has saved the company hundreds if not thousands of hours.
An AI consultancy that automates other companies’ processes
Stubber is a consulting firm that builds AI agents and automates business processes for its clients. The work spans very different industries and very different companies, which means every engagement arrives with its own approval chains, its own data structures, and its own documents.
“We build agents and we automate processes for other businesses. So obviously when you’re actually automating real business processes, you often have to create documents, PDFs, things like that.”
The company also built its own platform to run those agents on. Internally it is called Stubber, and Luke describes it as a set of building blocks with states, where a large language model controls the flow rather than a fixed sequence of steps.

“It’s kind of like n8n but much more advanced. It’s got so much more functionality, and it’s integrated with email, WhatsApp, Teams and Slack.”
Every conversation the platform handles is stored in what the team calls a stub, a record that accumulates all the data collected during the process. When the flow reaches the point where a document is needed, that stub is exactly what gets passed into the PDF.
The challenge: automated processes still end in paperwork
Stubber’s clients are internal business operations, and internal business operations are documented. No matter how much of the process an agent takes over, the output still has to be something an accounting team, a supplier, or an auditor can accept.
“The business is run on PDFs and Excel spreadsheets. At the end of a PO you need an official document saying okay, it’s been approved by so and so. It’s just more for internal businesses, they always need documents.”
That created a specific problem for a consultancy rather than a product company. Stubber does not build one document for one workflow. It builds documents for every client it onboards, each with different branding, different line item structures, and different data coming out of the agent. Writing a rendering layer per client was never going to scale, and the volume of data in each document is not fixed in advance, so the layout has to adapt to whatever the agent collected.
The solution: PDF Generator API as a task inside the agent flow
Stubber built PDF Generator API into its platform as a native task. Alongside tasks that call an LLM, save data, or send a message, there is a PDF Generator task that takes the data points already collected on the stub and renders them into a template.
The purchase order authorization flow shows how it fits together. Someone at the client business emails a request to a dedicated address, asking for a cost to be approved, along with an explanation, a cost center number and a reference number. That email lands in Stubber and kicks off the agent.
- An LLM analyses the incoming file and extracts the data out of it. Stubber has several model providers plugged into the platform and uses more than one inside a single flow.
- The agent classifies the request. This particular client operates three separate companies, so the agent sets the company, picks the matrix cost center, and resolves who owns the cost.
- The approval goes out over WhatsApp. The agent looks up the responsible manager, finds their WhatsApp number, and sends them the request directly.
- The manager taps accept and the flow continues without anyone opening a dashboard.
- PDF Generator API produces the purchase order. Letterhead, buyer and vendor details, line items and costs, all rendered from the data the agent gathered, and the confirmation goes back to the requester by email.

“The email came in from email, then we WhatsApp to the managers, and then we reply back to email. So it’s very multi communication channel based here.”
The same pattern runs elsewhere. Another client in food ordering uses a Stubber agent to show customers what is in their order, and the confirmation document is built with a container that expands to however many items the customer actually bought.

Dynamic tables, containers and QR codes doing the heavy lifting
Because the volume of data is never known in advance, the features Luke singles out are the ones that make the layout adapt on its own. Data arrives as a JSON array from the agent and the template fills out to whatever length it needs.
“It’s super nice how it’s dynamic. You can pass in a JSON array, which we do, and then it’ll just fill out as long as it needs to go. It would be really hard without this for us to build actual PDF documents for clients.”
Beyond the expanding tables and containers, the team adds dynamic QR codes and custom headers per client, so the same underlying task produces documents that look like they belong to whichever business is sending them.
“From here we can edit it however we want. We can add a dynamic QR code, headers, this table. So if there’s many lines it’ll just continue making lines.”
213 templates, one integration
The clearest measure of how deep the integration runs is the template count. Stubber’s account holds 213 templates, a number that comes straight from the shape of a consulting business serving many clients at once.
“We have a lot of different use cases and a lot of different companies. Each company requires something completely different.”

All of those templates run through the single PDF Generator task the team built once. Adding document generation to a new client engagement is a template design job, not an engineering project, which is what makes 213 templates manageable for a team of Stubber’s size.
The impact: hundreds of hours, and a step the process cannot skip
PDF Generator API has been part of Stubber since close to the beginning of the company, roughly a year and a half to two years.
“We’ve definitely needed some solid documents coming out of our processes. It’s been in our Stubber system and we’ve been able to create docs here using PDF Generator API.”
Asked to quantify the time saved across all of those client processes, Luke did not hesitate.
“It must be hundreds or even thousands of hours. It saved us a lot of time. Almost all of our processes use some sort of document.”
Stubber does maintain an alternative internally, a DOCX templating task that generates from a Google Doc with dynamic tables, and some team members use it. PDF Generator API remains the preferred option for the majority of the team and, in Luke’s assessment, the better tool of the two.
“Even though it’s quite a small part of our whole process, it’s a very key part. We definitely need that.”
What the end clients say about the documents
Because Stubber sits between PDF Generator API and the businesses actually receiving the documents, the team hears the feedback firsthand. What comes back is worth noting for what it does not contain.
“We do get feedback, but usually it’s nothing wrong. It’s usually saying make the letterhead bigger, or put a QR code in the top right. There’s never any problems really. It’s just formatting things that they want to change, and we’ve always been able to accommodate them, because PDF has pretty much got everything we need.”
For a consultancy, that matters more than any feature list. Every client request that can be handled inside the template editor is a request that never becomes a development ticket.
Building the templates
Luke built the purchase order template himself, from scratch, using the components available in the editor.
“It’s good. You can really build pretty much anything that you want.”
He was also candid about the parts that take patience. Manually placing and aligning text boxes is tedious work, and alignment does not always behave the way he expects. The documentation covered the gap when he first needed to understand how containers and dropped in components work together, though he notes the editor is mostly self explanatory.
That feedback is precisely what the new AI template builder addresses. Released the day before this interview and enabled on Stubber’s account during the call, it lets you describe the document you want in a chat and generates the template structure for you, which removes most of the manual box placement when starting from scratch.
“Oh wow. That’s great. I’m sure I’ll definitely give it a go and see what kind of results we can get out of it.”
Conclusion
Stubber’s platform handles the parts of a business process that used to need a person: reading the request, classifying it, finding the right approver, and reaching them on whatever channel they actually use. PDF Generator API handles the part that still needs to look official at the end of it.
Built once as a task inside the platform, it now serves 213 templates across a client base where no two companies want the same document. The agents collect the data, the templates expand to fit it, and the purchase order lands in the requester’s inbox minutes after a manager tapped accept on their phone.
Building agents that need to produce documents?
If your automation stops at the point where someone still has to produce the PDF, PDF Generator API gives you a template layer your agents can call directly. Design the template once per client, pass in the data your workflow already collected, and let the tables and containers size themselves to whatever arrives.


