How Ecogen Services made quotes 5x faster with an AI-assisted quoting platform
A solar sales team closing deals in the field with full quoting power and zero access to the margins behind every number.
The quoting system that had a 500-customer expiry date
Dan Mascroft, Ecogen's founder, built the quoting system himself on Google Sheets. It worked, but only for a while.
Reps were spending 15 to 20 minutes per site visit manually reading engineering drawings before they could quote anything. Every pricing update needed Dan personally. Every new customer added another tab to a sheet already close to breaking.
The spreadsheet also had a hard ceiling. Past 500 customers, the whole thing was projected to degrade. Cross-rep reporting was nearly impossible. And the pricing formulas, margins, and commission splits were all sitting in a sheet that any rep with basic spreadsheet skills could get into.
He knew it needed replacing. The question was what to replace it with.
A system built around how solar sales actually work
Agent Loopr rebuilt Ecogen's quoting infrastructure from the ground up as a secure, full-stack SaaS web application. The entire stack, backend and frontend, was built using Claude Code. Every architectural decision was made to separate what reps interact with from what drives the numbers behind their quotes.
Server-side pricing engine
Every pricing formula, equipment margin, install redline, and commission split was rebuilt inside a Python FastAPI backend. Claude reverse-engineered Ecogen's historical pricing data to identify what drove the price per watt. The web client transmits site inputs only. It receives back exactly what each role is permitted to see. The pricing logic itself never reaches the browser.
Server-side
The browser never sees a formula, margin, or commission split.
Three-tier role-based access control
A JWT-based authentication system returns three distinct data shapes from the same quote endpoint. Reps see commissions. Managers see pipelines. Owners see everything, including equipment costs, labor splits, and net profit.
3 roles
Reps, managers, and owners each get exactly what they're permitted to.
Versioned price book
The price book was version-controlled inside a PostgreSQL schema. Every time an admin updates an adder cost, the change applies only to new quotes going forward. Every historical quote locks in the exact price snapshot active at the moment it was created.
Locked per quote
Adder updates apply forward only; historical quotes never shift.
AI Planset extraction
A rep uploads an engineering planset PDF in the field. Claude (claude-sonnet-4-6, vision) reads the drawing and returns structured data, including module model, wattage, panel count, array configuration, roof pitch, and azimuth. The quote form pre-fills automatically. On the reference Gehring planset, an 8-array layout with mixed orientation, Claude scored 100% on core spec fields.
100%
On the reference Gehring 8-array, mixed-orientation planset.
Monday.com CRM integration
Once a quote is finalized, a single click sends the complete data set directly to Ecogen's Monday.com board. This integration allows the quoting platform and CRM to function as a unified system, eliminating the need for reps to double-enter information.
0 double-entry
Finalized quotes flow straight onto the Monday.com board.
Full-stack deployment on Render
The complete application was deployed to a cloud-hosted Render environment with continuous deployment. The live platform runs on the production domain “ecogenservices.com”. The codebase features documented architecture, enabling future developers to contribute without needing context from the original build team.
CD on Render
Live on ecogenservices.com with documented architecture.
What did replacing the spreadsheet actually deliver for Ecogen Services?
5x faster quotes
Quote preparation time dropped from 15–20 minutes to under 4 minutes per site visit. Sales reps now spend more time engaging with homeowners, rather than reading engineering plans during meetings.
88% reduction in calculation time
Latency dropped from 2,500ms to under 300ms. The pricing engine now returns accurate, role-appropriate figures in under a third of a second, fast enough that it never interrupts a sales conversation.
100% of pricing locked server-side
Every formula, margin, and commission split lives in the backend. No rep can access the numbers behind their quotes, regardless of their spreadsheet skills.
Unlimited customer scale
The previous 500-customer limit is eliminated. The platform's relational database offers unrestricted scalability, robust cross-rep reporting, and full historical data access.
Our reps can quote anything in the field now, and I'm still the only one who ever sees the margins. That was the whole point.
Tools and technologies
used on this project
Frontend & UI
A fast, role-aware quoting interface reps use in the field.




Backend & Data
Server-side pricing, a versioned price book, and vision extraction.




Integrations & Deploy
CRM sync and continuous deployment as one flow.


One coherent stack — pricing, access, and CRM, secure and production-ready at launch.
Ready to talk about
what you're building?
Book a 30-minute call and come as you are. No preparation needed on your end.
Book a Discovery Call