Overview & PlatformToggle GuidesBusiness (CRM / CS / Marketing)

Business (CRM / CS / Marketing)

This page is generated from the in-app guide content — edit featureToggleGuides and run pnpm gen:feature-toggle-docs.

Activity Log on Stage Change

An activity must be logged on the deal within the last 24 hours before its stage changes (including won/lost).

CodeDefaultSwitch atTurn on first
business.activity_log_required_on_stage_changeOff/crm/settings—

How it works

Before a deal’s stage changes (including won/lost), at least one activity must have been logged on that deal within the last 24 hours.

When ON

A stage change without a recent activity is rejected.

When OFF

Stages change freely.

Screens, documents and reports affected

CRM › Deals (stage change, close won/lost).

Caveats

The window is exactly 24 hours from the activity’s creation time. Leads are not affected.

Ad platform sync

Pull daily spend, impressions and clicks from connected Meta / Google ad accounts into campaign performance.

CodeDefaultSwitch atTurn on first
business.ad_platform_syncOff/prod-mkt/settings—

How it works

Pulls daily spend, impressions and clicks from connected Meta / Google ad accounts into campaign performance (nightly and on manual sync).

When ON

Connected channels sync every night.

When OFF

Sync is refused and recorded as a channel sync failure; past metrics stay.

Screens, documents and reports affected

Marketing › Channels, campaign performance.

Caveats

Test connection and listing external campaigns still reach the ad platform while off.

Approval on Discount

Any sales or service order with a discount — a line discount above 0% or a subtotal discount — needs approval, even when “Require SO approval” is off.

CodeDefaultSwitch atTurn on first
business.price_approval_on_discountOn/sales/settings—

How it works

A sales or service order with any discount — line discount above 0% or a subtotal discount — goes to approval.

When ON

Orders with a discount are created as pending approval (directly, from a quotation, or re-checked on confirm).

When OFF

Discounts alone do not trigger approval.

Screens, documents and reports affected

Sales › Sales orders, Service Management › Service orders.

Caveats

Approval is also required when ‘Require SO approval’ is on or the order exceeds the amount threshold. Orders brought in by document import are not checked.

Assign Accounts to CS Teams

Allow accounts, renewals, onboarding plans, playbook runs and health alerts to record an owning CS team and rep.

CodeDefaultSwitch atTurn on first
business.cs_team_assignmentOff/customer-success/settingsCS Team Management (business.cs_team_management)

How it works

Lets records carry the responsible CS team (and CS rep). The rep must be a member of the chosen team.

Conditions for it to take effect

Requires CS team management to be on, with teams and CS reps set up.

When ON

The owner picker appears on customers (contacts), renewals and onboarding plans (team + rep), and on playbook runs and health alerts (team only).

When OFF

New owners cannot be assigned. Owners set earlier are still shown (read-only) on the detail page, with a Clear owner button.

Screens, documents and reports affected

Customer, renewal, onboarding and playbook run detail pages; the owner column on lists.

Caveats

Health alerts copy the owning team from the customer when they are created, even while this toggle is off. Required by CS team data scope.

Auto-assign leads

Automatically assign new leads to reps based on assignment rules.

CodeDefaultSwitch atTurn on first
business.lead_auto_assign_enabledOff/crm/settings—

How it works

Lets lead workflow rules that contain an ‘assign owner’ action run.

When ON

Matching rules assign the owner automatically.

When OFF

Assign actions in lead rules are skipped; other rule actions still run.

Screens, documents and reports affected

CRM › Lead rules.

Caveats

Applies to every rule trigger, including stage-change rules, not only new leads.

Auto-close campaigns on end date

Every night, mark active campaigns whose end date has passed as completed. Draft and paused campaigns are left alone.

CodeDefaultSwitch atTurn on first
business.campaign_auto_close_on_end_dateOff/prod-mkt/settings—

How it works

Every night, active campaigns whose end date is today or earlier are marked completed.

When ON

Active campaigns close automatically on their end date.

When OFF

Campaigns stay active until closed manually.

Screens, documents and reports affected

Marketing › Campaigns.

Caveats

Draft and paused campaigns are left alone.

Auto-Close Resolved Tickets

Close a resolved helpdesk ticket automatically when nobody has touched it for the chosen number of days.

CodeDefaultSwitch atTurn on first
business.helpdesk_auto_close_resolved_days0/customer-success/settings—

How it works

A daily job closes helpdesk tickets that have stayed Resolved, with no reply or change, for the chosen number of days.

When ON

Resolved tickets with no activity for that many days move to Closed; the customer receives the usual status email if helpdesk emails are on.

When OFF

Resolved tickets stay Resolved until a staff member or the customer closes them.

Screens, documents and reports affected

Customer Success › Helpdesk, Customer Portal.

Caveats

The clock restarts on any reply or change, not from the first time the ticket was resolved. Customers can still reopen a closed ticket from the portal within 14 days.

Auto-create Contact from Lead

Create a contact when a lead without one is converted, and when a website lead arrives with an email or company name.

CodeDefaultSwitch atTurn on first
business.auto_create_contact_from_leadOn/crm/settings—

How it works

Creates a contact automatically in two places: when a lead without a contact is converted, and when a website lead arrives with an email or company name.

When ON

Converted leads and website leads get a linked contact.

When OFF

No contact is created automatically; link or create the contact yourself.

Screens, documents and reports affected

CRM › Leads (website intake, convert).

Automatic campaign touchpoints

Automatically log CRM activities (calls, emails, meetings, messages, notes), deal creation and deal won as touchpoints for campaign members, and mark members converted on deal won.

CodeDefaultSwitch atTurn on first
business.campaign_auto_touchpointsOff/prod-mkt/settings—

How it works

Turns CRM events of campaign members into campaign touchpoints automatically.

When ON

Activities (calls, emails, meetings, messages, notes), deal created and deal won are logged as touchpoints; members are marked converted on deal won.

When OFF

No automatic touchpoints and no automatic ‘converted’ marking. Manual touchpoints still work; new leads still join campaigns.

Screens, documents and reports affected

Marketing › Campaigns (members, touchpoints).

Caveats

Tracked-link clicks are recorded as channel touchpoints, not campaign touchpoints, regardless of this toggle.

Campaign attribution on deals

When a deal is created, credit it to the campaigns (up to 10) its contact or lead is a member of, for campaign ROI.

CodeDefaultSwitch atTurn on first
business.campaign_attribution_on_dealOff/prod-mkt/settings—

How it works

Right after a deal is created, it is credited to up to 10 campaigns its contact or lead is a member of, with equal weight, for campaign ROI.

When ON

New deals get attribution rows.

When OFF

No attribution is recorded; existing rows stay.

Screens, documents and reports affected

CRM › Deals (create), Marketing › Campaign ROI.

Contact Deduplication

Also reject a new contact whose phone number already exists. Duplicate email is always rejected.

CodeDefaultSwitch atTurn on first
business.contact_dedup_checkOn/crm/settings—

How it works

Adds a phone-number duplicate check when a contact is created or edited. Duplicate email is always rejected regardless of this toggle.

When ON

Saving a contact whose phone already belongs to another contact is rejected.

When OFF

Only the email duplicate check applies.

Screens, documents and reports affected

CRM › Contacts (create, edit).

Caveats

Contact import, contacts created from lead capture or from an account, and lead conversion do not run the phone check.

Contract Renewal Alert

Every day, notify the renewal owner of each open renewal due within the next 30 days.

CodeDefaultSwitch atTurn on first
business.cs_renewal_auto_alertOn/customer-success/settings—

How it works

A daily job notifies the owner of every open renewal due within the next 30 days.

When ON

Renewal owners receive a notification (up to 50 renewals per run); renewal assistants also run.

When OFF

No automatic renewal notifications.

Screens, documents and reports affected

Customer Success › Renewals, notifications.

Caveats

The window is fixed at 30 days and the same renewal is notified again each day while it stays in the window.

Create service delivery contract on Deal Won

When a won deal includes service lines, create a Service Management contract and project. Goods-only deals never create one, even if this is on.

CodeDefaultSwitch atTurn on first
business.deal_won_creates_service_contractOff/crm/settings—

How it works

When a deal is won and it contains service lines, a Service Management contract and project are created for delivery.

When ON

Won deals with service lines produce an SM contract + project.

When OFF

Nothing is created; create the SM contract manually.

Screens, documents and reports affected

CRM › Deals (won), Service Management › Contracts.

Caveats

Goods-only deals never create a contract, even when this is on.

CS Team Data Scope

Widen the “own”/“team” data scope: users also see renewals and health alerts owned by their CS teams, beyond their reporting line.

CodeDefaultSwitch atTurn on first
business.cs_team_data_scopeOff/customer-success/settingsAssign Accounts to CS Teams (business.cs_team_assignment)

How it works

Widens the “own”/“team” data scope: users also see records owned by CS teams they belong to, on top of the manager hierarchy. It only WIDENS, never narrows.

Conditions for it to take effect

Requires CS team assignment. Only matters for roles on the “own” or “team” scope, and the user must be linked to a CS rep who is a team member.

When ON

Renewal lists, kanban, detail, the “renewing this month”/“due soon” cards and the health alert list also show records of the user’s teams.

When OFF

Data scope behaves as before — creator/owner and manager hierarchy only. Users may immediately lose sight of records that belong only to their team.

Screens, documents and reports affected

Renewals (list, kanban, detail, overview cards), health alerts.

Caveats

Currently applies to renewals and health alerts only; customers, onboarding and playbook runs are not widened by team. Roles with the “all” scope are unaffected.

CS Team Management

Enable CS teams — reusable groups of CSMs with a lead and a default account capacity.

CodeDefaultSwitch atTurn on first
business.cs_team_managementOff/customer-success/settings—

How it works

Enables Customer Success team management: teams with a lead, a default capacity and members (CS reps).

When ON

A CS teams screen appears in Customer Success settings; CS reps can be placed in teams.

When OFF

Every CS team operation is rejected (feature disabled). A CS rep with teams cannot be saved; reps without teams keep working.

Screens, documents and reports affected

Customer Success settings (teams, CS reps), the owner block on customers, renewals, onboarding and playbook runs.

Caveats

Required by CS team assignment and CS team data scope. Turning it off makes both inert and hides owners already assigned (the data stays in the system).

Customer Credit Limit Check

On: block a new sales order (created directly or converted from a quotation) that would push the customer over their credit limit. Off: the order is saved and only a warning is returned.

CodeDefaultSwitch atTurn on first
business.customer_credit_limit_checkOff/sales/settings—

How it works

Compares the customer’s used credit plus the new order total with the customer’s credit limit.

When ON

A new order (direct or from a quotation) or confirming a draft that would exceed the limit is rejected. If the customer’s credit cannot be read, the order is refused rather than let through.

When OFF

A direct order is saved with a credit warning; quotation conversion gives no warning.

Screens, documents and reports affected

Sales › Sales orders.

Caveats

Not checked on edit, approval or import. Customers without a credit limit are never checked.

Customer Health Score

Run the daily health-score refresh and score-drop alerts, and the health AI assistants. Manual recompute and ticket-triggered recalculation still run when off.

CodeDefaultSwitch atTurn on first
business.cs_health_score_enabledOff/customer-success/settings—

How it works

Controls the automatic parts of customer health: the daily refresh, score-drop alerts and the health AI assistants.

When ON

Every morning, scores older than about a day are refreshed (up to 100 per run) and drops are alerted; health assistants run.

When OFF

The daily refresh, alerts and assistants stop. Existing scores stay.

Screens, documents and reports affected

Customer Success › Health, health alerts, health assistants.

Caveats

Turning it off also stops automatic recomputes after a ticket is resolved, from the queue and in background batches. The manual Recompute button and assistant actions a person approves still run — those are explicit user actions. The daily job only refreshes customers that already have a score.

Customer Portal Accounts

Let your customers’ contacts sign in to a portal to open, follow and reply to helpdesk tickets. Accounts are created by invitation from the contact or account page.

CodeDefaultSwitch atTurn on first
business.helpdesk_customer_accountsOff/customer-success/settings—

How it works

Gives customers login accounts on the Customer Portal to see all their tickets.

When ON

Staff can manage portal accounts; customers can sign in; ticket emails link to the portal instead of a magic link.

When OFF

Account management is rejected and existing portal sessions are refused at their next request. Accounts are kept.

Screens, documents and reports affected

Customer Success › Portal accounts, Customer Portal sign-in.

Customer Self-Service Portal

Let customers open a secure link to follow their ticket, reply, and rate the support they received. On by default — a link does nothing until staff send one. Off: existing links stop working.

CodeDefaultSwitch atTurn on first
business.helpdesk_customer_portalOn/customer-success/settings—

How it works

Allows magic links that let customers view a ticket, reply and answer the satisfaction survey without logging in.

When ON

Staff can issue portal links; ticket emails contain the link.

When OFF

Issuing links is rejected and every existing link shows ‘This portal link is not available’.

Screens, documents and reports affected

Customer Success › Helpdesk, ticket emails, survey.

Caveats

Links are not revoked: if turned back on, unexpired links work again.

Duplicate Deal Check

Warn (not block) when the contact already has an open deal.

CodeDefaultSwitch atTurn on first
business.duplicate_deal_checkOff/crm/settings—

How it works

When a deal is created for a contact that already has an open deal, a duplicate warning is returned. It never blocks.

When ON

Creating a deal shows a duplicate warning when the contact has another open deal.

When OFF

No warning.

Screens, documents and reports affected

CRM › Deals (create).

Caveats

Also warns on lead conversion. Deal import does not check for duplicates.

Expected Close Date Required

Every deal must have an expected close date — checked on create and on deal import.

CodeDefaultSwitch atTurn on first
business.deal_close_date_requiredOff/crm/settings—

How it works

A new deal must have an expected close date.

When ON

Creating or importing a deal without the date is rejected; the new-deal form marks it required.

When OFF

The date is optional.

Screens, documents and reports affected

CRM › Deals (create, import).

Caveats

Also applies to lead conversion (the lead’s expected close date counts). Not checked when a deal is edited — the date can be cleared later.

Forecast Categories on Deals

Let reps classify each deal as Commit / Best Case / Pipeline instead of relying only on stage probability. Off: the forecast keeps using the weighted calculation and no number changes.

CodeDefaultSwitch atTurn on first
business.forecast_category_enabledOff/crm/settings—

How it works

Lets a deal carry a forecast category (Commit / Best Case / Pipeline) used by the forecast instead of stage probability alone.

When ON

The forecast category can be set when creating or editing a deal.

When OFF

Setting a forecast category is rejected (feature disabled); the forecast keeps the weighted-probability calculation.

Screens, documents and reports affected

CRM › Deals, sales forecast.

Caveats

Turning it off does not erase categories already stored on deals.

Helpdesk Email Notifications

Email customers when a ticket is received, its status changes or support replies, and email support staff about new tickets, assignments and customer replies.

CodeDefaultSwitch atTurn on first
business.helpdesk_customer_emailsOff/customer-success/settings—

How it works

Sends ticket update emails to customers through the email outbox.

When ON

Customers receive emails on ticket events.

When OFF

No customer emails are queued; in-app notifications for staff continue.

Screens, documents and reports affected

Customer Success › Helpdesk notifications.

Lead Qualification Required

Require leads to be qualified before converting to deals

CodeDefaultSwitch atTurn on first
business.lead_qualification_requiredOff/crm/settings—

How it works

Converting a lead into a deal is only allowed when the lead sits in the pipeline’s qualified stage.

When ON

Lead conversion from any other stage is rejected with the lead’s current stage in the message.

When OFF

Leads can be converted from any stage.

Screens, documents and reports affected

CRM › Leads › Convert.

Caveats

Only conversion is checked; moving the lead between stages is not affected.

Lead scoring

Allow creating lead-scoring models and let the lead-scoring assistant score leads. Off: new models are rejected and the assistant skips.

CodeDefaultSwitch atTurn on first
business.lead_scoring_enabledOff/crm/settings—

How it works

Turns on lead scoring: scoring models can be created and the lead-scoring assistant runs.

When ON

New scoring models can be created; the assistant scores leads.

When OFF

Creating a scoring model is rejected and the assistant skips.

Screens, documents and reports affected

Marketing › Lead scoring, the lead-scoring assistant.

Caveats

Existing models and scores are kept when turned off.

Max product video size (MB)

Upper bound for short product videos (MP4/WebM). The effective cap is the smaller of this and the video limit in Settings → Storage. Empty or 0 = 50.

CodeDefaultSwitch atTurn on first
business.catalog_video_max_mb50/prod-mkt/settings—

How it works

Maximum size of a short product video (MP4/WebM).

When ON

The effective cap is the smaller of this value and the video limit in Settings › Storage.

When OFF

Empty or 0 means 50 MB.

Screens, documents and reports affected

Product catalog media.

Max ticket video size (MB)

Videos attached to ticket messages above this size are rejected. Never exceeds the Storage video limit.

CodeDefaultSwitch atTurn on first
business.ticket_video_max_mb25/customer-success/settings—

How it works

Maximum size of a video attached to a ticket message.

When ON

The effective cap is the smaller of this value and the video limit in Settings › Storage.

When OFF

Empty or 0 means 25 MB.

Screens, documents and reports affected

Customer Success Helpdesk and Service Management tickets.

On-Call Ticket Routing

Automatically assign new unassigned helpdesk tickets to whoever is on call, rotating between people on the same shift.

CodeDefaultSwitch atTurn on first
business.helpdesk_oncall_routingOff/customer-success/settings—

How it works

Assigns new unassigned customer-facing tickets to the person on call, and escalates tickets that miss first response.

When ON

External tickets created without an assignee go to the current on-call person; an every-5-minute job escalates overdue first responses.

When OFF

No automatic assignment or escalation. Rosters and past assignments stay.

Screens, documents and reports affected

Customer Success › Helpdesk › On-call.

Caveats

Internal tickets and tickets created with an assignee are never routed.

Public product images

Copy resized web-ready variants (320px thumbnail, 1024px medium, WebP) of newly uploaded product images to the public bucket so catalogs and the website get stable URLs. Off: new uploads stay private; variants already published stay public until the image is removed.

CodeDefaultSwitch atTurn on first
business.catalog_public_imagesOn/prod-mkt/settings—

How it works

At upload, product images get resized WebP copies (320px, 1024px) in the public bucket so catalogs and the website have stable URLs.

When ON

New uploads get public variants.

When OFF

New uploads stay private and load through short-lived links.

Screens, documents and reports affected

Product catalog media, website.

Caveats

Variants already published stay public until the image is removed; turning it back on does not create variants for images uploaded while off.

Require Account on Deal

A deal must have a contact that belongs to a Company / Account — checked on create and on deal import.

CodeDefaultSwitch atTurn on first
business.require_account_on_dealOff/crm/settings—

How it works

A new deal must have a contact that belongs to a company/account.

When ON

Creating or importing a deal without such a contact is rejected; the new-deal form marks the field required.

When OFF

Deals can be created for individual contacts or without a contact.

Screens, documents and reports affected

CRM › Deals (create, import).

Caveats

Also applies to deals created by converting a lead. Editing an existing deal is not checked.

Require campaign budget

Block creating a campaign without a positive budget.

CodeDefaultSwitch atTurn on first
business.campaign_budget_requiredOff/prod-mkt/settings—

How it works

A new campaign must have a positive budget.

When ON

Creating or importing a campaign without a budget is rejected.

When OFF

Budget is optional.

Screens, documents and reports affected

Marketing › Campaigns (create, import).

Caveats

Editing a campaign later is not checked.

Require UTM on channels

Block creating a marketing channel without a UTM source and medium.

CodeDefaultSwitch atTurn on first
business.utm_required_on_channelOff/prod-mkt/settings—

How it works

A new marketing channel must have a UTM source and medium.

When ON

Creating or importing a channel without them is rejected.

When OFF

UTM fields are optional.

Screens, documents and reports affected

Marketing › Channels (create, import).

Caveats

Editing a channel later is not checked.

Send campaigns from XBuddy

Allow marketers with campaigns:send to email or Zalo campaign members from the campaign page.

CodeDefaultSwitch atTurn on first
business.campaign_outbound_sendingOff/prod-mkt/settings—

How it works

Lets users with campaigns:send email or Zalo campaign members from the campaign page.

When ON

Sends can be queued.

When OFF

Starting a send is rejected.

Screens, documents and reports affected

Marketing › Campaigns › Send.

Caveats

Turning it off does not cancel batches already queued.

Stage Direction Control

Honour each stage’s ‘allow moving backwards’ and ‘allow skipping ahead’ switches. Off, records may move between any two stages freely.

CodeDefaultSwitch atTurn on first
business.stage_direction_controlOn/crm/settingsStage Transition Criteria (business.stage_criteria_enabled)

How it works

Honours each stage’s ‘allow moving backwards’ and ‘allow skipping ahead’ switches.

Conditions for it to take effect

Requires Stage transition criteria to be on.

When ON

Moving backwards or skipping stages is rejected where the stage forbids it.

When OFF

Records may move between any two stages.

Screens, documents and reports affected

CRM › Deals and Leads stage changes.

Caveats

While Stage transition criteria is off, this toggle has no effect even if it shows on.

Stage Transition Criteria

Let each pipeline stage carry its own entry criteria. Required criteria block the move until they are met; advisory ones only warn. With no criteria configured, nothing is blocked.

CodeDefaultSwitch atTurn on first
business.stage_criteria_enabledOn/crm/settings—

How it works

Each pipeline stage can carry entry criteria. Required criteria block moving a lead or deal into that stage until met; advisory ones only warn.

When ON

Criteria are checked on deal stage changes, closing and lead conversion.

When OFF

No criteria are checked; Stage direction control also stops applying.

Screens, documents and reports affected

CRM › Pipelines (stage settings), Deals, Leads.

Caveats

With no criteria configured, nothing is blocked. Required by Stage direction control.

Stale deal alert (days)

Days without movement after which the deal coach flags a deal as stalled and the daily alert notifies its owner. Empty = 14; values are kept between 1 and 365.

CodeDefaultSwitch atTurn on first
business.stale_deal_alert_days14/crm/settings—

How it works

Number of days without movement after which a deal counts as stalled.

When ON

The deal coach flags deals idle longer than this, and a daily job notifies the owner of open deals not updated for this many days (closed stages as configured in the pipeline are excluded).

When OFF

Empty means 14 for both. Values are kept between 1 and 365.

Screens, documents and reports affected

Deal coach assistant, daily deal-staleness notifications.

Caveats

The daily job uses the deal’s last update time, not activities, caps each run at 50 deals, and is skipped for a company with no closed deal stage configured.

Ticket attachment retention

Files in Helpdesk and Service Management ticket messages and internal notes are purged this many days after the ticket closes (files only; the conversation stays). Leave empty to keep forever.

CodeDefaultSwitch atTurn on first
business.ticket_attachment_retention_days—/customer-success/settings—

How it works

How long files on ticket messages are kept after the ticket is closed. A daily job deletes files older than this.

When ON

Values are rounded up to the nearest option (30, 45, 60, 90, 180, 365); above 365 counts as 365.

When OFF

Leave empty (or 0): files are kept forever.

Screens, documents and reports affected

Customer Success Helpdesk and Service Management tickets.

Caveats

Deleted files cannot be restored; clearing the value later only stops future deletion.

Win Reason Required

Require a win reason when closing a deal as won

CodeDefaultSwitch atTurn on first
business.deal_win_reason_requiredOff/crm/settings—

How it works

Marking a deal as won (from the deal page, the close dialog or a stage change to Won) requires a win note.

When ON

The close dialog marks the note as required; saving won without a note is rejected.

When OFF

Deals can be marked won without a note.

Screens, documents and reports affected

CRM › Deals (close flow, kanban stage change).

Caveats

The free-text note is what counts — picking a win-reason category alone does not satisfy the rule.