Wednesday, 7 January 2026

My First Azure Function Adventure

Turning Invoices Into Insights

After earning my Azure Cloud Foundations certification, I started exploring cloud tools, especially Azure, with the goal of building something useful and interesting. Invoices felt like a good place to start—they are widely used, often unstructured, and contain critical information for organizations. Most organizations also rely on invoice-based expense approvals submitted by employees.

With this in mind, I decided to build my first Azure Function App that can read and understand invoice data, apply organizational policies and rules, and approve only those items that comply with the policies defined in the system prompt.

The Idea

Think of it like this:

  • An invoice arrives.
  • Instead of someone manually checking line items, the app automatically extracts the details.
  • Then, it applies a set of rules to decide what’s acceptable.
  • Finally, it produces a neat, structured response that’s easy to trust.

I wanted the process to feel seamless, almost like having a digital assistant that never gets tired of reading receipts.

The Building Blocks

To make this happen, I combined two powerful Azure services:

  • Document Intelligence: This is the part that “reads” the invoice, pulling out structured data like amounts, dates, and item descriptions.
  • OpenAI on Azure: This is the part that “thinks,” applying organizational policy rules and shaping the final structured output.

Together, they form a pipeline: one extracts, the other reasons, and the function app ties it all together.

Why Azure Functions?

I chose Azure Functions because they’re lightweight, serverless, and perfect for small experiments. I didn’t need to worry about managing servers or scaling infrastructure. Instead, I could focus on the logic: receive a request, process the invoice, return a clean JSON result.
It felt empowering to see something so compact handle such a meaningful workflow.

What Happens Behind the Scenes

Here’s the flow in simple terms:

  1. Receive the invoice (uploaded as a file).
  2. Extract the data using Document Intelligence.
  3. Apply policy rules through OpenAI prompts.
  4. Return a structured decision — success or rejection, with clear details.

To showcase how this function works in practice, I built a simple Azure Static Web App.

  • The web app provides a clean UI where users can upload an invoice file.
  • Behind the scenes, it calls the API I created in the function app.
  • The response is then displayed in a structured, easy‑to‑read format.

This demo is just a proof of concept, but it highlights how the architecture can be extended. With a bit more integration, the same design could plug into enterprise‑grade systems like PeopleSoft, making invoice approvals faster, smarter, and policy‑compliant.

What’s Next

This post is more about the story and the vision. In Part 2, I’ll dive into the technical details — how the function is set up, the schemas, the prompts, and the deployment process. That’s where the nuts and bolts will come in.

For now, I hope this gives you a sense of how a simple idea — “read invoices automatically” — turned into my first Azure Function adventure.


Here is a quick sneak peek of the POC that was built. If you’d like to learn more or connect to make it more intelligent and streamlined, feel free to leave a comment or message me.




HCM POST1 - What is Oracle Fusion/Oracle HCM Cloud?

  What is Oracle Fusion? Oracle Fusion is a cloud-based Enterprise Resource Planning (ERP) solution offered by Oracle Corporation. It provi...