The CRM holds the commercial relationship: who your prospects are, where they are in the pipeline, what you have sent them and every interaction they have had with you.
It sits on the same customer records as commerce and support, so a lead who becomes a buyer does not get a second identity — the order history and the sales history are the same timeline.
What it covers
Leads
A lead moves through capture, qualification and conversion. Along the way it can be assigned to an owner, have follow-ups scheduled, accumulate activities and be scored against your criteria.
Pipelines define the stages a lead moves through. Stages are yours to define and reorder, and unassigned leads in a pipeline can be routed automatically rather than sitting unowned.
Enrichment fills in what capture missed — company details, contact information, validated email addresses. It runs asynchronously, so you start it and check back rather than blocking on it.
Where leads come from
| Source | How |
|---|---|
| Web forms | A form on your site submits directly into the CRM |
| LeadSearch | Browser extension capturing from LinkedIn and Google Maps |
| Event badge scans | Scanning an attendee at EventOxygen captures a lead |
| Spreadsheet import | Import → From CSV on the pipeline or Lead Manager — a HubSpot contacts or leads export works as it comes |
| Form automation | A form submission can create a lead on a pipeline automatically (see Forms) |
| Contact import | Bulk import from an existing list |
| Advertising | Lead forms from connected ad platforms |
The jobs, step by step
Capture a lead by hand. Leads → Add Lead → name, email, phone, company, deal value, expected close date and owner. Set both of the last two: the forecast is built from them, and a lead without them lands under No close date / Unassigned. Deal values keep their cents ($12,500.50).
Import from a spreadsheet. Import → From CSV opens a side panel. Choose the file (the first row is the header) and the pipeline the leads go into — they start at its first stage. Columns the CRM recognises are shown in green: first and last name, email, phone, company, job title, lead status, lifecycle stage, amount, city, country, website and industry, under their usual names and HubSpot's export names (Phone Number, Company Name, Contact owner…). Other columns are kept on the lead as extra details. An email that is already a lead — or appears twice in the file — is skipped, not duplicated, and the summary lists every skipped or failed row by its row number. Up to 5,000 rows at a time.
Qualify or disqualify. Open the lead → Qualify or Disqualify. Both write an activity, so the timeline explains itself later without anyone typing a note.
Convert. Convert turns the lead into a customer, optionally with an order attached. The customer keeps the lead's history rather than starting a fresh record.
Move it through the pipeline. Drag the card to another column on the board, or change the stage on the lead. New pipelines let a deal move to any stage, as HubSpot does; turn stage-skipping off in the pipeline's settings if your process needs every step. The board on the web and the list in Appmint Mobile are the same record — there is no separate mobile copy to reconcile. When a stage refuses the move — it needs something the lead does not have yet — the card goes back to where it was and the board says why above the columns; fix the lead and drag it again.
Close a deal — won or lost. Drag it onto the Won or Lost column from wherever it is; closing is an outcome, not the next step, so it is allowed from any stage even when the pipeline forbids skipping. A deal dropped on Lost asks Why was this deal lost? — pick a reason (Price, Went with a competitor, No budget, Bad timing, No response, Not a fit, Other) and add a note if you like; the reason is kept on the deal. Closing stamps the deal's status and close date; dragging it back to an open stage reopens it. A deal is a lead at a won stage — the Deals won figures in the forecast are those leads.
Read the numbers. The board header shows open pipeline (the value of deals not yet won or lost) and the win rate (won ÷ everything closed). Forecast weights each open deal by its stage's probability and groups it by expected close month and by owner. Analytics shows how leads split across statuses and sources, and Won revenue for the period.
Route what nobody owns. Set routing on the pipeline so unassigned leads are given an owner automatically rather than waiting for someone to notice them.
Enrich a thin record. Start enrichment and come back to it. It runs asynchronously; the lead is not locked while it works.
Score. Score one lead, or a batch, against your criteria to decide who gets called first.
A duplicate lead splits the history across two records and makes both look cold. Search by name, email, phone or company first — including in the mobile app, where the same rule applies. Search matches what you type literally, so characters like ( or .* are just characters.
Forms
CRM › Forms is where web forms are built and their submissions worked. Dashboard shows submissions over a period, per form; Forms lists them; Submissions lists every submission from every form in one place; Workflows holds the workflows a form can start for each submission.
Build one. New Form opens the editor: Setup (name, where submissions go, who is told), Fields (drag fields onto the form; split a long form into pages), Access (who may see and submit it), Messages (what the person sees after submitting), SEO, and Submissions for that form. A phone field takes the country code and the number separately and stores them as one number.
Required means required. A submission missing a required field is refused with a message naming the fields — Please fill in Full name, Phone — on every page of a multi-page form, not only the first. Nothing half-filled lands in your list.
Work the submissions. Each submission shows its answers under the field labels you gave them, not internal names. Set its status as you follow it up. A submission from someone not signed in shows as Anonymous.
Publish it. On your site, a form is served by the page your default site's Forms feature points at (Site Features › Forms). If that page changes, form links follow it. A visitor opening a form receives only what they need to fill it in — its name, title, questions and thank-you message — never the notification address or who created it.
Turn submissions into leads. Add an automation: trigger a form_submission is created, a condition on the form (for example data.formId equals your Request a Demo form), and the Create lead action. Map the lead's fields to the submission's answers with {{data.values.<field>}} — fullName is split into first and last name — and set the pipeline, stage and owner. The lead is created exactly as Add Lead creates it: it gets a lead number, a score and its stage, and appears on the board straight away.
AI employees
An AI employee is a member of staff that is an AI: its own sign-in and groups, a work queue, and approvals it asks a person for. Its brain runs on a provider outside the platform; CRM › AI Employees is where you hire one, give it access, hand it over to the system that runs it, check it is really running, give it work and answer what it asks. Anything assigned to it — a task, a ticket, a lead — lands in its queue.
See AI employees for the full guide.
Campaigns and audiences
Campaigns run across email, SMS and social, with performance measured per campaign and aggregated across them.
Audience segments define who a campaign reaches. Before spending anything you can estimate reach, inspect a segment's composition, and check how far two segments overlap — which is the question that decides whether you are about to mail the same people twice.
Advertising
Paid campaigns are managed in the same place as organic ones — create, launch, pause, resume, schedule and duplicate, across connected ad platforms, with cross-platform campaigns and reusable templates.
Automation rules act on performance without someone watching dashboards, and analytics compare platforms side by side.
AI campaign generation
Campaigns can be generated rather than written by hand. The flow is deliberately generate → preview → approve: nothing is spent on output nobody reviewed. You can regenerate for a specific platform, request copy variations, see performance predictions and generate imagery.
Reservations and appointments
Publish what can be booked, generate available slots, and take bookings. Service points are the resources being booked — tables, chairs, rooms, bays — and they are the same records the point of sale assigns a tab to, so a seated party and its open bill are one thing.
Customers can look up and cancel their own bookings by email without an account. Reminders go out automatically, and video meetings can be attached to a booking.
Support tickets
Ticketing lives in the CRM because a support conversation is part of the customer relationship. CRM › Tickets lists every ticket with its priority, status, where it stands in its workflow, when it is due and who has it; filter by status or priority, or search by number, title or reporter.
Every ticket has a subject and a number. A ticket without a subject is refused. Each one gets an 8-character ticket number (for example #AS98AU22) — the number a customer quotes back and the one an emailed reply is matched on.
Every ticket runs on the support workflow. Whether it was raised by a customer, by email or from New Ticket by staff, it starts on the ticket workflow, and the workflow's stage deadlines are the SLA shown in the Due column. Changing the status moves the workflow with it; reopening a resolved ticket (setting it back to Open) sends it back to the first stage and starts the clock again.
Replies and notes. A reply goes to the customer on the ticket's channel; an internal note never leaves the team. Status changes are recorded on the ticket as notes, so its history explains itself.
Customers see only their own. A signed-in customer can read and follow the tickets they reported and no one else's — asking for another customer's ticket by its id answers not found.
Customer activity
Every meaningful interaction is recorded on a timeline — pages viewed, forms submitted, messages exchanged, orders placed.
Anonymous visitors get a timeline too. When that visitor later identifies themselves, the anonymous history is merged into their customer record rather than discarded, so you keep the whole path rather than only what happened after signup.
A customer's activity history can be erased on request, which is what a data-deletion obligation requires.
The AI assistant
Configurable assistants can act inside the CRM — with tools they are allowed to use, capabilities they have and triggers that start them. They can run on demand or on an event, and be tested before going live. Voice assistants are supported for phone-based interactions.
Communications
Calls, SMS, voicemail and recordings are collected in one history against the customer, with transcription available for recordings. Phone numbers can be provisioned directly rather than configured elsewhere.
Affiliates
CRM › Affiliates runs referral and affiliate programs: people who send you customers, and what they earn for it. It has four tabs — Dashboard (affiliates, programs, referrals and commission totals, including what is still held), Programs, Affiliates and Referrals.
Programs. New Program opens one page of collapsible sections:
| Section | What it sets |
|---|---|
| General | Name, display name, status (active, inactive, draft), type (referral, affiliate, hybrid), tracking cookie age, logo, cover and contact |
| Commission | Percentage, flat amount or tiered, with an optional maximum |
| Referred customer reward | What the new customer gets: nothing, a discount code or wallet credit |
| Benefits, performance bonuses, products, marketing resources | Extras for affiliates; products can carry their own commission override |
| Terms & conditions | Whether an agreement is required, auto-approval of new affiliates, a cap on affiliates, an application deadline, and the agreement itself |
| Attribution | The attribution window in days, last-click or first-click, and whether self-referral is allowed |
| Payout | Hold period in days, minimum payout, and whether earnings are credited automatically |
| Fraud prevention | Referrals per day, minimum order amount, unique email, paid order required, and blocking the same IP |
Affiliates. Register Affiliate turns an existing customer into an affiliate — individual, business, influencer or partner — on a chosen program or the default one. An application is approved or declined; a decline keeps the record and the reason, so you can answer if they ask. An active affiliate can be suspended and later reactivated. An affiliate's page has Overview, Customer, Wallet & Payments, Stats, Links, Referrals and Settings. Commission still in its hold period is shown separately and is credited to the affiliate's wallet when the hold ends.
Codes and links. An affiliate can hold several codes at once — a personal one, one per campaign. Case does not matter, and codes are unique across the organization; availability is checked as you type. A code is active, retired (no longer advertised, but still credits the affiliate, so links already out there keep working) or disabled (credits nobody — for a code that leaked). Codes are never deleted: add one, make it the main code, retire it, disable it or turn it back on. Links builds a referral link to a page or product and can send the affiliate their code details.
Referrals. Each referral moves through pending, qualified, converted, commission held, commission paid, and ends rejected, reversed or expired. The actions offered follow the state: approve, reject, clawback/hold, reverse, restore, expire, recalculate and override the amount.
When something goes wrong
| Symptom | Cause | What to do |
|---|---|---|
| A lead has no owner and nobody chased it | The pipeline has no routing rule | Set routing so unassigned leads are given an owner on arrival. |
| A card dragged to a stage jumps back | The stage refused the move | Read the message above the board, give the lead what the stage needs, and drag it again. Won and Lost are always reachable. |
| A deal dropped on Lost did not move | The lost-reason bar is waiting | Choose a reason in the bar above the board and press Mark as Lost — or Cancel to leave it where it was. |
| Forecast shows deals under No close date or Unassigned | The lead has no expected close date or owner | Edit the lead and set both. |
| An import skipped rows | The email is already a lead, appears twice in the file, or the row is empty | The summary names each skipped row and why; nothing was duplicated. |
| A ticket could not be created | It had no subject | Give it a subject. |
| A form submission was refused | A required field was empty — on any page | The message names the fields; fill them in and submit again. |
| An AI employee is not picking up its work | Its runtime is not signed in, or it is paused | Check its Setup card and the Online / Offline badge. See AI employees. |
| The same person exists twice | Captured from two sources | Merge in the CRM. Search before creating — the mobile app cannot merge. |
| A converted customer looks like a new record | Conversion was done by creating a customer by hand instead of Convert | Use Convert; it carries the history across. |
| Enrichment never finishes | It is asynchronous and can queue | Check back rather than re-running it; repeated runs do not speed it up. |
| A campaign reached people twice | Two segments overlap | Check segment overlap before sending, not after. |
| A booking exists but no table is held | The reservation has no service point assigned | Service points are the same records the POS seats a tab on — assign one. |
| A ticket reply never reached the customer | It was posted as an internal comment | Replies go out on the ticket's channel; comments never leave the team. |
| A customer's timeline stops at signup | The anonymous history was not merged | Merging happens when the visitor identifies themselves; a visitor who never did has no earlier trail. |
| A data-deletion request came in | Activity erasure is supported | Erase the customer's activity from their record; see privacy for what is still sent afterwards. |
| Staff say leads are missing on mobile | The app reads live and has no cache | An empty list with a retry means the request failed, not that the records are gone. |