Sales
Sales OS
Run a field and tele sales team from your store: scored leads, a deal pipeline through to quote and invoice, rep provisioning, a compliance-gated dialer, and geo-verified field visits.
Overview
Sales OS is BestWebby's outbound sales layer. The sales pipeline is on the Growth plan and above; the sales console, the field rep app and the dialer are on the Scale plan. Where the storefront sells to shoppers who come to you, Sales OS equips a team that goes out and sells: tele reps working a dialer queue, field reps visiting customers, and managers watching both.
It is three surfaces in the dashboard, all under the Customers group:
- Sales pipeline (
Customers → Sales pipeline) — leads, scoring, and the deal pipeline through to quote. - Sales console (
Customers → Sales console) — provision reps, define territories, run campaigns, and monitor the team. - Dialer (
Customers → Dialer) — the tele rep's working screen: screen-pop, dial, and disposition.
Roles and who sees what
Sales OS adds three team roles — sales manager, field sales rep, and tele sales rep. Data access is scoped by role on the server:
| Role | Sees |
|---|---|
| Field sales rep | Only their own leads, visits, calls, and deals |
| Tele sales rep | Only their own leads, calls, and deals |
| Sales manager | Their team: themselves plus every rep reporting to them |
| Owner / admin | All of the store's sales data |
Scoping is enforced by the server on every request, not by hiding buttons. A rep cannot fetch another rep's leads no matter what they put in a URL.
Provisioning reps
Owners and admins add reps from Sales console → Reps. Provisioning a rep sends a normal team invitation: the rep receives an invite email, accepts, and signs in with the standard passwordless flow. Each rep gets:
- a type (field or tele),
- an optional manager (which builds the team structure managers see),
- an optional revenue quota,
- an optional caller line for outbound calls.
Reps can also be added in bulk from a CSV. Territories — named regions defined as a polygon or a set of postal prefixes — are managed on the Territories tab and can be assigned to a rep.
Leads
Add leads one at a time from the pipeline, or import a CSV from Sales console. Every path into the lead list runs the same spine:
- Compliant sources only. A lead's source must be one of: manual entry, inbound, referral, imported list, public directory, or purchased list. There is deliberately no scraping option. A purchased or public list says where the lead came from; it is never consent to call, even when the list says the person opted in (see The National Do Not Call List below).
- Do-not-call scrub. Phone numbers are normalized and checked against your store's DNC list and the platform-wide list. Only a hash of the number is stored for matching. A DNC hit flags the lead so it can never be dialed; imports report how many rows were blocked.
- Transparent scoring. Each lead gets a 0–100 score from fixed rules: source quality (inbound and referrals score highest), data completeness, recent engagement, and fit against your ideal-customer keywords. The lead lands in a hot, warm, or cold band. Nothing about the score is inferred or opaque, and a DNC-flagged lead always scores zero.
- Routing. A rep's own leads belong to them. Managers and admins can assign an owner directly or let round-robin routing spread new leads across the least-loaded reps in scope.
The pipeline
The pipeline view is a board of opportunities in six stages: prospect, qualified, proposal, negotiation, won, lost. Each stage shows its deal count and total value.
The path from a name in a list to money in the bank:
- Convert a lead. This creates an account and an opportunity owned by the lead's rep. Conversion is idempotent, so repeating it never duplicates the deal.
- Quote from the opportunity. The quote is built by the same billing engine used everywhere else in BestWebby; totals are recomputed server-side, never taken from the client. The opportunity links the quote and advances to proposal.
- Accept and invoice. The buyer accepts the quote through the standard e-sign acceptance flow, which produces the invoice. Sales OS never rebuilds billing.
The dialer
The dialer is the tele rep's whole day on one screen: presence, a campaign picker, screen-pop, softphone, and disposition.
Campaigns are created by managers in the Sales console with a lead filter, a dialing mode, calling hours, and a caller-ID strategy. Reps see active campaigns only.
Compliance is checked twice, and it is not optional. When the dialer pops the next lead, it has already passed the DNC lists, the calling-hours window for the lead's own timezone, consent, and, for a lead without consent of its own, the National Do Not Call List; the screen tells the rep how many leads were skipped for compliance. The same gate runs again the moment the rep clicks Dial, and the do-not-call lists once more just before the lead's phone rings, because a lead can age out of calling hours between pop and click. The rep must also acknowledge the recording disclosure before a call can start — a recorded call without disclosure is refused, not warned about. A lead that is skipped says why, for example that your National Do Not Call List download is older than 31 days.
The National Do Not Call List
Canada's telemarketing rules forbid calling a number on the National Do Not Call List (DNCL) unless the call is exempt. BestWebby applies the two exemptions that fit a store:
- The person agreed to be called by you. Their own express consent, recorded by your store. An opt-in that came with a purchased or public list is that list's claim, not consent to you, unless one of your reps recorded it.
- An existing business relationship. They bought from you in the last 18 months (a paid order by a customer with the same phone number, or a won deal on the lead), have a contract with you that is in effect or ended in the last 18 months, or asked you about a product or service in the last 6 months. A relationship needs its date: one recorded without a date (as an imported
existing_relationshiprow is), or past its window, does not count. A lead created from a question in your support inbox is recorded as an inquiry with its date for you; a contract or purchase recorded through the consent API needs its kind and date.
Every other lead with a consent record, including every lead from a purchased or public list, is called only when your DNCL download covers the lead's area code, is no more than 31 days old, and does not list the number. Leads with no consent record at all are never called.
To upload your download, go to Sales console → Compliance → DNC list → National Do Not Call List. Choose the file you downloaded from the National DNCL (CSV, text or XML; unzip it first), the date you downloaded it, and the area codes it covers, or tick All area codes for a whole-of-Canada download. The National DNCL Operator does not publish the file's column layout, so every 10-digit North American number in the file is read; a plain list of one number per line works too. Large files are sent in parts, and only a one-way hash of each number is kept, never the number. A newer download for the same area codes replaces the older one, so a number taken off the National DNCL can be called again. Download a fresh copy at least every 31 days; once a download is older, leads without consent in its area codes wait until you upload a new one. You need your own National DNCL registration and subscription for the area codes you call.
Your own do-not-call list
Anyone can ask your store not to call them, whatever the reason for the call. Record it under Compliance → DNC list → Someone asked not to be called, or choose the Do not call outcome on a call. The number is never dialled again by your team, and it stays on your list for 3 years, as the rules require; it cannot be removed sooner. Numbers you paste into the list yourself can be removed at any time.
The screen-pop shows the lead's profile, their last activity, and a built-in talk track with objection prompts, so the rep opens the call knowing who they are speaking to.
After the call, the rep picks a disposition, and the system does the follow-through:
| Disposition | What happens |
|---|---|
| Interested | Logged to the lead's timeline |
| Callback | The lead is held until the time the rep set, then comes back to that rep first (see Callbacks below) |
| Not interested | The lead is marked unqualified |
| Do not call | The number joins your DNC list permanently and the lead is frozen |
| Voicemail / wrong number | Logged |
| Sale | The lead converts straight into an opportunity |
The rep then moves through wrap-up back to available, ready for the next lead.
Softphone. Calls run through a browser softphone. If calling has not been provisioned for your store yet, the console shows the softphone as offline, and everything else — the queue, screen-pop, and disposition flow — keeps working.
Callbacks
When someone asks to be called back later, set Call back at in the Disposition card to the date and time they gave you (in your own computer's time), then click Callback. The dialer will not save a callback without a time, with a time that has already passed, or with a time more than a year ahead; it tells you which.
From then on:
- The lead is held. It is out of every rep's queue, in every campaign, until the time you set, so nobody calls the person early.
- It comes back to you first. Once the time comes, the callback is yours for an hour. In preview mode it is first in your queue, ahead of your other leads (the earliest callback first), and the Lead card shows Callback booked for with the time; when more than one of your callbacks is due, the console says how many. In progressive and power mode the dialer waits for you to be available rather than connecting the lead to another rep.
- After that hour, anyone may take it. If you have not called by then, any rep dialing a campaign that includes the lead can call it, so the person is not left waiting.
- The compliance gate still applies. A due callback is checked against the do-not-call lists, consent and the calling hours in the lead's timezone, like every other lead. If the agreed time falls outside calling hours, the lead is skipped until it can be called.
Reminder email. About ten minutes before a callback is due, the rep who booked it is emailed the lead's name and company, the time (in the timezone of the rep's working hours, or UTC if none is set) and a link to the dialer. It is sent once, to the rep's sign-in email address. It is email only and on by default; each rep can switch it off under Settings → Notifications (My callbacks (sales reps)). A rep who is no longer active is not emailed.
Settling a callback. Any other disposition on the lead, by you or by another rep, clears the callback and its reminder. Booking a new callback on the same lead replaces the old one, and it then belongs to the rep who booked it.
Field visits
Field reps check in at the customer's location from their phone. Each check-in records GPS position and accuracy, an optional photo, and the visit outcome, and is compared against the customer's pin and the rep's territory. Signals that don't add up (poor GPS accuracy, a mismatch between network location and GPS, mock-location flags, an off-territory position) raise a risk score managers can review.
Where the customer's pin comes from. A lead with a Canadian or US postal code in its address is put on the map from that code within about 15 minutes of being added or imported. In a Canadian city that is usually within a block or so; a rural postal code or a US ZIP code covers a wider area, so the check-in only counts a visit as away from the customer when it is farther off than the postal code is precise. Change a lead's address and it is placed again. The postal codes are looked up on BestWebby's own servers, so the address is never sent to anyone else. A lead with no postal code, or one we do not know yet, has no pin and its check-ins are scored without a distance. Postal code locations: GeoNames, CC BY 4.0.
One honest caveat, stated in the product itself: browser geolocation is a deterrent and a risk signal, not proof. Treat a high-risk check-in as a reason to ask questions, not as a verdict. Check-ins queued offline sync safely — a visit is never duplicated by a flaky connection.
Monitoring and compliance health
Sales console → Monitoring is the live wallboard: who is available, on a call, in wrap-up, or on a break; calls made today; revenue won today. Sales console → Compliance rolls up a compliance score with the three things worth watching — DNC hits, calling-hours violations, and off-territory visits — plus the DNC list itself and calling-hours rules.
Calling hours are configured per region with a default fallback, and the dialer enforces them against each lead's timezone. The recording-disclosure requirement defaults to on. These guardrails exist to make TCPA, CRTC, CASL, PIPEDA, and GDPR obligations structural rather than a training issue; none of them can be switched off by a rep.
Questions? Get in touch or visit the FAQ at bestwebby.com/faq.