Dialer V2

Dialer V2 is Payability’s multi-tenant outbound engagement platform. It runs AI voice campaigns, email campaigns and multi-channel nurture sequences against a shared contact graph, analyses every conversation with an LLM, and pushes qualified outcomes into HubSpot.

This documentation component describes the whole system: the business rules it enforces, the architecture that enforces them, the data it stores, the HTTP surface it exposes, the events it consumes, the durable workflows it runs, and how to operate it.

What the platform does

Capability Summary

Voice campaigns

Import phone targets, dial them through Retell AI on a per-target state machine with call windows, concurrency limits, retry cool-offs and a deterministic "double tap". See Call campaigns and Target lifecycle.

Conversation intelligence

Every eligible call is scored by an LLM against the caller agent’s own prompt, producing a disposition verdict, an agent score and a list of issues. Analyses can be re-run in bulk. See Call analysis.

AI agent management

Caller and analysis agents are versioned in the database and synced to Retell AI, with regression test cases and AI-assisted prompt suggestions. See AI agents and test cases.

Email campaigns

Resend-backed sending with content variations, per-variation hourly rates, daily caps per account and per domain, RFC 8058 unsubscribe, and full webhook-driven delivery tracking. See Email campaigns and Email deliverability.

Nurture sequences

Templated multi-step journeys (email, SMS, call task, wait, BigQuery data gate, CRM task, CRM event) executed as a single durable Inngest run per enrolled contact. See Nurture sequences.

Contact graph

A per-workspace Contact record with phone and email registries that carry carrier data, risk levels, block flags and opt-out state. See Contacts, sellers and registries.

Human calling

Outcomes from reps dialing in Nooks are ingested, attributed to a SalesRep, analysed, and can close deals lost in HubSpot. See Nooks events.

Reporting

Daily call stats, funnel, Sankey disposition flow, per-agent performance, phone-number pickup rate, and email campaign reports. See Reporting and activity.

Tool server

A Model Context Protocol endpoint exposes call history, outbound calling, SMS and email as tools for external AI orchestrators. See MCP tool server.

How to read this component

Module Read it when you need to…

Architecture

understand how the pieces fit together, where logic is allowed to live, how tenancy is enforced, and how asynchronous work is made durable.

Business logic

understand what the product does and why — state machines, eligibility rules, caps, retries, suppression and scoring.

Data model

understand the Prisma schema: models, enums, relations, indexes and invariants.

API reference

call or change an HTTP endpoint.

Events

understand inbound webhooks, the dispatcher registries and the handlers they route to.

Workflows

understand the durable Inngest functions and their steps, retries and guards.

Integrations

work with Retell AI, Resend, HubSpot, Nooks, Supabase, BigQuery, SQS, Redis, the AI Gateway or Sentry.

Security

understand authentication, workspace authorization, machine-to-machine secrets and webhook verification.

Frontend

work on the dashboard: routes, React Query data layer, component conventions, theming.

Operations

set up a local environment, configure variables, deploy, or debug a live incident.

Orientation for new engineers

  1. Architecture overview then Layering rules — the three-layer rule (routes orchestrate, services decide, repositories touch the database) is the single most load-bearing convention in the codebase.

  2. Call campaigns and Target lifecycle — the dialer is the oldest and most intricate subsystem.

  3. Multi-tenancy — every query is scoped by subscriptionId; getting this wrong leaks data across workspaces.

  4. Local development — get it running.