Built an automated PDF import pipeline that connects a legacy Microsoft Access BMS to a modern workflow - pulling policy documents from email and importing them directly into the system, eliminating manual file handling and validating the integration ahead of full data extraction.


The Problem

Health Cheque runs its core operations on a legacy Business Management System built on Microsoft Access (JET Engine). Policy premium PDFs for renewals and quotes arrive by email from suppliers and need to be imported into the BMS manually. The process was slow, error-prone, and created a bottleneck every time documents came in. Before automating anything more ambitious, they needed proof that a modern tool could reliably talk to the old system.


What I Built

A focused integration pipeline that bridges Gmail and the legacy BMS — validating the connection and automating the import step:

This was a deliberate Phase 1 — a small, contained project to validate that the legacy system could be reached and written to reliably. Phase 2 will build on this foundation to extract structured data from the PDFs themselves.


<aside>

Tech Stack & Features

Platform: n8n (self-hosted)

AI: Ollama (self-hosted)

Backend: Python, FastAPI

API: Gmail API, legacy BMS (Access/JET Engine)

Key modules: Gmail trigger, Extract PDF Attachment, Extract PDF Data, Lookup Client, Store Document

Patterns: Self-hosted infrastructure, API bridge to legacy system, phased delivery

</aside>

<aside>

Documentation

Technical Documentation

SOP - PDF Import Pipeline

</aside>


The Result

This Phase 1 delivery validated the full solution for the client - proving that a modern, self-hosted tech stack could reliably connect to and write to their legacy BMS. The entire infrastructure runs on-premises with zero cloud costs, keeping it cost-efficient and fully within the client's data requirements. With the integration proven, Phase 2 can now build on this foundation with confidence.


Demo