Team Directory
Everyone on each client's team at a glance - managers, closers, and setters, by account. Use it when onboarding a new client so you know who's who from the start. Admins, directors, and managers.
Dashboard
Live view of everything submitted. Filter by date range, client, and role.
Daily dials - recent activity in this view
Call outcomes - mix of post-call checkout results, this view
Real buyers by source - SQL vs MQL on closing calls, by lead source, this view
Which sources send qualified opportunities (SQL), not just leads. From the Lead source + SQL/MQL fields on each closing Post-Call Checkout.
Speed to lead - time from a new lead coming in to the first call
Booked calls - appointments booked, split by ads vs organic
Closer leaderboard - by cash collected
Setter leaderboard - by cash set
Setters - activity + output, ranked
Closers - activity + output, ranked
By client (invoicing view)
Closed deals
Show-Up & Handoff Cadence
The standard way we confirm every booked call and hand a prospect from setter to closer - so they actually show up. Same process, every prospect, every time. Replace every [bracket] before you send; tap Copy on any message to grab it.
Why this matters
A full calendar means nothing if they don't show. Humanize every touch, and own the no-show - if a call slips, you don't complain about it, you go into the thread and do something about it.
The flow
At booking
Setter hands off
Setter sends the video + introduces the closer, then the closer jumps into the same thread.
Night before
Closer confirms
End of day, the closer confirms the call - and gives up the spot if the prospect goes quiet.
~9am CT, day of
Setter reminds
Morning of, the setter asks for the link, nudges the video, and bumps anyone who hasn't replied.
1 · At booking
Fire these two messages back-to-back the moment the call is set - don't wait for a reply. Then the closer steps in.
2 · End of day (night before)
The closer confirms the call. Use the direct version for flaky lists - giving up the spot creates urgency.
3 · Morning of (~9am CT)
The setter opens with a question that gets a reply - then branches on the answer.
Bump the opener with a simple ? - that's your job. We annoy a little because we care.
Who owns what
Setter
- Books the call
- Sends the video + handoff intro at booking
- Sends the 9am opener and the bump
- Copies the calls onto their own calendar so they're ready the moment one no-shows
Closer
- Jumps into the thread right after the handoff
- Owns the end-of-day confirmation
- Extreme ownership of no-shows - if a call doesn't show, go into the thread and act, right then
- Treats every booked call like money on the table - because it is
The rules
Keep it in GHL. Every message stays in the GHL thread so the team can see it and nothing gets lost. No moving prospects to WhatsApp or iMessage.
Send the first one yourself. Initiate manually so you keep a pulse on your prospects; only the follow-up if/thens get automated.
Match the tone to the offer. Casual and warm for B2C; buttoned-up and punctual for accredited or high-level B2B. Same steps, different voice.
After 9pm is fine. If a message needs to go out at night, send it. Don't let the clock be the reason a call doesn't show.
Playbook
TSA's SOPs and standard plays. Pick a page from the left.
Daily Report
One compiled report per offer: yesterday's results (from the team's EODs) and today's forecast (from this morning's Start-of-Day projections), setters and closers together. This is the same report that auto-posts to each client's Slack every morning - set the channel under Integrations → Daily report.
Invoicing
Generate each client's founder invoice (they pay TSA weekly), auto-built from closed deals + collected payments. Billing week is Monday to Sunday; invoices go out Wednesday for the last completed week (review Wed, questions Thu, paid Fri). Super Admin only. Set each client's billing rate, invoice stats, and TSA's wire/ACH details under Billing settings.
Every invoice, nothing hidden by a date range. Defaults to All - filter by status, search by client or invoice #, and scope to one company with the picker up top. Outstanding = sent but not yet paid; Age counts days since it was sent. Click any row to open that invoice (it loads its own period - no date-picker guessing).
Accounts receivable / projected incoming payments - every pending wire & installment across all offers, so you can walk into the month knowing what's projected to come in and what TSA is projected to bill. Payments count toward the window by their expected date.
Commissions owed to setters and closers for a pay cycle. Reps are paid twice a month, in arrears: earnings 1st–15th are paid the 30th (same month), and earnings 16th–end of month are paid the 15th of the next month. Commission = each rep's cash collected in the cycle (deals closed in-cycle + wires/payments that cleared in-cycle) × their rate: the offer's rep-comp rate if set, otherwise the default closer/setter rate from Settings. Pick a rep's name for a printable statement.
Send a client a $1.00 verification wire request so they can confirm the transfer path before their first weekly payout. Uses TSA's wire details from Billing settings. Print/save the PDF or draft the email.
Need to bill a different amount than cash collected? Generate the invoice, then use the edit / override link on the invoice's service line.
Account settings
Client invoice rates come from Contracts; rep commission rates from Rep Commission Breakdown. This box sets, per client, the Front-end only flag, an optional billing fallback % (used only if the client has no contract rate), and an optional monthly retainer (a fixed Retention Payment billed on the same day each month, on top of rev-share). Super Admin only.
TSA payment details (wire / ACH)
Shown on every founder invoice so clients know where to send the wire/ACH. Stored once for your workspace.
Invoice terms & late fee
Shown on every founder invoice. Billing week is Mon-Sun; the invoice is dated the following Wednesday (send day) and is due the Friday. Net days = 2 sets the due date from the Wednesday invoice date (Wed + 2 = Fri); the grace window is how long after the due date before a late fee applies.
Invoice stats to show
Which performance stats appear on the founder invoice (the "Performance stats" card). Toggle any off you don't want the client to see.
My Deals & Payments
Your closed deals. When a wire or a later payment lands, open a deal and add the payment - log a wire as Pending until it clears, then hit Confirm. It only counts toward your cash and commission once confirmed.
Log a Closed Deal
Submit this the moment a deal closes. It feeds the invoicing view and credits the setter who set it.
Post-Call Checkout
Fill this in after every call - the outcome of each one, win or lose. Closers: pick Won (closed) and the deal fields appear so it also logs as a closed deal. Setters: log what happened on every connected call. Drop your Fathom link so your manager can review the call.
End of Day Checkout
Fill this in once at the end of each day for the account you worked. Pick your role first - the form only shows the fields that apply to you. Leave anything that's zero blank or as 0.
Start of Day Projections
Fill this in at the start of each day for the account you're working. Pick your role first - the form only shows the fields that apply to you.
Meeting Agenda
Fill your section for each client before the meeting so everyone reads it first, then we discuss. Log what you commit to in Promises so we track who does what by when. Your name is signed to everything you add.
Wins & account updates
For each account you manage, write your update and any win. Leave an account blank if there is nothing to report. The single Save all updates button below saves these and the whole-team note together.
Whole team updates - not tied to a specific account
Agenda
Promises & commitments - who owes what by when
Promises & Commitments
Everything anyone committed to, in one place. Log a commitment, check it off when done (completed ones stay visible for the record), and review a whole month at a glance for accountability.
Monday Meeting Prep Sheet
The running prep sheet for the weekly TakeOver meeting. Last week's numbers fill in automatically; the team and the founder both add topics, announcements, and questions through the week (Mon–Sun). The founder can submit a question and the team replies right on the item (a back-and-forth thread); check an item off once it's covered or answered. Founders see their own account.
Time Off
Request a day off and track its status. Your assigned manager approves it; an approved day off shows as a neutral marker and does not count as a missed report.
Request a day off
Day-off requests - approve or deny for the reps you manage
Manager End of Day
Fill the end-of-day numbers for every offer you manage in one place, then submit once. Each offer is its own section below. Leave a section blank if there is nothing to report for it. Managers get held accountable the same way reps do; the raw numbers also auto-roll onto the Meeting agenda.
Manager EODs
Every manager's submitted end-of-day report - the numbers they reported for each offer plus their constraint note. Shows the latest per manager, account and day, and follows the company selector at the top of the page.
Manager EOD review - what each manager reported + their constraint note (latest per manager, account & day)
Payouts
What TSA owes setters & closers on the upcoming payday (defaults to the next one). Reps are paid twice a month, in arrears: earnings 1st-15th pay on the last day of the month; earnings 16th-EOM pay the 15th of next month. Mark each rep paid as you send it. Super Admin only.
Who we owe - summary of everyone still unpaid this payday, most owed first. Mark paid on the role lines below.
Manual / one-time payouts - ad-hoc pay the engine doesn't compute (overrides, good-faith, webinar/faceless, bonuses). These roll into "Who we owe".
Closers
Setters
Managers - override on their teams' cash
Webinar hosts - webinar % on webinar-lead deals
Ledger / P&L
The whole picture: revenue earned, minus team comp, minus operating expenses (software, tools, contractors) = net profit. Log expenses below. Also shows accounts receivable (owed to us) and accounts payable (we owe). Admin and director.
Company P&L by month - gross client cash collected, TSA revenue, and net profit across every account, month over month
Other income - revenue that feeds TSA outside client billing (program / Stripe / Skool / affiliate payouts)
Operating expenses - software, tools, contractors, ads, anything that comes out of the business
Accounts receivable - owed to TSA, most owed first
Full reconciliation →Accounts payable - owed by TSA on the upcoming payday
Go to Payouts →Contracts
Active client contracts, their revenue-share terms, and forecasted TSA revenue - the view for the lender. Forecast = your expected monthly client collections x the rev-share %. Actual = live cash collected from the app (front-end rate applied). Contracts are created in Client Overview (onboarding); use Edit here to fine-tune flip %, forecast, notes, or the app-account mapping. Admin and director only.
Add contract
Contracts & rev-share - forecast vs live actual
Forecasted TSA revenue by month - recurring forecast + scheduled outstanding payments (rev-share on money already contracted)
Cash trends - gross collected, net after comp, and outstanding liability, month over month + by quarter
Client payment health - how fast each client pays (invoice sent → paid)
Score blends average days-to-pay, on-time rate, and any open overdue invoices. Lower days = healthier. Watch a client trending late as a liability signal.
Scorecards
Per-rep performance pulled from EOD data, plus ramp milestones for new hires. Follows the company selector at the top. Ramp shows for anyone in their first 45 days.
Call Outcomes
Your setters’ and closers’ call results – outcomes, disqualification reasons, lead quality, and lead source.
CRM Live
A live snapshot from the selected client's GHL: today's new leads, calls on the calendar, the full pipeline, and any leads parked in a stage whose cadence workflow isn't live. Pick a company in the top selector. Refreshes every 15 minutes (or hit Refresh).
AI Usage & Cost
OpenAI spend for Call Review + AI Role Play, per client — to set the paid add-on price.
Discrepancies
Self-reported EOD numbers vs the real-time GHL dial feed, per rep per day. Rows where a rep's EOD claims more than the live tracker recorded are flagged - a quick honesty check. Only days with live dial data are shown (clients whose Call-Details webhook is live). A rep whose GHL name doesn't match their HQ name may show as "No EOD" - check the name mapping. Super Admin.
Call Timing
When calls are actually being made, in Central time - so you can confirm reps dial during business hours and not at odd times (e.g. midnight). Off-hours = before 6:00 AM or after 9:00 PM CT. Same live dial feed as Discrepancies. Super Admin, managers + founders (founders see only their own client).
Calls by hour of day · Central
Sales by Day of Week
Which day of the week produces the most closes + cash, so you can see your best closing days and push / staff accordingly. Closed deals in the range, bucketed by weekday. Scoped by the company picker + date range.
My Team Today
Your team at a glance - who's set up today, live dialing + utilization right now, and yesterday's honesty flags. Scoped to the accounts you manage (or the company picked up top). One screen, so you don't have to hop between tabs.
Manager Scorecard
How each manager’s team is doing on their daily SOD/EOD reports, and whether the managers are keeping up their own admin (Manager EOD). Ranked by team completion. Click a manager to see exactly who’s behind.
AI Role Play
Practice live voice sales calls against AI buyer personas, then get graded + coached. Pick a persona, click to speak, and the buyer talks back out loud. End the call to see your score and a coaching breakdown. Needs mic access.
Call Review
AI-graded reviews of real sales calls from the dialer. Only answered, recorded calls 2 minutes or longer are shown (the conversations worth grading). Click Grade to transcribe + score a call on the 5-category rubric with coaching. Works for WAVV-dialer clients (e.g. eCom) and native-GHL-dialer clients once their Call-Details webhook maps a recording field (GHL calls only show from when that's added forward). Pick the client in the company selector up top. Managers + admins.
New-Account Kickoff SOP
When we take over an account that already has its own reps, the client's founder must formally hand authority to the TSA manager - on a call, in front of the team. Without that endorsement, incumbent reps ignore an "outside" manager. This is the standard play.
Why this matters
Existing reps did not hire us and, in their heads, do not report to us yet. When a TSA manager starts asking for SODs/EODs or booking meetings cold, incumbents deprioritize or ignore it (we lost days to Hamza/Hayyan's team ignoring Keithen and Ra-eez). A 15-minute founder-led kickoff fixes it: the person who signs their checks visibly transfers day-to-day authority to us.
When to run it
During onboarding, at the Kickoff stage - before the TSA manager runs their first meeting or asks for a single report. Never let a manager's first contact with the team be a task request; the founder's intro comes first.
Skip only when the account has no incumbent reps (a fresh build we staff ourselves) - there is nobody to win over.
Who is in the room
- Client founder / owner - they lead it (non-negotiable; a TSA person introducing themselves never carries the same weight)
- TSA manager(s) assigned to the account
- Every incumbent rep (setters + closers) on the account
- Optional: Steve or Robb on the first one for a big account
Kickoff agenda (15-20 min)
- Founder endorsement (script above) - transfers authority
- Manager intro - who they are, track record, "I am here to make you more money, not add busywork"
- What changes day one - SOD before the day starts, EOD checkout, where to log calls (Sales HQ), the meeting cadence
- What is in it for them - faster leads, better scripts, commission clarity, we handle ops so they just sell
- The non-negotiables - reports are required, same as everyone; missed reports get flagged
- Q&A - answer live; capture anything open in the FAQ
After the call
- Manager DMs each rep individually the same day - warm and specific, "great to meet you, here is your login."
- Add every rep to Sales HQ + the account's Slack channels before the call ends if you can.
- First SOD/EOD expected the next working day; the manager personally confirms each rep's first submission.
- If a rep no-shows the kickoff or ignores the manager afterward, escalate to the founder once - the endorsement is what gives that teeth.
Webinar Cadence Playbook
How we turn webinar registrants into closed deals with one repeatable cadence. The one rule: never book a brand-new opt-in straight to a sales call. Everyone goes to the webinar first, or they show up cold and say "I never signed up for a call."
The 3-phase cadence
Everything is measured from the day a lead registers for a webinar.
- Phase 1 - days 1 to 6: get them to attend the webinar. Setter team A calls every new registrant, confirms they will attend, sends the link. No qualifying, no pitch, just get them to show up.
- Phase 2 - days 7 to 14: get them to the Q&A. Setters chase everyone who attended but did not book; closers chase everyone who booked but did not close.
- Phase 3 - day 15 and up: get them on a sales call. Setter team B books aged leads and sends a pre-call sequence in between: VSL (condensed webinar), testimonials, and authority by association (founder on stage).
Weekly rhythm
- Webinar: every Wednesday, 7:00 PM CT (same link + time each week).
- Q&A: the following Thursday, for the prior week's attendees who did not close. Hosted by the founder.
- Both run every week, so there is always a webinar this week and a Q&A for last week's group.
Tagging (this is what makes the lists work)
- On registration: tag
webinar-registrant+ a week tagwebinar YYYY-MM-DD(the webinar date they registered for). - On attendance: tag
attended YYYY-MM-DD(needs Zoom Webinar to capture the attendee list; tag manually from the export until then). - On booking: move to the Booked pipeline stage. On close: tag
won+ Won stage.
The engine: cadence-timer workflow + 3 smart lists (GHL)
Date-range filters in GHL are not truly dynamic. Instead run one workflow that flips a single phase tag as the lead ages, and let the lists filter on that tag.
Workflow "Webinar - Cadence Phase Timer": on webinar-registrant add phase-webinar → wait 6 days → swap to phase-qa → wait 8 days (14 total) → swap to phase-salescall. If won is added, strip all phase-* tags and end.
- List 1 - Phase 1 (days 1-6): tag is
phase-webinarAND notattendedAND notwon. - List 2 - Phase 2 (days 7-14): tag is
phase-qaAND notwon(setters work attended-not-booked; closers work booked-not-closed from the Booked stage). - List 3 - Phase 3 (day 15+): tag is
phase-salescallAND notwon.
Drop each saved list link + the webinar link/date/time in the leadership Slack channel so setters open the right list without hunting.
Reps still get paid
If a lead goes to the webinar, then books, then closes, the setter and closer are paid normally. Sending a lead to the webinar first does not cost anyone their commission.
FAQ
Ask a question about an account. The client (or an admin) answers it, and it is saved to that account's FAQ - reps assigned to the account see it, so the same question never has to be asked twice. Admins see every account's here. Becomes the onboarding quiz source over time.
Ask a question
Open questions - awaiting an answer
Master FAQ - answered
End of Webinar Report
Fill this in after each webinar. Enter the raw counts and the rates (show rate, close rate, earnings per registrant) are calculated for you. A few numbers - emails delivered and live attendees - come from Zoom / WebinarJam / your ESP, so plug those in manually. Only count sales from calls booked off this webinar.
Webinars - calculated rates
Webinar log - for flat-per-webinar pay
Log each webinar you run. In an account on flat webinar pay, a logged webinar pays its host when attendees meet that account's minimum (set in the client's onboarding); otherwise it is just a record. Host auto-fills from the account's webinar host. Super Admin only.
Call Log
Every post-call checkout, newest first, from closers and setters. Review any call's outcome and open the recording. Reps see their own account; managers and admins see everything.
Onboarding Audit
Per-client onboarding health check: team headcount, the account manager, every Slack integration (event feeds + EOD reports), and whether the CRM key is connected. Anything red still needs setup before the client is fully live.
Loading...
Admin Report
Leadership-only. See who submitted their reports (Setter / Closer / Manager EOD) AND their performance over any date range. Pick a From and To date (or a quick range). Tables cover the whole range; a day-by-day grid shows for ranges of 16 days or fewer.
Calendar
Every booked meeting across all your connected GHL clients, in one place - no logging into each account. Shows who the meeting is with and which rep's calendar it's on. Pulled live from GHL.
Speed to Lead
How fast a new lead gets its first outbound call, pulled live from GHL. Pick a client and the window the leads came in, then Load. Speed to lead is measured from when the lead was created in GHL to the first outbound call on that contact.
By rep - avg time to first call
Leads
Dialer (WAVV)
Live call activity pulled from a client's WAVV dialer - dials, connects, connect rate, and talk time, by day and by rep. Pick a client that dials through WAVV (set up under Admin › Integrations › WAVV Dialer). Follows the top company selector. Managers and admins.
Daily activity - dials & connects per day
By rep - dials, connects, connect rate, talk time over the range
Dial accuracy - self-reported EOD dials vs actual WAVV dials, per setter
Rep Requests
Request the setters and closers you need. Founders and setter-managers submit; recruiters and admins see the queue and mark each one filled when the hire is onboarded.
New request
Company Info
This is the profile candidates see and that your outreach emails + talent matching pull from. Fill it out for your company. It is required before Find Talent so cold candidates can research who they would be working for.
Recruiting message templates
The ready-made shortlist / interview / offer messages your recruiters send. They auto-fill {{name}}, {{recruiter}}, {{company}} and {{position}}, and auto-send at the matching pipeline stage. Insert and tweak any of them from a candidate's Messages composer.
Job Posts
The job posts for your company. Create one job post per role you hire for - saving publishes it automatically, and deleting takes it off the job board. Company details (logo, pitch, what you sell) live on Company Info.
Job Posts
Create one job post per role you hire for (name it, e.g. "Setter" / "High-ticket Closer") with its own pay, OTE and requirements. Saving a job post publishes it live automatically and gives you a shareable apply link - that's the link you send when someone responds. Two job posts = two links. Delete takes a job post off the job board.
Recruiting
Search the candidate pool, let AI rank best fit, then tag a group for a GHL SMS/email blast. Tags write to the recruiting database; the GHL send is wired off those tags.
Drag a candidate between stages to update their recruitment status. The board respects the filters above, so narrow it (role, stars, keyword) before dragging.
After a group interview, decide each candidate: Send offer, Shortlist (bench, for a future spot), or Not qualified. Anyone you leave undecided can be swept to Not qualified with the button below.
Live candidate pool - only available candidates (anyone already in an interview or hired drops off). Search + filter, review the profile + video, then tick Select on the cards you want and use the bar that appears to send them to reviewers or to a group interview in bulk - no need to open each one.
Talent Pipeline
Your hiring pipeline. People who apply through an offer link land in Applied on the left; move each one through the stages with Move to…: Applied → In interview → Shortlisted → Offer sent → Hired, or Fired / let go (releases them back to the pool so they can be re-placed). Click a card to view the profile. Every move syncs live and updates the pool.
Messages
Candidates under review
Candidates sent to a decision maker to rate 1-5 stars with notes - the review queue. Requests show up here for reviewers to action, and the reviewer stats track who reviews fastest.
Hire Stats
Hiring performance & ROI across the funnel - interview conversion, hires vs fires, cost per hire, and return on investment. In demo mode these are illustrative; live mode shows real pipeline counts and fills the dollar figures once placements + sales volume are tracked.
Rep Onboarding
Data + Export
Everything submitted lives here. Export for invoicing or backup.
One Excel workbook with every record HQ holds for a client - closed deals, the Hot List (projected deals), post-call checkouts, start/end of day, webinars, invoice lines, and the team roster + emails. For handing a client their data when they off-board. (Only the raw GHL lead/contact database lives outside HQ.)
Database maintenance - reduce storage + egress
Records are append-only, so every edit and daily report leaves old rows behind. Compact removes superseded versions (keeps the latest of each) and old logs past their window. Safe - the app is latest-wins, so nothing visible changes. Super Admin only.
Call reports - view submitted End-of-Day reports right here, no export needed
Daily edit - fix a rep's numbers by day if they entered them wrong
Pick the rep, their account, and the month. Edit any cell and hit Save changes - it re-submits that day so the corrected numbers replace the wrong ones everywhere.
All records
Users
Create a login for each rep, pick their role, and assign the team(s) / account(s) they work. Setters see only the setter end-of-day form; closers see the closed-deal + closer forms; both see a Rep Breakdown scoped to their assigned teams. Admins see everything.
▾Login activity - who has signed in, their last active + what they are doing
▾Rep onboarding - new setters/closers being set up. Work down each step so no one stalls.
▾Add a user
Create a new login here. Fill the basics - name, role, manager, hire date and account. When you hit Save user the full editor opens automatically so you can finish setup in the same window as Edit: stack extra roles, set scheduled days off, and (for managers) assign responsibilities. Nothing gets missed.
▾Team members
Assign teams
Tick every account this person works. Saving updates only their team assignment (no password needed).
Responsibilities
Toggle the function(s) this person runs for each account. One person can run several, and across several accounts - e.g. someone who runs Webinar on some accounts and also manages Setters or Closers on others. What you turn on here unlocks the matching tabs for them (Webinar unlocks the Webinar tab; Setters/Closers unlock the manager tabs). One person per function per account: turning one on that another manager holds reassigns it (their name shows in grey).
Hire and termination dates are set separately, with the Hire / dates button on the person's row above.
Rep details
Hire and termination dates keep pre-employment and post-termination days from counting as missed reports (and feed churn per offer on the Admin Report). The assigned manager is who approves this rep's days off.
Client Overview
Every client at a glance: status, manager, existing monthly, cash collected this month, and the next step. + Add client is the single onboarding step - it also sets up the contract (rev share) and the retainer, so a new account shows on Contracts and invoices correctly right away.
Clients
Add or update a client
Onboarding Checklist
Track each new client through the launch steps. Advance a step and everyone sees where each client stands and where it is stuck.
All clients - progress
Due & overdue - every open step, most urgent first (the daily accountability list)
Client checklist
Edit the onboarding steps (global default + per-account) under Admin > Settings > Onboarding & offboarding steps.
Hall of Fame
All-time records and elite awards. Break one and your name goes up here.
Master dashboard
Every team, every company, in one view. Internal only (admins + managers). Always aggregated across all companies - it ignores the company selector so no one can reverse-engineer another team's pay. Toggle metrics off for a clean screenshot.
The Sales Agency
Hot List
Deals close to closing - the whole team can see the projected pipeline at a glance. Reps add their in-progress deals so leadership can back up the forecast. This is projections, separate from confirmed cash in My Deals.
SOD / EOD Reports
Read the actual Start-of-Day and End-of-Day reports your team submitted, laid out to skim. Pick a day, flip between EOD and SOD, and filter by client.
Rep Breakdown
Every setter and closer, split out. Click a rep's name to see their day-by-day submissions. Numbers reconcile with the Dashboard leaderboard.
Start-of-day projections - today's plan + who submitted
EOD submissions - who checked out that day
Setters
Closers
Rep detail
GHL Mapping
Map what reps log in Sales HQ to each client's actual GHL pipeline stages. Because every client names their stages differently, we pull the live pipeline from their GHL and you match each post-call outcome to a stage with a dropdown. Once mapped, a submitted report can move the lead to the right stage automatically. Admins only.
Post-Call Fields
Add client-specific questions to the Post-Call Checkout that write straight into that client's GHL custom fields. Pick a client, pull their fields, choose which become questions and who answers them. When a setter or closer submits the post-call for that client, their answers update the lead in GHL. This is per client - only clients you set up here get extra questions. Admins only.
Support Tickets
Bugs, ideas, and questions submitted by the team. Move each ticket through New inquiry → In progress → Completed - the submitter is notified on every status change and sees your replies on their Help & Tickets page.
Help & Tickets
Report a bug, ask a question, or share an idea. Track every ticket here and message the team back and forth until it is resolved.
Tasks
Your to-dos and recurring reminders - check them off as you go, add notes, and @mention a teammate to loop them in. Admins and managers can create tasks and assign them to roles (all Sales Managers, all Closers, etc.) or to specific people.
Integrations
Connect payment processors and daily reports to a client's Slack or Discord channels. Each webhook posts to its own channel with its own message format, and every hit is logged so we can map the fields.
▾All webhooks - every source across ALL clients (admin overview, not just the one selected above)
▾CRM push (GHL) - send closed deals + post-call dispositions back to the client's GHL (paid/organic attribution)
▾WAVV Dialer - add per client if they dial through WAVV (GHL-integrated); paste their API key
▾Slack bot & notifications - connect one bot, then choose where each alert posts (closed deals, post-call, SOD, EOD, daily report, leaderboard, invoicing)
Where each alert posts - pick a channel to turn a feed on, Off to stop it
EOD reports - setter, closer, manager end-of-day
▾Payment webhooks - one inbound URL per payment source (Whop, Elective, Fanbasis)
One per source (Whop, Elective, Fanbasis, a specific offer...). Name it, paste the Slack channel it should post to, copy the inbound URL into the processor, and edit the message format. Fields you can use: {{amount}} {{customer}} {{product}} {{currency}} {{event}} {{raw.any.path}}.
Interviews
Every scheduled interview in one place. Toggle between group interviews and one-on-one (second) interviews. A red dot on this tab in the left rail means an interview is today; a gold count means one is tomorrow.
Commission rates
Change what each sales rep earns. Default rates apply to everyone; set a per-rep % to override one person (e.g. Carolina 10% closer), a manager override % for a sales manager, or a per-offer rate for one account. Blank = fall back to the default. Super Admin only.
Default rates - the baseline everyone earns unless overridden below
Per-rep rates - override one person's %; view by team and fill a whole team at once; blank uses the default
Manager overrides - what each sales manager earns on their teams' cash
Per-offer comp & net margin - setter / closer / manager / webinar % per account, and the net spread we keep
Incentives & bonuses - "hit X → earn $Y" spiffs, team-wide or per rep
Applies to picks who earns it (Everyone, a team, or one rep). Metric is what's measured, Target is the number they must reach in the Period, and Bonus is what they get for hitting it. Leave Note for any extra rule (e.g. "closes only"). Super Admin only.
Settings
Manage clients, reps, products, goals, commission rates, the shared-data endpoint, and the master admin password.
Onboarding & offboarding steps
Pick the account from the company selector up top to edit that account's steps, or choose All companies to edit the global default that every account inherits. Super Admin only.
Clients
Clients are managed on the Client Overview tab now (status, manager, offers, cash). Add or edit them there - this list is retired to avoid two places to keep in sync.
Closers & setters
Reps come from the Users tab. Create a login there with their role and team, and they'll appear automatically in the Log Closed Deal and End of Day dropdowns - no separate list to maintain here.
Default offers
The master offer list. New clients start with these (you trim per client on Client Overview), and it's the fallback when a client has none set.
Targets + payout rates
Texting (Twilio) - main account - used when a Super Admin sends candidate texts; per-company senders come later (T-925)
The Auth Token is a secret and does NOT go here - set it in Vercel as the env var TWILIO_AUTH_TOKEN. Only the non-secret identifiers below are stored.
--api/twilio.js endpoint is deployed.
Legacy backend (disconnected)
The old Google Sheet / Apps Script backend is disconnected. Logins and all data now run on the Vercel + Supabase backend only. This field is inactive - leave it blank; anything entered here is ignored.
Master admin password
Break-glass owner login. Sign in with username tsaboss and this password to manage everything, even before the backend is set up. Change it from the default.
Slack bot - workspace linking
Link each client's Slack workspace to the account the /tsa bot may share there. A workspace only ever returns data for the client you link it to - this is the wall that keeps clients from seeing each other.