MMetiss AI|Docs

Key Concepts

A glossary of the terms and ideas used throughout the Metiss AI platform and this documentation.

People & organisations

Partner
A solar energy company that has licensed Metiss AI services. Partners are the primary customers of the platform. Each partner has its own organisation record in the system, which controls their markets, subscriptions, branding, and users.
Homeowner
The end customer — a residential property owner who interacts with the Lead Widget on a partner's website. Homeowners are not registered users of the Metiss platform; their data is captured only when a lead is created.
Partner Admin
A Vista Portal user with administrative access to the partner organisation. Admins configure markets, manage subscriptions, invite team members, and have access to billing information.
Field Team
Installation and service technicians who use the Orion portal to manage jobs. They interact with jobs but not with the lead qualification or billing sides of the platform.

Lead qualification

Lead Widget
An embeddable React application hosted by Metiss. Partners place it on their website via an <iframe>. It guides a homeowner from address entry through utility bill upload to a savings report, qualifying the lead without any manual work on the partner's side.
Serving States
The US states a partner is licensed to operate in. Configured per partner in Vista (Admin Configurations → Markets). When a homeowner enters an address, the widget checks the resulting state against this list. Addresses outside the serving states trigger the exit screen.
Market
A combination of a serving state and its eligible utility providers, configured by the partner. A partner may have multiple markets (e.g. Massachusetts with four utility providers, Rhode Island with two).
Exit Screen
Shown to a homeowner whose address is outside the partner's serving states. The lead is still captured (name + email) so the partner can follow up if they later expand into that area.
Partner Token
A Firebase refresh token belonging to the partner organisation, passed as the ?token=query parameter when embedding the widget. The widget exchanges it for a short-lived ID token on load, which is used to fetch the partner's configuration and authenticate API calls.

AI services

Utility Bill AI
The utility-bill-serviceFastAPI microservice. Accepts a customer's electricity bill (PDF or image) and uses Google Gemini to extract structured data — customer details, billing amounts, meter readings, and up to 12 months of usage history — returning a typed JSON object.
usageByMonth
The array of monthly electricity consumption values extracted from a utility bill. Up to 12 entries, each with month, year, value (kWh), and unit. If fewer than 12 months appear on the bill, the service extrapolates missing months using seasonal patterns from the available data.
supplyRatePerKwh
The supply or generation charge per kilowatt-hour extracted from the utility bill. This is a required field — if Gemini cannot locate it on the first attempt, the extraction is retried up to three times before failing.
Savings Insight
The savings-insight-service. Takes monthly usage history and a customer address, fetches roof data from the Google Solar API, performs financial modelling, then uses Gemini to generate a personalised three-section savings report delivered as a PDF by email.
Solar API (Building Insights)
Google's Building Insights API, called by the Savings Insight service with the geocoded lat/lng of the customer's address. Returns roof area (m²), maximum sunshine hours per year, panel capacity, and yearly energy potential in DC kWh — the physical inputs to the system sizing calculation.
Federal ITC
The Federal Investment Tax Credit — currently 30% of the gross solar system cost. Applied automatically in the Savings Insight financial calculations to produce the net system cost used in payback period projections.
Payback Period
Net system cost ÷ net annual savings. The number of years before a solar installation pays for itself. Calculated by the Savings Insight service using state-specific electricity rates, solar cost per watt, and the customer's annual consumption.

Transactions & jobs

Transaction
A single unit of work tracked through the platform — typically one utility bill extraction or one savings report generation. Each transaction has a unique transactionId (UUID) used for status polling and audit logging.
transactionGroupId
A UUID grouping related transactions together — for example, the utility bill extraction and savings insight generation for the same homeowner session. Used in reporting and audit trails.
Background Task Status
The lifecycle of an async processing job: IN_PROGRESS COMPLETED or FAILED. Progress is tracked as a percentage (0% → 100%). Clients poll /poll-utility-bill-status with the transactionId to check progress.
Job (Orion)
A field service work order in the Orion portal. Jobs move through states: Active (in progress), Hold (paused), and Cancelled. Each job can have AI-generated insights attached, viewable on the job detail page.

Infrastructure & platform

API Gateway
The GCP API Gateway that sits in front of all backend microservices. It handles OAuth2 / API key validation, rate limiting, and request routing. Individual microservices do not implement their own auth — they trust the gateway's assertions.
Subscription Service
A Metiss AI capability (e.g. Utility Bill AI, Savings Insights, Solar & Storage Design) that partners activate and pay for. Each subscription has a contract term, status, and usage log viewable in Vista. Pages that require an active subscription show a prompt if it has expired.
Audit Event
A domain event published to GCP Pub/Sub when a significant action occurs (bill processed, lead created, job updated). The audit-event-consumer-job Cloud Function consumes these events and writes them to the audit log in Firestore.
Asset Monitoring
The Vista Portal section that tracks deployed solar systems across a partner's installed base. Surfaces production metrics, performance ratios, zero-production alerts, and non-communicating systems with configurable date ranges.
Strapi
The headless CMS used to manage content for Vista's Learning Hub, Savings Analysis page copy, and Solar & Storage Design page text. Editors update content in Strapi without code changes.