Early Access Docs

Introduction to RevEngine

RevEngine gives insurance brokers a live intelligence layer over their entire policy portfolio — tracking coverage gaps, renewal risk, churn signals, and cross-sell opportunities across every carrier and line of business.

How RevEngine works

RevEngine connects to your carrier data sources and runs a three-step process to build and maintain your policy portfolio intelligence layer.

// RevEngine data flow
ingest → Policy data in from CSV, GoHighLevel, AMS, or carrier feeds
enrich → Policyholders matched, coverage scored, renewal dates indexed
surface → Opportunities, risks, and scores delivered to the app + API
💡 RevEngine normalizes data from every carrier into a single policyholder view — no manual reconciliation across spreadsheets or agency management systems.

Quick start

Get your first carrier export into RevEngine and see your portfolio intelligence in under 10 minutes.

1
Create your RevEngine account — Sign up via early access. You'll receive credentials for your admin dashboard and API access within one business day.
2
Export a policy roster from your AMS or carrier — Pull a CSV, XLS, or XLSX export. Most AMS platforms (AgencyZoom, EZLynx, HawkSoft) and carrier portals support this natively. You don't need to reformat the file before uploading.
3
Upload and map columns — Use CSV Import in your RevEngine dashboard. The column mapper walks you through matching your file headers to the required fields: policyholder_name, carrier, product_type, effective_date, and agent_id. Optional fields like annual_premium and policy_status unlock additional analytics.
4
Review your portfolio dashboard — Portfolio analysis runs automatically after import. Open the Cross-Sell Finder, Coverage Map, and Scorecards views. Your first opportunity signals surface within minutes — no further configuration required.
5
Connect GoHighLevel (optional) — If you use GHL, link it via API key in Settings → Integrations. RevEngine will write cross-sell opportunity tags and coverage flags back to your GHL contact records automatically. See the GoHighLevel setup guide below.

CSV import

CSV import is the universal starting point. If you can export a spreadsheet from your AMS or carrier portal, RevEngine can ingest it — regardless of column names or file format.

Supported file types

RevEngine accepts .csv, .xls, and .xlsx files up to 50MB. Files with multiple sheets use the first sheet by default; you can select a different sheet during the import flow.

Required fields

These five fields must be present (under any column name — the mapper handles the matching):

FieldDescriptionExample values
policyholder_nameFull name of the insured clientstring
carrierInsurance carrier namestring
product_typeLine of business or product categoryMedicare, Life, Annuity, LTC…
effective_datePolicy effective/start dateYYYY-MM-DD or MM/DD/YYYY
agent_idIdentifier for the writing agentstring or numeric ID

Optional fields

Including these fields unlocks additional analytics layers:

FieldUnlocks
annual_premiumRevenue analytics, opportunity math, commission calculations
policy_statusChurn detection, lapse tracking, retention scoring
termination_dateLapse identification, re-engagement flagging
policyholder_dobAge-based scenario scoring (e.g. Medicare eligibility)
stateGeographic coverage maps and state-level analytics

Re-importing to refresh data

Uploading a new export refreshes your portfolio. RevEngine diffs the new file against the previous import to detect additions, lapses, carrier changes, and coverage updates. Policyholders matched by name (and optionally by carrier or agent) are updated in place rather than duplicated.

💡 Most agencies export from their AMS monthly. For higher-frequency refresh, the GoHighLevel integration or a future direct AMS connector will keep your data current automatically without manual exports.

GoHighLevel setup

The GoHighLevel integration syncs your GHL contact records with your RevEngine portfolio — writing cross-sell opportunity tags, coverage gap flags, and payout status back to GHL so your agents see them where they work.

Prerequisites

You need a GoHighLevel account with API access enabled. RevEngine connects via the GHL API v2 — no developer tools or webhooks to configure manually.

Setup steps

1
Get your GHL API key — In GoHighLevel, go to Settings → Integrations → API Key. Copy your private API key. Keep this confidential — it grants read/write access to your GHL account.
2
Enter the key in RevEngine — In your RevEngine dashboard, go to Settings → Integrations → GoHighLevel. Paste your API key and click Connect. RevEngine will verify the connection and show your GHL sub-account name.
3
Map your agent identifiers — RevEngine matches policyholders to GHL contacts by email or phone. Review the agent mapping screen to confirm that agent IDs in your policy data correspond to the correct GHL users.
4
Configure sync direction and schedule — Choose which data flows in each direction and how often. Default: GHL contacts sync to RevEngine daily; RevEngine writes opportunity tags and coverage flags back to GHL on each analysis run.
5
Run initial sync — Click Sync Now to pull existing GHL contacts into RevEngine and write the first set of opportunity tags back. The initial sync may take a few minutes depending on your contact count.

What syncs

DirectionData
GHL → RevEngineContact records, agent assignments, contact custom fields
RevEngine → GHLCross-sell opportunity tags, coverage gap flags, payout status, campaign trigger events
BidirectionalSmart list membership, exception flags, campaign response status
⚠️ RevEngine writes to custom fields and tags in GHL — it does not modify contact names, phone numbers, or email addresses. If a GHL contact cannot be matched to a RevEngine policyholder, it is skipped and surfaced in the Exceptions view.

Agent scorecards

Scorecards give each agent — and agency leadership — a snapshot of portfolio health for any rolling period. They update automatically whenever portfolio data changes and require no manual configuration beyond the initial data import.

What's in a scorecard

MetricWhat it measures
Total policiesAll active policies attributed to the agent across all carriers and lines
PolicyholdersDistinct clients — one policyholder may have multiple policies
Open opportunitiesCount of unaddressed coverage gaps for this agent's book
Opportunity penetrationPercentage of policyholders with at least one open cross-sell scenario
13-month persistencyPercentage of policies still active 13 months after effective date
25-month persistencySame metric at 25 months — industry-standard retention benchmark
Renewals in 90 daysPolicies entering renewal window — advance notice for outreach planning
Avg policies per clientCross-sell depth across the agent's book; higher = stronger multi-line penetration

Scorecard periods

Scorecards are computed for three rolling windows simultaneously: current month to date, current quarter to date, and year to date. Historical scorecard snapshots are retained for trend comparison — use the period selector in the Scorecards view to compare any two periods side by side.

Leaderboard view

The Scorecards leaderboard ranks all agents in your book on a configurable primary metric — opportunity penetration, persistency, or opportunity count. Use it to identify top performers to replicate and lagging agents who may need coaching or book reassignment. Leaderboard data is available via the /v1/scorecards API endpoint and the MCP agent_leaderboard tool.

Cross-sell opportunity engine

The opportunity engine scans every policyholder in your book against a library of coverage scenarios and surfaces the ones that represent a real cross-sell opening. Each policyholder gets scored by fit — not just flagged — so your agents know who to call first.

How it works

1
Coverage mapping — After each data import, RevEngine builds a normalized coverage profile for every policyholder: which lines they hold, which carriers, when each policy started, and its current status.
2
Scenario evaluation — Each policyholder's coverage profile is evaluated against every configured coverage scenario. A match is created when the scenario condition is satisfied (e.g. "has Medicare, no Life policy").
3
Scoring and ranking — Matched opportunities are scored for likelihood and urgency based on policyholder age, time since last policy, existing relationship depth, and carrier availability. High-score opportunities surface at the top of the Cross-Sell Finder.
4
Routing — Opportunities are attributed to the writing agent and optionally synced to GoHighLevel as tags on the contact record. Agents see only their own opportunities; managers see the full book.

Opportunity lifecycle

StatusMeaning
OpenCoverage gap exists, no outreach started
ContactedAgent or campaign has initiated outreach
In ProgressQuote issued or appointment booked
WonPolicy bound — opportunity closed successfully
Lost / DeclinedPolicyholder declined or is ineligible
SnoozedDeferred to a future date — resurfaces automatically
💡 Won opportunities automatically feed back into the coverage profile — the policyholder's newly bound policy closes the gap and removes the opportunity from future runs. No manual cleanup required.

Coverage scenarios

Coverage scenarios are the rules that define what a cross-sell or gap-fill opportunity looks like for your book. RevEngine ships with a standard library of insurance-specific scenarios; you can also create custom scenarios for your carriers and product lines.

Built-in scenario library

ScenarioConditionTypical opportunity
Medicare → No LifeHas Medicare Supplement or Advantage, no Life policyTerm or whole life upsell
Medicare → No AnnuityHas Medicare, no annuity of any typeFixed or MYGA annuity
Life → No AnnuityHas Life policy, no deferred or income annuityRetirement income planning
Annuity → No LTCHas annuity, no long-term care coverageLTC or hybrid product
Single product onlyOnly one policy across all carriers and linesAny second line — broadest opportunity
No hospital indemnityHas health or Medicare, no hospital indemnity supplementHospital indemnity add-on
Lapse re-engagementHad a policy that lapsed within the last 18 monthsRe-quote and win back

Custom scenarios

Go to Settings → Coverage Scenarios to create your own. A custom scenario defines: a required product condition (what the policyholder must have), an absence condition (what they're missing), and an optional age range or state filter to narrow eligibility. Custom scenarios run alongside the built-in library on every analysis pass.

💡 Carriers often provide custom product names that don't map cleanly to standard lines. Use the carrier alias table (Settings → Carriers) to tell RevEngine that "Plan G Select" maps to "Medicare Supplement" — this ensures your coverage scenarios work across every carrier in your book.

Churn & renewal signals

RevEngine monitors your portfolio continuously for signs of churn risk and upcoming renewals, so your agents can intervene before a policy lapses rather than discovering it after the fact.

Signal types

SignalSeverityTrigger condition
Policy lapsedCriticalPolicy moved to lapsed/cancelled status with no renewal on record
Renewal window openWarningPolicy renewing within 60 days, no agent contact logged in past 30 days
Premium decreaseWarningAnnual premium dropped >10% vs prior period — possible coverage downgrade
Carrier transferWarningCarrier changed on a policy without a corresponding agent-initiated event
No-contact riskWatchPolicyholder with 3+ policies and no agent activity in 90 days
Persistency at riskWatchPolicy approaching 13-month mark with low engagement signal

Alerts dashboard

The Churn Signals view in your RevEngine dashboard lists all active alerts sorted by severity. Each alert shows the policyholder, policy, agent, and the specific condition that triggered it. Click any alert to see the full policy context and take action — log a contact, snooze the alert, or trigger a retention campaign.

Retention campaigns

Churn signals can trigger automated retention outreach via the campaign add-on. When RevEngine detects a renewal window or lapse risk, it can automatically enqueue a multi-touch sequence in GoHighLevel — reaching the policyholder before the renewal date with agent-reviewed messaging. See the campaign add-on page for the full performance fee model and attribution details.

Commission processing

RevEngine can ingest carrier commission statements, apply your rate schedules, calculate agent payouts, and surface variance between what carriers paid and what was expected. Commission processing is available on the Professional plan and above.

How commission data flows

// Commission processing pipeline
import → Carrier statement (CSV, XLS, or PDF parse)
match → Each row matched to a policy in your RevEngine book
apply → Rate schedules applied per carrier, line, and agent tier
calculate → Agent payout amounts computed and batched
reconcile → Variance flagged between expected vs received amounts

Reconciliation and variance

RevEngine tracks what each carrier owes based on your rate schedules and compares it to what was actually paid. Discrepancies are surfaced as reconciliation exceptions — with the policy, expected amount, received amount, and variance — so you can dispute or write off each one individually. Every exception has a full audit trail from carrier statement to payout decision.

Agent payouts

Once a commission batch is approved, RevEngine can generate payout records for each agent. Payout batches are exportable as CSV and — for Professional plan users with Stripe connected — can trigger direct agent transfers automatically via the POST /v1/payouts/batch endpoint.

⚠️ Commission processing requires rate schedules to be configured for each carrier in Settings → Carriers before statements are imported. Statements imported before rate schedules are set will be queued and processed retroactively once schedules are in place.

Weekly digest

The weekly digest is an auto-generated summary email sent to agency principals, managers, or any configured recipient every Monday morning. It distills the week's portfolio activity into a single scannable report — no login required to see what changed.

What's included

SectionContents
New lapsesPolicies that lapsed or cancelled in the past 7 days, grouped by agent
Upcoming renewalsPolicies renewing in the next 30 days with no logged agent contact
Top opportunitiesHighest-scored cross-sell opportunities across the book — a ready-made call list
Agent scorecard changesWhich agents improved or declined vs the prior week on key metrics
Exceptions to resolveImport errors or unmatched records that need attention before they affect reporting
Portfolio summaryTotal active policies, policyholders, open opportunity count — week-over-week comparison

Enabling the digest

Go to Settings → Notifications → Weekly Digest. Enter recipient emails (comma-separated for multiple recipients), select the delivery time, and toggle it on. Digest emails are sent at 7:00 AM in your configured timezone every Monday. You can also trigger an on-demand digest from the same settings screen.

💡 The weekly digest is the fastest way to keep agency principals informed without requiring them to log in. Many early access partners forward their digest directly to their operations team as a Monday morning briefing.

Key concepts

Policyholders

The core entity in RevEngine. A policyholder is a client with one or more active policies across any number of carriers and lines of business. RevEngine builds a unified record per policyholder — deduplicating across data sources and tracking their full coverage history over time.

Policies

A single coverage contract. Each policy has a carrier, line of business, effective date, premium, and status. Policies are the raw data RevEngine ingests — from CSV uploads, AMS integrations, or direct carrier feeds — and the foundation of all portfolio analysis.

Coverage Scenarios

A configurable rule that defines a cross-sell or gap-fill opportunity. For example: "policyholder has Medicare but no Life or Annuity product." RevEngine evaluates every policyholder against your configured scenarios and surfaces matches as actionable opportunities in the dashboard and API.

Scorecards

A per-agent or per-team summary of portfolio health: total policies, retention rate, open opportunity count, carrier concentration, and penetration rate. Scorecards update automatically as the underlying portfolio data changes.

Carriers

The insurance companies whose policies appear in your portfolio. Each carrier is configured in RevEngine with its line mappings and data format details, allowing RevEngine to normalize coverage data across your entire book into a consistent structure.

Exceptions

A record that RevEngine could not enrich automatically — due to missing policyholder matching data, an unrecognized carrier, or a malformed import. Exceptions are surfaced in the dashboard and must be resolved before the affected records are included in portfolio analysis.

API overview

The RevEngine REST API gives you programmatic access to your policy portfolio: policyholder records, coverage gaps, opportunity signals, and agent scorecards. Full API reference documentation is coming soon — available to early access partners on request.

⚠️ The RevEngine API is currently in early access. Endpoints and field names are subject to change. We'll notify all API users before making breaking changes.

Authentication

All API requests are authenticated using an API key sent in the request header:

GET https://api.revengine.app/v1/policyholders
Authorization: Bearer re_live_xxxxxxxxxxxx
Content-Type: application/json

Core endpoints

EndpointMethodDescriptionStatus
/v1/policyholdersGETList all policyholders with coverage summaryAvailable
/v1/policyholders/:idGETGet full coverage history for a policyholderAvailable
/v1/opportunitiesGETList open coverage gaps and cross-sell signalsAvailable
/v1/scorecardsGETGet agent scorecards for current periodComing soon
/v1/carriersGETList configured carriers and line mappingsComing soon
/v1/webhooksPOSTRegister a webhook for opportunity or renewal eventsComing soon

MCP Access

RevEngine exposes a Model Context Protocol (MCP) server that gives any MCP-compatible AI agent — Claude, Cursor, or your own — live read access to your policy portfolio: policyholder records, coverage gaps, renewal timelines, and opportunity signals.

What you can do with the MCP

  • Ask natural language questions about your book of business
  • Pull coverage gap lists directly into Claude or Cursor
  • Automate outreach triggers by querying renewal risk scores
  • Build custom AI workflows on top of live portfolio data

Quick setup

Add the following to your Claude Desktop or Cursor MCP settings file, then restart the application:

// claude_desktop_config.json or cursor mcp.json
{
  "mcpServers": {
    "revengine": {
      "command": "npx",
      "args": ["-y", "@revengine/mcp"],
      "env": {
        "REVENGINE_API_KEY": "re_live_xxxxxxxxxxxx"
      }
    }
  }
}

Your API key is in Settings → API Keys inside your RevEngine dashboard. MCP access is available to all early access users at no additional cost.

🔒 The RevEngine MCP server provides read-only access to your portfolio data. Queries run against the RevEngine API using your key — no data is stored by or transmitted through the MCP server itself.
Quick Start →