Technical Deep Dive

The workflow engine
for energy operations.

Not another SaaS dashboard. A programmable pipeline that turns documents into structured data, applies your rules, and produces auditable outputs.

Not just document AI.
Domain expertise built in.

7 years building for community solar. 30+ utility formats catalogued. 96.4% straight-through processing on production data.

General document AI can extract text from PDFs. What it can't do is know that a "community solar credit" isn't a "payment received." That a mid-cycle rate change needs special handling. That subscriber class A has different allocation rules than class B.

We built that knowledge into the extraction models themselves—not as prompts, but as training data from real operational workflows.

General Document AI Gridline
Training approach General-purpose + prompting Domain-specific training
Energy terminology Learned from prompts Native understanding
Edge case handling Requires custom rules Built into model
Utility format coverage Build per customer 30+ pre-built
Human review needed Frequent Exception-based only
New format adaptation Days to weeks Hours

What it replaces

The tools you're currently stitching together

Gridline replaces the fragile workflows that energy operators rely on. No more duct-taped spreadsheets, no more copy-paste from PDFs, no more wondering if a statement went out. Instead, you get a deterministic pipeline that handles document ingestion, data extraction, rule application, and output generation — with full audit trails and the ability to rerun any step.

Spreadsheet Chaos → Declarative Rules
utility_bills_jan.xlsx
=#REF!156.23???
Sub A=#DIV/0!24.50
Sub B0MISSING
Formula reference broken
Division by zero error
Missing subscriber data
Manual reconciliation needed
Formulas break. Manual fixes every month.
Allocation Rules
allocate_by: "kwh_usage"
fallback: "even_split"
validate: required_fields
Rules validated
Allocation computed
Output generated
Audit trail logged
Deterministic, version-controlled, replayable
Manual Copy-Paste → Automated Extraction
utility_bill_dec.pdf
Account: 12345
Total kWh: 8,456
Amount Due: $1,234.56
Manual data entry
Typo risk high
No validation
5 min per document
Copy-paste into spreadsheet manually
Extracted Data
"account": "12345"
"kwh": 8456
"amount": 1234.56
"confidence": 0.98
Auto-extracted
Schema validated
98% confidence
0.3s processing
LLM extraction with confidence scores
Manual Doc Creation → Batch Generation
Creating invoice in Word...
1. Open template doc
2. Fill in subscriber name
3. Calculate credits manually
4. Export to PDF
5. Attach to email
30 min per invoice
Version confusion
Calculation errors
No tracking
30 min per invoice, error-prone
Generated Artifacts
statement_sub_123.pdf 0.8s
invoice_inv_456.pdf 0.6s
email_delivered 1.2s
150 invoices/batch
Branded PDFs
Auto-delivered
Full audit trail
Batch generation, all subscribers, one click

How it works

Connectors → Workflow Engine → Templates → Data Model

CONNECTORS
G Google Sheets/Drive +
Email (Resend) +
$ PayPal +
B Bexio +
SolarManager +
🌐 Zevvy (browser) +
Read & Write Data
WORKFLOW ENGINE
Parse
Compute
Generate
Invoice
Deliver
TEMPLATES

Each use case is just a config + a few step functions, not a new app

Invoice Reminder
Metered Billing
Interconnection
DATA MODEL
Organizations
Members
Workflows
Versions
Deployments
Runs
Attempts
Invoices
Audit Events
...

The Pipeline

Six stages from document to delivery

These six primitives are the building blocks Gridline reuses for every workflow — billing in production today, interconnection and project finance next. Unlike typical document automation tools that use probabilistic ML models, Gridline combines hybrid NLP primitives: LLM-powered extraction with structured validation, rule-based computation with version control, and templated generation with full lineage tracking.

No other platform in energy operations combines deterministic extraction, declarative rule engines, and workflow-as-data in a single pipeline. This isn't RPA. This isn't generic ETL. It's purpose-built infrastructure for regulated industries handling financial documents.

01

Upload

PDF ingestion, file validation, S3 storage

bill.pdf
02

Parse

LLM extraction, schema validation, confidence scoring

parsed_data.json
03

Compute

Allocation rules, rate schedules, credit distribution

allocations.json
04

Generate

PDF templating, statement rendering, branding

statement.pdf
05

Invoice

PayPal sync, payment links, webhook handlers

invoice_id
06

Deliver

Email dispatch, portal tokens, delivery confirmation

delivered: true

Tech Stack

Production infrastructure, not prototypes

Frontend
Next.js App Router, React, Tailwind — role-aware portals, no secrets client-side
API
Next.js route handlers, server-side authorization on every surface
Database
Supabase Postgres — row-level security, tenant scoping, audit events
Queue
Redis + BullMQ — transactional outbox, leased dispatch, visible failures
Storage
S3-compatible via Supabase — signed URLs, encryption at rest
Workers
Render background jobs — durable retries, heartbeats, evidence capture

Where We're Pushing

The unrefined edges. The things nobody else is building.

Guided Workflow Builder

Shipped

Seven guided steps from blank page to published workflow — no code, no JSON. Typed actions, searchable variable picker, publish blockers written as corrective actions.

The Edge:

Publishing is atomic: an immutable version with a sha256 plan hash. History compares, clones, and retires cleanly.

Deterministic Extraction

Shipped

LLM-powered PDF parsing with structured output validation. Not probabilistic guessing — deterministic field extraction with confidence scores and fallback rules.

The Edge:

Most document AI is black-box. We expose confidence scores, let you set thresholds, and provide human-in-the-loop for low-confidence extractions.

Workflow-as-Data

Shipped

Runs are first-class data objects, not ephemeral processes. Every step, attempt, and decision is queryable, replayable, and auditable — pinned to the exact version it ran.

The Edge:

Traditional ETL pipelines are fire-and-forget. We treat workflow execution as structured data you can inspect, debug, and replay.

Self-Serve Write Actions

Building

Builder-authored provider writes with preview, idempotency, and reconciliation built in — plus in-builder approval steps and browser authoring.

The Edge:

Each capability ships only after its security and reconciliation gate passes. The catalog labels everything native, managed, or planned — nothing planned is ever sold as available.

Security

Built for regulated industries handling financial data

Data Isolation

Identity & Tenancy

Organization memberships and customer access grants; row-level security scopes every table to the tenant.

Data Protection

Credential Encryption

AES-256-GCM envelopes with key IDs, tamper detection, rotation. Secrets never in configs, logs, outputs, or screenshots.

Access Control

Authorization

Server-side checks on every API and re-validation in the worker before each step — database, API, and runtime all enforce scope.

Infrastructure

Runtime Egress Control

Outbound requests bounded: pinned hosts, TLS, same-origin redirects, DNS re-checks, private networks and metadata endpoints blocked.

Compliance

Audit & Impersonation

Every sensitive action is an audit event. Support impersonation is read-only, 15-minute signed, fully logged.

Compliance

Residency & Compliance

Region pinned per deployment — EU region available for Swiss / EU clients. DPA available; GDPR and Swiss revFADP aligned. Customer data is never used for training.

Request Flow
Client
TLS 1.2+
Web (Vercel) Session Auth, Server-side Authz
Verified
Data (Supabase) RLS, AES-256, Audit Log
Leased
Worker (Render) In-memory Secrets, Egress Allowlist

Runs & Artifacts

Everything is data. Everything is replayable.

run_abc123 completed
subscriber: sub_456 period: 2024-12 duration: 18.2s
upload 0.8s
parse 4.2s
compute 0.3s
generate 2.1s
invoice 3.8s
deliver 7.0s
artifacts:
bill.pdf parsed.json statement.pdf invoice_id email_event

Nothing mutates history

The pinning chain — every run executes exactly what was published

Pinning Chain
Workflow The reusable recipe
publish
Published Version Immutable · sha256 plan hash
deploy
Deployment Revision Freezes version, settings, connections
run
Run + Attempts Pinned · immutable evidence

Editing never rewrites

Changing a workflow creates a new draft and version. In-flight and historical runs keep executing exactly what they pinned.

Rotation never breaks

Credentials float to the current secret; the contract stays pinned. Rotating a password strands nothing.

Evidence is audit-grade

Approvals record a hash of the exact data reviewed. Failed attempts, retries, and reruns are all preserved — never overwritten.

See it run.

No sales pitch. Get real access to test the product yourself on sample data.

Request Demo Access