Rodney Dela Cruz

Integrated Police Clearance Pipeline

Self-hosted n8n automation that digitises police clearance issuance end to end, replacing a manual paper trail.

Rodney Dela Cruz

Technical Co-founder, eSerbisyo

  • n8n
  • Self-hosted
  • PDF generation

Community / roleplay server

n8n workflow canvas for the police clearance issuance pipeline.

A self-hosted n8n workflow that takes a clearance request from submission to issued document. This is roleplay server infrastructure for a Grand Theft Auto community — it issues documents that exist inside a game, not real clearances.

The reason it exists is that the manual version was already automated, just badly: a human was copying details between forms, generating a document by hand, and telling people when it was ready.

What the pipeline replaced

Three things, in order:

  • A form that had to be transcribed into a second system by hand, which is where errors actually entered the process.
  • A document assembled by hand, so the content and the record could disagree.
  • A “come back later” notification with no status, so people asked, and asking cost staff time.

Each of those is a queue of waiting. The pipeline removes the waiting, which is the only part of the work anyone actually noticed.

Why it is self-hosted

The document generation and record storage run on infrastructure I control rather than a hosted service. For a community project generating game documents, that is mostly about cost and about not depending on a free tier that can change terms — but it also means the workflow is inspectable by the people who depend on it.

Where the automation stops

Verification is not automated, and deliberately so. In this system a document is issued against a record, and the record is the authoritative thing. Anything that checked the document itself would be checking the output of the pipeline against the pipeline.

The part I would still call unfinished is revocation. A clearance issued before a record is invalidated still exists as a file, and nothing tells the holder. That is a real gap and it is the reason I would not call this finished.