Welcome to the Knowledge Base

Welcome to your complete platform documentation center. We have meticulously documented almost every feature, workflow, and safeguard across the entire system to empower you to scale, automate, and manage your service business seamlessly.

How This Documentation is Structured

The Knowledge Base is organized into intuitive, high-level operational categories to match your daily workflow:

  • Website & Booking: Instant site generation, builder customizations, standalone service pages, and fine-tuning your online booking engine and quote capture forms.
  • Invoicing & Billing: Setting up payment terms, configuring jurisdictional sales taxes, creating work orders, building two-step invoices, and handling recurring service blueprints.
  • Customers & Lead Recovery: Customer management, automated satisfaction surveys, digital quote approvals, and capturing lost revenue from abandoned carts.
  • Staff & Scheduling: Managing employee profiles, permissions, and shift rosters, dispatching teams on the real-time visual Scheduler, and configuring auto-scheduling logic.
  • Communications: The integrated Call Manager, spam firewall, two-way team/customer chat, and A2P 10DLC compliance.
  • Accounting & Integrations: Deep bidirectional QuickBooks Online synchronization, inventory tracking, landed costs, and Stripe payment processing.

Navigating the Knowledge Base

  • Keyword Search: Use the search bar at the top of the screen at any time to instantly look up tools, error messages, or concepts (such as Stripe, Refund, Auto-Scheduler, or QuickBooks).
  • Breadcrumbs & Sequencing: Use the previous/next controls at the top and bottom of each article to step through modules sequentially.
  • Table of Contents: On mobile devices, tap the Contents button in the top corner to slide open the complete topic drawer.
Can't find what you're looking for?

While this library covers the platform extensively, we are always here to help. If you encounter an edge case, run into an unexpected issue, or have a question that isn't answered in these guides, please click the Submit Ticket button at the top of the sidebar. Our support team will be happy to assist you.

Instant Website Generator: Overview & Setup

Our industry-leading website generator allows you to create and deploy a turnkey service business website in just 20 seconds—completely free. By leveraging smart automation, the generator produces a production-ready, search-optimized web presence customized to your specific trade and market without any manual design work.

Key Features

  • Location-Matched & Trade-Specific: Automatically generates relevant industry content and aligns page copy to your service market.
  • Built-In SEO & High Performance: Pre-configured with clean semantic markup, fast load speeds, and strict accessibility standards to help you rank higher on Google and Bing.
  • Tailored Booking Engine: Automatically integrates an online booking or quote request form pre-configured for your trade's unique pricing and scheduling logic.
  • Professional Imagery: Populated with high-resolution, trade-relevant stock photography out of the box.
  • Always Free: Generate, preview, and deploy your site foundation at zero cost.
  • Lightning Fast: Assembles a complete multi-page website in approximately 20 seconds.

How to Generate and Claim Your Website

  1. Navigate to bluesailagency.com/create-a-website/.
  2. Select your trade from the available industry choices to initiate site generation.
  3. Add your business's contact information and click 'Generate Website'.
  4. Review your generated preview, then click the Claim Website button located in the bottom-left corner of the screen to open the account registration form. At this point, your new website is live!
  5. Create your account and log in. You will immediately receive full administrative access to customize text, adjust branding, configure service rates, and launch your business.
Full Customization via Website Builder

Claiming your site immediately publishes your website online and unlocks the full Website Builder suite. Head to Menu > Website > Website Setup at any time to fine-tune your pages.

If you need to deactivate your website at any point, go to Menu > Website > Website Setup > Site Content and Address page and remove the subdomain of your website.

Website Builder: Overview & Workflow

The integrated Website Builder allows you to design, launch, and manage a professional, mobile-responsive website tailored specifically for service-based businesses. It seamlessly connects your public web presence with your real-time booking form, customer self-service Client Portal, and CRM database.

Key Features

  • Full Device Responsiveness: Websites and builder controls render smoothly across desktop, laptop, tablet, and mobile devices.
  • Conversion-Engineered Architecture: Designed specifically to funnel traffic into your online booking form/quote request form.
  • Instant Real-Time Updates: Any change saved in the website setup wizard immediately reflects across your live web pages without manual compilation or code deployments.
  • Modular Setup Wizard: Enable or disable entire site modules (such as portfolio galleries or FAQ pages) to suit your business model.
Live Preview Available at Every Step

While editing on desktop or laptop, click the Save and Preview button located on any setup screen to view your changes in real time. You can also toggle between desktop and mobile viewport simulations, or view your full staging site anytime via Menu > Website > Website Preview.

Business Info, Tawk.to, & SEO

To begin configuring your site, navigate to Menu > Website > Website Setup and access the Business Information panel.

Core Contact & Routing Details

  • Business Name: Displayed across website headers, footers, and copyright notices.
  • Business Email: Serves as the central destination for all incoming website communications, including automated booking notifications and customer inquiries submitted through the Contact Us form.
  • Contact Form Toggle: Enable or disable the web intake form on your dedicated Contact Us page.
  • Business Phone & Physical Address: Displayed in your header/footer and on all official business documents such as invoices, work orders, and quotes..
  • Hours of Operation: Establishes your public business availability shown on the contact page and footer.
Critical: Industry Selection Drives Defaults

Be sure to choose the correct trade under Industry. Your selection automatically seeds industry-appropriate defaults, stock images, service templates, and suggested FAQ copy across subsequent setup screens.


Tawk.to Live Chat Integration

Tawk.to is a free live chat messaging application that embeds a chat widget directly onto your website. It allows you to communicate with website visitors in real time as they browse your services or navigate your booking form, helping you answer questions and capture inquiries instantly. Integratin with your website is easy:

  1. Sign up for an account at tawk.to.
  2. Log into your Tawk.to account and click the gear icon (Administration) at the top of the screen.
  3. Within the Administration menu, click Chat Widget.
  4. On the Chat Widget page, locate the Direct Chat Link, which will look something like this:
    https://tawk.to/chat/64a1b2c3d4e5f67890123456/1h2j3k4l5
  5. From this line, copy the portion shown in green above (everything following https://tawk.to/chat/) and paste it into the Tawk.to ID field on this page.
  6. Click Save.

Please note: Your Tawk.to ID will be unique and different from the example shown above. If you have any issues getting your Tawk.to chat widget added to your website, please reach out to us.


Search Engine Optimization (SEO) & Social Links

  • Site Title & Description: Defines how your business appears in search engine results on Google and Bing. Compose a concise title and a compelling description summarizing your services and service area.
  • Mailing List Form: Enabling this toggle adds a lightweight email subscriber intake field to your website footer.
  • Social Media Profiles: Add links for your Facebook, Instagram, LinkedIn, and X/Twitter profiles to automatically render social icon links in your footer. In addition, you can upload a favicon for website as well as a thumbnail image that will be displayed when your site is shared on social media.

Themes, Colors & Hero Banner

Customize your brand identity by selecting a layout template and accent colors.

Templates & Dynamic Accent Colors

  1. Within the Website Setup, Navigate to the Templates page.
  2. Select a primary Accent Color using the color picker (e.g., brand blue, green, or modern dark shades).
  3. Click directly on any template preview image to launch an interactive live demo displaying how your chosen accent color styles buttons, headers, links, and accents.
  4. Select your preferred template from the dropdown and click Save.

Hero Image & Header Tinting

The Hero Image and Logo Size page provides options for setting the hero image on your homepage and configuring the size of your logo across all of your webpages.

The Hero Image is the high-resolution backdrop positioned at the top of your homepage.

  • Stock vs. Custom Media: Choose from curated high-resolution trade stock photography or upload your own branded photography.
  • Image Tinting (Contrast Control): Because text and lead intake forms overlay your hero image, select between Light Tint, Dark Tint, or No Tint to ensure headlines remain legible against the background image.

Logo Sizing

  • Logo Size: Set the size of your company logo that will appear at the top of your website. Choose between Regular and Large. Logos that are taller than they are wide should be set to a size of 'Large'.

Homepage Content & Features

The homepage layout is structured to quickly communicate credibility, service offerings, and competitive differentiators. The configuration of the homepage is largely done on the Homepage Information page.

1. Hero Headline & "Our Process"

  • Homepage Hero Title: Choose from recommended headlines or enter a custom value (e.g., "Austin's Most Trusted Cleaning & Facility Services"). If you wish to reference a city in your Hero Title and serve other cities, please use %city% in place of the actual name of your city. This will support the functionality of 'Community Pages', which is discussed below.
  • Process Workflow (Steps 1–3): Briefly guide visitors through how working with you works (e.g., 1. Book Online, 2. We Clean, 3. Enjoy Your Home). If your sales process has fewer steps, you can delete unused steps (e.g., deleting Step 3 displays a clean 2-step process).

2. "What Makes You Special" & Key Features

  • Differentiation Write-Up: A dedicated section highlighting your company story, guarantees, or certifications.
  • Feature Badges (Up to 6): Select up to 6 core capabilities (e.g., Eco-Friendly Products, Insured & Bonded, Award-Winning Service). You can customize both badge titles and descriptive body text.
  • Features Background Image: Assign a distinct stock or custom image to serve as the textured backdrop behind your features grid.

3. Rich Text Custom Content Section

Use the integrated WYSIWYG editor to add custom content to your homepage—such as lists of service areas, neighborhoods, accreditation badges, or embedded video overviews. The editor supports formatted text, custom tables, image uploads, and HTML media embeds.

4. Communities Served

Add the names of the communities, towns, or cities that your business serves. For each community you enter, a unique homepage link is automatically generated, which you can use for targeted local marketing, ad campaigns, and SEO outreach to those specific areas.

Accessing Your Community Links

You can locate and copy the generated URLs for all your local landing pages on the Community Pages page, which be be found by going to Menu > Website > Community Pages.

Important Note: Editing the name of an existing community will automatically generate a new link for that community page. Keep this in mind if you have already distributed or linked the previous URL in active marketing campaigns.

Dedicated Service Pages

Showcase your offerings with granular detail to inform customers and improve organic local SEO ranking by using the Service Pages section of the Website Setup process.

Dedicated Pages vs. Matrix Views

  • Dedicated Service Pages: Create standalone pages for each core service (e.g., Standard Cleaning, Deep Cleaning, Move-In/Move-Out). Each page includes a custom title, summary, rich-text description, image/video embeds, and a direct Book Now call-to-action button.
  • Header Navigation Dropdowns: Newly created service pages automatically populate your website's Services dropdown navigation menu and can optionally be featured directly on the homepage.
Workflow Tip

Creating dedicated service pages with unique descriptions and localized keywords helps Google and Bing index your business for specific search terms in your target markets.

Testimonials, FAQs & Gallery

Client Testimonials (Social Proof)

The Testimonials setup page allows you to highlight client reviews directly on your homepage:

  • Feature between 1 to 3 testimonials.
  • Include client name, geographic location, and a headshot (upload an authentic client photo or choose from stock avatars).
  • Verification Links: Add an optional external URL that points to the online review to establish credibility.

Categorized FAQ Engine

The FAQs setup page allows you to answer common pre-sales questions to streamline customer support and remove booking friction:

  • Category Organization: Group questions into logical categories (e.g., Pricing & Billing, Appointments & Scheduling, Service Guarantee).
  • Interactive Accordions: FAQs render on your live website as collapsible accordions.
  • Automatic Suppression: Questions left without an answer are automatically hidden from the public site.

Visual Portfolio / Image Gallery

Showcase completed jobs to demonstrate service quality using the Image Gallery setup page:

  • Set the page title for the gallery. Choose between 'Our Work' and 'Gallery'.
  • Upload before-and-after photos or completed project showcases.
  • Assign custom SEO Keywords / Alt-Tags to each photo to help search engines index your visual content.

Maps & Analytics

Google Maps & Directions

Use the Google Maps setup page to display your operational base on an interactive Google Map on your Contact Us page:

  • Map Settings: Configure initial zoom levels and default views (Roadmap vs. Satellite). Visitors can click Directions to open turn-by-turn navigation in their native map app.

Google Analytics Tracking

Track site visits, user behavior, and conversion funnels:

  • Enter your Google Analytics Measurement ID (e.g., G-XXXXXXXXXX) into the dedicated field on the Google Analytics setup page.
  • Platform web pages will immediately begin transmitting visitor metrics, traffic channels, and session activity to your Google Analytics dashboard.

About Us & Custom Pages

The About Us Page

Your About Us page allows prospective clients to learn about your company background, core values, and team culture:

  • Company Story: Outline when your business was founded, your core mission, and operational standards.
  • Team Photography: Including a photo of your actual team or fleet is strongly recommended—it builds visitor trust and measurably increases booking conversions.

Your About Us website page can be configured on the About Us page within the Website Setup process.

Adding Custom Pages (Bonus Page)

Use the Bonus Page to advertise an aspect of your business that isn't contained on any other standard page. Some popular uses include Jobs / Hiring, Promotions, or Awards. (Completion of this page is not required.)

  • Enable Bonus Page: Check this box to activate the page and make its link visible in your website's navigation bar.
  • Page Title: The title that appears for this page in your site's navigation bar and header.
  • Redirect Link: (Optional) When filled in, visitors will automatically be redirected to this external or internal web address upon clicking the link in your navigation bar (e.g., mywebsite.com/special-blog-post/).
  • Image & Image Description: Upload a featured image for the page and enter an image description (alt text) to support accessibility and SEO.

Domains, Hosting & Going Live

The final stage of the website setup process (Content and Address) controls how your site is hosted and published to the internet.

1. Core Feature Toggles

  • Booking Form: Enable this switch to deploy your online booking system directly to your website.
  • Booking Page Title: This title will appear at the top of your booking page. This is optional.
  • Booking Link Title: This text will appear in all buttons that link to your booking page. This is optional.
  • Homepage Booking Form: Adds a compact intake form directly over your homepage hero banner, allowing visitors to enter their Name, Phone, Email, and desired service to immediately kick off the booking process.
  • Subheading: If you'd like a custom message (eg. Book an appointment in 60 seconds) to appear immediately above the Homeage Booking Form, enter it here. This is optional.
  • Client Portal: Enables a self-service portal link in your site navigation where clients can view appointments, approve estimates, and pay invoices.

2. Hosting Modes

  • Platform-Powered Website (Built-In): Host your complete web presence directly on our high-speed, secure infrastructure. No external web hosting or maintenance required.
  • External Website Connection: If you already have a website hosted on WordPress, Squarespace, or Wix, you can use our platform strictly for booking and client management by linking your booking form and Client Portal URLs to your existing site.

3. Domain Configuration & Publishing

  • Free Subdomain (Instant Live): On the Free Plan, choose a unique company subdomain (e.g., entering austinsuperclean publishes your website live at austinsuperclean.bluesailagency.com). Your website goes live the instant you save your subdomain.
  • Custom Domain Names (Premium): Connect your own branded domain (e.g., www.yourcompany.com). You can check domain availability directly in the setup wizard or link an existing domain registered through third-party providers (GoDaddy, Namecheap, Google Domains).
Accessing Your Live Website

To view your live site, click Live Website in your top control bar or navigate to Menu > Website > Live Website.

Web Accessibility Standards & Practices

Web accessibility refers to the inclusive design practice of ensuring that digital tools and websites are usable by everyone, including people with visual, auditory, motor, or cognitive impairments. Grounded in the international Web Content Accessibility Guidelines (WCAG), an accessible website ensures digital content is perceivable, operable, understandable, and robust for all visitors.

Prioritizing accessibility fulfills legal compliance standards, improves brand perception, and broadens your addressable customer base. Furthermore, accessible web architecture directly boosts organic search rankings on Google and Bing, as accessibility optimizations produce clean code, fast load times, and structured mobile experiences.

Built-In Platform Accessibility Features

Every website template and client-facing interface includes extensive baked-in accessibility features:

  • Fluid Viewport Scaling: Layouts render and function smoothly on narrow viewports down to 320px width without horizontal scrolling or clipping.
  • Screen Reader Ready: Non-text interface elements (buttons, inputs, icons) include explicit semantic descriptions and labels, while purely decorative icons are programmatically hidden from assistive tech.
  • Strict Heading Hierarchy: Templates enforce descending structural heading tags (H1 > H2 > H3) to provide screen readers with a logical outline of each page.
  • Keyboard Navigable: All interactive components, drop-down menus, and multi-step booking forms can be fully navigated and submitted via keyboard alone (Tab, Enter, Space, and Arrow keys).
  • Form Error Identification: Required input fields are distinctly identified, and validation error messages clearly describe what needs correction.
  • High-Contrast Mode: Includes an integrated accessibility widget that allows visitors to toggle high-contrast display modes to meet color contrast ratio standards.
  • Accessible Client Portal: All accessibility upgrades are mirrored within the customer self-service Client Portal.

Auditing & Updating Your Content

Whenever you upload a new photo to the website builder, the setup wizard will prompt you to input a concise Image Description (Alt Text). If your site contains images uploaded prior to recent accessibility updates, take the following steps:

  1. Scan your website using accessiBe’s free audit tool at accessibe.com/accessscan.
  2. If the audit flags images that are missing alt descriptions, navigate to the corresponding setup screen in the Website Builder, re-upload the photo, and provide a descriptive alt label.
Note on Automated Accessibility Scanners:

Automated and AI-driven accessibility scanners can occasionally generate false positives or false negatives.

Best Practices for Content Editors

To preserve your website’s high level of accessibility as you publish new content and service pages, follow these editorial guidelines:

  • Write Meaningful Alt Text: When describing photos, write clear, brief summaries of what the image actually portrays (e.g., "Technician steam cleaning a living room carpet" instead of "IMG_4021").
  • Use Real Text Over Text-in-Images: If an image contains crucial information, schedules, or instructions, add that information as live body text on the page rather than flattening it into a graphic.
  • Descriptive Link Text: Hyperlinks should describe where they lead (e.g., "View our cleaning packages" instead of "Click here").
  • Do Not Use Images as Functional Buttons: Always use built-in Call-to-Action button components rather than uploading flat images meant to act as clickable buttons.
  • Maintain Heading Structure: Use Heading 2 for major page sections and Heading 3 for subsections. Heading 1 is pre-configured at the top of each page template and should not be duplicated in custom body text.

Community Pages: Localized Landing Pages

Adding the cities, towns, and neighborhoods your business serves during the website setup process unlocks the power of Community Pages. Accessible at Menu > Website > Community Pages, these pages provide dedicated landing URLs designed specifically for hyper-local marketing and neighborhood-specific outreach.

How Community Pages Work

A Community Page is identical to your standard homepage layout, with one high-impact difference: the hero title at the top of the page dynamically highlights the name of that specific community.

  • When defining your headline under Menu > Website > Website Setup > Homepage Information, use the %city% placeholder variable (e.g., "%city%'s Most Trusted Home Cleaning Service").
  • For each community name added to your service area, the platform automatically substitutes the %city% tag with that community's actual name on its dedicated URL.

Hyper-Local Marketing & Sharing

Every community entered in your setup generates a unique URL. When promoting your services to specific neighborhoods, use these dedicated links instead of your general homepage URL to maximize visitor trust and booking conversion rates:

  • Community Social Channels: Share your community links across local Facebook neighborhood groups and Nextdoor business posts.
  • Geo-Targeted Advertising: Route traffic from localized Google Search Ads or Meta/Facebook ads directly to the landing page featuring that prospect's city name.
  • Local Directories & Backlinks: Submit community-specific links to local Chambers of Commerce, neighborhood associations, and town business directories.

Session Persistence & Testing

Community Pages use server-side session variables to keep the visitor's experience consistent throughout their visit:

  • Persistent Headline Personalization: When a prospective customer lands on a community link, the platform records that location in their active session. If they click away to review services, read FAQs, or explore the booking form and later return to your homepage, the hero title will continue to feature their community's name.
  • Resetting the Session for Testing: While testing your site across different towns, you may want to reset your view back to the standard generic headline. Go to Menu > Website > Community Pages and click the Main Homepage panel. This immediately clears the community session variable so you can view the default homepage title again.
Important Note on Renaming Communities:

Editing the name of an existing community will automatically generate a new web address for that page. If you have already distributed or linked the previous URL in live marketing campaigns or social posts, remember to update them with the newly generated link.

Website FAQs

General & Editing

How quickly do website edits appear on the live site?
All updates saved inside the Website Setup wizard take effect immediately on your live website without caching delays or manual publishing steps.
I saved changes in the Website Builder, but they aren't appearing. What should I do?
While changes save to our servers instantly, your browser may still be displaying a previously cached version of the page. To force your browser to retrieve the latest version:

  • Desktop (Chrome, Firefox, Edge): Press Ctrl + F5 (Windows) or Cmd + Shift + R (Mac) to perform a hard refresh.
  • Mobile Browsers: Pull down from the top of the screen to reload, or open your mobile browser settings and clear temporary cached files.
Can I build and update my website from my smartphone?
Yes. The Website Builder is fully responsive and supports editing on desktop, tablet, or mobile browsers.
What happens if I don't provide answers to some FAQ questions?
Any question in the FAQ module left without an answer is automatically excluded from your public site. Only categories and questions with active answers are displayed.

Domains & Performance

Why isn't my website accessible immediately after connecting my custom domain?
After activating your Premium Website Subscription and assigning a custom domain, it can take up to 24 to 48 hours for DNS propagation to complete worldwide. During this period, global name servers update their routing records and our system provisions your SSL certificate.
What built-in SEO and performance features does my website include?
Every site is engineered with enterprise-grade technical and on-page SEO right out of the box:

  • Speed & Infrastructure: Hosted on Amazon Web Services (AWS), optimized for high Google PageSpeed scores, CDN asset delivery, and server-side text compression.
  • Mobile Responsiveness: Fluid layouts that adapt seamlessly across mobile phones, tablets, and desktop screens.
  • Clean Markup & Metadata: Semantic H1/H2 heading hierarchy, custom page titles and meta descriptions, deferred non-critical JavaScript, and an automatically generated robots.txt file.
  • Optimized Media: Native lazy loading for imagery and hero banners, paired with customizable image alt tags for accessibility and indexing.
  • Search-Friendly URLs: Short, keyword-focused static URLs with hyphen separation, dynamic XML sitemaps, and automated HTTP-to-HTTPS security redirects.

Images & Media

Where can I find free, commercially licensed stock photos for my website?
You must only upload images that you own, have licensed, or have obtained under a royalty-free commercial agreement. High-resolution photography licensed for commercial use (such as CC0) can be found at Unsplash, Pexels, and Pixabay.
Can I use my own custom photos instead of stock imagery?
Yes. You can upload custom images for your hero banner, features section, image gallery, service descriptions, and company logo.
How can I insert a YouTube video into the WYSIWYG editor?
  1. Get the YouTube video link: Navigate to the YouTube video and click Share. In the popup window that appears, locate the video URL at the bottom and click Copy.
  2. Insert into the editor: Inside the WYSIWYG editor, click the Video icon toward the right side of the toolbar. In the prompt that asks for a URL, paste your link and then delete everything after the question mark, as well as the question mark itself. A YouTube placeholder may appear showing an error in the editor, but this is normal behavior. Save your changes and view the published page on your website—the video will display and play properly.

Forms & Features

Why isn't a coupon or discount reflecting in the booking form subtotal?
The booking system requires orders to maintain a subtotal greater than $0.00. If applying an introductory coupon or recurring frequency discount causes the order balance to reach $0.00 or below, that specific discount is automatically withheld from the order calculation.
What happens when someone unsubscribes from my mailing list?
When a visitor clicks the unsubscribe link in an email, their address is automatically excluded from future campaign blasts and removed from your subscriber roster. You can review your active subscriber list anytime under Menu > Customers > Mailing List.
Can I connect my booking form to a website built elsewhere?
Yes. Under the Content and Address settings, select the external website option to generate direct links for your booking form and Client Portal that you can embed into third-party sites (like WordPress, Squarespace, or Wix).

Booking Form: Overview & Access

The Online Booking Form allows prospective and returning clients to schedule services directly through your website in real time. It calculates live service pricing, validates staff availability, routes arrival windows, and captures secure payment card authorizations.

To access the booking form configuration wizard:

  1. Navigate to Menu > Website > Website Setup.
  2. Scroll down and click Save.
  3. Select Booking Form Settings from the dropdown menu.
In-App Help Tooltips

Every field on the Booking Form Settings page includes a question mark icon (?) next to its label. Click any icon to view an in-depth explanation of how that specific setting alters the live customer interface.

Booking Form: Pricing & Payment Methods

You can configure how rates appear to visitors and determine how payments are collected at checkout.

Pricing

Controls whether costs are shown on the booking form:

  • Calculate price of services: Displays itemized pricing and calculates a live total as the user selects primary and add-on services.
  • Just show hourly rate: Shows only your hourly service rate associated with the primary service selected.
  • Don't calculate price of services and don't show hourly rate: Hides all monetary totals, dollar signs, and rates. Use this mode if you only want to collect customer requirements and job details upfront in order to send a custom quote later.

Payment Methods

Select which payment options are presented to the client at checkout:

  • Stripe Form Only: Requires clients to input a payment card to submit their booking.
  • Pay After Booking Only: Allows clients to book without entering a card upfront, displaying options to settle payment after the service has been completed (e.g., cash, check, or post-job invoice).
  • Both (Stripe & Pay Later): Offers customers the choice between immediate payment card entry or offline payment methods.

Post-Appointment Payment Options

  • Accepted Offline Types: Select the payment methods that can be used by your customers to pay outstanding invoices (e.g., Cash, Credit Card, Debit Card). Please note that this platform does not integrate with any payment systems aside from Stripe.

Booking Form: Stripe & Card Charging

To accept payment card payments online, you must link an active, free Stripe account.

1. API Keys Connection

Obtain both your Live Keys and Test Keys (Publishable Key and Secret Key for each) from your Stripe Dashboard and enter them into the designated fields. Live keys securely authorize your booking form to process real transactions through your merchant account, while test keys allow you to test and verify your booking form payment process safely without processing real charges.

2. Charge Timing Options

When Stripe is enabled, select how customer payment cards are processed at checkout:

  • Charge Card at Checkout: The customer's payment card is billed the full service total the moment they click submit.
  • Collect Details Only: Securely vaults the customer's card details at checkout without initiating a charge. Your team can then review the completed job and manually bill the card on file once service has been rendered and with the approval of the customer.

    When this option is selected, the checkout screen automatically informs the customer: "Your card will only be charged after service has been rendered."

3. Default Promotional Coupons

If you are running an introductory special or seasonal campaign (e.g., 10% off all bookings), configure the discount under Menu > Invoices > Coupons, then select it from the Default Coupon dropdown. It will automatically apply to all bookings initiated through the booking form.

Show Coupon Banner: When this setting is enabled, a banner will be displayed at the top of your website promoting the default coupon code that will be applied to customers' online orders.

Booking Form: Scheduling & Real-Time Availability

The booking form dynamically calculates availability to prevent double-booking and protect technician drive times.

Start Time Windows (Arrival Ranges)

Because traffic, travel, and job overages can make pinpoint arrival difficult, you can set an arrival window:

  • Enter the desired arrival spread in the Start Time Window field (e.g., enter 2 for a two-hour window).
  • On the live booking form, customer arrival times will display as a flexible range (e.g., selecting 10:00 AM displays an arrival window of 9:00 AM – 11:00 AM, or ±1 hour).

Start Time Intervals

Controls the increments available in the appointment time picker:

  • 30 Minutes: Clients can book slots at 9:00 AM, 9:30 AM, 10:00 AM, etc.
  • 60 Minutes: Restricts selectable arrival times to the top of the hour (9:00 AM, 10:00 AM, 11:00 AM).

Length of Booking Calculation

To block out your calendar accurately, every online booking must have an estimated duration:

  • Fixed Duration: Allocates a set duration for every booking (e.g., 1 hour per appointment), regardless of the job size.
  • Dynamic ($ Value Scaling): Scales duration proportionally based on the invoice subtotal (e.g., 1 hour per $100 of service). In this mode, a $300 booking automatically reserves a 3-hour block on your dispatch calendar.

Blackout Periods & Minimum Staffing

  • Rolling Blackout Period: Controls how far in advance appointments must be made. Setting this to 1 day prevents same-day bookings and allows clients to book as early as tomorrow; setting it to 2 days requires at least 48 hours notice.
  • Minimum Employees for Availability: Defines the minimum number of available staff required across your workforce before an appointment slot is displayed. For example, if a job requires a two-person crew, set this threshold to 2. If only one worker is free during a slot, that time slot is hidden from the booking form.

Booking Form: Auto-Scheduling & Team Logic

Streamline dispatch operations by allowing the system to automatically assign confirmed bookings to available crews.

Enabling the Auto-Scheduler

Enable the Auto Scheduling toggle to automatically assign new bookings to the most appropriate team based on availability and shift schedules. This eliminates manual calendar dispatching.

"Only Entire Team" Dispatch Safeguard

When using multi-person crews, enable Only Entire Team:

  • The auto-scheduler will only assign a job to a team if every assigned member of that team is available during the appointment window.
  • This prevents partial-crew assignments where only one technician is available for a multi-person job.

Booking Form: Notes & Custom Messages

Customize form instructions, policies, and post-booking confirmations to keep clients informed.

Form Options

Job Address Title: Set this field if you would like to override the default "Job Address" title that appears on your booking or quote request form (leave as No Override to keep the default).

Please note: Changing this setting will also update the label that appears across quotes, work orders, and invoices wherever "Job Address" is normally displayed.

Messages

SMS Notification to Business: When this flag is enabled, an SMS notification will automatically be sent to your mobile phone whenever a customer completes an online booking or quote request.

Requirement: To enable SMS notifications on bookings, your Messaging Profile must be completed and the resulting application submitted to Twilio on your behalf must be approved.

Form Notes & Policy Disclaimers

  • Business Email Address: The primary internal inbox where instant copies of booking confirmations and client receipts are delivered.
  • Booking Form Note (Top Banner): An optional announcement banner rendered at the top of the booking form. Use this to highlight active sales, seasonal promos, or holiday notices.
  • Booking Form Note 2 (Special Instructions): Displayed directly beneath the Special Instructions section of checkout. Use this area to outline essential policies, such as your Cancellation & Rescheduling Policy, prior to submission.
  • Instructions Request Field: A customizable prompt that asks customers for key logistical details during checkout (e.g., "How will our team access the property? Please provide gate or lockbox codes.").

Success Screens & Receipts

  • Booking Success Message: Displayed at the top of the confirmation screen once the form is submitted (e.g., "Thank you for choosing us! We've received your booking and look forward to serving you.").
  • Payment Success Message: Displayed immediately after a payment card transaction completes.
  • Invoice Note: Appends a permanent footer message or payment receipt disclaimer to the bottom of all work orders and invoices.

Booking Form: Primary Service Drivers

Most home and commercial service pricing scales based on the size of the client's property. Primary Service Drivers define the structural variables (e.g., bedrooms, bathrooms, square footage) that drive your rates.

Industry Defaults

Selecting Home Cleaning during initial setup automatically seeds standard drivers (Bedrooms and Bathrooms). You can modify these or create custom drivers at any time.

Configuring a Service Driver

  1. Navigate to the Primary Service Drivers section and click Create Service Driver (or click Edit on an existing driver).
  2. Title (Plural): Enter the plural name of the driver (e.g., Bedrooms).
  3. Singular Title: Enter the singular form (e.g., Bedroom). This ensures the form cleanly displays "1 Bedroom" instead of "1 Bedrooms".
  4. Minimum & Maximum Selections: Establish the selection range for the customer (e.g., a minimum of 1 and a maximum of 6).
  5. Increment: Set the step value. For room counts, enter 1. For drivers based on area (such as Square Footage), set the increment to 100 or 250.
  6. Click Save.

Booking Form: Primary Services & Pricing Structures

Primary services represent the core offerings your business provides (e.g., Standard Clean, Deep Clean, Move-In/Move-Out Clean). You can configure up to 10 distinct primary services, each with its own pricing model.

To configure a service, click Create Primary Service and choose one of three pricing methods:

Method 1: Base Fee (Flat Rate)

Charges a single, fixed dollar amount for the service regardless of property size. Best suited for standardized packages or uniform diagnostic visits.

Method 2: Service Drivers (Variable Property Sizing)

Calculates dynamic pricing by multiplying the client's driver inputs by your defined rates:

  • Assign rates per driver unit (e.g., $75.00 per Bedroom and $50.00 per Bathroom).
  • Base / Travel Fee: Add an optional fixed baseline fee (e.g., $25.00) that is applied to every booking to cover travel or baseline supply costs regardless of property size.
  • Sale Pricing: Specify an optional discounted rate alongside standard pricing to highlight promotions.

Method 3: Hours and Workers (Labor-Based)

Allows the client to select the team size and booking duration directly:

  • Hourly Rate: Set the baseline labor rate per worker (e.g., $50.00/hour).
  • Hour Increments: Define the minimum, maximum, and step increments for booking hours (e.g., Min: 1, Max: 8, Increment: 1).
  • Worker Counts: Enter the worker title (e.g., Cleaner / Cleaners) and define minimum and maximum crew sizes (e.g., Min: 2, Max: 6, Increment: 2 to allow 2, 4, or 6 technicians).

Primary Service Volume Pricing

To configure tiered pricing for your services, navigate to Menu > Services > Volume Pricing.

Volume pricing allows you to establish tiered unit rates for primary services. Pricing for quantities above the indicated limit will be based on the pricing on the Primary Service Volume Pricing setup page rather than the standard per-unit pricing defined in your Primary Service setup.

Setup Fields & Configuration

  1. Primary Service: Use the Select Primary Service dropdown to pick the specific service you want to apply volume pricing to.
  2. Primary Service Driver: Use the Select Driver dropdown to choose the unit or driver variable that dictates the quantity for this service.
  3. Quantity Limit: Specify the quantity threshold for this tier. Only quantities above this limit and up to the next tier limit will be priced at this tier's rate.
  4. Price per Unit: Enter the custom rate charged per unit for quantities falling within this tier bracket.
  5. Add Volume Pricing Level: Click this button to add another bracket. You can configure multiple volume pricing levels across different primary services all from this single setup page.

Booking Form: Optional Add-Ons (Extra Services)

Add-ons offer clients optional service upgrades during booking (e.g., Inside Oven, Inside Refrigerator, Wall Washing), helping boost average order values.

Setting Up an Add-On

  1. Navigate to the Extra Services tab and click Create Extra Service (or edit a pre-populated default).
  2. Enter the service title and an optional summary description.
  3. Service Icon: Upload a custom graphic, use the default industry icon, or leave the field blank. Leaving the field blank renders a clean plus icon (+) on the booking form.
  4. Select a Pricing Method:
    • Flat Rate: Billed at a fixed rate (e.g., $20.00 flat to clean an oven).
    • User-Supplied Quantity: Prompts the client to enter a unit count (e.g., number of ovens), multiplying that number by your unit price (e.g., 2 ovens × $20 = $40).
    • Primary Service Drivers: Scales the add-on price based on overall property size (e.g., washing interior walls priced at $15/bedroom + $10/bathroom).
  5. Ensure the service is Enabled, then click Save.

Testing Your Booking Form

Before launching your website and taking live customer orders, it is essential to run end-to-end test bookings. Testing verifies that your primary services, pricing calculations, arrival windows, and payment collection gateways function exactly as intended.

1. Launching a Simulation Booking

  1. From your main navigation bar, click Website Preview (or navigate to Menu > Website > Website Preview).
  2. Click the Book Now button in your preview website's header or hero banner.
  3. Select services, input service drivers (such as room counts or square footage), pick an appointment time, and proceed to the payment step.

2. Stripe Test Payment Cards

If you have connected your Stripe account and enabled card payments, you can safely submit orders while in 'Website Preview' mode without charging a real card by using Stripe's official test card credentials:

Brand Card Number CVC Expiration Date
Visa 4242 4242 4242 4242 Any 3 digits Any future date
Mastercard 5555 5555 5555 4444 Any 3 digits Any future date
American Express 3782 822463 10005 Any 4 digits Any future date
Test Mode Notice:

Test cards only succeed when your booking form is actively communicating through your Stripe Test API keys. Never test your live booking form with a real payment card, as Stripe prohibits processing self-transactions. Doing so can lead to permanent Stripe account suspection.

3. Verifying Test Transactions in Stripe

You can confirm that your simulated orders are correctly routing through your merchant gateway directly within Stripe:

  1. Log into your Stripe Dashboard.
  2. In the left sidebar menu, click the View test data toggle to enter test mode.
  3. Stripe view test data toggle

  4. Click Payments in the left menu to view your simulated transactions and check authorizations.
  5. Stripe test payments dashboard view

4. Reviewing Test Invoices on the Platform

Simulated bookings automatically generate test invoices and work orders in your account so you can verify line items, taxes, and customer contact data:

  1. Close the website preview tab and return to your platform administrative dashboard.
  2. Navigate to Menu > Invoices > Invoices.
  3. Click the View Test Invoices button positioned at the top of the invoice ledger.

View Test Invoices button on invoices screen

Booking Form FAQs

Configuration & Display

I configured my booking form, but the booking link or form is not showing on my website. Why?
If your booking form is not visible, verify the following two setup requirements:

1. Enable the Booking Form Toggle: Navigate to Menu > Website > Website Setup, select Site Content and Address from the top dropdown, and click Go.

Navigate to Site Content and Address page

On the Site Content and Address page, ensure the Booking Form toggle is switched on.

Enable Booking Form switch

2. Create at Least One Primary Service: The booking engine requires at least one active primary service to generate the booking interface. Navigate to the Primary Services setup page and ensure at least one core service has been configured and saved.

Primary Services setup screen
Can I use the booking form solely to capture leads without displaying prices?
Yes. Set Pricing to Don't calculate price of services and don't show hourly rate. The form will collect property specifications, service requests, and customer contact details while hiding all rates, allowing you to follow up with a custom estimate.
What is an example of a Primary Service Driver setup?
Primary Service Drivers scale your rates dynamically based on property size. When defining a driver, configuring both the plural title (e.g., Bedrooms) and singular title (e.g., Bedroom) ensures proper grammar on the live form when selecting single units:

Primary Service Driver configuration editor

This backend driver configuration generates the following customer-facing selector on your booking form:

Live Booking Form service driver selector preview
Where can I find custom icons for my booking form's add-on services?
You can upload custom graphic icons to represent each optional add-on (extra service) on your booking form. An efficient way to produce a visually cohesive icon set tailored to your trade is to use modern AI image generators (such as Midjourney or DALL-E) to generate matching minimalist vector or line-art icons with transparent backgrounds.

Payments & Stripe

Is a Stripe account required to accept online bookings?
No. Connecting a Stripe account is only required if you wish to collect payment card authorizations at checkout or charge customer cards on file after service completion. If you do not use Stripe, you can configure your payment method to Pay After Booking Only to allow clients to book online and settle payment via cash, check, or post-job invoice.
Can I capture a customer's payment card without charging it right away?
Yes. For the Payment Card, select Collect payment card during online booking. This securely vaults the client's card credentials without initiating a charge. With customer consent, your staff can bill the vaulted card once service is delivered on-site.

Scheduling & Notifications

How does the system prevent two customers from booking the same arrival slot?
The system recalculates your calendar availability in real time. Whenever an appointment is reserved, the auto-scheduler checks working shift hours and deducts the booking duration from assigned crew schedules. If your Minimum Employees for Availability threshold is no longer met, that time slot is automatically removed from the booking form.
Why does my booking form display arrival windows as "+/- 1 hour"?
This occurs when your Start Time Window is set to 2. A 2-hour window is displayed to customers as a 1-hour buffer before and after their selected time (e.g., a 10:00 AM selection results in a 9:00 AM – 11:00 AM arrival window).
How can I receive an instant SMS notification whenever a customer books online?
You can receive an immediate text alert on your mobile phone whenever an online booking or quote request is submitted by completing the following steps:

  • Navigate to Menu > Website > Website Setup > Business Information.
  • Enter your direct mobile number in the Business Mobile Phone field and click Save.
  • Open Booking Form Settings from the setup dropdown.
  • Scroll down to the Messages section, enable the SMS Notification to Business toggle, and click Save.

Unpriced Bookings & Online Quote Requests: Overview & Modes

While standard online booking calculates instant dollar totals, many service businesses cannot provide upfront pricing without first evaluating job complexity, property conditions, or custom customer requirements. The platform provides two flexible scoping modes to capture online demand without locking in premature prices:

  • Mode 1 – Bookings Without Pricing (Appointment Intake): Customers commit to a confirmed calendar arrival slot, select requested services, and enter property details, but all dollar amounts, prices, and rates are hidden during checkout and on booking confirmation. Pricing is assessed on-site and billed after service.
  • Mode 2 – Online Quote Requests (Interactive Proposal Funnel): Replaces the "Book Now" checkout button with a "Request Quote" workflow. Customers submit desired dates, scopes, and site photos. Submissions do not hold calendar slots; instead, they generate reviewable requests that dispatchers convert into formal quotes.

Mode 1: Bookings Without Pricing

Use this configuration if you want to secure appointments on your master calendar while deferring rate calculations until work is inspected or completed.

Configuration Steps

  1. Navigate to Menu > Website > Website Setup, scroll down, and click Save.
  2. Select Booking Form Settings from the dropdown menu.
  3. Locate Pricing at the top of the screen and select:

    Don't calculate price of services and don't show hourly rate

  4. On the same page, within the Quote Requests section, ensure that Online Bookings Generate Quote Requests is disabled.
  5. Save your settings.

Customer-Facing Experience

On your live website, the pricing summary sidebar and all dollar values are stripped from the booking form. Customers select rooms, add-on tasks (e.g., inside ovens, wall washing), pick an available arrival window, enter their contact info, and submit the booking with zero pricing displayed.

Post-Service Scoping & Invoicing

When an unpriced booking is submitted, the system reserves the appointment on your calendar and creates a draft work order.

Applying Costs and Requesting Payment

  1. Locate the booking via Dashboard > Online Bookings or Menu > Work Orders > Work Orders.
  2. Open the work order and click Actions > Edit Work Order.
  3. Notice that the line items currently lack pricing fields. Scroll down and click the blue Add Pricing button.
  4. Input your assessed unit costs for each requested service (e.g., $100 for bedrooms, $75 for bathrooms, $50 for ovens).
  5. Click Save to commit the totals and confirm the appointment date.
  6. Click Actions > Request Payment. The system automatically dispatches an itemized digital invoice with a secure online payment link to the customer's email.

Mode 2: Online Quote Requests

If your service requires full proposal sign-off before committing technician labor or calendar space, configure the booking engine to capture quote requests.

Enabling the Quote Request Funnel

  1. Navigate to Menu > Website > Website Setup > Booking Form Settings.
  2. Set Pricing to Don't calculate price of services and don't show hourly rate.
  3. Scroll down to the Quote Requests section and toggle on Online bookings generate quote requests
  4. Configure other settings within the Quote Requests section as desired.
  5. Click Save.
Automatic Website Adaptation

Enabling this toggle automatically updates your public website header navigation and homepage hero banners: the standard "Book Now" call-to-action button dynamically transforms into "Request Quote".

Customer Photo Intake

When prospective clients complete a Quote Request on your website, the confirmation screen introduces an interactive Photo Upload Portal:

  • Mobile Camera Capture: Customers filling out requests on smartphones can tap Choose File to open their camera and snap photos of specific rooms, stain areas, or equipment directly.
  • Desktop Gallery Uploads: Desktop users can upload image files directly from their computer drives.
  • Customer Captions: Clients can attach contextual comments to each photo (e.g., "Living room carpet stains near patio door") to explain the required scope.
  • Instant Delivery: Uploaded images attach directly to the quote request record in your administrative console.

Reviewing & Converting Requests

When a quote request is submitted, both the customer and your business inbox receive immediate confirmation emails. Unactioned requests are flagged on your administrative dashboard under Dashboard > Jobs > Requests Outstanding.

Auditing and Action Options

Quote Requests can be found by navigating to Menu > Quotes > Quote Requests

Open the pending request to inspect the customer's requested scope, target appointment date, and click thumbnails within the Photos tab to review full-screen photos. From the Actions menu, choose one of three conversion paths:

  • Copy to Quote (Standard Flow): Clones all quote request data into the Quote Builder. You can fine-tune standard pricing, replace item rates (e.g., increasing oven cleaning from $20 to $70 for heavy grease), save the quote, and click Request Approval to send the to the client.
  • Copy to Work Order (Verbal Agreement Bypass): If you already finalized pricing with the client over the phone, select this option to bypass the formal quote step. This immediately reserves the calendar slot, generates a work order, and triggers crew auto-scheduling.
  • Cancel Request: Cancels the request. No communication is sent out to the client upon clicking this button. Be sure to send and email or call the customer to explain why you cannot satisfy the request.

Unpriced Bookings FAQs

Does a Quote Request hold an appointment slot on my calendar?
No. Unlike unpriced bookings, a Quote Request does not block out dispatch calendar capacity. A calendar booking is only created once you convert the request into a quote and the customer approves it (or you copy it directly to a work order).

What happens when a customer accepts a converted quote?
The moment the customer clicks Accept on their digital quote form or within the Client Portal, the system automatically creates a confirmed appointment on your calendar, creates a work order, and runs the auto-scheduler to assign technicians.

Can I show my hourly labor rate while still hiding total dollar estimates?
Yes. In Booking Form Settings, set Pricing to Just show hourly rate. The form will communicate your base hourly rate for transparency while suppressing total dollar computations at checkout.

Where do customer uploaded photos appear after converting a request into a quote?
All customer-submitted photos carry over into the quote's Photos tab. Staff can review them internally or toggle Share with Client to render the photos inside the proposal document on the Client Portal.

Service Matrix: Overview & Visual Layout

If your service business offers tiered packages (such as Bronze, Silver, and Gold or Basic, Deep, and Move-In/Move-Out), communicating scope differences can be difficult. The Service Matrix provides an interactive, side-by-side comparison table published on your website under Services > Packages that clearly outlines what is included in each offering.

Within the Website Setup process, you can configure your service matrix by access the Service Pages page.

Core Display Capabilities

  • Granular Scope Categorization: Group tasks by functional service area (e.g., Kitchen, Living Room, Bathrooms or Exterior, Interior, Engine Bay).
  • Three Line-Item Statuses: Distinctly highlight whether a service task is:
    1. Included: Marked with an active checkmark.
    2. Excluded: Clearly marked as not included in that tier.
    3. Add-On Upgrade ($ Fee): Flagged as available for an additional optional charge (e.g., +$20.00).
  • Interactive Item Notes: Attach informative notes or scope explanations to individual line items (e.g., specifying what "Clean Inside Stove" entails). Visitors can click the item to expand the note.
  • Direct Conversion CTA: A prominent Book Now button sits at the base of the matrix, immediately directing prospective clients into your live booking funnel.
  • Mobile-Optimized Selector: On mobile devices, wide multi-column comparison tables can be unreadable. The Service Matrix automatically converts on mobile into a clean tabbed package switcher, allowing mobile visitors to toggle smoothly between tiers.

Accessing Matrix Setup

To configure your package comparison table:

  1. Navigate to Menu > Website > Website Setup.
  2. Scroll down to the bottom and click Save.
  3. Select Services from the setup menu dropdown.
Industry Preset Templates

Depending on the trade chosen under your Business Information settings (e.g., Home Cleaning, Detailing), the system may automatically pre-populate your matrix with recommended categories and tasks. You can edit, delete, or build custom tiers from scratch.

Intro Content & Media

Positioned directly above the comparison grid, the Introduction Rich-Text Editor allows you to frame your service offerings with contextual marketing copy:

  • Overview Copy: Summarize package pricing guidelines, guarantees, or general recommendations (e.g., "We recommend our Deep Clean package for all first-time visits.").
  • Embedded Visuals & Media: Insert high-resolution photos, badges, pricing cards, or embedded YouTube/Vimeo video explainers directly into the header block.

Package Tiers & Headings

The Service Headings define the vertical columns of your matrix:

  • Up to 5 Packages: You can configure between 1 and 5 distinct service packages (e.g., Standard, Deluxe, Premium).
  • Column Re-ordering: Use the up and down arrow buttons ( / ) to adjust the sequence of your packages. Tiers display on your live website in the exact order established here.

Areas, Items & Add-On Fees

Once your package headings are created, structure the body of your comparison table by defining functional service zones and individual tasks.

1. Define Service Areas

Add the major categories or zones of your service (e.g., Kitchen, Bedrooms, Exterior). These serve as distinct dividing headers within the comparison table.

2. Add Line Items & Assign Tiers

Click Configure Matrix to add tasks under each service area:

  • Task Name: Enter the specific item (e.g., "Carpet Steam Cleaning" or "Dusting Baseboards").
  • Package Applicability: Check the box for each package tier that includes this service. Leaving a box unchecked automatically marks that item as excluded for that tier.
  • Add-On Upgrades ($): If an item is not included by default in a tier but can be purchased as an optional add-on, enter the dollar upgrade price (e.g., enter $20.00 under Bronze). The matrix will display +$20.00 instead of a standard exclusion.
  • Item Notes: Click the note icon next to any task to enter explanatory text or conditions (e.g., "Requires access to an outdoor water spigot").

3. Save & Live View

Click Save and Preview to launch an immediate viewport simulator toggling between desktop and mobile views. Visitors can view the live table anytime under Services > Packages in your primary website header.

Service Matrix FAQs

How many service packages can I compare side-by-side?
You can configure up to 5 distinct package tiers in the Service Matrix.

Can I display an extra fee for a task rather than a checkmark?
Yes. When configuring matrix tasks, you can type a dollar value into a package's field instead of checking the box. The matrix will display that dollar amount as an optional upgrade price for that tier.

How does the Service Matrix display on smartphones?
Instead of shrinking wide tables down to an unreadable size, the mobile matrix automatically stacks into an interactive package selector. Visitors tap between package tabs to inspect itemized inclusions and upgrade costs cleanly.

Where do clients go when they click "Book Now" on the matrix page?
Clicking the Book Now button directs visitors straight to your online booking form, allowing them to select their preferred service tier and schedule their appointment immediately.

External Integration: Overview & Architecture

If you already have a website built on an external CMS or site builder (such as WordPress, Squarespace, Wix, Carrd, Webflow, or GoDaddy), you do not need to migrate your website. You can connect your existing site directly to our booking engine and self-service Client Portal.

In this hybrid setup:

  • Your External Site: Remains your primary digital storefront, hosting your homepage, marketing copy, and brand assets.
  • Hosted Booking Form: Securely processes real-time scheduling, calculates service driver pricing, and collects payments or card vaults via Stripe.
  • Hosted Client Portal: Gives clients a secure area to view past invoices, manage upcoming appointments, and update stored payment methods.
  • Seamless Return Routing: Integrated redirects and navigation links automatically guide visitors back to your external website once their booking or portal session is complete.

Platform Configuration

To connect your external site, navigate to Menu > Website > Website Setup and advance to the Content and Address step.

1. Core Modules & Toggles

  • Booking Form: Set to Enabled to activate your live online booking URL.
  • Home Booking Form: Set to Disabled.

    Note: The homepage booking lead form is designed exclusively for built-in, platform-powered websites where the form overlays the hero banner. When using an external website, disable this switch.

  • Client Portal: Set to Enabled to provide customers with an account management hub.

2. Website Integration Mode

Under the Website setting, select:

Integrate with a non-platform powered website

3. Subdomain vs. Custom Domain

  • Free Plan (Subdomain): Enter your chosen brand handle in the subdomain field (e.g., entering supercleanaustin generates your secure hosted address at supercleanaustin.bluesailagency.com).
  • Premium Plan (Custom Domain): You can assign a custom branded URL (e.g., yourcompanybooking.com) to host your booking flow.

4. Setting the "Homepage Domain" (Crucial)

Locate the Homepage Domain field and enter the exact URL of your external website (e.g., https://www.superclean.com or https://supercleannow.carrd.co).

Why the Homepage Domain Is Critical

The URL entered here establishes all back-links across your booking system. It dictates:

  • Where visitors are sent if they click your Logo in the booking form header.
  • The destination of the "Back to Main Website" button inside the Client Portal.
  • Where clients are redirected when they Log Out of the portal.
  • The destination of the automatic 10-second post-booking redirect timer.

Connecting to Your External Site

To integrate the booking flow, add clear Call-to-Action (CTA) buttons or navigation links to your external site builder pointing to your retrieved URLs for the booking form and client portal.

Example: Single-Page Site (e.g., Carrd)

  1. Open your site editor in Carrd.
  2. Click + Add Element and choose Buttons or Links.
  3. Label the primary button: Book Now.
  4. Paste your Direct Booking Form URL into the URL field.
  5. Create a secondary link (e.g., in your top header or footer) labeled Client Portal or Customer Login.
  6. Paste your Client Portal URL into that link's URL field.
  7. Publish your changes.

Standard Multi-Page Builders (WordPress, Squarespace, Wix, GoDaddy)

  • Header Navigation: Add a prominent "Book Online" button to your primary header menu linking directly to your booking form. Add a smaller text link for "Client Login".
  • Hero Section: Ensure your homepage masthead has a high-visibility button (e.g., "Instant Estimate & Booking") linking straight to the booking URL.
  • Dedicated Service Pages: At the bottom of each service overview page, add a CTA linking directly to your booking page so prospective clients don't have to search for where to schedule.

Redirects & User Experience Flow

Once linked, visitors enjoy a continuous, branded transition between your marketing site and operational booking forms.

Brand Continuity

Your hosted booking and portal pages automatically inherit your Business Logo, Favicon, Brand Accent Colors, and public contact information configured during booking form setup, maintaining brand consistency when visitors leave your primary site.

The Post-Booking Auto-Redirect Timer

When a client finishes submitting a booking on your platform:

  1. They receive an on-screen booking confirmation, and an itemized confirmation email is dispatched immediately.
  2. A countdown timer displays at the bottom of the confirmation screen.
  3. If the client takes no action, the system automatically redirects them back to your external Homepage Domain when the timer reaches zero.
  4. The client can also click Back to Homepage immediately or click to pause/cancel the timer if they want to review their confirmation details longer.

Client Portal Sessions

Returning customers can use your Client Portal link to log in, view scheduled jobs, check invoice balances, or update stored payment cards. Clicking Back to Website in the portal navigation or clicking Log Out immediately returns them to your external homepage.

Integration FAQs

Do I need to embed an iframe into my website?
No. Linking directly to your hosted booking URL via standard buttons is the recommended approach. It avoids iframe mobile-scaling glitches, ensures fast loading times, and guarantees that SSL encryption and Stripe payment security requirements are strictly met.

Can I style the booking form to match my website fonts and colors?
Yes. Under Business Information and Templates in the setup wizard, you can set an Accent Color that matches your external brand colors. This color dynamically styles booking form buttons, highlighted selections, and links.

Why is the booking form logo sending users to the wrong page?
Ensure you entered your full external web address (including https://) into the Homepage Domain field under Content and Address. If this field is blank or misconfigured, the logo link cannot redirect visitors back to your primary site.

Client Portal: Overview & Authentication

The Client Portal gives your customers a dedicated, self-service dashboard to manage their accounts 24/7. Fully optimized for desktop, tablet, and mobile browsers, the portal allows customers to approve estimates, pay invoices, review appointment schedules, manage multiple properties, and vault payment cards—significantly reducing administrative back-and-forth for your office.

Account Creation & Email Matching

  • Automatic Account Linking: The portal links records based on the customer’s Email Address. Any past quotes, invoices, or service visits previously generated under that email address automatically appear the moment they log in.
  • Email Verification: When a new customer registers on the portal, the system dispatches an automated verification email containing an activation link. The customer must click this link to confirm their email identity before accessing their records.
  • Two-Factor Authentication (2FA): For added account security, customers can enable two-factor authentication directly within their portal settings using standard authenticator apps (such as Google Authenticator, Authy, or 1Password).
  • Public Site Access: Visitors access the portal login screen via the Client Portal link in your website navigation header.

Customer Features & Tour

Inside the portal, customers can access several self-service management modules:

  • Profile & Notifications: Customers can update their contact name, phone number, and billing address, and toggle whether they wish to receive SMS/MMS messages (i.e. text messages).
  • Property Management: Clients can view, add, or update service addresses. This is especially useful for commercial accounts, real estate agents, and property management companies with multiple locations.
  • Quote Review: Access to pending, approved, declined, or expired quotes. Customers can review job specifications, inspect technician-attached site photos, and accept or decline with notes.
  • Invoices & Billing History: Customers can review paid receipts, outstanding invoices, and processed refunds. Unpaid invoices can be settled instantly using the card on file or a newly entered card.
  • Upcoming Appointments: Displays future service visits, arrival windows, assigned crews, and booking details.
  • Notification Bell: An alert icon at the top of the portal highlights urgent customer items, such as past-due invoices or appointments happening within 24 hours.

Master Access & Properties Settings

Administrators have granular control over which portal modules are accessible to customers.

Navigate to Menu > Website > Client Portal Settings to change settings related to the Client Portal.

1. Master Switch (General Access)

The Client Portal Enabled toggle acts as the platform-wide master switch:

  • Enabled: The portal is accessible, the login link appears across your website, and customers can sign in.
  • Disabled: Completely shuts down customer portal access across your public site. Visitors navigating to the portal URL will be redirected to your homepage.

2. Properties Permission

Enable the Properties toggle to allow customers to add new service locations or update existing property details directly from their dashboard. If disabled, clients can only be serviced at addresses added internally by your staff.

Quotes in Client Portal

Under the Quotes settings panel, configure how prospective and returning clients interact with estimates:

  • View Quotes: Toggle whether past and pending quotes are visible in the portal.
  • Approve & Reject Quotes: When enabled, clients can click Accept to lock in a quote, or click Reject and leave feedback explaining why they declined.
    Instant Admin Alerts

    Whenever a customer accepts or rejects a quote inside the portal, the system automatically logs the decision in the document audit history and sends an immediate email alert to your business inbox.

Invoices, Payments & Tips

Under the Invoices and Payments settings panel, manage how clients view balances and settle accounts:

  • View Invoices: Grants access to full billing history, categorized by Paid, Due, Past Due, and Refunded.
  • Allow Online Payments: When enabled, an outstanding balance displays a Pay Invoice button, letting clients settle bills instantly through your connected Stripe account.
  • Add & Update Payment Cards: Allows customers to vault a new credit or debit card at any time via a secure Stripe modal. Only one card can be active at a time for an individual customer.
  • Customer Tipping: When paying an invoice online, clients can add an optional gratuity directly to the subtotal before processing their card.

Appointments, Rescheduling & Cancellations

Under the Future Appointments settings panel, establish self-service scheduling policies to prevent last-minute calendar disruptions:

  • View Future Appointments: Allows customers to see confirmed bookings, arrival times, and service specifications.
  • Prepay Appointments: If enabled, clients can pay for upcoming visits in advance. If your business prefers to bill strictly after work is rendered, disable this switch to hide prepayment buttons.
  • Appointment Cancellation Window: Set a lead-time buffer (e.g., 7 days). Clients can only cancel online if the appointment is further out than this cutoff. Cancellations within the window require direct contact with your office.
  • Appointment Rescheduling Window: Define the minimum days in advance required for self-service rescheduling (e.g., 7 days).
Critical Guardrail: One-Time Self-Service Rescheduling

To prevent chronic schedule shuffling, the system enforces a strict single-reschedule limit per booking. Even if an appointment falls well outside the rescheduling window, a customer can only reschedule an appointment once through the portal. Any subsequent adjustments require the customer to contact your team directly.

Master Recurring Work Orders

For accounts with recurring services (e.g., weekly or bi-weekly visits), enable Clients can see reoccuring appointments. This allows the client to review the root agreement that generates their recurring appointment series.

Staff Privacy & Visibility Controls

Control how much technician information is shared with customers prior to an appointment:

  • Show Assigned Staff: Displays the first and last names of the crew members scheduled to the customer’s appointment.
  • Show Staff Headshots: Renders profile photos of the assigned employees. Displaying authentic team photos builds visitor trust and provides peace of mind for residential visits.
  • Show Staff Phone Numbers: Displays individual technician phone numbers. Disable this setting if you prefer all customer calls and inquiries to route through your main office line.

Customizing Welcome Content

When clients log into their dashboard, the first screen they see is the Portal Welcome Section. You can completely customize this area to communicate announcements or drive sales:

  • WYSIWYG Editor: Compose formatted announcements, add company updates, or outline seasonal holiday operating hours.
  • Promotions & Upsells: Highlight upcoming seasonal discounts (e.g., "Save 15% on gutter cleaning this fall") with direct links to your booking form.
  • Rich Media: Embed welcome videos, company guarantee graphics, or customer service FAQs.

Client Portal FAQs

Can a customer view records belonging to different family members?
No. Record access is strictly tied to the verified email address on file. Customers only see quotes, properties, invoices, and appointments linked to their authenticated account email.

What happens when a customer reschedules an appointment?
The customer selects an available time slot from your live calendar. The previous appointment slot is instantly released, the calendar updates, assigned technicians are shifted to the new time, and an alert email is sent to your business inbox.

Can clients update their payment card without paying an invoice?
Yes. In the Payment Methods section of the portal, customers can add, delete, or replace stored payment cards on file at any time without having to make a payment.

Can I prevent customers from seeing technician mobile numbers?
Yes. Under Client Portal Settings > Future Appointments, disable the Show Staff Phone Numbers toggle. Clients will still see crew names and photos (if enabled), but all contact must route through your main business phone number.

Blog Posts: Overview & SEO Strategy

The integrated Blog Engine enables you to publish educational articles, company announcements, seasonal promotions, and industry tips directly to your online presence. Regularly publishing high-quality blog content serves three core business functions:

  • Organic Search Ranking (SEO): Search engines like Google prioritize active websites that consistently publish fresh, relevant content. Localized blog posts packed with service keywords help your website outrank regional competitors.
  • Social Media Lead Generation: Every article generates a dedicated web URL that can be shared across Facebook, Instagram, LinkedIn, and X (Twitter) to funnel organic social traffic back to your booking engine.
  • Customer & Employee Communication: Keeps both clients and internal field teams informed about business milestones, new equipment, seasonal service packages, or holiday hours.

Creating Posts & Target Visibility

To access blog management, navigate to:

Menu > Website > Blog

Click Create Post to initiate a new article.

1. Post Title & Target Visibility

  • Title: Enter a clear, keyword-rich headline for the article (e.g., "Grand Opening Specials & Spring Cleaning Tips").
  • Target Publishing Destination: Choose where the post will be visible:
    • Website: Publishes exclusively to your public customer-facing website.
    • Employee Portal: Restricts the post exclusively to the internal employee portal for internal announcements and training notices.
    • Both: Distributes the article publicly to clients and internally to your technician team simultaneously.

2. Featured Thumbnail & Image SEO

  • Thumbnail Image: Upload a high-resolution featured image. This graphic serves as the visual masthead for the post and represents the article card in your public blog catalog.
  • SEO Keywords (Alt-Text): Input descriptive keywords that represent the thumbnail (e.g., kitchen, deep cleaning, san antonio). This populates image alt-tags to assist image search indexing.

WYSIWYG Editor & Formatting

The rich-text content editor provides an intuitive writing interface similar to standard word processing software:

  • Full-Screen Distraction-Free Mode: Click the Full Screen icon in the toolbar to expand the canvas across your entire monitor for easier composition.
  • Typography & Headings: Style headers, subheaders, body paragraphs, bulleted lists, numbered lists, blockquotes, and text colors.
  • Alignment Controls: Align text left, center, right, or justified using the paragraph formatting dropdown.
  • Editor Help & Hotkeys: Click the Help menu item in the editor toolbar to review keyboard shortcuts for rapid styling.

Image Scaling & Video Embeds

Engage readers by incorporating visual proof, diagrams, and video overviews directly inside the body copy.

1. Inserting & Scaling Body Images

  1. Click the Insert Image icon in the editor toolbar and upload your photo.
  2. Click directly on the placed image to reveal responsive sizing and layout options:
    • Width Presets: Scale the image to 25%, 50%, or 100% of the container width to prevent photos from breaking mobile layouts.
    • Text Wrapping & Floats: Float the image to the left or right to allow text to wrap cleanly around it, or set to inline/unfloated.

2. Embedding Streamable Videos (YouTube)

  1. Get the YouTube video link: Navigate to the YouTube video and click Share. In the popup window that appears, locate the video URL at the bottom and click Copy.
  2. Insert into the editor: Inside the WYSIWYG editor, click the Video icon toward the right side of the toolbar. In the prompt that asks for a URL, paste your link and then delete everything after the question mark, as well as the question mark itself. A YouTube placeholder may appear showing an error in the editor, but this is normal behavior. Save your changes and view the published page on your website—the video will display and play properly.

Previewing & Live Deployment

Save and Preview

Click Save and Preview at the bottom of the editor. This opens an instant viewport modal displaying how images, fonts, spacing, and embedded videos render across actual client browser sizes.

Published Articles

  • Post Catalog: All published articles are listed in Menu > Website > Blog. You can open any post to edit body copy or click Delete to permanently retract an article.
  • Public Blog Directory: Visitors access your full article catalog via the Blog link automatically added to your website footer.
  • Individual Post URLs: Each article features a permanent URL that can be copied directly from your browser and pasted into email newsletters or social media campaigns.

Blog FAQs

Can I write internal company announcements that clients cannot see?
Yes. When creating the post, set the destination toggle to Employee Portal. The article will only display to authenticated staff members inside their portal dashboard and will remain hidden from your public website.

Do I need external video hosting to include video clips?
Yes. To optimize page speed and bandwidth, videos must be hosted on external streaming platforms such as YouTube. Simply paste the video share link into the editor's video tool to embed the player.

How do I change the image size after placing it in the article?
Click directly on the image inside the text editor canvas. A popover menu will appear allowing you to select 25%, 50%, or 100% container widths, or align the image left or right with automatic text wrapping.

Where does the blog link appear on my public website?
Once your first blog article is published, the platform automatically renders a Blog navigation link in the footer of your website. Visitors can click this link to explore all past and current articles.

Connecting Your Existing Domain: Overview

If you already own a custom domain through a third-party registrar (such as GoDaddy, Namecheap, Google Domains, or Network Solutions), you can easily connect it to your website by pointing its nameservers to our high-performance infrastructure.

How the Connection Process Works

  1. Submit Your Domain: Navigate to Menu > Website > Website Setup > Site Content and Address. Enter your domain name and select the option indicating that you already own it, then subscribe to the Premium Website Package.
  2. Receive Nameservers: Within a few hours of upgrading, our Support team will email you a set of 4 unique nameserver addresses assigned specifically to host and route your website.
  3. Update Your Registrar: Log into the account where your domain was purchased and replace its existing nameservers with the 4 addresses provided by our team.
  4. Notify Support: Reply to our onboarding email to confirm your nameservers have been updated. Our technical team will complete routing and provision your complimentary SSL security certificate.
Global DNS Propagation Window

Nameserver changes update across worldwide internet service providers gradually. It can take up to 24 to 48 hours for DNS propagation to fully complete and for your website to resolve globally.

Need Assistance?

If you have difficulty updating nameserver records on your registrar's portal, you can contact your registrar's support team or open a ticket with our Support team. We are happy to arrange a live call or screen-share session to walk you through the configuration.

Setting Nameservers on Namecheap

If your custom domain is registered with Namecheap, follow these steps to connect it to your website once our Support team has emailed you your 4 assigned nameservers.

Step-by-Step Configuration

  1. Log into your account at Namecheap.com.
  2. Click Domain List in the left-hand navigation sidebar.
  3. Find the domain you want to connect and click the Manage button on the right side of the row.
  4. Scroll down to the Nameservers section. Select Custom DNS from the dropdown menu, enter the 4 nameservers provided by our Support team, and click the green checkmark icon to save your changes.

Updating custom nameservers on Namecheap

  1. Reply to our Support team's email to let us know that your Namecheap nameservers have been updated.

Once our team verifies propagation and finalizes the SSL setup, we will email you confirmation that your website is live on your custom domain.

Setting Nameservers on GoDaddy

If your custom domain is registered with GoDaddy, use the following steps to link your domain to our platform.

Step-by-Step Configuration

  1. Navigate to Menu > Website > Website Setup > Site Content and Address in your dashboard. Enter your domain name, select the option indicating you already own it, and activate your subscription.

    Site Content and Address setup screen

  2. Our Support team will email you 4 unique nameservers to route your web traffic to your new site.
  3. Log into your account at GoDaddy.com.
  4. Click your account name in the top right-hand corner and select My Products.

    GoDaddy My Products link in account menu

  5. Locate your domain in the list and click Manage DNS.

    GoDaddy Manage DNS option

  6. Scroll down to the Nameservers section and click Change.

    Click Change in GoDaddy Nameservers section

  7. Click Enter my own nameservers (advanced).

    Select Enter my own nameservers advanced

  8. Enter the 4 nameserver addresses provided in your onboarding email. Click Add Nameserver to add rows as needed, then click Save.

    Input 4 custom nameservers on GoDaddy

  9. Reply to our Support team's email to notify us that your GoDaddy nameservers have been saved. We will finish provisioning your site routing and activate your SSL certificate.

Invoicing Setup: Overview & Workflow

Before issuing your first invoice or booking service appointments for clients, you must complete the initial Invoicing Setup wizard. This configuration defines your company's contact information, branding, and links your payment processor to allow clients to settle balances online.

To access the setup wizard, navigate to:

Menu > Invoicing > Invoicing Setup

Already Completed Booking Form Setup?

If you have already configured your Booking Form Settings, you do not need to repeat this wizard. The core contact information, and Stripe credentials configured during booking form setup automatically populate and power your invoicing system.

Business Details & Net Terms

The first step captures your fundamental business identity and dictates the payment terms that appear across generated customer invoices.

Core Profile Information

  • Business Name & Email Address: Rendered across the top header of all customer invoices, receipts, and appointment notifications.
  • Business Phone Number & Address: Establishes the physical contact location displayed on official billing documents.
  • Industry Selection: Categorizes your trade to help optimize system defaults and scheduling templates.
  • Company Logo (Optional): Upload a high-resolution image of your company logo to brand all digital and PDF customer invoices.

Invoice Disclaimers

  • Invoice Note: Appends a permanent disclaimer, remittance instructions, or standard policy note (e.g., "Thank you for choosing our services! Payments received after the due date may incur standard late fees.") to the footer of every generated invoice and PDF receipt. You can edit this text at any time.

Stripe Payment Card Payments Configuration

To accept online card payments (Visa, MasterCard, American Express, etc.) directly on your invoices, you must connect a merchant gateway account via Stripe.

  • Stripe API Credentials: Enter both your Live Credentials and Test Credentials (Publishable Key and Secret Key for each). Adding your test keys enables sandbox testing mode so you can simulate checkouts and thoroughly test your online booking form without processing real charges.
  • Optional Activation: Setting up Stripe is free and fast. If your business chooses not to accept online card payments and prefers handling billing via offline methods (such as cash, paper checks, or direct bank transfers), you can leave these fields blank and proceed.

Invoicing Setup FAQs

Do I need to complete this setup if I already configured the online booking form?
No. The Invoicing Setup wizard covers business details and Stripe keys that are identical to the Booking Form configuration. Completing either wizard satisfies the requirements for both.

Can I accept invoice payments online without a Stripe account?
Online credit and debit card processing requires an active Stripe connection. Without Stripe configured, customer invoices will not display payment card settlement buttons, and payments must be collected manually offline.

Discounts & Promotional Coupons: Overview & Strategy

The platform provides two flexible discounting mechanisms designed to drive customer acquisition and secure recurring revenue:

  • Frequency-Based Discounts: Incentivize clients to commit to recurring appointments by automatically offering tiered percentage discounts for shorter service intervals (e.g., 5% off for monthly visits, 15% off for weekly visits).
  • Promotional Coupon Codes: Deploy tracked discount codes for paid marketing campaigns, customer feedback survey incentives, or limited-time seasonal promotions.

Frequency-Based Discounts

To configure recurring service intervals and assign discounts, navigate to:

Menu > Work Orders > Frequency Discounts

The system comes pre-configured with standard industry intervals (such as One-Time, Weekly, Bi-Weekly, and Monthly). You can assign percentage discounts to any existing frequency or define custom recurring intervals.

Adding a Custom Service Frequency

  1. From the Frequency Discounts page, click the Frequencies button at the top of the page.
  2. Scroll down and click + Frequency.
  3. Frequency Title: Enter the display title (e.g., Every 10 Days).
  4. Ordering Number: Set the numeric sort position to control where this interval appears in dropdown selection menus (e.g., set to 5 to display after position 4).
  5. Frequency in Days: Enter the recurring interval in total days between appointments (e.g., enter 7 for weekly, 14 for biweekly, or 10 for every 10 days). Note: Leave this field blank if creating a "One Time" option.
  6. Click Save.

Assigning Discounts & Booking Form Visibility

  1. Return to the main Frequency Discounts list and locate your new interval.
  2. Discount Percentage: Enter the percentage discount to offer (e.g., enter 5%).
  3. Website Booking Form Toggle: Enable this switch if you want prospective customers to be able to choose this recurrence interval during online booking. If disabled, this frequency can only be assigned internally by your staff when creating manual invoices, work orders, or quotes.
  4. Click Save.

First-Booking Anti-Churn Safeguard

A common risk in service businesses is discount abuse: customers who only intend to book a single visit might select your most aggressive recurring frequency (e.g., weekly) simply to unlock the steepest discount, only to cancel all future visits immediately after the first appointment.

The Public Booking Form Safeguard

To eliminate this vulnerability, the platform does not apply frequency discounts to a customer's initial online booking.

  • On your live booking form, customers will see the frequency options and the advertised discount badges (e.g., "Every 10 Days (5% Off)").
  • The initial checkout total will reflect standard full price. The frequency discount automatically activates and applies to all subsequent appointments in the recurring series once the recurring schedule begins.

Staff Override on Manual Invoices

When staff members generate invoices manually (Menu > Invoices > Create Invoice), you have the discretion to waive this restriction:

  • Select the frequency from the dropdown (e.g., Every 10 Days (5% Off)).
  • Check the box labeled Apply this frequency discount to the first appointment if you want to extend the discounted rate to the client immediately on their first bill.

Creating Promotional Coupons

Coupons allow you to deploy trackable, alphanumeric promo codes across your marketing and retention workflows.

To manage coupons, navigate to:

Menu > Invoicing > Coupons

Primary Use Cases

  • Marketing Attribution: Assign unique codes to different advertising channels (e.g., FACEBOOK10 vs. GOOGLE15) to measure which marketing channels deliver the highest return on investment.
  • Survey Completion Incentives: Link promo codes directly to customer satisfaction automations. When a survey request is sent, the system can automatically promise and deliver a coupon (e.g., $5 off their next service) upon completion.
  • Site-Wide Default Specials: Select a default coupon under your Booking Form Settings to apply an automatic seasonal special (e.g., 10% off spring cleaning) to every checkout.

Creating a New Coupon

  1. Click Create Coupon.
  2. Coupon Code: Enter the exact code customers will type at checkout (e.g., SAVE10). Codes are case-insensitive.
  3. Discount Amount: Specify either a percentage discount (e.g., 10%) or a flat dollar credit.
  4. Source: Document where the code is being advertised (e.g., "Facebook Ad Campaign #1" or "Spring Postcard Mailer").
  5. Expiration Date: Set the final calendar date on which the coupon code can be redeemed. After this date, the checkout form will reject the code.
  6. Quantity (Usage Cap): Define the total number of times the code can be redeemed across your entire customer base (e.g., entering 50 limits the promotion to the first 50 customers).
  7. One-time Use Toggle: Enable this switch to prevent individual customers from reusing the same coupon code across multiple bookings.
  8. Click Save.

Tracking ROI & Disabling Codes

Reviewing Marketing Attribution & Usage

To measure the effectiveness of your ad spend against actual redemptions:

  1. Navigate to Menu > Customers > Sales Summary.
  2. Select the monthly reporting period you wish to inspect.
  3. Scroll down to the Coupon Code Usage section to review exact redemption counts per promo code.
  4. Compare these redemption figures directly against your ad spend to calculate your customer acquisition cost (CAC).

Disabling or Expiring a Coupon

To shut down an active promotion before its planned end date:

  • Open the coupon configuration in Menu > Invoicing > Coupons.
  • Either set the Quantity value to 0, or change the Expiration Date to a date in the past.
  • Save your changes. The code will immediately become invalid on both the public booking form and internal invoicing screens.

Discounts & Coupons FAQs

Why didn't the price change when a customer selected a recurring frequency on my booking form?
By design, the platform enforces an anti-churn safeguard where frequency discounts do not apply to the initial service visit. The discount is automatically locked in and applied to all subsequent appointments in that recurring sequence.

Can I give an immediate discount on a client's first visit if they book over the phone?
Yes. When creating an invoice manually through Menu > Invoice > Create Invoice, select the recurring interval and check the box labeled Apply this frequency discount to the first appointment. Alternatively, if you've created a work order, you can edit the work order and select Apply this frequency discount to the first appointment.

Can a customer use the same coupon code more than once?
Only if you permit it. To prevent repeated redemptions by the same client, ensure the One-time Use toggle is enabled on the coupon setup screen.

What happens when a coupon reaches its usage limit?
Once the redemption count reaches the number defined in the Quantity field, the coupon expires automatically and the booking form will inform web visitors that the promotion is no longer available.

Tax Overview & Automation

Depending on your trade, entity structure, and operating locations, you may be required to collect local, state, provincial, or federal sales tax on services and physical materials. Once configured, the platform automates tax calculations across your entire workspace.

Where Taxes Apply Automatically

  • Website Booking Form: Automatically calculates and itemizes applicable taxes during checkout before the customer submits payment or card details.
  • Customer Quotes: Dynamically calculates estimated tax totals on estimates sent to clients.
  • Invoices & Work Orders: Automatically appends required tax line items, percentage breakdowns, and your registered tax identification numbers to all generated billing documents.

Tax Types & Jurisdictions

To configure tax rates, navigate to:

Menu > Invoices > Taxes

The platform supports five distinct tax classifications to accommodate multi-level taxing authorities across national, regional, and municipal jurisdictions:

  • Federal Tax: National sales taxes (e.g., GST in Canada or federal excise taxes).
  • State / Provincial Tax: Regional state or provincial taxes (e.g., California Sales Tax, Arizona TPT, PST, or QST).
  • County Tax: County-level surtaxes applied to services rendered within a specific county boundary.
  • City Tax: Municipal or city sales taxes levied by local city governments.
  • Other Tax: Flexible category for special taxing districts, transit authorities, environmental fees, or specialized local surcharges.
Automatic Multi-Tier Calculation

When generating quotes, work orders, or invoices, all enabled tax tiers are itemized independently and summed into the final order total according to the customer's service address.

Configuring Rates & Tax IDs

To establish a new sales tax rule, navigate to Menu > Invoices > Taxes and click the button corresponding to the tax jurisdiction you need to add (e.g., + State Tax, + County Tax, etc.).

  1. Tax Locaiton: Choose the tax location that corresponds with this tax.
  2. Tax Name: Enter the descriptive display name for the tax (e.g., Sales Tax - California). This title identifies the line item on customer estimates, work orders, and invoices.
  3. Tax Agency Name: Enter the official name of the taxing authority or regulatory department you remit to (e.g., California Department of Tax and Fee Administration).
  4. Rate Percentage (%): Input the statutory tax rate percentage to be assessed (e.g., enter 10 for 10% or 8.25 for 8.25%).
  5. Registration Number: Enter your official business tax registration number, seller's permit, or tax ID.
    Legal Compliance Display

    Your Tax Registration Number automatically prints in the tax breakdown block on customer invoices and receipts, fulfilling legal disclosure mandates required by taxing authorities.

  6. Click Save.

Configuring Tax Eligibility for Services & Items

Different jurisdictions treat labor, specialty services, and physical goods differently under sales tax laws. The platform provides a granular tax-mapping matrix that allows you to specify exactly which taxes apply to individual services and products.

Accessing Tax Configuration

  1. Navigate to Menu > Invoices > Taxes.
  2. Click the Configure Taxes button located near the top of the screen.

Tax Eligibility Matrix

Inside the configuration screen, you can toggle tax applicability across three core categories for every tax rule you have created:

  • Primary Services: Define whether your core service packages (e.g., standard labor, plowing, deep cleaning) are subject to each specific tax.
  • Extra Services: Set tax eligibility for add-on services, upgrades, and specialty tasks (e.g., salt applications, equipment surcharges).
  • Inventory Items & Materials: Designate whether physical stock items, consumables, parts, or retail products attract tax.

How the Tax Engine Calculates Taxes

Whenever you build a Quote, dispatch a Work Order, or issue an Invoice (as well as during self-service online bookings), the calculation engine automatically determines the applicable tax lines by evaluating three factors together:

  1. Location of Work: The system identifies the jurisdiction based on the job site address (Country, State/Province, County, and City).
  2. Line Item Classification: It audits each line item added to the document—identifying whether it is a primary service, an extra service, or an inventory material.
  3. Tax Eligibility Rules: It checks the tax matrix to verify whether that specific line item is flagged as eligible for the active taxes in that location.
Mixed-Tax Compliance

If a work order includes both non-taxable labor (e.g., a primary service exempt from local sales tax) and taxable physical goods (e.g., replacement parts or bags of ice melt pulled from inventory), the system assesses tax only on the eligible material line items. The itemized tax breakdown on the customer's invoice will reflect the exact statutory amounts required by each authority.

Sales Summary & Tax Reports

When preparing periodic sales tax filings or remitting collected funds to tax authorities, you can pull aggregated liability totals directly from your sales reporting dashboard.

Reviewing Monthly Tax Collections

  1. Navigate to Menu > Customers > Sales Summary.
  2. Select the target monthly reporting period from the dropdown filter at the top of the screen.
  3. Scroll down to the Taxes Summary section.
  4. Review the itemized breakdown of gross taxable sales, non-taxable revenue, and total tax amounts collected across each active tax jurisdiction for that calendar month.
QuickBooks Online

If you are using QuickBooks Online, you should always use the information in that system to complete any tax remmitances.

Tax Configuration FAQs

Do taxes automatically update on past invoices if I adjust my tax rate?
Opening an unpaid work order or invoice will update the taxes on that document such that they are consistent with your current Tax configuraiton. Existing paid invoices remain locked to maintain audit accuracy.

Where can I find the total tax collected for filing my quarterly returns?
Navigate to Menu > Customers > Sales Summary and review each month within the tax quarter. The summary table itemizes all tax collected by jurisdiction, making it simple to complete remittance returns.

Are tax registration numbers visible to customers?
Yes. Any value entered into the Registration Number field will appear on all invoices.

Payment Terms: Overview & Workflow

Payment Terms define the contractual conditions communicated to clients regarding when payment is due, the financial penalties levied on overdue balances, and incentives offered for early settlement.

Core Operational Objectives

  • Sets Clear Expectations: Explicitly establishes invoice due dates and late payment penalties upfront on quotes and work orders before work begins.
  • Accelerates Cash Flow: Incentivizes clients to settle invoices ahead of schedule via automated early payment discounts.
  • Automates Penalties: Eliminates manual interest calculations by automatically compounding financing fees and applying late fees to overdue balances.

Document Lifecycle Carry-Through

Payment terms carry seamlessly through your operational funnel without manual re-entry:

  1. Quote Requests & Estimates: An assigned payment term displays its terms and early discount conditions directly on customer quotes.
  2. Work Orders: When a quote converts to an active job, the payment term attaches to the work order. While a job remains active, due dates and late penalties stay paused.
  3. Completed Invoices: Once the job is marked complete, the work order converts into an invoice. The invoice date and due date are calculated, activating interest and late fee timelines.
  4. Recurring Series: Assigning a payment term to a master recurring blueprint automatically propagates that term across all future child appointments.
Work Orders vs. Completed Invoices

If an invoice shows financing fees or a past-due status before a job has actually been completed, open the invoice, click Actions, and select Mark Job Not Complete. This reverts the document to an active work order, removing due dates, interest, and late fees until the work is finalized.

Profiles & Default Assignment

You can configure multiple Payment Term profiles to support different customer relationships, commercial accounts, or service tiers.

Hierarchical Default Logic

  • Global Default Term: Configured under your Payment Term settings. This term is automatically assigned to all incoming website bookings, public quote requests, and newly drafted quotes or work orders.
  • Customer-Level Override: You can assign a dedicated payment term profile directly within a customer's profile (e.g., granting commercial clients Net 30 while residential clients remain Due Upon Receipt). When present, the customer-specific default overrides your global default.
  • Ad-Hoc Selection: Staff can override the default on any individual quote, work order, or invoice by selecting an alternate profile from the Payment Term dropdown.

Additional Notes & Remittance Details

Every payment term profile includes an Additional Notes field. Text entered here appears in the footer of all linked quotes, work orders, and invoices. Use this area to outline accepted payment methods (e.g., checks, bank transfers), remittance instructions, or contact directions for billing questions.

Deactivating vs. Editing Terms

Deactivating an obsolete payment term removes it from selection dropdowns on new documents. Existing quotes, work orders, and invoices currently utilizing that term will maintain it historically without disruption.

Late Fees, Interest & Grace Periods

When an invoice crosses its due date without being marked as paid, the platform automatically applies financing charges according to the assigned profile.

1. Late Fee Options

  • Flat Fixed Fee: Charges a set dollar amount (e.g., $25.00) once the invoice becomes delinquent.
  • Percentage Fee: Assesses a flat percentage of the overdue invoice balance.
  • Combined Assessment: Profiles can be configured to assess both a one-time late fee and ongoing compound interest concurrently.

2. Compound Interest Calculation

Interest fees are computed using standard compound interest formulas based on your configured annual rate, compounding frequency, and due date:

  • Calculation Base: Interest and late fees are assessed strictly on the post-tax invoice total, excluding customer tips.
  • Partial Payments: Partial payments are not factored into interest calculations. If your local regulations mandate specific partial-balance interest calculations, apply a 0% interest term and assess interest manually on the invoice.
  • Execution Frequency: Overdue interest recalculates in the background once daily and dynamically whenever staff or clients view the document, ensuring live accuracy.

3. Silent Grace Periods

You can define separate grace period durations (in days) for the one-time late fee and for ongoing interest accrual:

  • Customer Opacity: Grace periods are never printed on invoices or disclosed to clients.
  • Operational Benefit: Allows you to preserve legal entitlement to enforce late fees while giving clients a brief buffer, preventing unnecessary billing disputes and building goodwill.

Removing or Forgiving Accrued Interest

If you choose to waive penalties for a customer who settles an overdue bill Remove the Payment Term. Edit the invoice and set the Payment Term to None (or reassign a profile with an extended 365-day grace period) to immediately zero out all penalties.

Early Payment Discounts

Early payment discounts encourage faster settlement by granting customers a percentage discount if their balance is paid before a specific cutoff window (e.g., 2% 10, Net 30).

Calculation & Scope

  • Pre-Tax Basis: Early payment discounts are calculated exclusively on the pre-tax subtotal of the invoice.
  • Invoices: Eligible whenever a customer pays online via the Client Portal or payment link on or before the discount deadline.
  • Work Orders (Pre-Payment): Work orders are fully eligible for early payment discounts. If a client prepays an uncompleted work order through the Client Portal or staff charges a card on file, the discount automatically deducts prior to submitting the charge to Stripe.
  • Upfront Booking Form Exclusion: Customers who pay immediately at checkout on your public online booking form are not eligible for early payment discounts, as booking checkout does not use credit terms.

Client Presentation & Payment Processing

  • Document Total Display: Invoices with active early payment terms show the discounted total highlighted in green directly beneath the standard total, alongside the expiration date.
  • Client Portal Work Order Display: To avoid confusing clients into thinking prepayment is mandatory, work orders in the portal display standard pricing; the early discount appears on the work order only if you send them a request for payment on the work order.
  • Automatic Stripe Reconciliation: When paying via Stripe inside the discount window, the platform automatically reduces the authorized charge amount by the discount value. Following payment, the Stripe charge will align with the discounted invoice total as shown on the invoice.

QuickBooks Online & Legal Compliance

QuickBooks Online (QBO) Coordination

If your account is integrated with QuickBooks Online, take the following precautions to prevent billing discrepancies:

  • Disable QBO Native Late Fees: Because our platform calculates and syncs financing fees directly, disable native late fees in QuickBooks to avoid double-charging your clients. In QBO, navigate to Gear Icon > Account and Settings > Sales > Late Fees, turn off the late fee toggle, and click Save.
  • 1,000-Character Note Truncation: QuickBooks Online limits custom invoice note fields to 1,000 characters. Keep your payment term notes concise. Any combined invoice and payment term notes exceeding 1,000 characters will be automatically truncated when syncing to QBO.

Legal Enforceability & Regulatory Caps

  • Terms & Conditions Requirement: For interest or late fees to be legally enforceable, clients must agree to them prior to service. Ensure your payment terms are explicitly incorporated into your public Terms of Service.
  • Jurisdictional Limits (Usury Laws): Many states, provinces, and municipalities place statutory caps on the maximum annual percentage rate (APR) and late fee amounts that can be assessed on consumer and commercial accounts. Always verify compliance with local financing laws before configuring rates.

Free Plan vs. Premium Plan Capabilities

  • Free Plan: Users can configure payment term profiles, assign them to documents, and utilize automated early payment discount calculations. Automated late fee assessments and compound interest calculations require an active paid plan.
  • Premium Plans: Includes full automated daily compounding interest engines, automated flat/percentage late fees, and dynamic background penalty calculations.

Payment Terms FAQs

General

What are payment terms?
Payment terms are the conditions that you communicate to, and receive agreement on, with your customers regarding when you'll get paid. Specifically, payment terms commonly indicate when payment is due and if there are any discounts for early payment.

Defining you payment terms and communicating them to your customers achieves two main objects:
  • Sets expectations with customers regarding when you expect to be paid and the fees that will be levied on overdue invoices
  • Where a discount is provided for early payment, the customer is incentized to pay their invoice early
What are some typical challenges in managing payment terms?
On the surface, the idea of payment terms seems simple. In practice, the manaegment of them can be challenging, time consuming, and prone to errors. Common challenges associated with manageming payment terms and associated financing fees and discounts include:
  • Calculating and applying late fees, interest, and early payment discounts in a manner that is timely, consistent, and accurate
  • Manage several sets of payment terms across a several customers and a large number of invoices
  • Accurately accounting for the financial impact of interest, late fees, and early payment discounts
How can Blue Sail Agency assist in the management of payment terms?
Blue Sail Agency has a comprehensive system for assisting you in:
  • Assigning payment terms
  • Assessing interest and late fees on overdue invoices
  • Automatically providing early payment discounts where the customer has paid by the early payment discount deadline
  • Managing multiple sets of payment terms
  • Accounting for the financial impact of payment terms on invoices that are overdue and paid early
Blue Sail Agency allows you to configure as many Payment Term profiles as you like and then assign them to quotes, work orders, and invoices. Payment terms can be assigned ad hoc or you can automate the assignment process by creating a default payment term for all customers and/or for individual customers.
What are some best practices regarding payment terms?
Before you configure your payment terms and start applying them to quotes, work orders, and invoices, you should be mindful of the following points.
  • In order for payment terms to be enforcable, which is important where you wish to charge a customer interest or late fees on overdue invoices, your payment terms must be clearly communicated to the customer. To do this, be sure to include your payment terms in your Terms and Conditions.
  • Check the laws that cover your operations. Some jurisdications limit the maximum amount of late fees and interest that can be assessed on overdue invoices. Before configuring your payment terms on Blue Sail Agency, you should understand these laws.
  • Once you've assigned a payment term to a document, whether it be a quote, work order, or invoice, and the customer is aware of what these payment terms are, it's not a good idea to change the payment terms without the customer's approval.
What functionality from this module is available to users on the Free Plan?
Users on the Free Plan can create payment terms and apply them to quotes, work orders, and invoices. For users on the Free Plan, only early payment discounts will be automatically computed and set on invoices. Interest and late fees will not automatically be applied to quotes, work orders, and invoices generated by users who are on the Free Plan.
I've connected my Blue Sail Agency account to QuickBooks Online, what should I be aware of?
As Blue Sail Agency is responsible for calculating interest and late fees on any overdue invoices, QuickBooks Online should not also assess late fees on overdue invoices. To prevent QuickBooks Online from setting any additional late fees on overdue invoices, please follow these steps:
  • Go to the Gear icon and then click Account and settings.
  • Select Sales on the left panel and then click on the Late Fees section.
  • Disable the switch for late fees and click Save.

Also, please keep in mind that the note that can be added to invoices on QuickBooks Online is limited to 1000 characters. Please be mindful of this when configuring your invoice note and additional notes on payment terms on our platform. If the note for a given invoice is longer than 1000 characters, it will be trimmed to 1000 characters before being sent to QuickBooks Online.

Using Payment Terms

Generally speaking, how are payment terms used and what impact do they have?
  • As you create quotes, work orders, and invoices, you can assign a payment term to them so that once the job is complete, the due date, late fees, and interest will be automatically calculated and set on the invoice
  • After setting a payment term on an invoice, if a user pays via a Stripe form on your website or Client Portal within the early payment discount period, his or her payment to Stripe will be automatically reduced by the appropriate discount and this will be shown on the resulting payment confirmation
Why does this invoice date get updated when I edit the invoice?
The invoice date is the date on which the invoice is available to the customer. Edits to the invoice resets the invoice date as the revised invoice is only available to the customer after you've made the edits.
How do default payment terms work?
You can set any one of your payment terms as the default payment term. This will acheive the following:
  • This payment term will be assigned to online bookings and quote requests that are submitted on your website
  • When you go to create a quote, work order, or invoice, this payment term will be automatically selected in the 'Payment Term' drop down menu
You can also set a default payment term by customer. Where a cutomer has a default payment term, this default payment term will override the general default payment term that you may have set within your Payment Term setup page.
If somone books a recurring appointment, will the payment terms on the initial work order be applied to all future work orders?
Yes, the payment term will be set on the master work order, which will then, in turn be applied to all future work orders related to this recurring job. For any of these work orders, you can change the payment term and suppress changes from the master work order.
I created an invoice for work to be done. It's now marked as due even though the job isn't complete. how do I fix this?
To correct this, you need to change the invoice into a work order. When viewing the invoice, click the 'Actions' button and click "Mark Job Not Complete". This will convert the invoice into a work order and will remove the due date, interest, and late fees.

Financing Fees

How are interest and late fees computed by the system?
Interest fees are calculated using the formula for compount interest, which leverages the setup that you defined for each Payment Term, including interest rate, compounding frequency, and grace period. When it comes to overdue invoices, interest and late fees are calculated on on the post-tax total not including any tip that has been added to the invoice.
I don't wish for the late fee to be a percentage of the invoice total. Can I just apply a small late fee charge that is the same for each invoice?
Yes, within the payment term setup, you can set the late fee as a specific dollar amount.
Can a Payment Term assess both a one-time late fee as well as interest on an overdue invoice?
Yes, you can configure a payment term to apply both a late fee as well as interest on overdue invoices.
How often does interest accrue on an overdue invoice?
For overdue invoices that are past the grace period that you've set, interest will be automatically added to the invoice both once a day and whenever you or a customer views the invoice. This ensures that each time the invoice is viewed, it will always have the correct amount of interest on it.
When will the late fee be applied to an overdue invoice?
Blue Sail Agency will automatically apply a late fee to an overdue invoice after the grace period that you've defined has passed. This will happen both once a day and whenever you or a customer views the invoice. This ensures that each time the invoice is viewed, it will always have the correct late fee on it.
What is the purpose of a grace period?
When defining the interest and late fee settings for a Payment Term, you can specify a grace period for the late fee as well as a grace period for the interest. Any grace period that you set for either interest or late fees will not be communicated by our platform to your customers. Grace fees achieve two objectives:
  • They allow you to be clear with the financing fees (eg. late fees and interest) that you'll be entitled to assess on overdue invoices and,
  • They allow you to automatically build goodwill with customers when you don't immediately assess financing fees on overdue invoices
Will customers know about the grace periods that I've configured?
No, customers will never be informed by our system of the grace periods that you've configured for late fees and interest.
What is communicated on the invoice?
When a payment term is applied to an invoice and it has interest, a late fee, or an early payment discount associated with it, the details of those items will be shown at the bottom of quotes, work orders, and invoices. What's not communicated are any grace periods related to interest and fees. The details of the payment terms are outlined directly on quotes and work orders so that customers are well aware of what the terms of their invoice will be once the work is done and the invoice becomes due.
How do I know if the interest, late fee, or early payment amount shown on the invoice is current?
When you view a quote, work order, or invoice on our platform, before the document is shown to you, all necessary calculations, including those reuqired to compute late fees and interest, are run. This means that every time you view financial document on Blue Sail Agency, the information that you're seeing reflects accurate and up to date information and amounts.
The customer paid by cash by the due date and now, the invoice shows interest and late fees. How do I fix this?
When you mark the date paid and the date you indicate is on or prior to the due date, any interest or late fees on the invoice will be removed.
Does the calculation of interest take into account partial payments?
No. Invoices that aren't fully paid have interest calculated on the post-tax total before tip. If this isn't consistent with the laws in your jurisdiction, you should manually calculate and set interest on the invoice after setting at 0% interest payment term on it.
If I remove a payment term from an invoice, will all interest and late fees be removed from that invoice?
Yes
If I change the payment term on an invoice, will interest only be calculated using the new payment term on a go forward basis?
When you edit an invoice, including changing the payment term on it, the invoice date and the due date will be reset. Any interet that is computed on the invoice in the future would be computed using the new payment term that you've set.

Early Payment Discounts

What financial documents are in scope for early payment discounts?
Generally speaking, early payment discounts are typically associated with invoices where the customer wishes to pay early. Having said this, Blue Sail Agency gives you the option of making prepayment functionality possible via the Client Portal. If, via the Client Portal, a client makes a payment on a work order before the work is delivered, the early payment discount will be applied to their payment before it is submitted to Stripe. Similarly, if you charge a card on file for a work order and the work order is eligible for an early payment discount, the early payment discount will be automatically applied to the work order before the charge is processed.

In summary, work orders are always eligible for early payment discounts regardless of the payment date.
Where is the early payment discount not possible?
For customers who pay online at the time of booking, their payment will not receive an early payment discount.
How is the early payment discount calculated?
The early payment discount is based on the pre-tax total of the invoice.
How is the early payment discount communicated to the customer?
If an invoice has a payment term that provides for an early payment discount, the discounted amount that the customer will have to pay (if they pay within the discount period) is shown in green below the invoice total.

In addition, details of the early payment discount, such as the time limit and the amount of the discount will be printed at the bottom of quotes, work orders, and invoices.
When a client views a work order in the Client Portal, they don't see what the total would be if they pay today to take advantage of the early payment discount.
When a client views a work order within the Client Portal, they aren't shown the early payment discounted total so that they don't think that they are required to pay this work order immediately. If you send a client a payment request for a work order and that work order has a payment term that offers an early payment discount, on the payment page, the client will see what the discounted total is if they pay today.
When viewing an invoice that isn't yet due, why isn't the early payment fee not automatically included on the total?
Our system only addes the early payment discount into the invoice following the payment of that invoice.

As it's important that both you and the customer understand what the total will be if the customer pays by the early payment discount time limit, the discounted invoice total is shown immediately below the invoice.
I've created a payment term that has an early payment discount on it. I've then applied it to a customer's invoice. How will the customer know how much they'll have to pay if they pay within the discount period?
The customer will see the total amount owing if they pay within the discount period. They'll see this:
  • On the invoice that they are emailed
  • On the payment page after you send them a payment requset on the invoice
  • On the client portal when looking at the invoice

Configuration

How do payment terms carry through from one document to the next?
Online quote requests can spawn quotes, which can spawn work orders, which can then be converted to invoices once the job is complete. When a payment term is applied to a document at any point during this process, that payment term will be automatically applied to the next document in the process. Similarly, when a recurring work order is created (eg. weekly service), the future appointments that are automatically created will all have the same payment term.
Why would I deactivate a payment term?
After setting up a payment term, you may decide that a component of it was setup in error. Alternatively, you may decide that it's a payment term that you no longer wish to apply to new quotes, work orders, and invoices. In these cases, it makse sense to deactivte the payment term.
I've deactivated a payment term, but I still see it showing up on work orders and invoices. Why is this?
Deactiving a Payment Term only prevents you from being able to manually apply it to new quotes, work orders, and invoices. If you built an invoice with a specific payment term, disabled that payment term, and then edit that invoice, you'll see that the original payment term is still present on the invoice.
When setting up a Payment Term, What other information should I add to my 'Additional Notes' field?
In this field, you can add information such as:
  • what payment methods you accept
  • what customers should do if they won't be able to pay in time
This information will be shown at the bottom of quotes, work orders, and invoices that have the payment term.
The payment term that is assigned to an invoice is causing interest to accrue on that invoice. I've informed the customer that I will remove the interest from the invoice. How can I do this?
There are several ways that you can remove interest from an invoice that has been accruing interest.

  1. Advance the due date - Edit the invoice and simply click 'Save' on the 'edit invoice page' without making any other changes. This will set the invoice date equal to the current date, will update the due date, and will remove any interest that has accrued on ths invoice. Please note that under this method, once the new due date has been reached and any grace period passed, interest will start to accrue on the invoice again.

  2. Remove the payment term - At any time, you can edit an overdue invoice and simply remove the payment term that has been assigned to it. Removal of the payment term from the overdue invoice will immediately remove any late fees and interest that has accrued on the invoice.

  3. Set a new payment term - You can create a new payment term that outlines the same interest rate, days to due, and compounding frequency, but you can set the grace period to a large number (eg. 365 days). After creating this payment term, you can then apply it to the customer's invoice. The payment terms as printed on the invoice will remain the same, but the interest will be removed as they will be within the grace period.

Invoices & Work Orders: Overview

Within the platform, the booking and billing engine serves a dual purpose: scheduling upcoming service visits via Work Orders and billing completed visits via Invoices. Because every confirmed booking operates as an interconnected record with calendar, crew, and billing data, managing client work remains unified.

  • Work Order Workflow (Single-Page): Designed for front-line dispatchers and intake staff. Configure service packages, dynamic quantity drivers, materials, scheduling, and customer intake on one screen with real-time price calculations.
  • Invoice Workflow (Two-Step): Designed for direct billing, recurring invoice cloning, and post-service settlement. Specify line items, tax-exempt Other Costs, and tips on Step 1, then optionally schedule or skip calendar booking on Step 2.
  • Automated Document Conversion: Work orders automatically convert into finalized invoices the moment they are marked complete or when payment is settled. Conversely, an unpaid invoice can be converted back into an active work order with one click simply by setting its status back to "Not Yet Complete".

Creating a Work Order (Single-Page Form)

Work order creation is an all-in-one, single-page workflow (accessed via Menu > Work Orders > Create Work Order). It allows dispatchers to quote, schedule, assign teams, and capture new client details simultaneously.

1. Primary & Additional Services

  • Primary Service & Dynamic Drivers: Select your core service package (e.g., Residential Snow Plowing or Walkway Shoveling). Selecting a service dynamically loads assigned Service Drivers (e.g., number of crew members, estimated hours, driveway counts, or walkway segments) to auto-calculate labor rates and durations.
  • Additional Services (Add-ons): Check off optional upsells and add-ons (e.g., Salt Application, Return Clean-Up Visits, or Mailbox Dig-Outs). These can carry flat fees or prompt for custom multipliers/quantities.

2. Materials & Free-Form Items

  • Materials (Inventory Items): Pull catalog parts or stock items directly from your inventory dropdown. Specify the quantity and unit price for automated line-item cost tracking.
  • Free-Form Items: Add ad-hoc custom charges on the fly by entering a description and price amount.

3. Scheduling, Arrival Windows & Dispatch Rules

  • Duration Override: The system automatically calculates appointment duration based on selected service drivers. You can optionally override this by choosing a fixed slot from 0.5 to 24.0 Hours.
  • Start Time Window: Specify an arrival buffer (in hours) if crews operate within a flexible arrival window rather than an exact start time.
  • Date & Time Picker: Pick the target service date and arrival slot.
  • Subscription Billing Toggle: Enable the "Work order is for a subscription-based service" switch if the service operates under a periodic billing schedule.
  • Frequency & Coupons: Apply recurring frequency intervals (One-Time, Weekly, Biweekly, Monthly with percentage discounts) and promo discount codes.
  • Team Assignment: Designate a Preferred Team and use the Auto-Schedule toggle to control whether other available teams may be assigned automatically.

4. Customer Intake & Live Summary Sidebar

  • Existing vs. New Customer: Choose an existing client and address from the dropdown, or toggle New Customer to create a new client record inline (capturing contact details, SMS notification preferences, job address, and optional separate billing address) without navigating away.
  • Real-Time Work Order Summary: A live order-summary panel continuously recalculates item totals, coupon discounts, frequency discounts, itemized jurisdictional taxes (Federal, State/Provincial, County, City), and total payable amounts as you edit the form.

Creating an Invoice (Two-Step Wizard)

To generate an invoice directly, navigate to Menu > Invoicing > Create Invoice. This workflow separates billing configuration from calendar scheduling across two distinct steps.

Customer Search & Creation Modes

Search for the customer by name, phone number, or email address, then choose one of three creation modes:

  • New Invoice: Starts a blank invoice draft.
  • Copy Previous Invoice: Clones past line items and quantities from a previous visit for rapid re-billing.
  • Edit Draft: Resumes an existing, unfinalized invoice draft.

Step 1: Line Items, Other Costs & Tips

On the primary invoice form, configure the financial breakdown:

  • Job Location: Select the target service property associated with the customer.
  • Services & Materials: Enter free-form labor line items (Item + Amount) and select physical parts from the Materials inventory dropdown (Quantity + Unit Price).
  • Frequency & Discount Rules: Designate frequency intervals and determine whether the recurring discount applies immediately to the first appointment.
  • Other Costs (Tax-Exempt Surcharges): Record pass-through expenses or reimbursements. Amounts entered into "Other Costs" strictly bypass all tax calculations and frequency/coupon discounts.
  • Payment Terms: Select a payment term governing early-payment incentives or late-payment penalty interest.
  • Employee Tip: Record tips collected on-site via cash or check as a flat dollar amount or a percentage of the post-tax balance. Tips are automatically tracked and allocated to assigned staff.

Step 2: Appointment Date & Time (Optional)

After clicking Save on Step 1, the system directs you to the Select Appointment Date/Time screen:

  • Bill-Only / Completed Work: If invoicing for work already performed, click Clear Date/Time to omit calendar bookings and save as a standalone invoice.
  • Scheduling an Appointment: If dispatching a crew, select a date and an available start-time slot based on real-time shift availability. Set the Duration Override, specify the Start Time Window buffer, set a Preferred Team and/or toggle auto scheduling preferences.

Notes, Photos & Privacy Rules

The top toolbar on any saved work order or invoice provides access to internal tools and visual records:

1. Internal Notes

Click Notes to append job-specific instructions. Customers cannot view internal notes. Notes are visible strictly to administrative staff and scheduled technicians.

2. Field Photos & Privacy Controls

Technicians can upload site photos directly from mobile devices in the field, and dispatchers can upload images from the office:

  • Click Photos to upload images with contextual comments (e.g., pre-existing property damage, proof of completed work).
  • Click any photo thumbnail to inspect the full-resolution image.
Admin Safeguard: Client Photo Sharing

Field technicians cannot make photos visible to customers. The ability to click Share with Client (turning the badge green) is restricted to administrative staff, ensuring internal review before photos appear in the customer's Client Portal.

Actions Menu & Status Conversions

The Actions menu manages payment collection, client communication, and document state:

  • Schedule Job: Opens the Scheduler so that you can either schedule the job or add/remove staff members and teams to the job.
  • Send Appointment Confirmation: Delivers immediate SMS and email calendar notices to the customer.
  • Send to Customer: Emails a copy of the work order or invoice to the client.
  • Request Payment: Send an online payment link (with customer tipping options) or charge the client's vaulted payment card directly via Stripe.
  • Charge Card: Charge the client's vaulted payment card directly via Stripe for the invoice total.
  • Mark Paid: Manually settles an offline balance (Cash, Check, Bank Transfer) and sets the settlement date, converting an active work order into a closed invoice.
  • Cancel Document: Cancels the order and removes linked appointments from the calendar.
  • Send Survey: Emails a survey directly to the customer.
  • Launch Automation: Manually triggers and runs available automations for the document.
  • Create Appointment: Creates and attaches an appointment to an invoice or work order that does not currently have one attached to it.
  • Edit Invoice or Work Order: Opens the editor to modify and update details on the document.
  • Customer View: Opens the document displaying the exact view of the work order or invoice as the client sees it on the Client Portal.
  • Copy Work Order or Invoice: Duplicates the document and its line items so that you can quickly create another invoice or work order for the customer.
  • Mark Completed / Not Completed: Toggles the job completion status, converting an active work order into an invoice upon completion, or reverting an invoice back to a work order if the job is marked not complete.

Stripe Refunds & Scope Edits

If an invoice was billed incorrectly (such as an overcharge or uncompleted room), follow this correction workflow:

  1. Open the paid invoice and navigate to Actions > Refund Charge.
  2. Confirm the prompt. The system communicates directly with Stripe to refund the charge, clears the booking from your calendar, and emails a refund confirmation to the client.
  3. Click Invoice at the top of the refund details page to review the refund document.
  4. To bill the adjusted amount, locate the original invoice in the Customer Profile, click Actions > Copy Invoice, adjust the line items to reflect the true scope (e.g., changing 2 bathrooms to 1 bathroom), and charge the corrected balance to the payment card on file.

Invoice List & Status Filters

To audit billing and pending jobs, navigate to Menu > Invoicing > Invoices. Use the status filters at the top right to locate documents:

  • All Invoices: Master listing across your platform.
  • Paid / Due / Past Due: Categorizes invoices by settlement status.
  • New (Unseen): Highlights newly placed online website bookings that have not yet been opened or reviewed by administrative staff.
  • Refunded / Cancelled: Tracks closed or reversed transactions.

Work Order List & Status Filters

To audit upcoming jobs, inspect schedules, or review uncompleted service calls, navigate to Menu > Work Orders > Work Orders. Work orders represent unpaid appointments that have not yet been marked as completed.

Automated Document Conversion Reminder

Marking a work order as complete or collecting payment automatically converts it into a finalized invoice.

Status Filter Dropdown

Use the dropdown filter menu above the list to isolate specific stages of work:

  • All Work Orders: Comprehensive master listing of all work orders across your account.
  • Future Work Orders: Displays all upcoming appointments scheduled for future calendar dates.
  • Past Work Orders: Filters for appointments with elapsed calendar dates that have not yet been marked complete or settled.
  • Cancelled Work Orders: Archives jobs that were called off or cancelled prior to completion.
  • Master Work Orders: Displays parent recurring contracts and subscription profiles that generate ongoing visits.
  • Future Reoccurring: Isolates scheduled upcoming recurring visits generated by your master agreements.

Search & Tag Auditing

  • Multi-Field Search: Quickly locate any record by searching customer name, phone number, email, job address, or Work Order ID.
  • Custom Tags: Click the Tags button to filter the list by custom operational tags (e.g., priority tiers, specialized equipment requirements, or territory flags).
  • Test Transactions: Switch between live customer orders and sandbox test bookings via the View Test Transactions button.

Job Tasks & Quality Checklists

Maintaining high service standards across field crews requires consistent execution. The Job Tasks engine automates quality assurance by automatically generating customized service checklists for every work order and invoice based on the specific services being performed.

Configuring Task Templates

To establish your task definitions and service checklists, navigate to Menu > Work Orders > Tasks. You can define two types of tasks:

  • Service-Specific Tasks: Attach individual checklist requirements to specific primary services (e.g., "Wipe interior door frames" for Deep Cleaning) or optional add-ons (e.g., "Clean refrigerator drip pan" for Appliance Cleaning).
  • General (Universal) Tasks: Define mandatory baseline protocols that automatically attach to every job, regardless of the trade service rendered (e.g., "Perform initial walkthrough with client", "Turn off interior lights", or "Ensure all exterior doors and gates are locked before departure").

Automated Checklist Generation

You never have to manually assemble a checklist for a job. The moment an invoice or work order is created—whether booked online by a client, scheduled by an office dispatcher, or spawned by recurring auto-scheduling—the system compiles and attaches the relevant tasks into a single, cohesive checklist.

Field Execution & Access

  • In the Employee Portal: Assigned technicians open their scheduled visit on their smartphone or tablet to view the job details, where the complete interactive checklist is immediately accessible.
  • In Administrative Views: Office dispatchers and managers can inspect real-time job progress on any invoice or work order by selecting the Checklist tab.

Accountability, GPS Tracking & Team Collaboration

The checklist provides strict operational accountability and supports multi-person crew coordination:

  • Detailed Audit Trail: Each time a task is checked off, the system permanently records who completed it, the exact timestamp, and their GPS location coordinates (if employee location tracking is enabled). Please note: Recorded task completion locations are strictly confidential and visible only to account administrators.
  • Multi-Tech Sync: When multiple technicians work on the same job, crew members can tap the refresh icon () next to the checklist header to instantly pull in items checked off by their teammates.
  • Collision Prevention: Built-in concurrency logic prevents two crew members from simultaneously marking the same task as complete.
  • Error Corrections: If an employee checks off a task by mistake, they can tap the item again to remove the completed status and return it to the open queue.

Frequently Asked Questions

Work Orders & Billing

When should I create a Work Order vs. an Invoice?
Use Create Work Order when managing incoming requests, intake calls, or scheduling future visits where you need to calculate pricing via service drivers, configure add-ons, or input a new client on a single screen. Use Create Invoice when billing completed one-off visits, invoicing custom free-form work, or cloning past invoices.
What happens when a work order is marked complete or paid?
The system automatically converts the work order into a finalized invoice. If the invoice is unpaid and you mark it "Not Yet Complete", it instantly converts back into an active work order.
What makes "Other Costs" different from regular line items?
Line items entered under Other Costs on an invoice are completely isolated from discounts and sales tax calculations, ensuring pure pass-through reimbursement for non-taxable materials or specialized fees.

Delivery & Messaging

Why doesn't the "From" address on customer emails reflect my custom domain?
Automated platform emails (such as invoices, receipts, and survey requests) are delivered using our system's domain rather than your custom domain (e.g., www.mycleaningcompany.com). Even if your website uses a custom web address, custom email inbox hosting is not configured on that domain through the platform. Sending notifications through our verified mail servers ensures high deliverability and prevents critical customer invoices from being flagged as spam or rejected by mail providers.
Within standard actions, I only see options to email quote approvals and payment requests. How can I text these links to clients via SMS?
While standard one-click actions default to email delivery, you can send quote approval links, invoice payment requests, and survey links via SMS text message using the Automation Module:

  1. Navigate to Menu > Automations > Automation Setup and create a new automation for 'Sending messages'.
  2. Set the automation Triggered By type to Event and set the Event Trigger to Manually Run Automation.
  3. In the message builder, compose your notification and insert the required dynamic link tag (such as the Quote Approval Link, Payment Request Link, or Survey Link).
  4. Within the message delivery options, set the delivery channel for the Customer to SMS so it routes to the customer's mobile phone.
  5. Save the automation.
To send the text, open the relevant quote, work order, or invoice, click on the Actions tab, choose your newly created automation from the actions menu, and click Launch Automation. The platform will dispatch the SMS containing the direct link to the customer within a couple of minutes at most.

Recurring Invoicing & Master Work Orders: Overview

For service businesses that rely on ongoing maintenance contracts, regular cleaning, or scheduled recurring visits (e.g., Weekly, Bi-Weekly, Monthly), manually plotting appointments and issuing invoices is unsustainable. The recurring billing engine automates this lifecycle by cloning schedule parameters, reserving calendar time slots months in advance, and automatically scheduling crews.

Key Benefits

  • Zero Manual Re-Entry: Once an agreement is launched, future visits and billing drafts generate automatically in the background.
  • Forward Calendar Security: Generates future visits rolling 3 months in advance, ensuring repeating clients lock in their preferred time slots while giving dispatchers clear forward-schedule visibility.
  • Automated Crew Retention: The auto-scheduler preserves crew continuity by assigning the client's preferred technicians across every future booking.

The 5-Step Automation Flow

Whenever a repeating service frequency is selected, the platform initiates a 5-step automation lifecycle:

  1. Step 1 – Trigger Intake: A customer commits to a recurring frequency via an online booking form, an approved estimate, or manual entry by your office staff.
  2. Step 2 – Master Blueprint Creation: The system automatically instantiates a Master Work Order / Invoice that serves as the permanent blueprint for pricing, service drivers, and scheduling rules.
  3. Step 3 – Initial Schedule Spawning: Using the master blueprint, the system immediately populates your calendar with individual, future-dated appointments and linked work orders across an initial 90-day window.
  4. Step 4 – Automated Dispatch & Crew Assignment: If auto-scheduling is enabled, the dispatch engine instantly evaluates technician shifts and assigns your preferred team or available crew to each generated visit.
  5. Step 5 – Rolling 90-Day Horizon Maintenance: A background maintenance job runs automatically every day to audit active recurring agreements. As calendar days advance, it continuously spawns new upcoming visits on a rolling basis, guaranteeing that your dispatch calendar is perpetually populated 90 days into the future without requiring any manual oversight.

The Master Invoice Blueprint

To inspect active agreements, navigate to Menu > Invoicing > Invoices and select Master Invoices from the top-right filter dropdown (or view the Recurring Orders section on any Customer Profile).

Critical Distinction: Master Invoices Are Internal Blueprints

A Master Invoice is not a payable bill and is never delivered to customers. It carries a prominent header: "Not an Invoice / Not Payable by Customer / For Internal Use Only." It functions exclusively as the root template from which all future child appointments and invoices inherit their data.

Master Invoice Properties

  • First Appointment Date: The historical date when the recurring series officially began.
  • Recurrence End Date: The termination date of the agreement (displays Forever / None for ongoing contracts).
  • Related Work Orders Shortcut: Inside the Master Invoice, clicking Actions > Related Work Orders opens an itemized list of all upcoming child work orders spawned by that master.

Cascading Global Updates

If a customer requests permanent changes to their recurring agreement (such as shifting their regular time slot from 12:00 PM to 2:00 PM, or adding a recurring $30 oven cleaning), you do not need to edit each upcoming appointment individually.

How to Push Global Adjustments

  1. Open the customer's Master Invoice.
  2. Click Actions > Edit Master Invoice.
  3. Update the desired services, line-item pricing, start time, arrival window, duration, or preferred team.
  4. Click Save.

What Happens Next: The system automatically cascades these modifications down to all upcoming child appointments and work orders across your calendar.

When Do Child Records NOT Inherit Master Changes?

To protect historical data and custom modifications, the Master Invoice will never push updates to child records under any of the following conditions:

  • Completed Work Orders: Any job where service has already been marked as complete.
  • Paid, Cancelled, or Refunded Records: Any record that carries an active status of Paid, Cancelled, or Refunded.
  • Detached Calendar Events: Any work order that does not have an active calendar event linked to it.
  • Suppressed Work Orders: Any specific appointment where "Suppress changes from master invoice" has been enabled.

Supported Cascading Attributes

  • Services, materials, and free form lines
  • Recurrence frequency and duration
  • Appointment start time, arrival windows, and duration override
  • Frequency discounts and coupons
  • Preferred team routing and dispatch preferences
  • Target property service address
  • Special instructions, payment term, and tags

One-Off Edits & "Suppress Changes"

Frequently, a recurring client requires a single, one-off service addition or schedule shift (e.g., adding a $100 wall washing to their April 29th visit only, without altering their permanent recurring agreement).

The "Suppress Changes" Safeguard

  1. Open the specific future child work order you need to modify (e.g., the April 29th appointment).
  2. Click Actions > Edit Work Order.
  3. Add the one-off service (e.g., Wall Washing – $100.00).
  4. Check the box labeled Suppress changes from master invoice.
  5. Save the work order.
Why "Suppress Changes" Is Crucial

Checking this box permanently crystallizes that specific work order. If you subsequently edit the Master Invoice, the system will respect the suppression lock and will not overwrite or revert the custom changes you applied to that single appointment.

Attributes Protected by Change Suppression

When change suppression is enabled on an individual work order, the Master Invoice is prevented from overwriting any of the following attributes:

  • Services, materials, and free form lines
  • Recurrence frequency and duration
  • Appointment start time, arrival windows, and duration override
  • Frequency discounts and coupons
  • Preferred team routing and dispatch preferences
  • Target property service address
  • Special instructions, payment term, and tags

Cancelling Visits & Ending Recurrences

Whether a client needs to skip a single appointment or terminate their entire recurring agreement, the platform provides dedicated workflows for each scenario.

Cancelling a Single Scheduled Visit

If a customer needs to skip or cancel just one appointment without disrupting their upcoming recurring schedule:

  1. Open the specific future-dated work order for that visit.
  2. Click Cancel (or Actions > Cancel Work Order).

Cancelling the work order immediately removes that specific appointment from your dispatch calendar, while leaving all subsequent recurring visits in the series fully intact.

Ending a Series: Method 1 – Setting an End Date (Gradual Expiration)

Use this method if the customer gives notice that their recurring service ends on a specific future date (e.g., April 29th):

  1. Open the Master Invoice and click Actions > Edit Master Invoice.
  2. Scroll to Recurring Appointment End Date and select the final cutoff date.
  3. Click Save.

The system preserves all scheduled appointments up to and including that cutoff date, while instantly purging any appointments dated beyond it.

Ending a Series: Method 2 – "Delete Reoccurrence" (Immediate Purge & Selection)

Use this method to permanently terminate the series and selectively remove pending bookings:

  1. Open the Master Invoice and click Actions > Delete Reoccurrence.
  2. A prompt displays a list of all future pending visits tied to the master agreement.
  3. Check the boxes for any upcoming visits that should be cancelled, or leave boxes unchecked if the customer still plans to receive upcoming visits.
  4. Click Delete.

The Master Invoice is permanently deleted, the recurring schedule terminates, and selected future appointments are wiped from the calendar.

Recurring Invoicing FAQs

Scheduling & Automation

How far into the future does the system generate recurring appointments?
The platform maintains a rolling window of approximately 3 months (90 days) in advance. As time passes, the background scheduler continuously generates new appointments to preserve your 90-day forward schedule.
How do I cancel just one upcoming visit without stopping the entire recurrence?
Open the specific upcoming work order for that visit and click Cancel. This cancels that individual job and removes it from the calendar without altering any future visits in the recurring series.
What happens if the auto-scheduler cannot assign my Preferred Team to a recurring job?
If your preferred team is off-duty, fully booked, or on leave, the system checks whether "Allow other teams" is enabled. If enabled, the slot is assigned to the next available crew. If disabled, the appointment remains unscheduled within the Scheduler and can be manually scheduled by administrative staff.

Master Invoices & Rate Adjustments

Can a customer pay for a Master Invoice online?
No. Master Invoices are internal templates that carry no payment balances. Customers are billed strictly through the individual child invoices generated for each completed service visit.
If I edit a single recurring work order, will it change the client's regular rate?
No. Editing an individual child work order only modifies that single appointment. To update the rate or scope for all future visits, you must edit the Master Invoice.
Do completed or paid invoices inherit changes if I edit the Master Invoice?
No. Invoices and work orders that have already been marked as Completed, Paid, Cancelled, or Refunded are permanently locked and will never inherit updates from the Master Invoice. In addition, any work order that has no calendar event attached is exempt from master updates.

Creating a Customer Profile

To manually create a new customer account:

  1. Navigate to Menu > Customers > Customer List and click Create Customer.
  2. Customer Name & Contact: Enter the customer's first name, last name, email address, and mobile phone number.
  3. Notification Preferences: Toggle the SMS/MMS Notifications switch to enable or disable text message alerts.
  4. Default Payment Term: Select a default payment term to automatically apply to future bookings submitted by this customer. (Note: This does not affect online bookings where payment is collected upfront at the time of checkout.)
  5. Customer Notes: Enter internal instructions, operational notes, or property warnings (e.g., "Customer has a large dog; keep back gates latched"). Depending on your staff permission settings, assigned technicians can view these notes directly on their mobile work orders.
  6. Customer / Property Image: Upload a photo of the client or a reference image of the property entrance to help field crews identify the location upon arrival.
  7. Service & Billing Addresses: Enter the primary service address. Select Billing address is the same as home address if invoices should be issued to the service location.
  8. Click Save.

Email Rules & SMS Compliance

Handling Customers Who Refuse to Provide an Email:
An email is strictly required by the database. If a customer refuses to share their personal email, generate an internal placeholder at your own domain (e.g., emailnotprovided@yourcompany.com). This satisfies system validation while preventing outbound messages from reaching real external mailboxes.

2. SMS Compliance & The "STOP" Opt-Out Safeguard

Enabling the SMS/MMS Notifications switch allows the system to send automated booking confirmations, 24-hour reminders, technician "On the Way" alerts, and other notifications generated by the Automation engine.

  • Mandatory Carrier Disclaimer: Every outbound automated text message automatically appends: "Reply STOP to prevent future notifications."
  • Automated Opt-Out: If a customer replies with STOP, telecommunications carriers flag the line and the platform automatically flips the Send SMS Notifications switch to Disabled.
  • Impact on Staff Messaging: Once disabled, neither automations nor field technicians can text that mobile number through the Chat App.
  • Re-Enabling SMS: If a customer opts out by mistake, both staff members (via the Customer Profile) and customers (via the Client Portal) can toggle notifications back to Enabled.

Profile Tour & Multi-Property Support

Opening any record in your customer directory loads the Customer Profile Hub:

Profile Metrics & Details

  • Average Survey Score: Highlights the customer's cumulative satisfaction rating across all completed jobs to immediately identify happy clients or unhappy accounts.
  • Client Portal Activity: Displays whether the customer has activated their self-service portal account and logs their most recent login timestamp.
  • Google Maps Integration: Displays interactive satellite and road map views of the client's service location with built-in zoom controls.
  • Card on File: Displays the vaulted credit or debit card brand and last four digits securely stored via Stripe.
  • Active Recurring Schedules: Itemizes recurring master agreements (e.g., Monthly service starting March 24th) with direct links to the root work orders.

Managing Multiple Properties

For commercial clients, landlords, or property managers with multiple service locations, you can attach multiple addresses to a single customer profile:

  1. Under the Properties section of the profile, click Add Property.
  2. Enter the new street address and operational notes.
  3. Check Default Property if this should serve as the primary dispatch location for future invoices.
  4. Click Save.

Each property includes its own dedicated Map button to inspect geolocation pins and dispatch access points independently.

Customer Profile Header & Activity History

The top navigation bar of each Customer Profile provides one-click shortcuts to update client records, generate new transactions, and audit complete document histories. Numerical counter badges on history buttons immediately display how many records exist for each category.

Account Details & Communication Records

  • Contact Info: Edit basic customer information, service and billing addresses, notification preferences, default payment terms, and property access notes.
  • Surveys: View all completed customer satisfaction reviews, star ratings per question, written feedback comments, and assigned technicians.
  • Photos: Access uploaded property photos, arrival landmarks, and job-site images attached to this customer.
  • Calls: View inbound and outbound call logs, timestamps, and call details recorded via Call Manager for this client.

Quotes & Requests

  • Create Quote: Instantly opens a blank proposal prepopulated with this customer's details.
  • Quotes: Access all historical proposals and filter by approval status (Pending, Approved, Rejected, Expired).
  • Quote Requests: Review inbound quote inquiries submitted by this client through your website's request forms.

Work Orders & Dispatch

  • Create Work Order: Generates a new scheduled work order directly tied to this client.
  • Work Orders: Audit past and upcoming scheduled jobs, service checklists, and completion statuses.

Invoicing, Statements & Payments

  • Create Invoice: Generates a direct, standalone invoice for one-off charges or immediate billing.
  • Statements: Generate and download monthly billing statements detailing outstanding balances, invoice activity, and payments over time.
  • Invoices: Browse full billing history and filter by settlement status (Paid, Due, Past Due, Refunded).

Mailing Lists: Capture & Compliance

Building an email subscriber list is one of the most effective ways to nurture repeat business, promote seasonal specials, and keep clients engaged. The platform includes a lightweight mailing list intake widget that captures prospective client emails directly from your website footer.

Enabling the Mailing List Widget

  1. Navigate to Menu > Website > Website Setup.
  2. Access the Business Information panel.
  3. Scroll to the SEO & Social section and toggle on the Mailing List Form switch.
  4. Click Save.

Once enabled, an email subscriber signup field will automatically render in the footer across all pages of your live website.

Managing Your Subscriber List

Whenever a website visitor enters their email address into the footer widget, their details are immediately captured and logged to your customer records:

  • To view your active subscribers, go to Menu > Customers > Mailing List.
  • From this screen, you can copy your subscriber list so that it can be entered into external email marketing platforms (such as Mailchimp, Constant Contact, or Brevo) to power scheduled newsletter blasts and promotional campaigns.

Mandatory Unsubscribe Link & Compliance

Anti-spam legislation (such as CAN-SPAM, CASL, and GDPR) strictly requires commercial businesses to give recipients a clear, accessible way to opt out of promotional emails at any time.

  • Your Menu > Customers > Mailing List management page provides a dedicated URL to your site's pre-configured Unsubscribe Page.
  • Compliance Requirement: Whenever you distribute marketing emails, newsletters, or sales announcements to this subscriber list, you must include this Unsubscribe link in the footer of your email template.
  • When recipients click the unsubscribe link, they are directed to a page to confirm their email address. Once submitted, their address is automatically removed from your active mailing list.
Important: Do Not Send Mass Campaigns From Free Email Services

Never send bulk email blasts to your mailing list using free consumer email accounts (such as @gmail.com, @yahoo.com, or @outlook.com). Free webmail providers enforce strict outbound rate limits and anti-spam filters; sending mass emails from these accounts will quickly trigger spam blocks, bounce deliveries, and potentially cause your email account to be blacklisted. Always use dedicated, verified email marketing software (such as Mailchimp) to deliver promotional broadcasts.

Customer Management FAQs

Profiles & Payment Details

What should I enter if a customer doesn't have or won't provide an email?
Enter a fictional placeholder email using your company's own domain name (e.g., noemail@yourcompany.com). This fulfills database requirements while avoiding sending emails to invalid recipients.
How is a customer's default payment card determined, and can I change it?
The default card is automatically set to whichever was used most recently: either the last card manually added to the customer's account or the last card the customer successfully used on your website's checkout form. To change the default card, navigate to Customers > Customer List, locate the customer, and click Change next to the default payment card listed in their profile.
Can technicians read customer notes on their mobile devices?
Yes. If your staff permissions permit viewing customer details, notes entered in the Customer Note field (such as gate codes or pet warnings) will appear on the technician’s mobile work order view.

SMS & Notifications

How can I stop future SMS appointment notifications for a customer?
SMS notifications can be disabled in two ways:

1. Customer Opt-Out: The customer can reply STOP directly to any automated text reminder they receive (standard carrier messaging rates apply).

2. Administrative Override: Go to Customers > Customer List, find the customer, and click View. Click Update Customer, uncheck the Send SMS notifications? box, and click Save. This acts as a master switch—once unchecked, all future SMS appointment notifications are blocked regardless of preferences selected during past online bookings.
Why is the SMS switch disabled on a customer's profile?
The customer likely replied STOP to an automated appointment reminder or technician text message. In compliance with telecommunications regulations, the system automatically disables text messaging until the setting is manually re-enabled by the customer, either by texting START or enabling SMS/MMS messages from within the Client Portal.
Are there extra costs for sending SMS appointment reminders to customers?
No. Outbound and inbound SMS appointment reminders are included directly in your monthly Premium Package subscription. Accounts include an allowance of up to 1,000 sent and received SMS messages per month. If your business requires a higher message volume, please submit a Support Ticket to request an increased limit.

Abandoned Carts: Overview & Lead Capture

Prospective customers frequently begin booking a service online to check rates, explore available appointment dates, or review service options, only to leave before completing checkout. Whenever a visitor enters their contact details during any phase of booking but exits before submitting payment or confirmation, the platform automatically logs the session as an Abandoned Cart.

Capturing these incomplete checkouts provides your office team with high-intent inbound sales leads, allowing you to follow up quickly via phone or email to answer questions, resolve hesitation, and recover the booking.

Capture Points & Triggers

The system tracks drop-offs across two distinct checkout entry paths:

1. The Homepage Booking Lead Form

When the compact lead form overlay is enabled across your homepage banner:

  • The visitor inputs their Name, Email Address, Phone Number, Service Frequency, and Desired Service, then clicks View Price.
  • The customer is routed to the full booking form where they customize cleaner counts, service hours, or add-ons.
  • If the user closes their browser or navigates away at this stage, the platform logs an abandoned cart with the Page Abandoned recorded as the Booking Page.

2. Direct Booking Form Navigation

When a visitor navigates directly to your full booking form:

  • The user configures primary service drivers (e.g., bedrooms, bathrooms), selects add-on extras, enters their contact information and service address, and picks an available arrival slot.
  • They proceed to the final checkout step (entering payment card details or choosing offline payment).
  • If they abandon the session at checkout, the platform logs the record with the Page Abandoned recorded as the Payment Page.

Abandoned Carts Explorer

To review incomplete customer checkouts, navigate to:

Menu > Customers > Abandoned Carts

Summary Listing Data

  • Customer Contact Details: Displays the prospective client's name, email address, and phone number.
  • Timestamp: Shows the exact date that the customer initiated the booking.
  • Page Abandoned: Pinpoints the funnel drop-off stage (e.g., Booking Page vs. Payment Page) to indicate how far along the checkout process they progressed.

Cart Details & Lead Recovery

Clicking View next to any record opens the comprehensive breakdown of the abandoned order:

  • Selected Services & Scope: Review the exact package options chosen, including room counts, hours, number of workers, or selected add-ons (such as oven or refrigerator cleaning).
  • Desired Appointment Window: Displays the specific date, start time, and service frequency (e.g., One-Time, Weekly) the customer attempted to reserve.
  • Order Completion Status: Features an explicit confirmation banner stating "Order was not completed by the customer."

Within the page header, you'll find a link that can be sent to the prospect so that they can resume their booking.

Abandoned Carts FAQs

Are abandoned carts recorded if a user leaves before entering their email or phone?
No. To preserve database hygiene, a record is only logged once the customer inputs identifiable contact information (their email address or phone number) into either the homepage lead widget or the direct booking form.

Does an abandoned cart reserve the customer's selected time slot?
No. Incomplete bookings do not hold calendar availability. The selected time slot remains open on your dispatch calendar and public booking form until an order is confirmed or a quote is accepted.

What is the difference between an abandonment on the Booking Page vs. the Payment Page?
An abandonment on the Booking Page means the user filled out the initial homepage intake form but left while configuring service options. An abandonment on the Payment Page indicates the user completed all service and scheduling steps but stopped at the final payment confirmation screen.

Customer Surveys: Overview & Rating Framework

The Surveys system automates customer feedback collection after completed jobs. Designed for high response rates, the tool limits evaluation to three focused questions, rewards respondents with automated discount coupons, and filters feedback to funnel satisfied clients directly to your public Google and Facebook review pages.

Core Architecture

  • 3-Question Benchmark: Surveys are strictly capped at three questions to prevent respondent fatigue and maintain high completion rates.
  • 1-to-5 Star Scale: Each question is scored on a standardized numerical rating between 1 and 5.
  • Staff Attribution: Every completed review automatically logs the specific technicians assigned to that job, making survey results a core metric for technician quality audits.

Question Setup & Coupon Rewards

To configure your customer survey questions and incentives, navigate to:

Menu > Customers > Surveys > Survey Setup

1. Customizing Questions

  • Industry Defaults: Your account automatically seeds standard trade questions based on the industry selected during initial setup (e.g., "Quality of cleaning job", "Staff friendliness").
  • Adding Questions: Click Add Question to input custom inquiries (e.g., "How cost-effective was our service?").
  • The 3-Question Rule: Because surveys permit exactly three active questions, you must toggle off an existing question before enabling a newly created one.

2. Comment Box & Coupon Incentives

  • Allow Comments: Enables a free-form text box where clients can provide written feedback, compliments, or suggestions.
  • Comments Header: Customize the prompt appearing above the text box (e.g., "Please share any additional details about your experience").
  • Coupon Awarded (Incentive): Select a promotional coupon from the dropdown (e.g., 10% Off Next Booking). When configured, the survey invitation email explicitly promises this discount, and the code is emailed to the customer immediately upon submission of the survey.

Smart Review Gating (Google/FB)

Online reviews are crucial for local search ranking and customer trust. The survey engine uses an automated Review Score Threshold to filter out unhappy customers before directing respondents to public review sites.

How the Filtering Threshold Operates

  1. Enable the Request Online Reviews switch in survey setup.
  2. Set the Review Score Threshold (e.g., set to 4.0).
  3. Paste the direct URLs to your Google Business Profile and Facebook Page.
Average Score Customer Experience System Workflow
Below 4.0
(e.g., 3.0 / 5)
Unhappy Customer The customer is thanked and awarded their coupon, but no external review links are displayed. Feedback is logged internally so management can follow up privately to rectify complaints.
4.0 or Above
(e.g., 4.8 / 5)
Satisfied Customer The submission screen presents prominent buttons inviting the client to share their positive review publicly on Google and Facebook with a single click.

Automatic & Manual Dispatch

1. Automated Post-Service Delivery (Via Automations)

Customer satisfaction surveys are dispatched automatically through custom workflows configured in the Automations module (Menu > Automations > Automation Setup). This provides complete control over when invitations are triggered and how they are sent:

  • Event Triggers: Initiate survey requests automatically following key operational events, such as when:
    • A work order is marked as Completed (e.g., when a technician checks out in the Employee Portal).
    • An invoice reaches Paid status.
  • Flexible Channels: Send survey invitations via automated email, SMS/MMS text message, or both, depending on customer preferences and communication profiles.
  • Auditing & Tracking: Review triggered, pending, and completed survey deliveries inside the Run Log (Menu > Automations > Run Log).

2. Manual Survey Dispatch

To send a survey invitation on demand for a completed, paid invoice:

  1. Open the target paid invoice via Menu > Invoicing > Invoices.
  2. Click the Actions dropdown.
  3. Click Send Survey Request. The system dispatches the invitation email with the secure response link and coupon promise immediately.

The Survey Locator & Auditing

To audit customer feedback across your operations, navigate to:

Menu > Customers > Surveys > Survey Locator

Filtering & Audit Dimensions

  • Date Range: Audit responses across custom windows (defaults to rolling past 12 months).
  • Filter by Employee: Evaluate individual technician ratings to identify coaching opportunities or recognize top performers.
  • Filter by Team: Compare average satisfaction across operational crews (e.g., The Clean Team vs. Team J).
  • Filter by Customer: Inspect the full feedback history of specific clients.

Granular Review Inspection

Clicking View on any record in the Survey Locator expands the complete audit record: associated Invoice ID, appointment date, survey completion timestamp, the awarded coupon code, individual question scores (1–5), client comments, and the complete roster of scheduled technicians who worked that specific job.

Surveys FAQs

Can I add more than three rating questions to my survey?
No. To maximize completion rates and prevent customer drop-offs, the survey system enforces a strict 3-question limit. You can, however, replace default questions with custom inquiries at any time.

Where does the customer find their promised coupon code?
The moment the customer submits their survey, the customer is sent an email with the coupon code.

How do surveys impact technician profiles?
Customer ratings automatically recalculate the technician's cumulative star rating shown on their internal employee profile (Menu > Employees) and populate the Recent Customer Reviews section with question scores and comments.

Quotes: Overview & Workflow

The Quotes engine enables your team to prepare itemized proposals, showcase site photos, capture digital client acceptances, and convert approved estimates into active calendar appointments and invoices without manual re-entry.

Two Customer Approval Channels

When you present a quote to a customer, they can review and approve it through two secure paths:

  • Interactive Approval Link (Email): A secure web link emailed directly to the customer where they can inspect itemized pricing, review attached site photos, and click Accept or Decline.
  • The Client Portal: Returning or registered clients can log into their self-service dashboard to review pending quotes, approve work orders, or reject proposals with feedback.

Global Terms & Settings

Before issuing quotes, review your baseline proposal defaults under:

Menu > Quotes > Quote Configuration

Configuration Parameters

These settings allow you to define quote terms, display disclaimers, and control the expiration rules that prevent clients from approving or rejecting older proposals online.

  • Quote Terms: The terms and conditions for your proposals. This text is printed at the bottom of all generated quote documents and is also displayed on the customer-facing online form where clients review, approve, or reject the proposal. Use this space to outline scope assumptions, deposit terms, or project requirements.
  • Days to Approve: The maximum number of days from the quote creation date that a customer is permitted to approve or reject the proposal via the online form.
    • Booking Date Precedence: If a quote contains a scheduled booking date, the system automatically enforces the sooner of the two dates (the threshold calculated by this setting vs. the scheduled appointment date) as the final approval cutoff.
    • No Expiration: Leave this field blank if you do not want to enforce an online approval deadline.
  • Days Quote is Valid: The maximum number of days from creation that your company will honor the pricing listed on the quote.
    • This validity window is printed at the bottom of quote documents that do not have an assigned booking date.
    • Important Distinction: Unlike Days to Approve, this setting is informational only and will not prevent a customer from accepting a quote or restrict an admin from marking it approved.
    • Leave this field blank if you do not wish to display a pricing validity limit.
  • Response to Acceptance: The custom on-screen confirmation message shown to the client immediately after they click to approve the quote online (e.g., "Thank you! We look forward to doing business with you!").
  • Response to Rejection: The custom on-screen acknowledgment message presented to the user after they decline the proposal via the online form (e.g., "Thank you for your interest in our company and its services. Please do not hesitate to contact us regarding any future jobs.").

Building Quotes & Service Line Items

To initiate a proposal, navigate to Menu > Quotes > Create Quote. The form provides a modular, step-by-step quote builder designed to capture standard services, catalog materials, ad-hoc work, and client accounts.

1. Primary Services & Operational Drivers

The Primary Service section allows you to select a foundational package (e.g., Residential Snow Plowing, Walkway Shoveling, Salting and De-Icing):

  • Service Drivers: Once a service is selected, its underlying configuration parameters expand automatically (e.g., number of crew members/cleaners, labor hours, linear walkway segments, standard driveways, or custom job drivers).
  • Shared Architecture: Service pricing and calculated job durations are dynamically pulled from your main booking configuration (Menu > Website > Website Setup > Booking Form: Primary Services).

2. Additional Services (Add-On Extras)

The Additional Services section lets you tack on supplemental packages and specialized tasks:

  • Direct Checkbox Selection: Select add-ons with pre-set flat rates, percentage add-ons, or variable fees based on primary drivers.
  • Quantity Multipliers: For units billed per item or step (e.g., Stair Shoveling per step or Bags of Pet-Safe Ice Melt), enter the numerical quantity and click OK to recalculate line subtotals.
  • Service Info Popups: Click the info icon () beside any extra service to inspect customer-facing descriptions before adding it to the proposal.

3. Adding Tracked Materials from Inventory

If the project consumes parts, bulk supplies, or retail stock from your central inventory (Menu > Inventory > Items):

  • Under the Materials section, click Add Line.
  • Select Item: Choose any tracked item from the searchable Select2 catalog (displaying SKU, name, and stock reference).
  • Quantity: Enter the units or volume needed.
  • Unit Price: The default unit sales price pre-fills automatically, but can be manually overridden for project discounts or premium surcharges.
  • Click the red remove icon () to remove any unwanted line item.

4. Free-Form Custom Line Items

For bespoke labor, specialized equipment rentals, or one-off work not found in your standard catalog:

  • Under the Free Form Items section, click Add Line.
  • Item Description: Type a custom scope or service description (e.g., "Emergency vehicle winch-out & drift clearing").
  • Amount: Enter the custom dollar amount.
  • Sign Toggle: On mobile, click the Sign button beside the amount input to quickly toggle between positive charges and negative amounts (discounts/credits).

5. Start Windows, Duration Overrides & Scheduling Date

  • Start Time Window (Optional): Enter an arrival window buffer in hours (e.g., 2.0 hours) if you cannot promise a pinpoint arrival time.
  • Appointment Duration Override (Optional): The system automatically calculates labor hours based on selected services and drivers. If field conditions require more or less time, choose an override duration from the dropdown (from 0.5 up to 24.0 hours). (Note: If the primary service is driven strictly by selected labor hours, manual duration overrides are locked out.)
  • Booking Date & Start Time (Optional): Choose an appointment date using the interactive date picker, and pick an available dispatch time slot. Open-ended quotes can leave this blank.
  • Subscription-Based Service Switch: Enable the "Quote is for a subscription-based service" toggle if the proposal covers an ongoing billing membership or maintenance agreement.

6. Frequency, Coupons, Notes & Payment Terms

  • Frequency: Select between One Time or recurring intervals (e.g., Weekly, Biweekly, Monthly) to automatically apply frequency discounts.
  • Coupon Code (Optional): Apply fixed-dollar or percentage discount coupons configured in your account.
  • Special Instructions (Optional): Provide property access details, gate codes, hazards, or dumping/piling instructions.
  • Preferred Team: Select a preferred field crew.
  • Auto Schedule this Job: When no preferred crew is designated, this toggle controls whether the system will automatically dispatch and schedule the appointment to an available team once the quote is approved.
  • Allow Other Teams to be Auto Scheduled: When enabled, the system permits the auto-scheduler to route the job to alternate available crews if your preferred team is busy or unavailable at the requested time.
  • Payment Term: Designate which payment term governs invoice due dates, early payment incentives, or late fee penalties.

7. Customer Assignment & Billing Rules

Select whether the quote belongs to an existing client or a new prospect:

  • Existing Customer: Search and select the client profile via the searchable dropdown. Once selected, choose the target Job Address linked to their profile.
  • New Customer: Enter their first name, last name, optional company name, phone number, email address, and SMS/MMS notification preference.
  • Address Configuration: Enter the primary Job Address (Street, Unit, City, Country, State/Province, and Postal Code). By default, Billing Address is same as Job Address is enabled; unchecking this reveals separate billing address fields.

8. Live Quote Summary

The sticky sidebar dynamically updates as you build the proposal:

  • Displays the Item Total, deducted Coupon Discounts, applied Frequency Discounts, and calculated Subtotal.
  • Itemizes regional taxes (Federal, State/Provincial, County, City, and Other applicable taxes).
  • Presents the final currency total (e.g., Total (CAD) or Total (USD)). Click Save Quote to generate and store the estimate.

Arrival Windows & Team Priority

Quotes synchronize with your real-time scheduling calendar to prevent overbooking before the proposal is sent:

  • Real-Time Slot Availability: The start-time selector displays only time slots that currently satisfy your staff capacity and shift schedules.
  • Start Time Window (Arrival Spread): Specify your arrival buffer (e.g., enter 1 hour to present an 11:00 AM booking as an arrival range between 10:30 AM – 11:30 AM).
  • Service Frequency: Choose between a One-Time appointment or recurring service intervals (e.g., Weekly, Bi-Weekly, Monthly).
  • Preferred Team Routing: If the client requests a specific crew, designate them under Preferred Team. When the quote is approved, the auto-scheduler prioritizes this team.
  • Team Fallback Toggle: Enable Allow other teams to be auto-scheduled to permit the auto-scheduler to route the job to alternate crews if your preferred team is busy.

Site Photos & Approval Actions

Opening any saved quote displays the document toolbar along the top header:

Attaching Site Photos (Client Sharing)

Photos can be uploaded to quotes to document pre-existing property conditions or showcase reference examples:

  1. Click the Photos button in the top toolbar.
  2. Upload your image files.
  3. Click Share with Client on any photo (the badge turns green). Photos marked as shared will display to the customer on their online approval screen and in the Client Portal.

The Actions Menu

  • Send Quote: Sends a copy of the quote directly to the customer's email.
  • Request Approval: Sends the interactive approval email containing the secure link where the client can accept or decline online.
  • Mark as Approved: Allows staff to manually accept the quote internally if the client gives verbal confirmation over the phone or in person.
  • Mark as Rejected: Manually flags the quote as declined.

Document Audit Log

Click the Log tab to review a timestamped audit trail tracking when the quote was generated, when photos were uploaded, when emails were dispatched, and when decisions were logged.

Post-Approval Calendar Automations

When a quote is accepted—either by the customer online or manually marked as approved by staff—the system automatically triggers four backend workflows:

  1. Calendar Appointment Reservation: A confirmed booking is immediately generated and reserved on your master calendar.
  2. Future-Dated Work Order Generation: A work order is automatically created with payment due dates calculated according to your Net Terms.
  3. Recurring Series Deployment: If the quote was configured with a recurring frequency (e.g., Weekly), approving the quote automatically generates future-dated appointments and work orders. These are created up to 90 days out.
  4. Auto-Scheduler Dispatch: If auto-scheduling is enabled, the newly reserved appointments are immediately assigned to available technicians, giving priority to your designated Preferred Team.
Critical: Quote Documents Are Immutable

To preserve legal integrity and maintain strict contract auditability, quotes cannot be edited once created. If a customer requests scope or pricing adjustments, click Mark as Rejected on the original quote and generate a revised proposal.

Quotes FAQs

Drafting & Line Items

Can I edit a quote after sending it to a customer?
No. To maintain contractual and audit integrity, quotes are locked upon creation. If pricing or requirements change, reject the existing quote and issue a new one.
How do I apply a discount or credit on custom quote lines?
In the Free Form Items section, enter the discount dollar amount and click the Sign button. This inverts the positive value to a negative amount and automatically reduces the subtotal. This button is only available on mobile. On PC, simply enter a negative sign within the amount field.

Scheduling & Reporting

Can I create quotes without setting a specific appointment date?
Yes. The Booking Date/Start Time section is completely optional. If left blank, the proposal functions as an open-ended pricing estimate governed by your Days Quote is Valid setting.
Why is the Appointment Duration Override disabled or unavailable?
If your selected Primary Service is configured with driver options that explicitly define appointment length (such as an hourly driver like 1 Hour, 2 Hours, etc.), manual duration overrides are disabled to ensure scheduled time remains synchronized with billed labor.
Where can I track my quote conversion rate?
Navigate to your platform Dashboard and click the Jobs or Forecast tab to review metrics for % of Jobs Reviewed, Recently Accepted Quotes, and Recently Rejected Quotes.

Employee Portal: Overview & Access Setup

The Employee Portal connects office dispatchers with technicians in the field. Designed specifically for smartphones and tablets on the road, it provides field personnel with real-time route instructions, work order scopes, customer entry codes, and instant customer SMS arrival triggers.

Initial Onboarding & Authentication

  1. An administrator registers your technician profile in the system.
  2. You will receive an automated invitation email containing a secure link to create your password.
  3. Navigate to bluesailagency.com and click Login.
  4. On your initial sign-in, review and accept the system Terms and Conditions to unlock your portal dashboard.
Role Permissions Determine Visibility

Administrative managers configure granular permissions for field staff. Depending on your company's security policies, certain features (such as self-assigning open jobs, declining appointments, or viewing specific pricing lines) may be enabled or hidden by your office.

Daily Schedule & SMS Alerts

Upon logging in, the home screen immediately displays your active shift schedule:

  • Shift Overview: Highlights your total scheduled working hours for today (e.g., 8:00 AM – 5:00 PM) and displays upcoming hours for tomorrow.
  • Daily Appointments List: Sequentially lists every customer visit assigned to you, including start times, customer names, and job addresses.
  • Turn-by-Turn GPS Navigation: Tapping any property address opens Google Maps in your phone's native navigation app.

Automated Customer SMS Communication

Prior to heading to an appointment, open the job card and tap More Info to access real-time dispatch alerts:

  • Send "On My Way" Message: Tap this button the moment you leave for an appointment. The system immediately sends an SMS text to the customer's phone notifying them that their technician is in transit.
  • Arrival Delay Notice: If you are held up by traffic or an overage on an earlier job, select your delay increment (e.g., 15, 30, or 45 minutes) and tap I'll Be Late. An automated SMS is sent to the client with their revised estimated arrival time.
  • Time Tracking & Check-In: Tap Check In when arriving on-site, and Check Out upon departure. A status ring around technician avatars visually indicates whether team members are Not Checked In, Checked In, or Checked Out.

Scopes, Notes & Site Photos

Tapping View Invoice on any appointment opens the complete operational work order.

Reviewing Work Orders & Logistical Instructions

  • Special Instructions: Inspect critical property access details provided during booking (e.g., "Lockbox code 4920" or "Keys hidden in mailbox").
  • Service Line Items: Review the exact scope of work ordered (e.g., Deep Clean – 3 Bedrooms / 2 Bathrooms) and identify any optional add-ons requested (e.g., Inside Oven, Inside Refrigerator).
  • Arrival Window Ranges: Note whether an arrival window buffer applies (e.g., an 8:00 AM job with a ±1-hour window gives an arrival target between 7:00 AM and 9:00 AM).
  • Tap-to-Call Contact: Tapping the customer’s phone number initiates a phone call directly from your device.

Internal Notes & Safety Warnings

Click the Notes button to inspect property hazards and customer history:

  • Review warnings left by dispatchers or past technicians (e.g., "Customer has a large dog; keep side gate latched").
  • Add internal notes to log issues encountered during service. Customers cannot see internal notes. Notes are visible only to your teammates and office administrators.

Uploading Pre-Job & Completed Work Photos

To document pre-existing property damage or showcase high-quality completed work:

  1. Tap Choose File on your smartphone to open your camera and capture an image directly from the field.
  2. Add an optional descriptive caption to the photo.
  3. Tap Upload. Teammates assigned to the job can immediately view the photo in their own gallery.
Privacy Safeguard

Photos taken by field employees remain internal by default. Field staff cannot publish photos to the Client Portal. Only office administrators have permission to share photos with customers.

Profile & Team Directory

To manage personal information or contact co-workers, navigate to Employers > [Your Company Name]:

  • Update Profile: Update your legal name, mobile phone number, residential mailing address, or profile picture.
  • Company Information: View official office contact numbers and headquarters addresses.
  • Team Directory: Access a directory listing of fellow team members and view direct phone numbers for on-duty colleagues.

Mobile Calendar & Shift Views

Click View Schedule to open your visual calendar layout:

  • Working Shift Blocks: Light blue shading across calendar days illustrates your scheduled operational shifts (e.g., working Sunday/Monday 8:00 AM – 5:00 PM, with Tuesday/Wednesday off).
  • Assigned Job Blocks: Individual solid blocks represent customer appointments. Tapping any the customer's name within any appointment block opens a quick-view modal with customer address, Google Map directions, and work order shortcuts.
  • Date Range Filtering: Adjust forward-looking start and end dates to inspect upcoming schedules weeks in advance.

Declining & Picking Up Jobs

If authorized by administrative permissions, technicians can self-manage workload adjustments through the portal.

Declining Assigned Appointments

If enabled by your administrator, technicians can decline jobs provided the appointment falls outside the company's minimum advance notice window (e.g., appointments scheduled more than 7 days in advance):

  1. Locate the future appointment on your schedule calendar.
  2. Select the job block, click on the customer's name within the block and tap Delete.

Picking Up Unscheduled Jobs ("Find Jobs")

If you have open availability during a scheduled shift, you can claim available unassigned jobs:

  1. From the main portal menu, tap Find Jobs.
  2. Select the date you wish to inspect.
  3. Tap Show Unscheduled Appointments.
  4. Tap on any open booking and select Info to review a summary of the job or tap Document to see specific information on the job, such as the services requested.
  5. To self-assign yourself to a job:
    • Tap on an unscheduled job
    • Tap your name at the top of the scheduler grid
    • On the unscheduled job block, click Assign

Employee Portal FAQs

Can customers see the notes I write inside the job?
No. All notes entered within the Notes section of a work order are internal. They are visible strictly to assigned team members and company administrators.

What happens when I tap "I'll be late"?
The system automatically sends an SMS text message directly to the customer’s phone number, informing them of your delay and providing an updated arrival time based on your selected buffer.

Why can't I see the 'Find Jobs' or 'Remove' buttons on my schedule?
The ability to decline appointments or self-assign open work orders is governed by administrative permission toggles. If these buttons do not appear, your company has restricted dispatch management to office administrators.

Can I change my customer-facing arrival window?
No. Arrival windows are established by dispatch rules and customer agreements during booking. Technicians can view the window range on the work order, but changes must be coordinated through your office dispatcher.

Employee Management: Overview & Operational Value

Adding and configuring team members is central to your daily operations. Creating an employee profile enables the system to:

  • Calculate Live Availability: Feeds employee shift hours into your online booking form, quote builder, and invoice creator so arrival slots reflect true capacity.
  • Automate Job Dispatch: Enables the auto-scheduler to route appointments to qualified, on-duty technicians.
  • Provision Portal & App Access: Generates secure credentials so field staff can log in to view routes, customer notes, job tasks, and customer conversations.
Automatic Administrator Profile

When you first register your company account, the platform automatically provisions the account owner as an active employee. This allows business owners to assign themselves to jobs, test field workflows, and access the mobile experience without creating duplicate accounts.

Primary Information & Address

To create or update a team member's record, navigate to Menu > Employees > Create Employee (or select Edit on an existing profile).

1. Primary Information

  • First Name & Last Name: The employee's legal or preferred operating name.
  • Email Address: The technician’s login email. Entering a valid email sends automated onboarding instructions for setting their password.
  • Job Title: Internal or public title (e.g., Senior Lead Technician, Apprentice).
  • Cell Phone Number: Requires a 10-digit number including area code (e.g., 123-456-7890). Used for system notifications and peer communication.
  • Head Shot: Internal profile photo visible to administrators and the employee in their portal.
  • 'On My Way' Image: The photo or avatar sent via MMS text message to clients when the technician marks that they are en route. Note: MMS delivery is currently available for US and Canadian phone numbers only.

2. Home Address

  • Street Address & Unit/Suite/Apt: Enter the street address on line 1. Enter apartment or suite numbers strictly in the Unit/Suite/Apt. Number field (e.g., Unit 112).
  • City, Country, State/Province, & ZIP/Postal Code: Used for home dispatch distance calculations, geofencing, and internal records.

Permissions & Dispatch Controls

To update a team member's permissions, navigate to Menu > Employees > Edit.

1. General Permissions

  • Scheduling: When activated, this employee can be assigned to teams, will appear in calendar and scheduling views, and can have appointments dispatched to them.
  • Can see sales and accounts receivable?: When activated, this employee can view company sales figures, taxes, collected tips, accrued interest, late fees, and the underlying invoices and work orders by navigating to Menu > Customers > Sales Summary.

2. Permissions for Jobs that Employee is Scheduled To

  • Can see invoices?: Allows the technician to view customer invoices without pricing. If Self-Scheduling is also enabled, this allows them to inspect invoices for open, unscheduled jobs.
  • Can see service pricing?: Allows the technician to view line-item rates and total invoice charges. Keep disabled to maintain financial confidentiality.
  • Can see customer notes?: Grants access to CRM-level notes stored on the customer profile (e.g., gate combinations, pet warnings).
  • Can see invoice notes?: Allows viewing internal notes attached to the specific invoice by administrators or other team members.
  • Can add notes to invoice?: Allows the technician to write internal job notes. Notes added by staff are never shared with or visible to customers.
  • Can upload photos to job?: Allows the employee to capture and attach job-site photos and photo comments to assigned work orders.
  • Can see job photos?: Allows the employee to view photos and photo comments uploaded by office staff or other assigned crew members.
  • Can change job status?: Allows the technician to mark appointments as completed or revert them to uncompleted in the field.
  • Job rejection buffer (days): Number of advance days required for an employee to decline an assigned appointment. Leaving this blank blocks employees from declining jobs.
  • Self scheduling time period (days): Allows technicians to pick up and schedule themselves to unscheduled jobs starting within the specified number of days. Leaving this blank restricts scheduling entirely to dispatchers.

3. Communication Settings

  • Messaging: Gives the technician access to the internal platform chat widget and permits co-workers to direct-message them.
  • Customer conversations: Enables the employee to start or join customer message threads and grants access to customer voice recordings and transcripts handled by the Call Manager system.
  • Push notifications: Controls whether the employee is permitted to toggle and receive push notifications on their mobile device.

4. Miscellaneous Settings

  • Share phone number with teammates?: Makes the employee's cell phone number visible to other technicians assigned to the same team.
  • Location tracking: When enabled, the Blue Sail Agency mobile app tracks the technician's location, displaying it on the dispatch schedule and tagging timestamps/locations to field actions (e.g., checking in/out of jobs, completing task lists). Location tracking requires explicity opt-in by the employee.
  • Auto schedule employee: Enables the intelligent scheduler to automatically assign matching jobs to this employee based on team shifts.
  • Require two factor authentication: Forces the employee to set up and log in using an authenticator app (e.g., Google Authenticator) for enhanced account security.

Employment Lifecycle: Leave, Departure & Rehiring

Update an employee's profile settings under Employment Information to manage team status changes, temporary absences, and formal offboarding:

Managing Inactive Status

  • Employee is active?: Toggle to inactive for seasonal staff, medical leave, or sabbaticals. Deactivating removes the worker from their assigned team immediately and prevents new jobs from being assigned, while preserving their entire historical record.

Last Day of Work (Automated Offboarding)

When an employee resigns or is terminated, enter their final employment date in the Last day of work field. Once saved, the platform triggers the following automated offboarding actions:

  • All job assignments after this date (or today's date, whichever is later) are automatically deleted.
  • The employee is immediately removed from their assigned team.
  • Customer appointments can no longer be assigned to this employee, regardless of the appointment date.
  • All permissions and portal access are instantly revoked.
Rehiring Former Staff

If a past employee returns to your company, re-open their profile, clear the Last day of work date field, ensure Employee is active? is enabled, and adjust their permissions to restore full account access.

Performance Metrics & Shifts

Opening any technician profile (e.g., Menu > Employees > Profile) provides an administrative summary of quality and activity:

  • Quality Rating: Displays cumulative customer survey ratings (star ratings out of 5) calculated across all customer satisfaction surveys returned for that employee's jobs.
  • Direct Schedule Access: Click View Schedule to review assigned appointments across custom date windows.
  • Recent Customer Reviews: Inspect the three most recent survey reviews submitted for that employee, including individual question ratings, customer written feedback, and other co-workers who worked the job.
  • Resend Invite: Click Resend Login Instructions if a technician loses their password setup link.

Tip Tracking & Payroll Allocation

When customers add a gratuity during online checkout or when office staff log cash/check tips against an invoice, the platform tracks and distributes these funds automatically.

To audit tips for payroll distribution, navigate to:

Menu > Customers > Tips

Automated Gratuity Splitting

  • Equal Crew Allocation: Tips are split evenly across all technicians assigned to the completed work order (e.g., a $60.00 tip on a two-person job allocates $30.00 to each worker).
  • Payroll Auditing: Filter the report by start/end date range and isolate specific employees from the dropdown.
  • Detailed Ledger: Displays the Invoice ID, date, customer reference, and the precise dollar share allocated to that employee to simplify payroll disbursements.

Employee Management FAQs

Permissions & Staff Access

Can I hide invoice revenue from field staff while still showing service scopes?
Yes. In the employee's permission settings, enable Can see invoices? and disable Can see service pricing?. Technicians will see all property details, line items, and notes, but monetary amounts will remain hidden.
Can employees see unscheduled jobs to claim them?
Yes. If you input a day count into Self scheduling time period (days) and ensure Can see invoices? is enabled, the employee will be able to review open, unscheduled work orders within that window and assign themselves.
How does location tracking work in the field?
When Location tracking is enabled and the employee is using the mobile app, their location is visible on the scheduler and tagged to actions like job check-ins, check-outs, and completed checklist tasks. For privacy and compliance, the employee must explicitly allow location access when prompted on their device.

Scheduling & Offboarding

How do I handle scheduling for an employee who gives advance notice before their last day?
Because entering a Last day of work immediately revokes system access and removes team assignments, use a calendar block while the employee finishes their remaining notice period:

1. Navigate to Scheduling > Create Event.
2. Create a blocking event starting the day immediately following their final day (e.g., if their last shift is July 14, set the start date to July 15) and set an end date far in the future (e.g., December 31).
3. Assign the event to that specific employee. This blocks their availability and prevents the auto-scheduler or staff from dispatching appointments to them after their departure.
4. Once their final shift is officially completed, open their profile, set their status to Inactive, and record their official Last day of work to finalize their departure.
What happens immediately when I enter a 'Last day of work'?
Setting a Last day of work triggers an immediate offboarding process that applies the following four changes:

  • Job Assignments Cleared: All future job assignments scheduled after their entered last day of work—or after today's date, whichever date is later—are automatically deleted.
  • Team Removal: The employee is immediately unassigned and removed from their team or crew.
  • Permanent Scheduling Block: Customer appointments can no longer be assigned or dispatched to this employee, regardless of the appointment date.
  • Access Revoked: All employee permissions are revoked immediately, blocking access to the mobile app and administrative dashboard.

Teams: Overview & Architecture

Once you have configured individual employee profiles, the Teams module allows you to organize technicians into operational dispatch units (e.g., two-person crews, specialized detailing teams, or weekend shifts). Grouping employees into teams powers your real-time scheduling rules and enables the automated dispatch engine.

Core Operational Capabilities

  • Shift-Driven Availability: Establishes working days, non-working days, and operational hours that feed into your customer-facing booking calendars.
  • Crew Auto-Assignment: Enables the auto-scheduler to route multi-worker jobs to complete crews without manual dispatcher intervention.
  • Priority-Based Dispatching: Hierarchy controls ensure that your top-rated, most reliable crews are fully booked before jobs are distributed to secondary teams.

Creating Teams & Working Shifts

To establish a new crew, navigate to:

Menu > Teams > Create New Team

1. Team Profile & Auto-Scheduling Eligibility

  • Team Name: Enter a recognizable operational handle (e.g., "The A Team" or "Clean Team Alpha").
  • Description: An optional internal field to outline regional coverage or specialty vehicle assignments.
  • Auto Scheduled Switch: Enable this toggle if you want the intelligent auto-scheduler to dispatch bookings to this team. If disabled, jobs can only be assigned to this team manually by an office dispatcher.

2. Defining Regular Working Hours

Configure weekly shifts to establish when the team is available to take appointments:

  • Designating Days Off: Select the checkboxes for scheduled non-working days (e.g., marking Saturdays and Sundays as days off).
  • Operational Shift Windows: For working days, specify the start and end times (e.g., 8:00 AM to 5:00 PM, accounting for a 9-hour total shift including scheduled breaks).

Assigning Members & Team Leads

After defining shifts, link your active employees to the crew:

  1. Click Add a Team Member.
  2. Select an active employee from the dropdown list.
  3. Repeat this step to add all technicians who regularly work together on this crew.
  4. Designate a Team Lead: Check the Team Lead box next to the primary technician. This provides an operational reference for office dispatchers and fellow technicians in the field.
  5. Click Save.
Flexible Staff Modifications

You can edit team names, adjust shift hours, swap members, or change team leads at any time by clicking Edit on any team card. Updates take effect immediately for future auto-scheduling cycles.

Auto-Schedule Priority Ordering

When multiple teams have overlapping availability for a requested appointment time slot, the platform relies on your Priority Order to determine which team gets assigned first.

Adjusting the Priority Hierarchy

In the main team directory (Menu > Teams), you will see Up and Down arrow buttons ( / ) next to each crew card:

  • Top-to-Bottom Evaluation: The auto-scheduler evaluates teams strictly from top to bottom. The team at the very top of the list is always considered first.
  • Optimizing Quality & Efficiency: Position your highest-rated, most efficient crews at the top of the directory. This ensures your top performers operate at maximum schedule utilization before secondary crews are assigned work.
Note on Manual Dispatching

Team priority ordering applies exclusively when Auto Scheduling is enabled. If you dispatch all work orders manually, the sequence of teams in the directory is has no impact on scheduling.

The Scheduler View for Teams

To inspect your teams within the operational dispatch grid, navigate to:

Menu > Scheduling > Scheduler

  • Visual Shift Columns: Each active team displays as a dedicated lane on your dispatch board alongside its assigned technicians.
  • Shift Blocks & Overlaps: The scheduler visually blocks out working hours and highlights unassigned gaps between customer appointments.
  • Quick Job Reassignments: Dispatchers can quickly move appointments between teams or adjust assigned technicians directly on the visual board. See the Scheduling section of this knowledge base for additional information.

Teams FAQs

How does team priority affect customer bookings?
When a customer reserves a time slot online (or a quote is approved), the auto-scheduler looks at the highest-priority team first. If that team is free, they receive the job. If they are already booked or off duty, the system evaluates the next team down the list.

Can an employee belong to more than one team?
No, an employee can only be assigned to one team at a time.

What happens if all members of a team are not available?
If you have enabled the "Only Entire Team" rule in your booking settings Menu > Website > Website Setup > Booking Form Settings > Auto Scheduling section, the system will not dispatch a multi-person job to a team unless all assigned members of that team are free during the appointment window.

Can I change a team's working hours for holidays or winter schedules?
Yes. Open Menu > Teams, click Edit on the desired team, and modify the start times, end times, or days off. Your calendar booking availability will immediately update to reflect the new shifts.

Scheduler: Overview & Architecture

Managing field operations involves navigating sick leaves, cancellations, rescheduled bookings, and preventing accidental double-booking. The Scheduler provides an interactive dispatch console designed to resolve scheduling friction in real time.

Core Dispatch Highlights

  • Zero Double-Booking Guarantee: Built-in conflict prevention blocks accidental overlapping assignments unless manually overridden by a dispatcher.
  • Real-Time Check-In Auditing: Visual status indicators reflect when technicians check in and out on mobile devices in the field.
  • 100% Mobile Feature Parity: Dispatchers on the road can drag, assign, reassign, and manage unassigned appointments from any smartphone browser without desktop limitations.
  • Live Staff Location Tracking: Monitor team members in real time on an interactive map to optimize route planning, cut down drive times, and dispatch the nearest available technician.

Scheduler Layout & Navigation

To access the visual dispatch console, navigate to:

Menu > Scheduling > Scheduler

Console Structure

  • Header Lanes: Displays vertical dispatch lanes for each active crew team (e.g., The Clean Team, Team J) showing their individual assigned members, alongside unassigned/freelance floater technicians. Each staff member includes a Location button that, when clicked, brings up a map displaying their last reported location where that staff member is using the Mobile App and has enabled location tracking.
  • Working Shift Blocks (Light Blue): Illustrates standard working hours established for that team (e.g., 8:00 AM – 5:00 PM). Unshaded space indicates off-duty hours.
  • Date Controls & Drawer Toggles: Quickly advance day-by-day ( / ), jump to specific calendar dates, or collapse the left sidebar to maximize dispatch board width.
  • Create Event (Purple Blocks): Used to block off non-billable technician time (e.g., vacations, sick leave, training seminars, or company parties). Purple events prevent appointment bookings during that window.

Assigning Crews & Unscheduled Jobs

The scheduler simplifies assigning jobs to technicians and crews through intuitive visual interactions.

1. Scheduling from the "Unscheduled Jobs" Drawer

The left-hand panel itemizes all pending appointments for the day that require crew assignments:

  1. Click on any job in the Unscheduled Jobs list. A vertical green guide bar highlights the appointment's target time slot across your team lanes.
  2. Select the target employees or click an entire team header (e.g., The Clean Team).
  3. Click Assign. The job clears from the unscheduled drawer and locks onto your calendar.

2. One-Click Copy-Assigning

To reinforce a job with extra hands, select an existing job assignment on the board and click another employee’s name (e.g., Bill) or an entire team header. The appointment clones across to those members instantly.

3. Linked Job Shadowing

To identify who is working together on a multi-person booking, click any assignment block. All matching assignments for that job across other technician lanes will immediately pop forward with a prominent drop shadow.

4. Quick Customer Info & Removal

  • Click the customer's name on any card to view customer contact info, appointment information, a link to reschedule the appointment, a link to the document, and a button to remove the job assignment from the employee.

Conflict Safeguards & Overlaps

Automated Double-Booking Protection

By default, if you attempt to assign an employee to an appointment that overlaps with an existing booking or purple calendar event, the system rejects the assignment with a conflict error.

The "Overlapping Events" Override Switch

In scenarios where double-booking is intentional (e.g., a supervisor briefly checking in on two jobs, or overlapping travel buffers):

  1. Locate the Overlapping Events toggle in the left control panel and switch it to Allow.
  2. Assign the overlapping appointment to the technician. The scheduler permits the assignment and stacks the appointment cards.
  3. Click the background card at any time to bring it to the foreground.
Dispatcher Tip: Zooming for Precise Selection

When selecting stacked overlapping jobs or short 15-minute appointments, zoom in to expand slot heights: hold Ctrl and scroll your mouse wheel (Windows), press Cmd + + (Mac), or pinch-to-zoom on mobile.

Employee (Blue) vs. Team (Pink) Jobs

The scheduler categorizes job assignments into two distinct color-coded operational modes:

Type Color Operational Behavior
Employee Job Blue Assigned specifically to an individual technician. Other members of that team remain eligible to be auto-scheduled to different jobs during that window.
Team Job Pink Assigned to the team unit as a whole. Enforces a strict team lock: if any technician has a Pink job, no other member of that team can be auto-scheduled elsewhere during that block.
The Apprentice / Senior Pair Rule

Team Jobs (Pink) are designed for paired crews (e.g., a senior technician and an apprentice who cannot work solo). If the senior member is booked on a Team Job, the system prevents the apprentice from being auto-scheduled alone to another client. To free up an apprentice to work independently, delete the pink assignment and copy-assign the job as an individual Blue assignment.

Check-In Status & Progress Colors

When field personnel use the mobile Employee Portal to track service progress, the scheduler updates live with status indicator bars:

  • No Indicator Bar: Appointment has not yet started, or the technician has not yet checked in.
  • Light Green Bar: In Progress. The technician has tapped Check In upon arriving on-site.
  • Dark Green Bar: Completed. The technician has checked out and finished the service scope.

Mobile Dispatch & Master Calendar

Mobile Dispatch Console

Accessing Menu > Scheduling > Scheduler from a smartphone browser loads a dedicated mobile interface. Tapping any card opens a bottom drawer with direct shortcuts to open job information, access the document, remove the job assignment, and close the bottom menu.

The Master Calendar View

For an aggregated timeline view across multiple days or weeks, navigate to:

Menu > Scheduling > Calendar

  • Filter by individual employee or complete team across rolling weekly or monthly windows.
  • Review chronological appointment sequences, monitor schedule density, and click employee profile links directly from calendar headers.

Scheduling FAQs

Why is the system blocking me from assigning an appointment to an employee?
The employee either has an overlapping appointment or a calendar Event (vacation/sick time) scheduled during that time slot. To override this protection, toggle Overlapping Events to Allow in the left-hand panel.

What is the difference between Blue jobs and Pink jobs?
Blue jobs are assigned to individual technicians. Pink jobs are assigned to entire teams and lock the entire crew so that remaining team members cannot be auto-scheduled to separate jobs during that time block.

How do I clear a job from the "Unscheduled Jobs" list?
Click the job in the unscheduled drawer, select the required number of qualified technicians (matching the booking's minimum staffing requirement), and click Assign.

Can I schedule company holidays so nobody gets booked?
Yes. Click Create Event in the scheduler sidebar, set the target audience to All Employees or select specific teams, and define the date/time range. The scheduler will block out purple event bars, preventing customer appointments during that period.

Automated Dispatch & The Auto-Scheduler: Overview

The Auto-Scheduler is an intelligent dispatch engine that automatically assigns appointments to the most suitable team or group of technicians. Operating in real time, the algorithm evaluates technician availability, team priority hierarchies, shift constraints, and job requirements to eliminate manual dispatching and prevent double-booking.

The 8 Dispatch Evaluation Parameters

Whenever an appointment is scheduled, the engine analyzes eight core operational variables:

  1. Regular Working Shifts: Confirms the appointment falls completely within the team's operational hours.
  2. Team Priority Ranking: Evaluates teams sequentially from top to bottom based on your directory order in Menu > Teams.
  3. Staffing Requirements: Ensures the assigned crew fulfills the minimum worker count required for the job.
  4. Unscheduled Job Demand: Protects available labor capacity against unassigned jobs waiting on the dispatch board.
  5. Non-Billable Events: Avoids purple calendar events (such as technician sick leave, vacations, or company meetings).
  6. Conflict Prevention: Ensures no assigned employee has overlapping bookings.
  7. Multi-Level Eligibility: Confirms auto-scheduling is permitted at the Global, Team, Employee, and Appointment levels.
  8. Preferred Team Designations: Prioritizes requested customer crews before evaluating secondary teams.

Triggers & Execution Timing

The auto-scheduler operates continuously in the background and evaluates assignments seconds after an appointment is set. It executes automatically across four primary operational events:

  • Website Online Bookings: Triggered instantly when a customer confirms an appointment through your public booking form.
  • Quote Approvals: Triggered the moment a customer accepts an estimate online or an administrator marks a quote as approved.
  • Manual Invoice Creation: Triggered when office staff schedule an appointment via Create Invoice.
  • Appointment Edits: Triggered whenever an existing appointment's start time, duration, or date is modified.

The "Only Entire Team" Rule

Located in Menu > Website > Website Setup > Booking Form Settings > Auto Scheduling, the Only Entire Team setting governs how multi-person crews are dispatched when individual members have partial availability.

Standard Assignment vs. "Only Entire Team"

  • Disabled (Partial Crew Dispatch): If Team A consists of three technicians (Frank, Jessica, and Sam), but Sam is already booked on another job, the system will assign the appointment to the remaining available technicians (Frank and Jessica).
  • Enabled (Strict Crew Integrity): If even a single member of a team is busy, on leave, or off-duty during that slot, the auto-scheduler skips that team entirely and cascades to the next qualified team.
Cascade Scenario Example

Suppose a 2:00 PM booking arrives. Team A (ranked #1, 3 members) has one member busy; because Only Entire Team is enabled, Team A is skipped. The engine checks Clean Team (ranked #2), but they are fully booked. It moves to Team J (ranked #3), confirms all members are free, and assigns Team J to the job within seconds.

4-Tier Control Hierarchy

Auto-scheduling can be customized or selectively disabled across four administrative tiers:

Tier Level Configuration Path Administrative Function
1. Global Booking Form Settings > Auto Scheduling The platform-wide master switch that activates or deactivates automated dispatch across all bookings.
2. Team Menu > Teams > Edit Team The Auto Scheduled Switch allows specific teams to be auto-dispatched while restricting specialty teams to manual dispatch.
3. Employee Menu > Employees > Edit Profile The Auto Schedule Employee switch allows you to exempt specific individuals (e.g., senior leads or floaters) from automatic assignment.
4. Appointment Create / Edit Invoice > Schedule Screen Toggle auto-scheduling on/off for a single work order, or assign a Preferred Team to bypass rank and prioritize a specific crew.

Troubleshooting & Unassigned Jobs

If an appointment remains unassigned in your Unscheduled Jobs drawer, check the following common causes:

  1. Same-Day or Historical Bookings: The auto-scheduler only processes appointments scheduled for future dates. Any appointment created for the current day or in the past must be assigned manually.
  2. Outside Operating Shifts: Compare the appointment's start and end times against your team working hours. If an appointment extends past a shift cutoff (e.g., ending at 5:30 PM when shifts end at 5:00 PM), the auto-scheduler will not assign it.
  3. Tier Restrictions: Verify whether auto-scheduling was toggled off at the team, employee, or appointment level.
  4. Universal Shift Conflicts: If all active teams have overlapping bookings, purple calendar events, or insufficient available workers during that window, the job is held in the unscheduled queue for dispatcher intervention.
Best Practice: Clear Unscheduled Jobs Daily

Check the Jobs tab on your platform Dashboard once or twice daily. Click on the 'Unscheduled Jobs' button to review a list of jobs that are unscheduled or underscheduled. Leaving jobs unassigned in the unscheduled drawer can tie up labor capacity calculations and impact auto-scheduling efficiency for future bookings.

Auto-Scheduler FAQs

Which employees are eligible to receive auto-scheduled jobs?
Only employees who are assigned to an active team (configured in Menu > Teams) and have the Auto Schedule Employee setting enabled can be automatically assigned work. Standalone employees who do not belong to a team cannot be auto-scheduled.

If I enable auto-scheduling today, will it schedule my existing backlog of unscheduled jobs?
No. Enabling auto-scheduling only applies to new appointments or existing appointments that are manually opened and saved with edits. It will not retroactively assign past unassigned bookings.

If I change a team's weekly working hours, will the system automatically reschedule existing jobs?
No. To avoid unauthorized technician overtime, disrupted customer expectations, and calendar conflicts, the system will never automatically move previously confirmed bookings. When shift hours change, dispatchers must manually review and adjust conflicting appointments in the Scheduler.

Can a single-person crew be auto-scheduled?
Yes. A team can consist of as few as one technician (or up to 10). If a team with a single employee meets the requirements of the booking, the engine will assign the job accordingly.

Calendar Events, Tasks & Blackout Dates: Overview

Within the platform, an Event represents a scheduled block of time dedicated to an activity outside of customer work. Events are typically used for personal appointments, vacations, internal administrative tasks (e.g., warehouse maintenance or office deep cleans), or statutory company holidays.

Two Primary Business Functions

  • Internal Task Communication: Communicates non-billable responsibilities to your workforce. Any event assigned to an individual technician or crew automatically displays on their mobile schedule inside the Employee Portal.
  • Calendar Availability Protection: Blocks out labor capacity so that real-time availability calculations on your public online booking form, quote builder, and manual invoice builder remain accurate, preventing accidental double-booking.

Individual Staff Events

When an employee requests time off for personal errands, doctor appointments, or sick leave, record an individual event:

  1. Navigate to Menu > Scheduling > Scheduler (or Calendar) and click the Event button.
  2. Title: Enter a clear reference (e.g., "Personal Appointment – Doctor").
  3. Start & End Times: Define the date and duration (e.g., April 4th, 2:30 PM – 5:00 PM).
  4. Description: Add internal audit notes or approval records (e.g., "Approved by Management on April 2nd").
  5. Assigned Target: Select the specific employee from the dropdown list.
  6. Click Save.

The event appears on the dispatch board for that technician. Clicking the name of the event within the event card displays a quick summary of the event. Clicking Remove removes the assigned event from that employee's schedule.

Team Operational Tasks

To assign non-customer duties to an entire crew (such as routine vehicle maintenance, supply restocking, or headquarters facility cleaning):

  1. From the Scheduler, click Event.
  2. Enter the task name (e.g., "Fleet Wash & Supply Restock").
  3. Set the date and operational time window (e.g., 2:00 PM to 5:00 PM).
  4. Under the assignment selector, choose an entire Team (e.g., Team J) instead of an individual employee.
  5. Click Save.

The event simultaneously locks the calendars of all active members on that team, preventing the auto-scheduler from assigning customer bookings during that block.

Company Holidays & Blackouts

When your business is closed for statutory national holidays, seasonal shutdowns, or company-wide retreats, you can block customer bookings across all teams at once.

Blocking Bookings on Entire Days

  1. Click the Event button in the scheduler.
  2. Title: Enter the occasion (e.g., "Independence Day Closure" or "Winter Holiday Break").
  3. Select Dates: Set the start date and end date (e.g., July 1st to July 3rd).
  4. Check the box labeled Block bookings on these days.
    Automatic Time Suppression

    Checking this box removes individual hour/minute selectors, transforming the event into a full-day calendar blackout. Customers visiting your online booking form will be blocked from selecting any date within this range.

  5. Click Save.

The Scheduler will display an explicit alert banner in the left control panel: Online bookings are blocked on this day.

Rules & Copy Restrictions

While events look and feel similar to customer appointments on the Scheduler, they follow specific system constraints:

  • No Copy-Assigning: Unlike customer appointments—which can be quickly copied to multiple technicians by clicking the card and then selecting names—events cannot be copied between employees. Attempting to copy an event displays a notification: "Cannot copy events." If multiple technicians need an identical event, create a Team Event or register separate individual entries.
  • Employee Portal Synchronization: Field personnel can review event titles, approved descriptions, and durations directly in their mobile portal schedule so they know when they are expected at the office or approved to be off-duty.
  • Immediate Availability Release: If an employee’s plans change, clicking Remove or deleting the event immediately restores their open hours to the live booking form and auto-scheduler.

Calendar Events FAQs

What happens if I try to create an event over an existing customer booking?
If a technician is already assigned to a customer booking during that time, creating an event creates an overlap conflict. You must either reschedule the customer appointment or remove the technician from that job before or after creating the event.

Can customers see event titles or descriptions on the booking form?
No. All event details, titles, and descriptions are strictly internal. The customer-facing booking form simply marks those hours or dates as unavailable.

How do I unblock a holiday that was previously marked as closed?
Navigate to the scheduler on that date, click on the blackout event card, click View Event and on the resulting page, click Delete The full-day hold will release, and online booking slots will become available immediately.

Do events impact auto-scheduling?
Yes. The auto-scheduler treats event blocks as hard conflicts and will never assign a customer appointment to a technician during an active event window.

Reports Module: Introduction

The Reports module provides actionable insights into user and customer activity, helping you identify business trends, resolve operational issues, and make data-driven decisions.

Key capabilities include:

  • Comprehensive data coverage: Track sales, quotes, jobs, online bookings, customers, and more.
  • Automated event logging: Report on dozens of system-tracked user and customer interactions.
  • Advanced filtering: Filter by time period, date range, specific customers, and custom tags.
  • Interactive charts: Drill down into specific metrics by clicking directly on chart bars to view granular records.

Common questions you can answer using the Reports module include:

  1. Who are my top-performing customers?
  2. How are expenses trending with a specific vendor?
  3. How many payments have been processed through QuickBooks Online?

Filtering by Tags in Reports

Regardless of the report you are viewing, you can filter records using tags applied to documents such as quotes, work orders, and invoices.

  • Single tag: Selecting one tag displays all documents containing that tag, regardless of any other tags applied to them.
  • Multiple tags: Selecting multiple tags displays documents that contain all of the selected tags even if additional tags are present on those documents.

Sales Reporting

Sales reports are calculated based on the Invoice Date. To configure whether paid, but not yet completed jobs are included in your sales figures, navigate to:

Menu > Customers > Sales Summary

Interactive Charts & Drill-Downs

The reporting dashboard updates in real time as you adjust filters. Clicking any bar in a chart displays the underlying transactions and events for that specific period. This detailed view includes direct links to associated customer profiles and source documents such as invoices and work orders.

Platform Dashboard: Overview & Navigation

The Dashboard serves as your real-time operational command center, consolidating sales numbers, scheduling bottlenecks, customer reviews, booking forecasts, and company updates into a centralized workspace. It is organized into specialized navigation views:

  • Sales: Rolling 30-day customer acquisition, recurring volume, online bookings, live website preview, and overdue receivables.
  • Jobs: Unscheduled appointments, review completion rates, past-due work orders, quote requests awaiting dispatch, and rejected quotes / Stripe transaction feeds.
  • Forecast: Pipeline foresight tracking based on jobs that are booked in the future.
  • News: Product announcements, major platform integrations (such as QuickBooks Online), and release notes.

Top Quick Actions

Positioned at the top of the dashboard, quick-action shortcuts provide immediate access to primary operational workflows:

  • Create Quote: Opens the estimate creation form.
  • Create Work Order: Directly launches a new work order form.
  • Open Scheduler: Takes you immediately to your dispatch calendar and interactive timeline.

Sales & Customer Metrics

The Sales view aggregates rolling 30-day transactional records and customer engagement data.

Rolling 30-Day Activity Cards

  • New Customers (In the Past Month): Clients who conducted business with your company for the very first time over the past 30 days.
  • Unique Customers (In the Past Month): The distinct total count of individual clients who did business with you during the period.
  • Recurring Customers (In the Past Month): Repeat/recurring clients who had active business during the past month.
  • Online Bookings (In the Past Month): Self-service bookings finalized directly through your customer-facing website.
Interactive Chart & Card Drill-Downs

Clicking any metric card will show a list of matching records. From the list, you can click View to open the client’s Customer Profile or specific Invoice.

Website Preview & Overdue Receivables

Beneath the top metrics row, the Sales tab features two operational widgets:

  • Interactive Website Preview: Displays a live, scaled rendering of your published client-facing website with a direct link to it.
  • Top Overdue Amounts by Customer: Highlights customers carrying delinquent invoice balances, displaying total balances and direct links to inspect customer profiles.

Jobs, Field Operations & Stripe Activity

The Jobs view highlights dispatch bottlenecks, unassigned appointments, customer feedback, and real-time merchant transactions.

Operational Metric Cards

  • Unscheduled Jobs (In the Next Month): Bookings slated for the upcoming 30 days that remain unassigned or lack full crew scheduling. Clicking drill-down entries links directly to the Scheduler.
  • % of Jobs Reviewed (In the Past Month): Percentage of completed appointments that received a customer satisfaction survey review, complete with rendered star scores (0 to 5 stars).
  • Past Work Orders (As of Today): Past work orders still awaiting administrative sign-off. The drill-down roster provides an inline Done button that marks the job complete and timestamps it to today without leaving the page.
  • Requests Outstanding (As of Today): Website quote requests submitted by prospects that have not yet been actioned by your team.

Auxiliary Feeds

  • Recently Rejected Quotes (As of Today): Proposals and estimates recently rejected by prospects, allowing your sales team to follow up promptly or review customer feedback.
  • Recent Stripe Payments (By Customer): Real-time feed of incoming payment card charges processed through Stripe, providing direct shortcuts to full transaction charge records.

Forecasting & Pipeline Health

The Forecast tab tracks business momentum, schedule adjustments, and conversion leakage across your pipeline.

Pipeline Metric Cards

  • Abandoned Carts (In the Past Month): Incomplete booking sessions or quote inquiries initiated on your website where the customer dropped off before submitting.
  • Job Cancellations (In the Past Month): Appointments and work orders explicitly canceled by customers directly through the self-service Client Portal.
  • Jobs Booked (For the Next Month): Volume of forward-scheduled appointments booked for the next month that have not been prepaid.
  • Jobs Rescheduled (In the Past Month): Appointments rescheduled by customers through the Client Portal over the past 30 days.

Quote Conversion Monitoring

  • Recently Accepted Quotes (As of Today): Recent estimates approved online by clients, ready for conversion to scheduled work orders.
  • Recently Expired Quotes (As of Today): Quotes that passed their validity deadline without customer action, highlighting prospects ripe for re-engagement campaigns.

Dashboard FAQs

What is the difference between New Customers and Unique Customers?
New Customers tracks first-time buyers who conducted business with you for the first time during the trailing 30-day window. Unique Customers counts all individual, distinct clients who bought services or were invoiced in that timeframe, including long-standing existing clients.

Can I complete past jobs directly from the dashboard?
Yes. Under the Jobs tab, click the Past Work Orders card. In the expanded list, click the Done button next to any work order; this executes an inline background update that marks the job finished and applies today's date as the completion timestamp.

Customer Management: Overview & Intake

The Customer Management system serves as your centralized CRM database, storing contact details, multi-property service addresses, vaulted payment methods, recurring schedules, and communication preferences. Customer accounts enter your system through two primary intake paths:

  • Automatic Creation (Self-Service): When a client completes an appointment booking on your website, the platform automatically provisions a customer record linked to their email address.
  • Manual Creation (Staff Intake): When taking inquiries over the phone or setting up commercial accounts, dispatchers can manually register customer profiles from the administrative console.

Searching Customer Records

To locate existing customer records, navigate to Menu > Customers > Customer List. The global search filter allows staff to search by:

  • First or Last Name
  • Phone Number
  • Home Address or Service Location
  • Billing Address
  • Email Address

Automations: Tags Overview

Tags are short descriptions that can be attached to various elements with this platform, including invoices, customers, automations, and services. Tags serve two primary functions in your workspace:

  • Internal Communication: Quickly convey context, status, or notes to team members reviewing a quote, quote request, work order, or invoice.
  • Automation Triggers: Scope and target automated workflows to specific document types or customer groups.
  • Reporting: Gain insight into business operations by filtering on tags within the Reporting Module.

Creating a Tag

  1. Navigate to Menu > Automations > Tags.
  2. Click Create Tag.
  3. Enter a tag name and choose an icon and color. A live preview at the bottom of the screen displays how the tag will appear across the system.
  4. Click Save.

Editing a Tag

  1. Navigate to Menu > Automations > Tags.
  2. Locate the tag you want to modify and click Edit.
  3. Make your updates and save your changes.
Important Notice

Modifying a tag updates it globally. Any changes to a tag's name or appearance will immediately cascade to all existing documents, customer records, and active automations associated with that tag. Do not change the fundamental purpose of an existing tag -- create a new tag instead.

Deleting vs. Deactivating a Tag

To preserve data integrity, tags follow specific deletion rules:

  • Deleting a tag: A tag can only be deleted if it has never been attached to any object or record. If the tag is currently assigned to one or more records, the system will display an error message and block deletion.
  • Deactivating a tag (Recommended): If a tag is no longer needed but has historical records attached, open the tag's configuration screen and set its status to Deactivated. This prevents users from adding it to future records (e.g., customers, invoices) while safely preserving historical reporting and document data.

Applying and Removing Tags

To assign or remove tags on a document or customer profile:

  1. Open the specific record (quote, invoice, work order, or customer).
  2. Click the Tags button at the top of the record.
  3. Check the box next to any tag you wish to apply, or uncheck a tag to remove it.

Tags FAQs

General

What are the main benefits of tags?
Tags allow you to clearly communicate information to other team members who are reviewing a quote, quote request, work order, or invoice. In addition, tags allow you to focus automations on only specific types of documents.

Tags can be attached to the following elements:
  • Customers
  • Automations
  • Work Orders, Invoices, Quotes, and Quote Requests
  • Events
  • Primary Services
  • Extra Services
In addition, tags can be used within our advanced reporting module.
What happens when I add a tag to a customer, primary service, or extra service?
Tags applied to a Primary or Extra Service are automatically added to any document using that service. Similarly, tags assigned to a Customer profile are automatically inherited by all new documents created for that customer.

Any documents that were created in the past with this customer, primary service, or extra service will NOT be updated with this tag. This is to prevent confusion with regards to which automations will run on which documents.
What happens when I remove a tag from a customer, primary service, or extra service?
Removing a tag from a customer or service will not remove that tag from any documents that it's already been applied to. This is to prevent confusion with regards to which automations will run on which documents.
Will applying or removing a tag from a master work order affect related work orders?
Applying or removing a tag from a master work order will cascade to all future related work orders aside from those work orders where 'suppress changes from master work order' is enabled.
Will customers see the tags within the client portal or when I send a document to them?
No, customers will not be able to see tags on documents sent to them or within the Client Portal.
What does inactivating a tag do?
Inactivating a tag simply prevents you from being able to manually apply it to documents, customers, automations, services, and events. In addition, inactive tags cannot be used as search filters.

Inactivated tags that are attached to account elements (eg. customers) will continue to be attached to those account elements.

If you inactivate a tag and it is still attached to a customer or service, the tag will still be automatically assigned to documents with this customer, primary service, or extra service.

Similarly, inactivting a tag will not change the behavior of that tag when it comes to automations. If that tag is attached to an automation, it will continue to define the scope of that automation.
What happens when I edit an existing tag?
When you edit an existing tag, the title, description, color, and icon will automatically be applied to all automations, documents, customers, events, and services that have this tag.
What tags will staff members be able to see?
Staff members who are not administrators will be able to see the tags on jobs that they've been assigned to.

Automations: Introduction & Rules

The Automation System streamlines routine operations and communications across your workspace. By setting up rules and triggers, you can eliminate manual data entry, keep customers informed, and alert team members to critical updates in real time.

Plan Requirement

All users can design and configure automations (up to 30 per account), but an active Premium Plan subscription is required to execute automated runs.

Automation Abilities & Triggers

Automations can be scheduled or event-driven to perform a variety of system actions:

  • Core Capabilities:
    • Send messages (SMS, email, push notifications) upon success or failure.
    • Automatically mark jobs and work orders as complete.
    • Auto-charge invoices or work orders to a customer’s default payment method on file.
    • Chain workflows (e.g., launch secondary automations after an initial automation completes).
  • Execution Methods:
    • Event-Triggered: Runs immediately or during a specified time window when an event occurs (e.g., employee scheduled, quote approved, survey completed). Choose from over 40 distinct system triggers.
    • Scheduled: Runs automatically on a daily schedule at a designated time.
    • Manual: Triggered on-demand directly from an individual quote, work order, or invoice.

Creating an Automation

To build a new automated workflow, follow these steps:

  1. Access the Setup Screen:
    Navigate to Menu > Automations > Automation Setup and click Create Automation.
  2. Select the Automation Type:
    Choose the core function of your automation from the dropdown:
    • Sending Messages
    • Auto-charge subscription invoices to customer's default payment card
    • Auto-charge non-subscription invoices to customer's default payment card
    • Mark subscription work orders as complete
    • Send payment reminder
    • Send appointment reminder
    • Send outstanding quote reminder
    • Send overdue invoice reminder
    Permanent Selection

    While all other settings can be modified later, the Automation Type cannot be changed once the automation is saved. If you need a different type, you will need to create a new automation.

  3. Name Your Automation:
    Enter a clear, descriptive Title that explains its purpose (e.g., "Daily Invoice Autopay - 9:00 AM").
  4. Set Schedule Dates:
    Specify an Automation Start Date and an Automation End Date. If you want the automation to run indefinitely, leave the end date field blank. A start date is required if you wish for the automation to be active.
  5. Configure Chained Automations (Optional):
    To trigger a follow-up action when this task finishes, select another automation from the Secondary Automation dropdown.
    Workflow Tip: Chaining Automations

    You can chain tasks sequentially. For example: configure Automation #1 to mark a subscription work order as complete at 9:00 AM on the invoice date, and configure Secondary Automation #2 to automatically charge the card on file immediately afterward.

  6. Select the Trigger Type:
    Choose how the automation initiates execution:
    • Schedule: Runs automatically at a specified time every day. You will also define the target scope of records (for example, invoices generated 2 days ago).
    • Event: Triggers immediately when one of 40+ system or user events takes place (such as "Customer Completed Survey" or "Employee Checked Out of Job").

      When selecting Event, you can also set an active Processing Window (e.g., 8:00 AM – 5:00 PM). Any pending triggers generated overnight will hold in queue and process when the window opens, preventing late-night text messages and push notifications.

  7. Define Global Targeting:
    Enable the Global Automation toggle if you want the Automation to apply to all customers across your platform. If enabled, you can still manually exclude specific customers later via Customer Automations.
  8. Apply Tag Criteria (Optional):
    Narrow the scope of your automation by selecting required document tags. For example, if you only want certain accounts on autopay, create an Autopay tag, apply it to eligible records, and select it when creating the automation. The automation will only process records containing that tag.
  9. Configure Message Settings — Automation Success:
    Specify the communications sent when the process completes successfully:
    • Audience: Select what messages get sent to Customers, Employees (who are scheduled to the job), and Administrators.
    • Dynamic Variables: Click the variable picker below the template box to insert personalized tags such as [[customer_first_name]] or [[order_id]]. The system automatically populates these with live record details upon delivery.
    • Spam & Content Preview: Click View Sample to inspect both the SMS and Email layouts. The built-in spam evaluator will analyze your message content and warn you if phrasing is likely to trigger email spam filters.
    • Include Document in Email: Enable the checkbox below the editor if you would like a copy of the document (such as the invoice) included in the email to the customer.

    Example Payment Confirmation Template:

    Hi [[customer_first_name]],
    
    Thank you for your payment! We have successfully processed your payment of [[total]] for [[document_type]] #[[order_id]].
    
    Payment Details:
    ------------------------------------------
    • Document: [[document_type]] #[[order_id]]
    • Amount Paid: [[total]]
    • Payment Method: [[successful_payment_method]]
    • Service Address: [[job_address]]
    ------------------------------------------
    
    You can review your paid invoice at any time through your Client Portal:
    [[company_client_portal]]
    
    If you have any questions regarding this transaction, feel free to reply directly to this email or reach us at [[company_phone]].
    
    Thank you for your business!
    
    Sincerely,
    [[company_name]]
  10. Configure Message Settings — Automation Failure:
    Prepare notifications for when an automation cannot complete (e.g., an auto-charge failing because a customer's payment card expired).

    Compose an alert informing the customer or staff that the process failed, providing clear instructions on resolving the issue (such as directing the customer to update their billing details in the Client Portal). You can also choose whether to include the relevant document (eg. invoice) to this email.

Once all fields are complete, click Save at the bottom of the Automation setup page.

Best Practice

Try to separate communications related to payment confirmations/payment requests and survey requests. This will ensure deliverability of critical emails. Where you combine these elements on a single automation and a survey has already been sent to a customer or the survey configuration is incomplete, this will prevent the email from being sent.

Filtering by Customer

If you've enabled the Global Automation setting on an automation, it applies to all customers. You can customize targeting by creating customer-specific inclusions or exclusions:

Excluding a Specific Customer

  1. Navigate to Menu > Automation Setup and click Customer Automations.
  2. Click Create Customer Automation.
  3. Select the relevant automation and customer, and define an effective start date.
  4. Enable the Automation Exclusion toggle, then save.

The automation will continue running globally, but will skip this customer's documents.

Targeting Only a Specific Customer

  1. Open the automation and disable the Global Automation setting.
  2. Navigate to Menu > Automation Setup > Customer Automations.
  3. Click Create Customer Automation.
  4. Select the automation and the target customer, define the start date, and ensure the Automation Exclusion toggle is disabled.

The automation will run strictly for the assigned customer(s). Repeat these steps for any additional customers you wish to include.

Using the Run Log

The Run Log provides a centralized audit trail of all background operations, scheduled executions, and automation-driven messaging across your platform.

Accessing and Navigating the Log

To access the Run Log, navigate to Menu > Automations > Run Log.

  • Filtering Runs: Use the filter bar at the top of the page to locate specific runs by date and time, trigger source (system or user), execution status, or associated document type.
  • Viewing Run Details: Click View next to any individual log entry to open a granular breakdown of that run (documents processed, messages delivered, or failure reasons).
  • Document-Level Event Logs: Open any quote, work order, or invoice, and select the Event Log tab to see all automations that have executed against that specific document.
Review Tip

Automations marked with a Pending status are queued and evaluated in 2-minute cycles. We recommend checking your Run Log once or twice daily to identify and resolve any failed automation attempts.

Manually Running Automations

You can execute automations on-demand directly from within an individual work order, invoice, or quote view:

  1. Setup: When configuring the automation, set Triggered By to Event and select Manually Run Automation as the trigger event.
  2. Execution: Open the target document (quote, invoice, or work order), select the automation from the document actions menu, and click run.
  3. Personalized Messaging: For automations that are designed to be triggerd manually, message templates support the [[custom_message]] variable, prompting you to enter personalized text prior to running the automation.
Validation Note

Manually triggering an automation will still respect system business logic. For example, triggering a subscription-payment automation on an invoice will not process a charge if the billing service period has not yet elapsed.

Manually Running Scheduled Automations

If you need to execute a scheduled automation ahead of its designated daily run time, you can trigger it manually on demand:

  1. Navigate to Menu > Automations > Automation Setup.
  2. Locate the automation within your list.
  3. Click the Play button () next to any eligible scheduled automation to launch it immediately.

Once triggered, the system will immediately scan and process all records that currently meet the automation's scope and criteria without waiting for the next scheduled daily window.

Appointment Reminders & Post-Service Follow-Ups

The platform allows you to replace default reminder schedules with customized messaging tailored to your service workflows.

Critical: Default System Reminder Override

Once you configure your first Appointment Reminder automation, the platform permanently disables the standard reminder text messages normally sent to customers the day before an appointment. Even if you later deactivate or disable your custom automation, the system default reminders will not resume. You are in full control of all future appointment reminders.

Sending Post-Appointment Thank-You Messages

You can use the Appointment Reminder trigger in reverse to send follow-up communications after a service visit:

  • When configuring the automation, locate the In-Scope Events field.
  • Enter a negative value (for example, -2 days).
  • The automation will trigger exactly 2 days after the appointment start time. This is ideal for requesting feedback, sending care instructions, or thanking the client for their business.

Staff Push Notifications & In-App Alerts

Automation alerts for administrators and employees are delivered via push notifications. If a staff member does not have push notifications enabled on their mobile device, they can still access the message. Messages to staff will also post to their Chat App.

The "Notifications" Chat Room

When an automation sends an alert to staff, the system automatically creates a dedicated internal chat room named Notifications.

  • All past automation-driven alerts and system notices are stored here for audit and review.
  • If the staff member has permission to view customer documents, each message includes a direct link to the associated invoice, work order, or quote.

Muting Staff Notifications

If a team member is receiving too many alerts on their device, they can mute push notifications without affecting customer messages:

  1. Open the Chat Widget at the bottom of the screen.
  2. Type Notifications into the search bar.
  3. Click the Gear icon next to the Notifications room.
  4. Click Disable Notifications. (Alerts can be re-enabled at any time by revisiting this menu).

Privacy Safeguards & Link Redaction

To protect sensitive customer billing information and maintain secure customer communications, the Automation System enforces several built-in guardrails:

  • Link Redaction for Staff: If an automated message template contains a sensitive URL (such as a invoice payment link or quote approval link) and employees are included in the audience, the system redacts the link for staff members. Employees will see [secure_link] instead of the live URL.
  • Document Attachment Privacy: When you attach a document (e.g., invoice or quote) to an email, it is delivered only to the customer. Staff push notifications and internal chat alerts will never attach customer invoices.
  • No Staff CCs: Administrators are never automatically CC’d on automated customer emails. Use the Run Log to inspect outgoing communications.
  • Standard System Emails: Automated messages run in parallel with standard system emails without suppressing transactional notifications generated during online booking or quote approval.

Auto-Charge Billing Safeguards

When configuring automations that charge a customer's default payment method on file, the system enforces automated financial protections:

  • Late Fee & Interest Lock: If an invoice has late fees or interest charges applied, the automation system will block any automatic charge attempts against the card on file to prevent payment card chargebacks. Invoices with late fees must be collected manually or paid directly by the client.
  • Failed Charges & Subscriptions: If an automated charge fails (e.g., due to an expired payment card), the customer’s recurring schedule or master work order is not cancelled. Recurring visits will remain on the calendar while you follow up to update their payment details.

Rate Limits & Anti-Spam Protections

The system includes built-in thresholds to ensure customers and staff are not overwhelmed with redundant alerts:

  • Once-Daily Cap on Reminders: Any automation containing the word "reminder" in its title is strictly capped at one delivery per day per document.
  • 14-Day Limit for Recurring Work Orders: Scheduling triggers (such as "Employee scheduled to job") will only execute if the appointment is within the next 14 days.
  • Loop Prevention: Actions performed by an automation (such as auto-paying an invoice) cannot trigger other automations. This prevents accidental endless loops.

Automation FAQs

General

How does the Automation System work?
Blue Sail Agency allows you to build processes that can be run:
  • Automatically based on a predefined trigger (eg. an employee is scheduled to a job)
  • Automatically based on daily schedule that you can define
  • Manually for all customers
  • Manually for a specific work order, invoice, or, quote
Processes that can be automated include sending messages, marking jobs as complete, and charging work orders to the default card on file.

A successful or failed automation run can automatically send messages to customers, admins, and employees. Message sending methods include push notifications (employees and admins), text messages (customers), and email (customers). Automation-driven messages can be viewed within the Run Log or within the Event Log of an invoice, work order, or quote.
What can I do with automations?
The possibilities with our automations are endless. Here are some examples:
  • Send automatic reminders for outstanding quotes, unpaid invoices, overdue invoices, and upcoming appointments
  • Automatically send a message to admin staff immediately after a customer has completed a survey
  • Automatically send a message to an employee immediately after they are scheduled to a job
  • Automatically email instructions to a customer after they have approved a quote
  • Every day at 10am, mark subscription work orders as complete, charge the default card on file, and send the customer confirmation of the payment.
  • Create a message template so that you can quickly text a quote approval link to customers. On the message, you can include a personalized message.
There are over 40 automation triggers that can be used to build your automations. In addition, automations can be chained for even more possibilities.
Who can use the automation system?
All users can setup automations within the platform, but only users with an active Premium Plan subscription can run automations.
How many automations can I create?
Each account can create up to 30 automations. Only Premium Plan subscribers can run automations, however.
How can I review the results of an automation?
Automation results can be viewed via the Run Log. You can access the Run Log by going into the menu --> Automations --> Run Log. The run log outlines automations that have run, are running, will run (i.e. pending status), and automations that have failed.

Automation results can also be viewed at the document level. Simply open a work order, invoice, or quote, and click 'Event Log'. On this tab, you'll see the results of any automations that have run against the document.

Appointment Reminders

I've setup an appointment reminder automation. What happens with the standard appointment reminders that Blue Sail Agency sends out the day before each appointment?
Now that you've setup at least one 'Appointment Reminder' automation, the standard appointment reminders that we were sending out to your customers will no longer be sent out. All appointment reminders that are sent to your customers are now controlled via the automation/s that you've configured for appointment reminders.

Please note that even if you disable your 'Appointment Reminder' automations, our system will not send out the standard appointment reminders to your customers. In other words, with at least one of these automations created, you're now in full control of what appointment reminders get sent and when.
How else can I leverage the 'Appointment Reminder' automations?
When configuring the appointment reminder automation, if you set the 'In-scope Events' to -2 days, as an example, the message that you create will be sent out 2 days after the appointment start time. You can use this to send a thank you message to customers following their appointment.

Automation Setup

I'd like to stop the automation from running for a specific customer. How can I do this?
To prevent an automation from running for a specific customer, please follow these steps:

1) Go into menu --> Automation Setup --> Click the 'Customer Automations' button
2) On the Customer Automations page, click the 'Create Customer Automation' button
3) Select the automation, the customer, indicate a start date for the exclusion, and then enable the 'Automation Exclusion' option

With this automation exclusion in place, the automation will no longer run on documents related to this customer.
I'd like to setup an automation that is specific to an individual customer. Is this possible?
Yes, it's possible to create an automation that will only run for a single customer or multiple specific customers as you choose. To do this, please follow these steps:

1) Disable the 'Global Automation' setting on the Automation. This will prevent the automation from being run on all customers.
2) Go into menu --> Automation Setup --> Click the 'Customer Automations' button
3) On the Customer Automations page, click the 'Create Customer Automation' button
4) Select the automation, the customer, indicate a start date, and ensure that the 'Automation Exclusion' option is disabled

The automation will now run for this single customer and only this customer. If you'd like the automation to run for any other specific customers, please repeat steps 3 and 4.
I have a pending automation that won't run for a few hours due to its processing window. Can I change the processing window on the automation setup so that it runs immediately?
Unfortunately, changes to the automation setup only impact future automation runs.
How does the tag criteria work?
When configuring an automation, you can narrow the scope of what documents will be processed by the automation by adding tags to the automation. For example, if you have a "Important Customer" tag and add this to an automation, the automation will only pick up documents that have the "Important Customer" tag on it.

If you add two tags to the automation, for example, the automation will only pick up documents that have those two tags. Where a document has those two tags in addition to other tags, the document will still be picked up by the automation.

Automation Processing

What does it mean when an automation is in pending status?
An automation in 'pending' status is an automation that will be run with the next processing cycle. Pending automations are processed within 2 minutes.
I have an automation that is setup to launch a secondary automation. If the first automation fails, will the secondary automation run?
No, if the first automation is not successful for a given order, invoice, quote, etc., the second automation will not run on that document.

Messaging

How do the push notifications work?
At this time, automation-driven messaging to employee and admin staff is limited to push notifications. If an admin or employee does not have push notifications setup on their phone, they'll still be able to see notifications that are sent to them.

Within the Chat App, a new chat room will be automatically created. The chat room will be called 'Notifications'. Within this chat room, you'll be able to see all automation-driven messages that have been sent to you. In addition, if you have permission to view customer documents, below each message will be a link to the related work order, invoice, quote, etc.
How can I prevent automated messages from being sent late at night?
For a scheduled automation, within the Automation configuraiton, simply select a run time that is during business hours.

For an automation that is triggered by an event, within the Automation configuraiton, enter a Processing Window of 8AM to 5PM, for example. This will ensure that any pending automations that are generated are only ever processed during this time period. For example, if a pending automation is created at 11PM, under a 8AM - 5PM processing window, this automation would be processed (and messages sent out) at 8AM the next morning.
I'm receiving too many push notifications from the automation system. How can I stop them from showing up on my phone?
1) Click on the chat widget button
2) Search for 'Notifications' in the search bar
3) At this point, the Notifications chat room should be the only chat room visible in the listing of chat rooms. Click on the small gear icon on the 'Notifications' chat room.
4) Click on the 'Disable Notifications' button

Notifications can be re-enabled at any time.
How can I prevent staff from seeing private links such as quote approval links?
If you include employees in the messaging on an automation and the message includes a payment link or a quote link, when the message is delivered to the employees, the link will redacted. The employee will see '[secure_link]' rather than the link.
How can I prevent staff from seeing invoices on automation-driven messages?
When configuring a message template, you'll have the option of including the document on the message. Only the customer will receive the invoice/work order/quote on their message.

On the push notifications that employees receive, they will not see the invoice/work order/quotes.
How can I use the [[custom_message]] variable in my messages?
The [[custom_message]] variable can be used to personalize communication that you send out to staff or customers. The [[custom_message]] variable can be set on message templates where the automation has an event trigger of 'Manually Run Automation'.

When running the automation from within the invoice view, you'll be able to provide a custom message if you wish. For example, you may wish to apologize for being late for an appointment.
Will I be c.c.'d on emails that go out to customers?
No, you won't be c.c.'d on any emails sent out by the Automation System.
Does messaging sent out by the Automation System replace the standard emails that customers receive when they book online, approve a quote, etc.
No, at this time, any automations that you setup will not impact the standard emails that get sent to customers upon quote approval, online booking, etc.

Miscellaneous

If an auto-charge fails, can a customer's subscription be automatically cancelled?
No, recurring work orders will not be impacted by the failure of a subscription charge.
What should I know about the relationship between automations, the events that they drive, and other automations.
Automations can be setup to automatically trigger a second automation. For example, you could create Automation #1, Automation #2, and then configure Automation #2 to run immediately after Automation #1.

Having said this, event instances that are created by an automation (eg. payment of an invoice) cannot trigger other automations that are driven by that trigger (i.e. payment of an invoice). This is to prevent long running automation chains that could be problematic.
What tips should I be aware of when setting up automations?
Tip #1

When building automations, the message templates that you build should include unique values. These include order IDs, appointment times, and copies of invoices.

If you build automation templates without any unique values, your staff or customers may not understand which work order, invoice, or appointment the message pertains to. Our system prevents identical messages from being sent out in short succession. You can prevent messages from being blocked by adding the [[order_id]] variable to each of your message templates.

Tip #2

When creating an automation that will launch a secondary automation, setup the secondary automation so that it launches based on the Event of 'Only Launch as a Secondary Automation'. This will ensure that the secondary automation only ever runs after the first automation.

Tip #3

Review the automation Run Log once or twice a day for issues. It can be accessed by going to menu --> Automations --> Run Log.

Tip #4

Manually launching an automation from within the document (i.e. work order, invoice, quote, etc.) won't necessarily process that automation for that document. For example, if you create an automation for paying subscription-based invoices and then manually launch this automation when viewing a subscription invoice, no charge will be attempted if the service period for the invoice has not yet passed.

Tip #5

When building a message template for an automation, click the 'View Sample' button to see what your message will look like when sent out as an email, push notification, and text message.

Tip #6

The results of automation runs can be seen at the document level by going to the 'Event Log' tab when viewing a work order, invoice, or quote.

Tip #7

Try to seperate communications related to payment confirmations/payment requests and survey requests. This will ensure deliverability of critical emails, such as those for payment confirmations and payment requests. Where you combine these elements on a single automation and a survey has already been sent to a customer or the survey configuration is not complete, this will prevent the email from being sent to the customer.
What should I know about trigger events that are related to recurring work orders?
The creation, edit and, deletion of a master work order can trigger changes to many, many future appointments. To prevent customers and staff from being inundated with messages, automations will only execute on the following triggers where the appointment is within the next 14 days:
  • Employee scheduled to job
  • Employee removed from job
  • Appointment date/time changed
Can invoices with late fees or interest be auto charged to the default card on file?
No, if an invoice has interest or lates fees on it, the automation system will not allow it to be auto charged to the default card on file. This is to prevent a chargeback where the client claims that that they were not aware of the penalties of a late payment.
What should I know about 'Reminder' automations?
Automations that have 'reminder' in their title can only be sent once a day for a given type. For example, regardless if you manually run an 'Overdue invoice reminder' automation or let it run via the schedule, only one overdue invoice reminder message will be sent out to a customer for a given invoice on a given day.

This protection exists to prevent customers from becoming frustruted with duplicate messages within a short time window.
How can I create an automation that can be run from within the document view?
When creating or editing the Automation, apply the following configuration:
  • Triggered By: Event
  • Event Trigger: Manually Run Automation
The automation will now be selectable from within the document view.

Call Manager: Overview & Prerequisites

The Call Manager provides your business with an intelligent, dedicated inbound phone system powered by Twilio. It acts as an automated receptionist and spam firewall—greeting your customers, intelligently routing calls to on-duty team members, and capturing missed inquiries directly inside your team's Chat App.

Plan & Registration Requirement

The Call Manager is included with the Premium Plan. Access to phone number setup, the Call Manager settings, and the Call Log unlocks as soon as Twilio approves your company’s Messaging Profile (10DLC registration) submission.

Phone Numbers & Routing

To access configuration, navigate to Menu > Settings > Call Manager Setup.

1. Dedicated Phone Number

Once your Messaging Profile is approved by Twilio, your dedicated phone number will appear at the top of the Call Manager Setup page. This is your platform-assigned business phone number provided through Twilio.

Critical: Updating Public Business Numbers

Payment processors and financial institutions strictly verify contact details to guard against fraud. If you update or replace your public-facing phone number on your website, you must immediately update your matching phone number across the following entities to avoid transaction freezes or account suspension:

  • Stripe (to prevent merchant account bans)
  • Bank accounts and linked financial institutions
  • Business registration authorities and corporate registries
  • Tax authorities (e.g., IRS, CRA, State/Provincial revenue agencies)
  • Domain WHOIS / registrar contact records
  • Social media profiles and Google Business Profile
  • Email Service Providers (ESPs) and transactional email headers

2. Phone Number

In the phone number field, you can enter the phone number that you wish to be displayed on your website and documents such as invoices, quotes, and work orders. This can either be your dedicated Twilio number or any other number (eg. your cell phone number, for example).

3. Redirect Number

Enter the primary phone number (your mobile phone, office line, or physical desk phone) where inbound calls should forward when someone dials your dedicated Twilio number.

4. Seconds to Ring

Defines how many seconds the system allows your forwarded phone to ring before forwarding the caller to your Missed Call Options or after-hours system.

  • Default (15 seconds): Ideal for mobile numbers; rings approximately 3 to 4 times before routing to missed call actions. (Note: connecting the call over carrier lines takes 3–5 seconds, which is counted within this window.)
  • Use External Voicemail (60 seconds): If you prefer your own phone carrier or office answering machine to pick up instead of the system, set this to 60 seconds.
  • Immediate Missed Call Options (0 seconds): Directs all callers immediately into automated options without ringing your personal line first (useful during holidays or busy seasons).

Masking & Call Recording

Number Masking

When enabled, incoming forwarded calls to your Redirect Number display your dedicated Twilio number on your caller ID rather than the customer's personal number. This allows you to instantly know that an incoming call is a business inquiry rather than a personal call.

Inbound Call Recording

When enabled, the system plays an automated pre-call disclaimer informing the caller that the conversation may be recorded for quality assurance purposes. Once finished, complete audio playback is attached directly to the record in your Inbound Call Log.

Legal Notice: Two-Party Consent Laws

Prior to activating call recording, ensure compliance with federal, state, provincial, and local wiretapping and consent regulations in the jurisdictions where you operate.

Smart Greetings & Personalized Routing

Transform standard automated menus into a tailored client experience using real-time CRM data:

  • Greet Caller by Name: When an incoming caller’s phone number matches an existing customer profile, the system automatically welcomes them by name (e.g., "Hello Sarah, thank you for calling...").
  • Call Greeting ("You've reached..."): Enter the completion of your opening welcome line (e.g., entering Jason's Cleaning causes the system to say: "You've reached Jason's Cleaning.").
  • Contact Name ("Press 1 to speak to..."): Complete the prompt for your primary department or role (e.g., entering Customer Support prompts callers with: "Press 1 to speak to Customer Support.").
  • Personalized Connection Options: When enabled, callers bypass generic menus and receive context-aware options:
    1. Recent SMS Contact: If the caller exchanged text messages with an employee within the past hour, they are offered the option to connect directly with that specific team member.
    2. Assigned Job Crew: If the customer has an active job on the calendar for today, they receive a prompt to connect directly with the crew or technician assigned to their service visit.
    3. Main Office: Routes directly to your default Redirect Number.

Missed Call Handling & Chat App Integration

When a call goes unanswered after the designated ring time, you can prompt the caller with automated recovery paths. All selections post instantly as real-time notifications in your Chat App:

  • Request Callback: Callers press a key to request a callback. An alert immediately posts in the Chat App with the caller's identity and timestamp.
  • Voice Message: Callers can record a voicemail. The audio file is automatically transcribed by AI into text and posted alongside the playable audio snippet directly inside the Chat App.
  • Request Text Message: Callers can request to continue the conversation via SMS. This creates or opens an active two-way text thread in your Chat App, allowing staff to text back immediately.

Operating Hours & After-Hours Routing

Define automated routing rules so you never receive business calls late at night while ensuring urgent customer inquiries are addressed.

  1. Select Operating Hours Team: Under Regular Operating Hours, pick a team schedule that establishes your working shifts.
    Tip: Create a dedicated scheduling team named Business Hours (e.g., Monday–Friday, 8:00 AM – 5:00 PM) specifically to drive your Call Manager hours.
  2. After-Hours Forwarding Number: Enter an alternate phone number (such as an external 24/7 call answering service) to receive calls outside of normal business shifts.
  3. Forward To Name: Enter the descriptive name of the destination (e.g., our after-hours emergency desk) to update the automated voice greeting accordingly.
  4. Forward to Missed Call Options: If you don't use an external answering service, toggle this setting on. Outside of operating hours and on days off, incoming callers will automatically bypass your phone and proceed straight to callback, voicemail, or SMS requests.

Inbound Call Log & Voicemail Transcripts

To inspect your communication history, navigate to Menu > Communications > Inbound Call Log.

  • Date Range Filtering: Filter calls across defined start and end dates.
  • Filter Dimensions: Narrow records by call outcome (completed, missed, voicemail), specific callers, or the employee/redirect line that received the call.
  • Search Voice Transcriptions: Use the search bar to locate specific keywords, account details, or terms spoken inside caller voice messages.
  • Audio Playback: Listen to recordings and voicemails directly within your browser.

Blocking Spam & Harassment

Prevent robocallers, solicitors, and unwanted contacts from tying up your phone lines or filling your inbox.

How Call Blocking Operates

  • Inbound phone calls from blocked numbers are rejected immediately at the carrier level before your devices ring.
  • Inbound SMS and MMS text messages from blocked numbers are silently dropped and will never appear in your Chat App.

Adding a Blocked Number

  1. Navigate to Menu > Settings > Blocked Numbers and click Block a Number.
  2. Enter the 10-digit phone number including area code (e.g., (555) 019-2834).
  3. Select a Reason from the dropdown menu.
  4. Add any context or documentation under Additional Notes for internal team reference.
  5. Click Save.

Call Manager FAQs

General

What is the Call Manager?
The Call Manager is a feature that helps manage inbound calls using a dedicated number. It offers features like call forwarding, spam reduction, and missed call handling and is integrated with our chat application.
What are the benefits?
  • Ability to forward calls to any number
  • Spam call reduction as most autodialers cannot make selections within phone systems.
  • Can automatically greet known customers by their first name
  • Where a call is not picked up, the caller can be presented with several options: request a callback, request a text message, or leave a voice message. Their selected option will post to the Chat App.
  • Integration with the Chat App for centralized communication
  • Customizable greetings and call handling preferences
  • Secure storage of voice messages and transcriptions
  • Searchable log of all inbound calls
  • Option to mask the caller ID of inbound calls
  • Transcriptions of voice messages are searchable via the Call Log
  • Personalized menu options including the ability to speak with employees who have recently texted them or a member from the team that is scheduled to that day's job
  • Ability to configure call handling for 'after hours' calls
  • Ability to block calls and messages from specific phone numbers
  • Included with all Premium Plan subscriptions at no additional cost
Who has access to the Call Manager?
Premium Plan subscribers can use the Call Manager after they've submitted their Messaging Profile on our platform and it has been approved by Twilio.

Please note that only account administrators have access to the following pages:
  • Call Manager Settings
  • Call Log
  • Blocked Numbers Page

Setup

How do I set up the Call Manager?
The Call Manager works automatically with no configuration. You can customize its settings, such as call forwarding and greetings, through the Call Manager setup page.

Within the Call Manager settings page, you may wish to enable voice messages. This option is disabled by default.
What testing should I perform?
Test the system by calling your dedicated number from a phone other than your business number. Verify call forwarding, greetings, and missed call options.
When someone calls me and I don't answer, my phone goes to voicemail before the Call Manager can present the 'missed call options'. How can this be addressed?
Adjust the "Seconds to Ring" setting in the Call Manager setup page to reduce the ring time before the Call Manager handles the call. The goal of this setting is to have the Call Manager present options to the caller before your own phone's voicemail handles the call.

Usage

When a call is forwarded to my cell phone from the dedicated number, will I still see caller ID?
Yes, caller ID will be passed on the redirected call unless you have Number Masking enabled in the Call Manager settings. With Number Masking enabled, the caller ID will always show your dedicated Twilio phone number rather than the caller's actual number.
Where does information on missed calls, voice messages, and requests get stored?
All information related to missed calls, voice messages, and requests is stored in our chat application for easy access and action. In addition, historical inbound call information can be found in the Call Log.
Who can access voice messages and missed call notifications?
Team members with access to customer conversations via the chat app can also access voice messages, missed call notifications, and requests for callbacks/test messages.
How will I be notified of missed calls, voice messages, and requests?
Notifications for missed calls, voice messages, and requests will be delivered through the same channels as text messages from customers. This means that these notifications will post to the Chat App, but you'll also receive push notifications / email notifications of these messages if you don't view them in the Chat App within a short period of time.

Please note that you will not receive email/text/push notifications of blocked calls or calls that did not pass the main call manager menu. Calls that never pass the main call manager menu are often spam calls.
What should I know about voice messages?
Short voice messages can be reviewed directly via their transcriptions in the chat app. For longer messages, listening to the audio recording ensures you capture all details accurately.

You can search the transcripts of voice messages via the Call Log

Please note that background noise, connection quality, or low speaking volume may affect transcription accuracy. Audio files are provided alongside transcriptions for this reason.
What will happen when my cell phone is off and the Call Manager forwards a call to it?
Your phone service provider's voice messaging system will pick up the call and allow the caller to leave a voice message on that system.
How do the 'Personalized Connection Options' work?
As you may know by now, our Call Manager system is fully integrated with our platform. That means that when an existing customer calls, the Call Manager knows who they are, if you've recently texted them, and if they have a job scheduled that day. The call manager can leverage this information to present personalized options to the caller.

1) Recent text message: If you or one of your staff have sent a text message to the customer in the past hour and that employee if still within their regular working hours, the caller will be told that they recently received a text message from that employee and will be asked if they'd like to speak to that employee.

2) Upcoming job: If there is an upcoming job scheduled for the current day, the caller will be given the option of speaking with someone who is scheduled to that job. The individual will not be named. Please note the following:

  • This option will only be presented to the caller where the job is not yet complete
  • When determing who to direct the call to, the system will give priority to team leads who are scheduled to the job
  • The system will only forward a call to an employee where a) they are still within their regular working hours and b) they have not yet checked out of the job and c) they are allowed to speak with customers via the Chat App
3) The standard customer service option will be presented to the customer.

Tips when using personalized connection options:
1) Typically, you'll only want to enable this option when the company has more than 1 staff member
2) When personalized connection options are enabled, we recommend that you set the 'Contact Name' field in the Call Manager Settings to 'customer service' so that the same staff member name is not repeated multiple times within the call manager menu.
What happens if the caller is directed to an employee who has texted them recently or is scheduled to their job and they don't get an answer?
The system will present them with the 'Missed Call Options'.
Am I legally allowed to use inbound call recording?
The legality of call recording varies by jurisdiction. Please review and understand the laws that pertain to the jurisdictions in which you operate before deciding if you can enable inbound call recording.
Who has access to recordings of inbound calls?
Only admin accounts have access to recordings of inbound calls.

*Please note that all staff members who are in a chat room with a customer will have access to that customer's voice messages (both audio and transcriptions).
Are all recordings transcribed?
No, only voice messages are transcribed.
How do the after hours call options work?
Our 'after hours' call functionality allows you to select a team that defines your regular operating hours. If you wish, you can create a new team specifically for the purpose of defining your regular hours.

With your regular operating hours selected, you can configure the system to:
a) Direct after hours calls to a specific number or,
b) Direct after hours calls to the 'Missed Call Options' that you've enabled

Call Log

Will blocked calls show up in the call log?
No, blocked calls will not appear in the Call Log.
What does blocking a number do?
Blocking a phone number will prevent the receipt of calls and text messages from the number. Also, blocking a number will prevent you from sending any SMS/MMS messages to this number, including automated notifications.
What will the status of a call be if I configure the Call Manager such that my personal cell phone / business line takes voice messages?
When the voice message system of your business line or cell phone picks up the call, it will be marked as 'Answered' within the Call Log.
What does the duration value represent?
The call duration shown in the call log is the duration of the full call (in seconds) including the automated greeting.
Within the Call Log, what do the various statuses mean?
  • In Progress - The inbound call is either in progress or has just recently completed and the recording is being processed.
  • Answered - The inbound call was answered by your business (either by a staff member or by your business line's voice messaging system) and the call is now complete.
  • Call Requested - The inbound call was missed and the caller requested that you call them back.
  • Line Busy - Your business line was busy and as a result, the inbound call was missed.
  • No Answer/Hung Up - No one from your business picked up the inbound call OR the caller hung up before the call was connected. Where the caller hangs up before the call is connected, your business phone line will not ring.
  • Text Requested - The inbound call was missed and the caller requested that you reach out to them via text message.
  • Voice Message - The inbound call was missed, but the caller left a voice message using the Call Manager's voice messaging system.
  • Didn't Pass Menu - Upon calling, the caller failed to select an option. Often, these are autodialers/spam calls.
  • Call Failed - An application error has occurred. Please reach out to our Support Team if you ever see this status.

Chat Application: Overview & Plan Access

The Chat Application serves as your team's unified hub for internal collaboration and customer communication. Accessible from desktop browsers, tablets, and the free mobile app, the system combines real-time team messaging with two-way SMS/MMS customer texting, automation notices, and inbound call logs.

Plan & Carrier Registration Requirements

Internal team chat is available across all plans (including Free). Two-way communication with customers requires an active Premium Plan and an approved Messaging Profile (10DLC carrier registration) via Twilio. Customer texting features unlock automatically once carrier approval is confirmed.

Core Capabilities

  • Cross-Platform Sync: Operates seamlessly across desktop browsers, mobile web, tablets, and our dedicated iOS and Android mobile app.
  • Two-Way Customer Texting: Inbound SMS sent by clients to your dedicated phone number route directly into customer-specific chat rooms.
  • Rich Media Support: Share and receive photos and field images (JPG, JPEG, PNG) with clients and team members.
  • Fail-Safe Visibility: Built-in redundancy ensures customer inquiries never go unnoticed if a staff member is reassigned, terminated, or misses a message.
  • Integrated Hub: Centralizes missed calls, voicemail transcriptions, callback requests, and automated scheduling alerts in one place.

Staff Permissions & Setup

Account administrators can configure granular chat permissions for every team member to govern internal messaging and customer-facing contact.

Enabling Staff Chat Permissions

  1. Navigate to Menu > Employees.
  2. Click Edit next to the target employee's name.
  3. Scroll to the Communications Settings section:
    • Messaging: Grants general access to the Chat App widget.
    • Customer Conversations: Allows the employee to initiate and participate in chats with clients.
    • Push Notifications: Enables high-priority push notifications to the employee's mobile device.
  4. Click Save.
Employee Departures & Offboarding

When an employee's Last Day of Work is entered on their profile, their chat access and mobile push notifications are immediately revoked. If their access is ever restored in the future, their historical chat room memberships will be fully reinstated.

Rooms, Search & Roles

Starting a Conversation

  1. Open the Chat App by clicking the Chat Widget on the bottom-right of your screen or the top menu chat icon.
  2. Click the New Chat icon ().
  3. Select the desired staff members, or choose a single customer.
  4. Click Start Conversation.

Chat Room Administration

  • Chat Room Admins: Chat rooms are administered by the person who created the room, along with the Account Administrator (if a member of the room). Only chat room administrators can modify room header colors/images, rename the conversation, or add new staff members.
  • Viewing Past History: When a new employee is added to an ongoing chat room, they can review all historical messages and media previously sent in that room.
  • Read Receipts: Read receipts display automatically only under three conditions: (1) the viewer is an employee, (2) the room contains 4 or fewer employees, and (3) there are no customers in the room.
  • Deleting Messages: Staff members can delete their own sent messages within internal, employee-only chat rooms. Messages sent to or received from customers cannot be deleted.

Managing and Finding Rooms

  • Search Scope: The search tool queries room titles, participant names, email addresses, phone numbers, company names, and billing/job addresses.
  • Hiding Rooms: You can hide inactive chat rooms from your primary conversation list. If a new message is posted to a hidden room, it automatically unhides and returns to your active list. To hide an inactive chat room, click on the gear icon on the the chat room and click Hide Conversation
  • Muting Rooms: Click the gear icon on a chat room and select Disable Notifications to silence push alerts for that specific room.
  • Pin Rooms: Click the gear icon on a chat room and select Pin Conversation to place the chat at the top of list of chat rooms.

Customer SMS Messaging

The Chat App bridges system communications directly to standard mobile SMS/MMS on the customer's phone.

Customer Chat Room Rules

  • 1-Customer Limit: Chat rooms support a maximum of one customer per room. You cannot add multiple customers to a shared thread.
  • No Duplicate Rooms: If a staff member already has an active chat room with a client and you initiate a chat with that same client, the system adds you to the existing thread rather than creating a duplicate.
  • New Rooms Only: Customers cannot be added to existing, pre-established internal staff threads. They can only be introduced when starting a new customer conversation.
  • Outbound Masking: When multiple employees participate in a customer chat, messages sent to the client appear from your business's dedicated number without individual staff names attached.

Inbound Customer Inquiries

When a client texts your dedicated phone number, the system automatically routes the message:

  • Existing Customer Match: If the phone number matches an existing client record, the thread links to their profile and opens their conversation history.
  • Unrecognized Numbers: An unassigned room is created. Once you add that phone number to a customer record, the chat room automatically associates with that customer profile.

Opt-Outs & Sending Limits

  • Customer Opt-Outs (STOP): If a customer blocks messaging or texts STOP, outbound messages are disabled. To resume communications, the customer must text START to your dedicated number or re-enable messaging from within their Client Portal.
  • Message Thresholds: Inbound messages are capped at 1,600 characters and up to 10 images per delivery. Longer texts may be truncated, and oversized attachments will fail to process over carrier channels.

Admin Safeguards & Alerts

To ensure high service standards and avoid missed sales inquiries, the platform enforces several automated backstops:

Unread Customer Message Alerts

If a customer sends a message and no staff member opens the conversation within 30 minutes:

  1. An automated notification is sent to the Account Administrator via email (or via SMS if a Mobile Number for Alerts is entered in Chat General Settings).
  2. The Account Administrator is automatically added to the chat room to take over the conversation.

Automatic Admin Escalation

To avoid orphaned customer conversations:

  • If the sole employee in a customer chat leaves the room, the Account Administrator is automatically added.
  • If an assigned employee's chat permissions are revoked or they are offboarded, the next message sent by the customer automatically adds the Account Administrator.
Best Practice: Join All Customer Conversations

Administrators can open General Settings (gear icon inside the Chat App) and enable Join all Customer Conversations. This automatically includes the administrator on all customer chat threads created by team members across the company.

Sending Push Alerts, Emojis & Images

The Chat App message composer houses its extended media and delivery options inside the action menu at the bottom of the composer panel. By clicking the three dots (), you can toggle high-priority staff push notifications, open the emoji picker, or attach photos.

1. Dispatching Urgent Push Notifications to Staff

By default, standard internal chat messages increment the unread badge on the chat widget. To send an immediate alert directly to a field technician's mobile device (e.g., for urgent schedule updates or emergency calls):

  1. Open the internal chat room containing the team member(s).
  2. Type your message into the composer box.
  3. Click the three dots () at the bottom of the chat composer.
  4. Select Push notification to enable high-priority delivery.
  5. Click Send.
  6. A notification will appear on the staff member's phone (i.e. push notificaiton).
Push Delivery Rules & Group Limits
  • Unread Gate: Push alerts are delivered only if the recipient does not already have that specific chat room actively open on their screen.
  • Internal Use Only: The push toggle applies strictly to team members with our mobile app installed; customer messages are always delivered directly as SMS text messages to customers.
  • Large Chat Rooms: To prevent notification bottlenecks across team devices, chat rooms with an exceptionally large number of participants do not support push notifications.

2. Inserting Emojis

You can add emojis to any internal conversation or outbound customer text message to keep conversations friendly and expressive:

  1. Place your cursor where you would like the emoji to appear in the message field.
  2. Click the three dots () at the bottom of the chat composer.
  3. Select Emojis to open the built-in emoji palette.
  4. Click or tap any emoji to insert it directly into your message.

3. Uploading & Sending Photos

Technicians and administrators can share job site photos, diagnostic labels, and completed work documentation directly through chat:

  1. Open the target chat thread (staff or customer).
  2. Click the three dots () at the bottom of the chat composer.
  3. Select Upload photo from the menu.
  4. Choose your image from your local computer files or mobile photo gallery.

    (Supported formats: .jpg, .jpeg, and .png.)

  5. An image preview will display above the message field. Type an optional message to accompany your image.
  6. Click Send.

Image Protections, Limits & Draft Recovery

  • Automatic Draft Saving: If you attach a photo or compose text and navigate to another page or chat room before sending, the chat room automatically saves your unposted draft and image so nothing is lost when you return.
  • Customer MMS Thresholds: Inbound and outbound customer communications support up to 10 images per delivery. Sending more than 10 images at once may cause carrier delivery failures or dropped MMS files.
  • 1-Hour Secure Media Expiration: To safeguard client privacy and property photos, all hosted image links sent through chat are signed with secure cryptographic tokens that expire automatically after 1 hour, preventing unauthorized third-party access.

Push Notifications & Mobile Device Management

Push notifications allow technicians and managers to stay updated in the field without keeping a browser window open.

Notification Delivery Rules

Push alerts are generated only when the recipient does not currently have the chat room open, under the following circumstances:

  • A customer sends an inbound message.
  • Another staff member explicitly selects Push Notification (via the three-dots menu in the message composer) before sending an internal message.
One Device Per User

Push notification tokens are bound to a single mobile device per user profile. Staff members cannot receive push alerts across multiple phones simultaneously.

Troubleshooting Missing Notifications

Push notifications require an active internet connection (cellular data or Wi-Fi). If an employee is not receiving alerts, follow these diagnostic steps:

  1. Verify In-App Bell State: Open the mobile app, tap the chat icon, and verify the status below the Messages header. It should display Disable. If it displays Enable, tap it to activate notifications.
  2. Check Mobile OS Settings: Ensure notifications are enabled for the app inside iOS Settings or Android Settings.
  3. Device Upgrades: If an employee gets a new device, they must log in to the mobile app, open the chat app, tap Disable, and then tap Enable to register their new device token.
  4. Reinstallation Procedure: If alerts fail repeatedly: (1) Uninstall the mobile app, (2) Clear mobile browser history/cache, (3) Confirm push permissions are enabled in their Employee Profile, (4) Reinstall the app, and (5) Tap Enable Notifications inside the chat screen.

Staff Location Tracking

Administrators can view the geographic location of field technicians directly from within active chat rooms.

How Location Tracking Works

  • Dual Opt-In: Location data is recorded only if: (1) the Administrator has enabled location tracking within the Employee profile, and (2) the employee has explicitly granted device-level location access on their mobile device.
  • Admin-Only Visibility: Only the Account Administrator can view location stamps. Other employees cannot see their peers' locations.
  • Viewing Location: Tap or click an employee's avatar/icon inside any chat room to view their last reported location.
  • Active-App Tracking: To conserve battery life and maintain privacy, the mobile app reports coordinates only while the app is actively open and in use. The mobile app doesn't run background GPS location tracking when closed.

Security & Encryption

The Chat Application incorporates enterprise privacy controls to safeguard customer details and operational communications:

  • Encryption at Rest & Transit: All text conversations are stored with database-level encryption and transmitted using TLS/HTTPS protocols.
  • Expiring Media Links: Images sent across chat are delivered using cryptographically signed URLs that expire automatically after 1 hour, preventing unauthorized public access.
  • Direct Work Order Privacy: In automated appointment reminders sent through chat, direct links to work orders and billing records are visible only to Account Administrators.

Chat App FAQs

General

What are the features of the chat application?
The chat application has the following features:
  • Works on mobile, tablet, desktop and our mobile app
  • Multi-member chat rooms that can include both staff and customers
  • On-page chat widget displays new messages in real time
  • All messages are encrypted at rest and in transit (HTTPS)
  • Ability to send push notifications to employees who are using our free mobile app
  • Ability to send and receive images
  • Message drafts, including images, are saved by chat room
  • Employee read receipts for chats with 4 or fewer employees
  • Ability for admin to see last location of staff from within the app (has to be enabled at the employee level and employee has to agree to tracking within the app)
  • Advanced logic to ensure that customers messages are always seen (i.e. if employee leaves chat, their chat permissions are removed, or they are terminated, the account admin will be automatically added to the chat)
  • Advanced filtering, searching, marking chat rooms as starred, muting and hiding chat rooms
  • Ability to delete messages from any chat room with other employees
  • Ability to see typing activity
  • Chat rooms can be started by customers when they text your dedicated phone number
  • Automated system messages to customer appear in chat room (eg. appointment reminders)
  • Messages from customers sent via push notification when chat room is not open
  • Alerts sent via email or SMS for messages from customers after they've been unseen for 30 minutes
  • Shows missed calls, requests for callbacks, requests for a text message, and voice messages
  • Shows system notifications resulting from automations
Who is the chat application available to?
The chat application is available to all users, but communication with customers is only available to users (and their staff) who have a Premium Plan subscription.
Is there an extra cost associated with sending messages to customers?
Messaging to customers comes with our Premium Plan. Having said this, there are messaging limits in place to prevent abuse. If you reach this limit through legitimate conversations with customers, please reach out to our Support team to have your limit raised.


Setup and Troubleshooting

How can I enable the chat application?
To enable the chat application, go into menu --> Employees --> click 'Edit' beside your name. Within the Communications Settings section, ensure that all settings are enabled. Then, repeat this process for each of your staff members and enable or disable their communication settings as desired.

A core feature of the chat application is the ability to receive push notifications on your mobile device where a customer has sent you a message or another staff member has sent a push notification. To receive push notifications, you'll need to install our free mobile app on your phone or tablet. Instructions on how to do this can be found here:

Mobile App Installation Instructions

When you log into the app for the first time, click on the chat icon and at the top of the chat window, ensure that Disable is shown. This indicates that notifications are currently enabled. If this is not shown, click on the Enable button to enable notifications.

A Premium Plan subscription will allow you and your staff to communicate with customers via the chat app. Before this functionality is enabled, you'll have to complete your Messaging Profile (menu --> Profile --> Messaging Profile) and then, Twilio will need to approve your profile. We'll let you know when this process is complete.
How can I test the chat app to ensure that my account is properly setup to communicate with customers?
If you are the administrator of the account and you have a Premium Plan subscription, use the following steps to ensure that your account is properly configured to allow communication with customers:

  • With the employee profile for yourself, ensure that all settings in the 'Communications Settings' are enabled
  • Click on the chat icon to open the chat application
  • Open the General Settings by clicking the gear icon in the top right corner of the chat window
  • Take note of the dedicated number that has been assigned to your company
  • Close the chat application by clicking the red X in the top right hand corner
  • Using your phone, send a text message and/or image to your dedicated number
  • Within a few seconds, you should see an on-screen notification within Blue Sail Agency that a new message has been received. If you've received this notification and can see your message within the app, it means that your Blue Sail Agency account has been fully configured to send and receive messages from customers.
If you have the mobile app installed, you'll want to ensure that the app and your phone are configured to deliver push notifications.

  • Open the chat app by clicking on the chat icon.
  • At the top, under the "Messages" title, if you see Enable, click this to enable notifications. Respond to any on-screen prompts asking you for permission to receive notifications.
  • Close the chat app and wait 10 seconds.
  • From your phone, send a text message to your dedicated number. You should receive a push notification on your mobile device indicating that this number has sent you a new message. Clicking on the push notification should open the chat room.
If any of this functionality is not working as described, do not use the chat application to communicate with customers. Please reach out to our Support Group to resolve the issue.
What should I do before my employees and I start using the chat app?
Before you and your staff start using the chat app to communicate with each other and customers, we recommend that you take the following steps:

  • Install our free mobile app and recommend to your staff that they do the same. Installation instructions can be found here:
    Mobile App Installation Instructions
    Having the mobile app on your device will allow push notification functionality. If you installed the mobile app prior to April, 2026, it's recommended that you clear the browser history on your phone so that the app automatically downloads the latest application files as these are required for push notification functionality.
  • Within the employee profile of each of your employees, you'll find a 'Communication Settings' section. Enable or disable permissions within this section as desired.
  • Ask your staff to ensure that they see Disable at the top of the chat app when the open it. If they don't, they should click the Enable button to enable notifications.
  • Ensure that push notifications are working on your staff members' phones by adding your staff to a chat room, and sending a push notification by entering a message, clicking the 3 dots at the bottom of the screen and clicking 'Push notification'. With push notification enabled, send the message and have each of your staff confirm that they received the push notification on their mobile device.
  • If you're a Premium Plan subscriber, you'll want to test to ensure that messaging with customers is worked as desired. Please see the FAQ above on the testing procedures.
Why am I not seeing any read receipts?
Read receipts will only be shown when:
  1. An employee views the message and,
  2. The chat room has 4 or fewer employees in it and,
  3. There are no customers in the chat room
Why am I or my staff not receiving push notifications?
Push notifications sent from our platform can be sent to all modern iOS and Android devices.

Push notifications are only sent when:
  • a customer sends you a message and you don't have the chat room open
  • an employee sends you a message with the push notification option enabled and you don't have the chat room open
Push notifications may be delayed by up to 1 minute (or more when a customer has sent a large image)

To ensure that you're setup to receive push notifications, please follow these steps:
  • Within your iOS or Android device settings, ensure that push notifications are enabled for the Blue Sail Agency application
  • If you are the account admin, within the employee's profile, ensure that 'Messaging' and the 'Push Notifications' setting is enabled
  • At the top of the Chat App, ensure that Disable is visible. If this is not visible, click the Enable button.
  • Within the listing of chat rooms, ensure that the chat room is not muted. Chat rooms that are muted have a bell icon with a strike through them. To unmute the chat room, click the gear icon on the chat room link and click "Enable Notifications".
If you are not receiving push notifications, clear your browser history on your mobile device and then log into the mobile app on your device. Have another staff member send a push message to you via the chat app. If no push notification is received, please complete the following instructions:

  • Staff Member: Uninstall the Blue Sail Agency app from the mobile device
  • Staff Member: Clear the browser history from the mobile device
  • Account Admin: Go into the employee's profile within your Blue Sail Agency account. Ensure that the "Push notifications" setting is enabled.
  • Employee: Install the mobile app once again using these instructions: Mobile App Installation Instructions
  • Staff Member: Open the mobile app and login
  • Staff Member: Click the chat bubble icon at the top of the app to open the chat app. Immediately below the 'Messages' title, click the Enable button if visible. If notifications were already enabled, disable them and enable them once again to reset your connection to our notification system.
  • Staff Member: Close the chat app
  • Account Admin: Create a chat room with this employee. Click on the 3 dots at the bottom of the chat room and enable push notification for your message. Send the employee a test message. At this point, the employee should receive a push notification on their mobile device.
Ensure that the device has an active Internet connection. This is a requirement for push notifications. Test this by opening your browser and navigating to google.com. If google.com displays as expected, your Internet connection is working as desired.

Please note that push notifications are only sent to one device for a given staff member account. In other words, a staff member cannot have 2 or 3 phones linked to their one account on Blue Sail Agency.

If the above instructions do not resolve your issue, please reach out to our Support team to discuss.
I just got a new phone and I'm not receiving push notifications.
On your mobile device, with our mobile app open, open the chat app. At the top, click Disable and then click Enable to register your new mobile device with our notification service.


Chatting with Customers

How many customers can be added to a single chat room?
The maximum number of customers per chat room is 1.
What protections are in place to ensure that a customer chat room has at least one staff member?
If your employee is in a chat room with a customer and there are no other employees in that chat room and that employee leaves the chat room, you, the account administrator, will be automatically added to the chat room. Similarly, if the employee's chat permissions are removed or they are terminated, the next time the customer sends a message, you, the account administrator, will automatically be added to the chat room. If you wish to be present in all conversations with customers regardless of who initiates the conversation, within the General Settings (gear icon on main chat app panel), enable the 'Join all Customer Conversations' setting. Enabling this setting is recommended.
Can customers initiate a chat room?
Yes, if they text your dedicated number, a room will be created for this number and the site administrator will receive a push notification for this message (assuming that the site administrator has installed the mobile app on their mobile device).
Someone has texted me from 999-999-9999 (example only). When I setup a customer with this phone number, what happens to the chat room?
The chat room will be automatically associated with this customer.
An automated message has been sent to the customer reminding them of the appointment. On that message, there is a link to the work order. Who can access this link?
Only the account administrator will see the link to the work order.
Why can't I delete messages from customer chat rooms?
Since these messages can't be removed from the customer's phone, these messages should persist within the chat room.
When I open a chat with a customer, I'm told that they've blocked messages from this number. How can this be resolved?
This means that the customer has either disabled SMS/MMS messages from within the Client Portal or they've sent the message 'STOP' to your dedicated phone number. If you wish to chat with them through the chat application, you'll have to request that:
  • Enable messaging within the Client Portal or,
  • Text the word START to your dedicated SMS/MMS number
Can a customer be added to an existing chat room?
No, customers can only be added to new chat rooms.
Will I be informed if there is a failed message delivery to a customer?
Yes, if our partner, Twilio, cannot send the message to the customer, you'll see an error message in the chat. If the customer has their phone off, this will not trigger an error message.
What are the sending limits with regards to message and image sizes?
If the customer sends a message with more than 1600 characters or 10 images, the text message will be cut off and images may not be received.
Can staff members initiate conversations with customers?
Staff members can initiate conversations with customers if the 'Customer Conversations' setting is enabled within their Employee profile. If you wish to be part of any chat rooms that they create with customers, enabled the "Join all Customer Conversations" setting within the General Settings (gear icon on the main chat app panel).
A staff member already has a chat room with a customer. If I create a chat room with this customer, does another chat room get created?
No, you'll simply be added to the chat room that already exists for that customer. This prevents a situation where there are multiple chat rooms with one customer, which could cause confusion.
What happens if a customer sends a message, but no one sees it?
Our chat application goes to great lengths to ensure that you or your team see messages from customers in a timely fashion. If a customer sends your business a message and no one from your company views the message within the chat application, two things will happen:

  1. 30 minutes after the message is received from the customer, the administrator will be sent notification that there are unread messages in the chat app. By default, this notificaiton will be sent via email. If a 'Mobile Number for Alerts' is entered into the General Settings for the chat application, this notification will be delivered via SMS instead.
  2. The administrator will be automatically added to the chat room if he or she is not already a member of the chat room.
There are multiple employees in a chat room with a customer. Will the customer know which employee is sending text messages to them?
No, employee names are not automatically attached to the text messages that the customer will receive on their phone.


Push Notifications

What should I know about push notifications sent from the chat application?
  • You must have our free mobile app installed on your device to receive push notifications
  • Push notifications can be delayed up to 1 minute or more.
  • If a push notification is sent while a mobile device is turned off or disconnected from the Internet, the push notification will never be delivered and you will not be notified of this failed delivery.
  • Push notifications are less reliable than text messages. Please don't use them for critical information.
  • Prior to relying on push notifications, ensure that they work on your device and your staff members' devices through testing.
  • Push notifications require an active internet connection (i.e. a data plan on your mobile device or a connection to WiFi hotspot).
Can I configure two devices to receive push notifications for one account?
No, push notifications can only be sent to one device per account. This means that if one of your staff members has 2 phones, push notifications can only be sent to one phone.
When aren't push notifications sent?
Push notifications won't be delivered when:
  • The employee's mobile device or tablet is off
  • The employee's mobile device or tablet does not have an active internet connection
  • Push notifications are disabled in the employee's device (Android/iOS) settings
  • Push notifications are disabled on the Employee profile
  • Push notifications have been muted in the chat room by the employee
  • The employee hasn't yet installed the mobile app
  • The employee hasn't enabled push notifications from within the mobile app
  • The employee currently has the chat room open (as push notifications are only sent for unread messages)
  • The employee has logged into another Blue Sail Agency account on the mobile app aside from the account that is associated with your business
If a push notification is not delivered on the first attempt for one of the reasons above, it will never be delivered.
I sent a push notification to an employee, but their phone was off.
When this happens, you will not get confirmation of the failed delivery. When the employee powers on their device, they will not receive the push notification. They will still have access to the message within the chat app, however. These are limitations of the push notification system on Android and iOS and as a result, only non-critical, non-time sensitive information should be communicated via push notification.

If you have extremely important information to communicate to another staff member, do not rely on push notifications.
I sent a push notification to an employee, but the employee disabled push notifications within their device (iOS/Android) settings.
When this happens, you will not get confirmation of the failed delivery. This is a limitation of the push notification system on Android and iOS and as a result, only non-critical, non-time sensitive information should be communicated via push notification.

If you have extremely important information to communicate to another staff member, do not rely on push notifications.
I sent a push notification to an employee, but they don't have the app actively running on their mobile device.
If the employee has installed our mobile app and enabled push notifications, even if the app isn't running on their mobile device (either in the foreground or background), they'll still receive push notifications from our platform.


Location Tracking

Who has the ability to see the location of staff members within the chat app?
Where both the account administrator has configured location tracking and the employee has agreed to tracking on their mobile device, only the account administrator can see that employee's last reported location. The location can be seen by clicking or tapping on the employee's icon within the chat room.
What location is shown?
The location shown for an employee is their last reported location. Our mobile app will only report an employee's location when the app is active/in use.


Other Frequently Asked Questions

Are messages sent from and received by the chat app secure?
Messages sent to and receive by the chat application are secure in that:
  • Text messages are encrypted at the database level
  • Text messages and images are encrypted in transit using HTTPS
  • Image links are keyed and expire automatically after 1 hour to prevent unauthorized access
Who can add other employees to the conversation once it has been created?
Only a chat room administrator can add other staff members to a conversation. Chatroom administrators include:
  • The staff member who started the conversation, and
  • The main account administrator where they are a member of the chat room
What other tips should I keep in mind as I use the chat app?
As an account administrator:
  • You should set a headshot image for each employee within their employee profile. This will make it easier to identify who has sent what message within the application.
  • Click on the customer's name or image at the top of the chat will take you to their profile
Who can send or receive images?
You, your customers, and your staff can send and receive images using the chat app.
How do I create a new chat room?
1. Open the chat app application:
  • On desktop, click the chat widget on the right hand side of the screen
  • On desktop or table, click on the chat icon in the top menu
2. Click the icon at the top

3. Select the customer and staff members that you wish to chat with

4. Click the green 'Start Conversation' button
How do I know if a new message has come in?
The message widget will be updated in real time with the number of unread messages.

Messages from customers, where you don't already have the chat room open, will result in a push notification to your device where you've installed the mobile app and have enabled all necessary settings for push notifications.

Where there are multiple staff members in the chat room with the customer, they will also receive a push notification when the customer sends in a message.
What file types can be send and accepted by the chat application?
Only images can be sent and received at this time. This includes JPG, JPEG, and PNG files.
Who can change the chat room header image/color or title?
Only conversation administrators can change these things.
What fields does the search function query?
When you use the search feature within the chat app, it will query the following fields:
  • Chatroom title
  • Name
  • Email
  • Phone
  • Company Name
  • Billing and Job Address
How many staff members can be added to a chat room?
There is no limit to how many staff members can be added to a single chat room. Having said this, chat rooms with a large number of members are not be capable of push notifications.
If I temporarily remove an employee's access to chat rooms or customer chat rooms and then later add their access back, will they have access to the chat rooms that they previously members of?
Yes, once their access is restored, they'll be able to see the all of the chat rooms that they were previously a member of.
If I hide conversation and someone sends a message in that conversation, what happens?
The conversation will be unhidden and will show up in your active conversations list.
I've set an employee's last day of work. What is the result of this?
When an employee's last day of work is set within their employee profile, they will not be able to access the chat application nor will they receive any push notifications.
When a staff member joins or is added to a chat room, how much history can they see?
The staff member will be able to see all prior messages in the chat room.

A2P 10DLC Overview & SMS Approval

To deliver automated text reminders, two-way customer chat, and technician dispatch updates from our platform, telecommunications regulations require your business to register its messaging campaigns with The Campaign Registry (TCR) and our upstream carrier partner, Twilio.

Why Is Registration Mandatory?

Under industry-wide A2P 10DLC (Application-to-Person 10-Digit Long Code) regulations, mobile carriers (including Verizon, AT&T, and T-Mobile) mandate that all commercial software platforms register every sending organization's legal brand identity, tax identification, and message templates. This framework protects mobile users against unverified spam, prevents spoofed numbers, and enforces opt-out compliance.

Our Managed Registration Process

  • Zero Additional Cost: Carrier registration fees and filing logistics are handled entirely by our platform and Twilio on your behalf at no extra charge.
  • Dedicated Business Phone Number: Upon approval, your account is provisioned with a dedicated local 10-digit business phone number dedicated exclusively to your company's outbound and inbound messaging.
  • Approval Timeline: Once you submit you've signed up for the Premium Plan and have submitted your Messaging Profile (Menu > Profile > Messaging Profile), we'll pass your information to Twilio. Vetting and brand registration through Twilio and TCR typically takes 2 to 3 weeks. Full SMS, MMS, and team chat capabilities unlock automatically as soon as carrier approval is granted.
Prerequisite for Premium Messaging Features:

Completing your Messaging Profile is mandatory for Premium Plan subscribers who wish to use automated SMS arrival notices, text invoice links, quote request notifications, and two-way in-app customer chat.

Messaging Profile Registration Form

To initiate registration, navigate to Menu > Profile > Messaging Profile and complete the required corporate verification details.

Critical Requirement: Exact Legal Match Required

TCR and carrier algorithms run automated database cross-checks against government tax registries. Even minor discrepancies—such as a missing punctuation mark, abbreviated suffix, or mismatched address—will cause your registration to fail.

1. Business Identification Guidelines

  • Brand Name: The public-facing trading name used in your marketing, website, and customer communications (e.g., "Acme Cleaning Services" without legal corporate suffixes). Sole proprietors and hobbyists should enter their first and last name or public business name.
  • Legal Business Name: The exact corporate name registered with your national tax authority:
    • United States Entities: Must identically match the business name printed on your IRS CP 575 EIN Confirmation Letter (or IRS 147c letter). Do not use names from W-2 or W-9 forms if they differ from your official IRS registration record.
    • Canadian Entities: Must match your official provincial or federal corporate registration document.
    • Sole Proprietorships: Enter your full legal first and last name.
  • Business Registration ID Type & Number:
    • USA (EIN): Must be an active 9-digit Employer Identification Number.
    • USA (DUNS): A valid 9-digit Dun & Bradstreet number.
    • Canada (CBN): Enter your 9-digit Canadian Business Number (the first 9 digits found on your T2 corporate tax filings, e.g., 123456789 from 123456789RC0001).
    • Canada (CCN): Your Canadian Corporation Number.
  • Physical Address: Must match the physical address on file with your tax authority. For US companies, Address Line 1 and Line 2 must correspond strictly to what appears on your IRS CP 575 notice.

2. Authorized Representatives

Twilio requires contact information for verified company representatives who hold administrative authority:

  • Authorized Representative #1: Enter the primary company officer's full legal name, direct corporate email, phone number, business title, and job role (e.g., Director, GM, VP, CEO, CFO, or General Counsel).
  • Authorized Representative #2: Only list a secondary representative if their name appears alongside Representative #1 on public corporate filings (such as state corporate commission registries or public articles of incorporation).

    Warning: If a secondary representative is entered whose identity cannot be verified on public corporate documents, Twilio will reject your brand registration. If only one officer is on public record, check the box labeled "There is no second authorized representative".

Identity Verification & Permitted Messaging Use Cases

During the vetting process, Twilio compliance specialists may contact your nominated authorized representatives by phone or email to confirm their identity and verify that message recipients have provided consent.

Answering Carrier Verification Inquiries

If a carrier or Twilio representative contacts you regarding how messaging will be used on your account, confirm that messages are strictly transactional and operational service updates sent to clients who have booked or requested service. Specifically, cite the following permitted use cases:

  • "On My Way" Notifications: Real-time arrival updates dispatched by field technicians en route to a service address.
  • Schedule Delay Alerts: Courtesy notices informing clients of unforeseen traffic or job overruns.
  • Appointment Confirmations & Reminders: Automated 24-hour advance booking reminders and scheduling confirmations.
  • Digital Quote & Survey Delivery: Secure links to review and accept quotes, or to complete post-service quality surveys.
  • Invoice Payment Prompts: Friendly reminders and direct payment links for outstanding balances.
  • Direct Customer Support: Two-way operational communications answering customer inquiries regarding scheduled visits.
Carrier Compliance Safeguard:

Our platform automatically enforces carrier opt-out standards. Every automated, outgoing includes clear opt-out instructions. If a customer replies with STOP, the system immediately disables text messaging to that recipient in compliance with FCC and carrier rules.

Sales Summary: Overview & Date Filtering

The Sales Summary report provides an executive-level breakdown of your company's gross revenue, net revenue, tax collections, tips, finance charges, and promotional discounts across any custom date range. You can access this report via Menu > Customers > Sales Summary.

Date Filtering Methods

To view your performance metrics accurately under both cash and accrual methodologies, the report allows you to filter transactions using two distinct date modes:

  • Invoice Date (Accrual Basis): Evaluates financial events based on the date the invoice was officially generated. This mode provides visibility into invoiced business volume regardless of when the customer settles payment.
  • Payment / Refund Date (Cash Basis): Evaluates revenue strictly based on the exact date funds cleared or were refunded. This reflects actual cash flow movements into and out of your merchant and bank accounts.

Handling Incomplete Jobs

When generating reports filtered by Invoice Date, you can control how work in progress is recognized using the following toggle:

  • "Include paid, but incomplete jobs in the report below": Checking this box incorporates revenue from jobs where the customer has paid (e.g., upfront booking payments or advance deposits) even if technician crews have not yet marked the work order as completed.
Cross-Platform Impact:

Adjusting the Incomplete Jobs setting updates the calculations shown directly on your dashboard and within the Reports module.

Exporting Sales Data to Excel

You can export a high level sales report into an Excel-compatible spreadsheet for offline auditing, bookkeeping, or tax preparation:

  1. Select your preferred filtering mode (Payment/Refund Date vs. Invoice Date).
  2. Input your Start Date and End Date.
  3. Allow the on-screen ledger to refresh for your selected range.
  4. Click the Download button next to the date fields to export the raw data.

Sales Summary: Revenue, Taxes & Fees Breakdown

The report categorizes your revenue into granular line items, separating core service income from pass-through taxes, employee gratuities, and adjustments.

1. Sales & Discounts Breakdown

This section reports service and product revenue (excluding tips, taxes, and late fees):

  • All Sales (Taxable and Non-Taxable): Displays Gross Sales before Early Payment Discounts, itemized deductions for Early Payment Discounts, and the resulting Net Sales after Discounts.
  • Non-Taxable Sales: Separates non-taxable labor and materials from taxable totals to assist with filing net taxable returns.

*Note: Early payment discounts are always reported based on the payment or refund date, even when filtering by invoice date.

2. Employee Tips & Financing Fees

These components are tracked independently from company sales volume:

  • Employee Tips: Itemizes all customer gratuities collected. Tips are recognized on the payment/refund date to ensure accurate payroll distribution.
  • Financing Fees: Tracks secondary revenue collected from Interest Fees and Late Fees assessed on overdue invoices. These fees are also recognized based on the payment/refund date.

3. Jurisdictional Tax Liabilities

The Taxes section breaks down tax collections by jurisdiction (City, County, State/Province, and Federal/Country):

  • Displays the rule name, jurisdiction, rate percentage, and active/inactive status (e.g., "San Fran County Tax - California - 10.998% - Active").
  • Negative Tax Entries: Invoices that were refunded or voided within the selected date window appear as negative amounts (e.g., -$13.76) to accurately offset liability for that tax period.

4. Promotional Coupon Use

Lists every discount and promotional coupon code applied to orders during the period (e.g., 10PERC, 1500OFF), allowing you to audit campaign redemption rates and track promotional costs.

Tax Jurisdiction Reporting Disclaimer:

Please note that the formulas used by our software to calculate total sales and tax liabilities may differ from the specific reporting standards of your local tax jurisdictions. Always consult your accountant or CPA when preparing statutory filings.

Sales Summary: Transaction Drill-Down & Auditing

The Sales Summary report is fully interactive. Instead of presenting static numbers, it allows you to drill down into any high-level figure to inspect every individual transaction that comprises the total.

Drilling Down Into Totals

To inspect the underlying records for any line item (such as Gross Sales, a specific tax jurisdiction, or tips):

  1. Click directly on any blue dollar figure or total link on the summary report.
  2. The view refreshes to reveal an itemized transaction ledger specifically for that figure within your chosen date window.

Understanding the Drill-Down Ledger

The resulting transaction ledger details every supporting record:

  • Invoice ID: The internal reference code for the transaction (e.g., 063kdsfteq). Clicking the ID opens the full invoice or work order screen.
  • Customer: The client name associated with the invoice.
  • Invoice Date: The date the order was created or billed.
  • Status: Reflects the current collection state:
    • Due: Unpaid invoice contributing to accrual-based gross sales.
    • Paid Offline: Completed invoice settled via check, cash, or external card terminal.
    • Refund Successful: Reversed transactions displaying as a negative credit (e.g., -$344.00).
  • Amount: The exact subtotal contributed by that specific invoice to the summary metric.
Auditing Best Practice:

Use the drill-down feature at the end of each month or tax quarter to quickly investigate unusual refunds, verify large discounts, and validate your sales tax liability reports against merchant gateway deposits.

Inventory Management: Overview & Scope

The Inventory Management System automates the lifecycle of your products and materials—from initial purchase order and warehouse receiving to job consumption and final invoicing. By maintaining real-time unit costs, reorder alerts, and automated job deductions, the platform safeguards your profit margins and prevents job delays.

Plan Availability

The entire Inventory Management module is available to all accounts across both the Free Plan and the Premium Plan.

Core Capabilities

  • Automatic Job Deductions: Stock levels decrement automatically whenever a work order or job is marked complete, eliminating manual inventory ledger entries.
  • Demand Forecasting: Tracks materials allocated to upcoming jobs so you know exactly what needs to be ordered before arriving at the job site.
  • Low-Stock Safeguards: Flags items that fall below your custom minimum stocking thresholds directly on the item list.
  • Margin Protection: Dynamically calculates sales prices based on actual landed costs and flags fixed-price items whose margins dip below profitability.
  • Accounts Payable Verification: Compares vendor orders against physical receivings so you never pay a vendor invoice for items that haven't arrived.
Understanding Location Balances

The inventory system tracks aggregate, company-wide stock levels rather than real-time balance quantities per specific truck or bin. Requiring field technicians to manually log transfers between warehouse bins and vehicles before every service call introduces manual data-entry errors. However, you can still track transaction history by employee vehicle using Locations.

Vendors & Suppliers

Vendors represent the suppliers from whom you purchase materials, equipment, and consumables. Vendor profiles are used when issuing purchase orders, logging receivings, or recording bills and expenses.

Creating and Managing Vendors

  1. Navigate to Menu > Inventory > Vendors.
  2. Click Create Vendor.
  3. Enter the required Display Name and select the Currency. All other fields (contact details, addresses, tax IDs) are optional.
  4. Click Save.
QuickBooks Online Integration

The fields on the vendor creation form directly map to standard vendor records in QuickBooks Online, ensuring smooth synchronization when pushing bills and expenses.

Editing & Deactivation: All vendor details can be edited at any time. To preserve historical purchase orders and accounting audit trails, vendors cannot be deleted. If you discontinue business with a supplier, open the vendor's profile and set its status to Deactivated to prevent it from appearing in future purchase order forms.

Locations & Vehicles

Locations track where products are delivered when recording a receiving. Locations can represent physical facilities (e.g., Main Warehouse) or mobile service vehicles (e.g., John's Service Van).

Setting Up a Location

  1. Navigate to Menu > Inventory > Locations and click Create Location.
  2. Enter a descriptive name for the storage facility, warehouse, or truck.
  3. Assign an Employee (Optional): Select an employee from the dropdown if the location is a dedicated company vehicle.
  4. Click Save.

Note: Locations cannot be deleted once created, but they can be deactivated. Setting an assigned employee allows you to filter and audit all receiving activities tied to that team member inside the Inventory Explorer.

Categories & Combined Items

Categories group your inventory items for financial reporting, balance sheets, and invoice presentation. Categories also support subcategories for granular organization.

The "Combined Items" Feature

When billing a client for service jobs, listing dozens of minor hardware items (e.g., screws, fittings, wire connectors) can clutter quotes and invite unnecessary invoice disputes. The Combined Items toggle solves this:

  1. Navigate to Menu > Inventory > Categories and click Create Category (or edit an existing one, such as "Job Supplies").
  2. Enable the Combine Items switch and save.
  3. Assign your minor parts and consumables to this category.

How it appears on customer documents:

  • Customer View: The quote, work order, or invoice rolls all bundled items into a single category line item (e.g., "Job Supplies — $145.00"). The client sees only the total price, keeping documents clean and professional.
  • Internal Staff View: Authorized staff can expand the category group directly on the work order to review every individual part, quantity, and cost that makes up the total.

Item Configuration & Costing

Once your vendors, locations, and categories are in place, you can configure your inventory items. An item can represent physical Hardware/Inventory or billable Services.

To create a new item, navigate to Menu > Inventory > Items and click + Item.

Permanent Selections

While descriptions, stock levels, and markup rates can be updated anytime, the Valuation Method and Category Type (Inventory vs. Service) cannot be modified once an item is saved.

Valuation / Costing Methods

Your valuation method determines how costs move from your inventory asset account into Cost of Goods Sold (COGS) when items are used or sold:

  • First In, First Out (FIFO): Assumes the oldest units received are the first ones used or sold. Ending inventory is valued based on your newest purchases.
  • Last In, First Out (LIFO): Assumes the newest units received are the first ones used or sold. Useful for matching current rising replacement costs against current revenues.
  • Weighted Average Cost: Blends the cost of all available units in stock. Every unit removed from inventory is assigned the exact same average cost, smoothing out supplier price fluctuations over time.
  • No Costing: Disables cost and margin tracking for this item.

Pricing & Margins

  • Auto Markup: Automatically marks up your selling price based on current average unit cost. For example, if your average landed cost is $100 and you set an Auto Markup of 20%, quotes and invoices will automatically default to $120.00.
  • Fixed Price: Forces a set selling price on quotes and work orders. If an item's average cost rises above this fixed price, the system will display a margin warning on the item listing by highlighting the price in red.
  • Discount: Enter an optional percentage discount to apply to standard selling prices, including an optional expiration date.

Stock Controls & Accounting

  • Minimum Stock Level: Sets a baseline inventory threshold. Whenever on-hand inventory drops below this number, the item is highlighted at the top of your item list for urgent reordering.
  • Default GL Accounts (QuickBooks Online): Assign default accounts for Income, Expenses, Cost of Goods Sold (COGS), and Inventory Assets to automate financial synchronization.
  • Item Photos: Once an item is saved, click on the item from the list to upload photos of the hardware, manufacturer label, or parts diagram.

Purchase Orders

Before new inventory can enter your system, create a purchase order to track what has been requested from your supplier.

To log an order, navigate to Menu > Inventory > Items and click + Order.

  • Specify the Order Date, PO Number, Vendor, and line-item quantities.
  • Orders can be edited after creation to update order dates, PO numbers, vendor names, internal notes, and ordered quantities.
Important Order Rules
  • Orders do not email vendors: Creating an order inside the system logs it internally for receiving reconciliation; it does not automatically transmit purchase orders to external suppliers.
  • Orders cannot be deleted: If an order was entered by mistake, edit the order and set the ordered quantities to 0.
  • Adding forgotten items: You cannot add new item lines to an existing order once saved. If an item was missed, create a new order using the original PO number with a clear suffix (e.g., PO-10482 (2)).

Receivings & Landed Cost

When ordered items arrive at your warehouse or are delivered to a service vehicle, record a Receiving. Receivings officially increase your on-hand inventory balance and update your average cost.

To log delivery, navigate to Menu > Inventory > Items and click + Receiving.

  1. Select the outstanding purchase order.
  2. Specify the delivery date and the destination Location.
  3. Enter the quantities delivered and the calculated Cost Per Unit.
Multiple Deliveries Supported

Suppliers frequently fulfill orders across separate shipments. You can log as many partial receiving records as needed against a single purchase order until all items are accounted for.

Calculating True Landed Cost

To maintain accurate margins, unit costs entered during receiving should always represent the total landed cost in your domestic base currency. Your unit cost calculation should include:

  • Base invoice price of the item
  • Non-refundable taxes or self-assessed import fees
  • Proportional shipping and freight charges
  • Customs clearance, duties, and transit insurance fees

Editing a Receiving

If an entry error occurred during receiving, open the Inventory Explorer (Menu > Inventory > Items > Inventory), click the blue Receiving tag on the transaction, and click Edit Receiving. You can correct the quantity received and unit cost. Cost corrections apply immediately to all units currently remaining in stock.

Work Orders & Auto-Deductions

The inventory module synchronizes directly with your field service dispatching and billing:

  • Items Needed for Future Jobs: Adding inventory items to an active work order increments the "Quantity Needed" counter on the item list. This informs purchasing managers of stock requirements for upcoming appointments.
  • Automated Stock Reduction: Marking a work order as Complete automatically deducts the assigned quantities from your on-hand inventory and decrements the "Quantity Needed" counter.
  • Selling Out-of-Stock Items: You can add items to quotes and work orders even if the current on-hand balance is 0. The system will never drop on-hand stock below zero; instead, an audit note is appended inside the Inventory Explorer indicating that items were used prior to receiving entry.

On hand quantities, on order quantities, and quantities need for future jobs can be found by going to Menu > Inventory > Items

Adjustments & Write-Offs

During day-to-day operations, materials may be consumed internally (e.g., cleaning supplies used in your own office), damaged during transit, lost, or found during cycle counts. To reconcile physical counts with platform counts:

  1. Navigate to Menu > Inventory > Items and click + Adjustment.
  2. Select the item, adjustment type (e.g., write-off, found, internal use), quantity, and internal notes.
  3. Click Save.
Adjustment Audit Trail

Inventory adjustments cannot be edited or deleted once posted. All adjustments create an permanent record in the Inventory Explorer to ensure financial integrity.

Inventory & Order Explorers

1. Items Listing (Menu > Inventory > Items)

Your central operational dashboard. Displays active selling prices, on-hand balances, quantities on open purchase orders, and quantities needed for upcoming jobs. Clicking the blue Quantity Needed value instantly opens a listing of the specific work orders waiting for that item.

2. Inventory Explorer (Menu > Inventory > Items > Inventory`)

An audit log tracking every inventory addition, deduction, write-off, and sale across your workspace. Each entry displays the transaction date, quantity change, resulting unit cost, margin, linked purchase order, and source document (invoice, receiving, or adjustment). Filter records by:

  • Item, Category, SKU, Manufacturer, or Model
  • Transaction Type (Receiving, Invoiced, Write-off, Refund)
  • Location or Assigned Employee
  • PO Number, Receiving ID, or Invoice ID

3. Order Explorer (Menu > Inventory > Items > Orders)

Provides visibility into open vendor orders. Use the Order Explorer to verify whether all ordered quantities have arrived before releasing payment for vendor invoices.

Balances & Monthly Reporting

To inspect your balance sheet inventory value over time, navigate to Menu > Inventory > Balances.

  • Monthly Historical Snapshots: Displays inventory valuations as of the final calendar day of each month.
  • Category-Level Reporting: Summarizes total balance sheet asset values across product categories.
  • Item-Level Granularity: View on-hand quantities, ending inventory valuation, and average unit costs at the close of any historical monthly period to support tax filings and financial reviews.

Inventory Management FAQs

General

What is the scope of Blue Sail Agency's inventory management system?
Blue Sail Agency features a robust system for tracking purchases and movements of inventory. Our inventory system supports the tracking of orders, receivings, and inventory on hand. In addition, our system automatically tracks items that are needed for future jobs, the average cost of units on hand, and the real time selling prices of inventory on hand.
Who can use the inventory management system?
All users have access to the inventory module. It is accessible via both the Free Plan and the Premium Plan.
How will the inventory management system help me manage my inventory?
Blue Sail Agency's inventory management system features a number of checks and balances that will assist you in understanding issues with item pricing and inventory stock. The system will:
  • Eliminate manual record keeping by automatically decrementing your inventory on hand when a given job is completed
  • Prevent you from running out of stock by highlighting items whose inventory balances have fallen below a specified minimum inventory level
  • Help you to determine if you need to order additional inventory in the near future (based on items needed for future jobs in addition to items still on order)
  • Help you determine if you've received all ordered items before you pay vendor invoices
How will the inventory management system help me manage my margins?
Blue Sail Agency's inventory management system features a number of solutions that will help you track and improve your margins at an item level. These include:
  • Automated unit pricing based on grossed up, real time unit costs
  • Where a fixed selling price is indicated on an item, if this price falls below the average cost of the item, a warning will appear on the item list
  • Reporting capabilities that allow you to view how your margins are changing over time for individual items
  • Visibility on items that you've had to write-off due to damage, loss, etc.
What are the limitations of the inventory management system?
Currently, the inventory management system does not track inventory balances by location. This is because in order for item-location level balance information to be accurate:
  • Transfers between locations, including movement of inventory from a warehouse to employees' vehicles, would need to be manually entered in an accurate and timely manner.
  • Upon completion of each job, the source of inventory (i.e. location) would need to be manually set for each item that was used for the job. This would be especially important where there are multiple employees assigned to the job.
This type of manual data entry often missed, laborious, and prone to error. For this reason, our system doesn't support the tracking of item-location inventory balances.

Inventory Explorer

What is the Inventory Explorer?
The Inventory Explorer is a tool that provides information on additions and movement of inventory over time. Each record within the explorer links back to a source document, which could be a receiving, invoice, refund, or inventory adjustment. Transactions can be filtered by the following parameters:
  • Item
  • Transaction Type (eg. receiving, invoiced, write-off)
  • Location
  • Customer Information
  • Item Category
  • Item Description
  • Item Manufacturer
  • Item Model Number
  • Item Internal Notes
  • Item SKU
  • Vendor
  • Inventory Group
  • Purchase Order Number
  • Receiving ID
  • Transaction Notes
  • Work Order/Invoice ID

On each transaction, the quantity change, unit cost, and unit margin is clearly shown along with the purchase order that the item originated from.
How can I see the transactions that are related to an individual employee?
In order to see transactions by employee, please follow these steps:
  1. Within the menu, navigate to Inventory --> Locations and setup a location for the employee. When setting up the location, be sure to select the employee from the available drop down menu
  2. Within the Inventory Explorer, use the Location drop down menu to select an employee. This will provide you with a view of transactions that are related to this employee.

Item Configuration and Adjustments

What is a cost method and what cost methods are available for my inventory?
An inventory cost method controls how a financial system determines what costs to move out of your inventory account as items are sold or used.

Within our inventory management system, cost methods can be set by item. The cost method is set on an item at the time that the item is first setup.

There are 4 costing methods available when you setup an inventory item:
  • First In, First Out (FIFO) - Items that are received first are the first items to be removed from inventory upon their sale or use. The original cost of individual items is tracked and used in the computation of your ending inventory balance.
  • Last In, First Out (LIFO) - Items that are received last are the first items to be removed from inventory upon their sale or use. The original cost of individual items is tracked and used in the computation of your ending inventory balance.
  • Weighted Average Cost - The cost of an individual item is based on the average cost of items within the inventory pool. When an item is moved out of inventory, regardless of when that item was received, the unit cost will be the same as the average cost of all units in inventory.
  • No Costing - When this option is selected, no costs will be tracked for the item.

  • If the cost of your inventory changes over time, which is typically of most any inventory, the costing method that you can select can impact your margins and the calculated profitability of your business.
How can I change the cost method on an item?
The cost method is set on an item at time of creating that item. Once set, the cost method for an item (eg. FIFO) cannot be changed. If you'd like to change the cost method for an item, you'll be required to remove the inventory for the system and then add it back. To do this, please follow these steps:
  1. Process a 'write-off' adjustment for the balance of inventory on hand for this item. This will remove the inventory from the system.
  2. Deactivate the item.
  3. Create a new item for this model and specify the desired cost method at time of setup.
  4. Create a dummy order record for this item. The quantity on the order should be the quantity that you have on hand. Select 'Internal Adjustment' as the vendor. In the notes, mention that the order is required to support the change to a new cost method.
  5. Complete one or more receivings with the appropriate transaction dates/unit costs to enter the inventory back into the system at the correct cost.
What happens when I inactivate an item?
When you inactivate an item, it can no longer be selected when creating quotes, work orders, or invoices.

Orders

How do orders work within the inventory management system?
The inventory management system allows you to enter the orders that you've placed with your vendors and then track their progress. The general process for order entry and use is as follows:
  • Start by documenting the order that you've placed with your vendor
  • An order can be edited as needed including changes to the order date, P.O. number, vendor, and the quantities of items on the order
  • As items are received from the vendor, you'll have to enter a 'receiving' record for items that you've taken delivery of
  • The Order Explorer allows you to see past orders including items that have been ordered, but not yet received
  • The Order Explorer will assist you in understanding whether or not all items order have been received, which is useful for determining when you should pay vendor invoices
How can I delete an order?
Orders cannot be deleted. If you've entered an order into the system in error, just edit the order and mark ordered quantities as 0.
I've entered an order in the system, but forgot to add an item. What should I do?
Additional items cannot be added to an order when editing it. As a result, you'll need to enter a new order in the inventory management system for this missed item.

When creating the additional order record, you'll be required to enter a purchase order (P.O) number. In this scenario, you'll want to indiciate the original P.O. number, but add suffix to it. For example, if the original P.O. number was 12345, on the order that you enter into the system for the missed item, enter a P.O. number of 12345 (2) so that it's clear that this is part of P.O. 12345.

Receivings

What functionality does the receiving form offer?
The receiving form allows you to record the receipt/delivery of product. When recording the receipt of product, you can record the number of units received, their cost, and the date and location of the receiving.

Receiving entries will update your quantity of inventory on hand as well as the average cost of your inventory.
Can I process multiple receiving records for a given order?
Yes. You can process as many receivings as you'd like for a given order including multiple receivings that contain the same item.
How should I calculate the unit cost to be entered into the receiving form?

The unit cost entered should reflect the total landed cost of the item. You must calculate this using your country's base currency, regardless of the currency the vendor charges you.

Your calculation should consist of the base item price plus:

  • Any non-refundable taxes or taxes that need to be self-assessed.
  • The average cost of shipping and handling.
  • Any other applicable fees (such as customs, duties, or insurance).
One of my receivings contains an error. Can I fix this?
Yes, within the Inventory Explorer, you can locate the receiving. Click on the blue icon that reads 'Receiving' and then, on the Receiving detail page, you can click the "Edit Receiving" button at the top of the page.

Any per unit cost corrections that you make will only be applied to inventory items still within your inventory.

Quotes and Invoices

What documents can I add items to?
You can add items to quotes, work orders, and invoices from the list of inventory items that you've setup.
If the on-hand balance of an item is 0, can I still add it to a quote, work order, or invoice?
Yes, you can. When a job is marked as complete, the balance of inventory on hand will never be taken below 0. Within the Inventory Explorer, notes will be appended to transactions where the number of units on the invoice was greater than the number of units that were actually on hand.
How does the inventory management system know what items my company needs for future orders?
When you create a work order with inventory items on it, the balance of items needed for future orders goes up. When a work order is marked as completed, the balance of items needed for the future goes down.
What impact do refunds and cancelled invoices have on my inventory balances?
When a payment is refunded (where the job has been marked as completed) or an invoice is cancelled, the units from those documents will be added back into your inventory. This will be visible within the Inventory Explorer.
I've configured an item's pricing to be 20% over cost. How does this work?
When adding this item to a quote, work order, or invoice, the correct selling price will automatically populate the form based on the cost of the item times 120%, in this example. If you wish, you can override the price on the quote, work order, or invoice with any price you wish.
I've added a number of items to a work order such as small supplies (eg. nails), but I don't want the customer to see this level of detail on the work order. How can this issue be addressed?
The inventory management system allows for items to be grouped on quotes, work orders, and invoices such that the customer can see the total price of those items, but not the individual items or quantities that make up that total. To achieve this, please follow these steps:
  1. Within the menu, select Inventory --> Categories. Create a category for this grouping of items. A common category name for grouped inventory is 'Supplies'. When creating this category, enable the 'Combine Items' switch.
  2. Within each of the items that you wish to be grouped on the work order, edit those items and change their category to the new category that you've just created (eg. 'Supplies').
  3. Now, when viewing the work order with these items, you'll noticed that they are grouped under a common heading (eg. Supplies). You'll see the total price that the customer will have to pay for these supplies, but item level detail will not be shown.

When a customer is viewing the work order, they will not be able to expand the category in the way that you can. Employees, however, will be able to expand the grouped category to see the items within it (provided that you've given them access to see work orders).
I processed a refund, but customer is keeping the items on the invoice. What do I do?
When an invoice that has been paid and marked complete is refunded, our system assumes that you've received the items back from the customer. If the customer is keeping the items even though they've been refunded, you'll be required to process an inventory adjustment so that these items are removed from the inventory management system.

QuickBooks Online Integration: Architecture & Connectivity

Blue Sail Agency provides an enterprise-grade, bi-directional financial integration with QuickBooks Online (QBO). The system automates journal entries, tracks receivables, posts landed inventory liabilities, and manages revenue recognition so your books balance without manual double entry.

Sub-System Architecture: Tenthbase

Tenthbase is the dedicated accounting subsystem of Blue Sail Agency operating over the secure domain tenthbase.com. It connects directly to Intuit's QuickBooks Online API while residing on the exact same servers, database, and codebase as Blue Sail Agency. It is governed by identical Terms and Conditions, Privacy Policies, and cryptographic data security standards.

Core Operational Principles & Limitations

  • QuickBooks Online Only: Integration is strictly built for QuickBooks Online. QuickBooks Desktop (Pro, Premier, Enterprise) is not supported.
  • Strict 1-to-1 Company Relationship: A single QuickBooks Online company instance can be connected to only one Blue Sail Agency workspace at any time. Multi-tenant sharing of a single QBO company across workspaces is blocked.
  • Source of Truth: Blue Sail Agency serves as the operational authority for job scheduling, work orders, quotes, customer data, and physical inventory stock levels. QuickBooks Online serves strictly as the general ledger and financial reporting ledger.
Critical Warning: Switching QuickBooks Companies

If you disconnect your account and reconnect to a different QuickBooks company instance:

  • All existing linkages between configuration objects (Taxes, Customers, Vendors, Item Categories, and Items) are severed immediately.
  • You must navigate to Menu > Profile > Accounting > Pending Records and click Upload to push your configuration into the new QBO company.
  • Past transactional records (historical invoices, payments, credit memos, and journal entries) previously synced to the old company cannot be synced to the new company.
  • If you have a large catalog of items and customers, allow extra time for the re-linking script to process.

Pre-Sync Setup & Settings

Before initiating data synchronization, complete the following mandatory preparatory steps across both QuickBooks and Blue Sail Agency.

Step 1: Disable Automatic Late Fees in QuickBooks Online

If you use our platform's Payment Terms to assess late fees or finance charges, you must disable automatic late fee calculations in QBO. Failing to do this will cause duplicate fees to post to customer statements:

  1. Log into your QuickBooks Online dashboard as an Administrator.
  2. Click the Gear icon (⚙) in the top-right header and select Account and Settings.
  3. Navigate to the Sales tab in the left sidebar.
  4. Click the Late fees section to expand it.
  5. Toggle the switch for Default charge applied to overdue invoices to Off.
  6. Click Save, then click Done in the bottom right corner.

Step 2: Configure Platform Integration Settings

Navigate to Menu > Profile > Accounting > Integration Settings to configure synchronization behavior:

  • Default GL Account Dropdowns: Map your accounts for Accounts Receivable, Accounts Payable, Sales/Income, Inventory Assets, Cost of Goods Sold (COGS), and Unearned Revenue.

    Note: If any account dropdown is empty, configure or pull the account via Menu > Profile > Accounting > View GL Accounts.

  • Auto-Deposit Payments to Selected Bank Account:
    • Checked (Recommended): Payments collected in Blue Sail Agency automatically clear into the selected bank account (e.g., Operating Checking).
    • Unchecked: Payments post to QuickBooks' standard Undeposited Funds clearing account, requiring manual deposit grouping in QBO.
  • Integration Effective Date: Establishes a historical synchronization boundary. No transaction with a transaction/GL date prior to this calendar date will be transmitted to QuickBooks.

Importing Data from QBO

To populate your workspace with existing financial configuration and contacts without manual data entry, use the data import hub located at Menu > Profile > Accounting > Import data.

Supported Import Elements

  • Customers: Imports existing customer records containing complete profile records into your CRM.
  • GL Accounts: Imports your current Chart of Accounts directly from QuickBooks Online into the platform's ledger catalog.
  • Payment Methods: Imports all active payment channels (credit cards, cash, bank checks, ACH) configured in QuickBooks.
Best Practice: Post-Connection Initialization

Run these three imports immediately following your initial connection to QuickBooks Online. You can re-run the import process as often as needed; the importer will safely bring in net-new records without duplicating existing profiles or accounts.

Customer Import Validation Rules

To ensure database integrity, a customer profile in QuickBooks must satisfy the following minimum requirements to be imported:

  • First & Last Name: Must be present and not already exist in the platform.
  • Unique Email Address: Must not match an existing customer profile.
  • Primary Phone Number: Must be an 10 or 11-digit number entered in the primary Phone field (the mobile phone field is not evaluated).
  • Billing Address: Complete street address, city, state/province, and postal code.

GL Accounts & Payment Methods

To eliminate double entry, Blue Sail Agency provides synchronized management for both your Chart of Accounts and Payment Methods.

Managing Chart of Accounts (GL Accounts)

Navigate to Menu > Profile > Accounting > View GL Accounts to view all general ledger accounts currently synchronized with QuickBooks Online.

  • Refreshing Accounts: If you add or update an account directly in QuickBooks Online, click the Refresh list button to instantly re-query QBO and update the platform's account catalog.
  • Creating a GL Account: Click Create GL account. Completing this form creates the account in both Blue Sail Agency and QuickBooks Online simultaneously, ensuring your integration mappings always match.

Managing Payment Methods

Navigate to Menu > Profile > Accounting > View Payment Methods to review supported tender types.

  • Refreshing Methods: Click Refresh list to pull any newly added tender types or payment processors from QuickBooks Online.
  • Creating a Payment Method: Click Create Payment method. This registers the new method across both platforms at once, making it immediately available on invoices, terminal checkouts, and recurring billing.

Data Sync Matrix (In vs. Out of Scope)

To preserve clean balance sheets and avoid polluting your ledger with non-financial data, the sync engine strictly categorizes records as in-scope or out-of-scope.

Data Domain Pushed to QuickBooks Online Not Pushed to QuickBooks Online
Sales & Revenue Invoices that are not $0, Credit Memos, Voided/Cancelled Invoices. Quotes, Work Orders, Invoices with a $0 total.
Payments & Banking Invoice Payments, Refunds, Payment Methods. ----
Inventory & AP Bills, Purchases/Expenses, Inventory Asset JEs, Vendors. Purchase Orders (no immediate financial impact), $0 JEs
Configuration & Tax Item Categories, Items, Chart of Accounts (GL), Tax Jurisdictions. ----

Inbound Sync Boundaries (QBO to Blue Sail Agency)

  • Automatic Inbound Sync: When an invoice is paid in full inside QBO, or when a net-new customer is added in QBO, the records push into Blue Sail Agency within 1 to 5 minutes.
  • Manual Inbound Pull: New Customers, GL Accounts, and Payment Methods can be manually pulled at any time from the Import Data screen.
  • Strictly Blocked Inbound Changes: Edits made in QuickBooks to existing customer profiles, manual invoices, work orders, quotes, credit memos, items, categories, vendors, taxes, or refunds never sync back to Blue Sail Agency. All document modifications must originate in Blue Sail Agency.

Sync Timers & Pending Records

Automated Synchronization Queues

  • Supporting Objects (Instant): Customers, items, vendors, categories, and tax codes sync to QuickBooks immediately upon being saved.
  • Financial Documents (10-Minute Cooldown): Invoices, credit memos, payments, refunds, and journal entries are placed on a 10-minute hold following their most recent update. If an invoice is re-opened and updated within that window, the 10-minute stabilization timer restarts. This prevents partial, in-progress billing updates from transmitting prematurely.
  • Expense Entries: Approved purchases and bills synchronize within a few minutes of approval.

Managing Pending Records

To inspect transactions waiting in the queue, navigate to Menu > Profile > Accounting > Pending Records. Clicking Upload immediately bypasses countdown timers and forces all eligible records to transmit to QuickBooks.

Why Unchanged Invoices Re-Appear in Pending Records

Each time an unpaid invoice is viewed by an administrator or opened by a client via the online Client Portal, the system saves the record to refresh payment tokens and dynamic totals. This save safely re-queues the invoice into Pending Records to guarantee synchronization parity. To permanently lock an invoice and prevent it from syncing further, uncheck the Sync to QuickBooks Online checkbox located directly below the invoice.

Syncing Historical Transactions

To push historical accounting activity into a newly connected QuickBooks account:

  1. Navigate to Menu > Profile > Accounting > Integration Settings.
  2. Set the Integration Effective Date to the desired historical date.
  3. Navigate to Menu > Profile > Accounting > Pending Records and click Upload.

Note: Zero-dollar invoices ($0), whether active or voided, will be excluded from the batch upload.

Tax Sync & Discrepancies

Sales taxes configure natively in Blue Sail Agency across city, county, state, country, and municipal rates. When created or adjusted, tax entities publish automatically to QuickBooks Online.

Visual Grouping in QuickBooks

On invoices pushed to QuickBooks, multiple taxes appear aggregated as a single line item on the customer-facing view. This is standard QuickBooks behavior; QBO maintains the underlying financial breakdown across individual tax liability balance sheet accounts internally.

Deactivating Taxes

If an automated tax is accidentally marked inactive inside QuickBooks Online, there is no negative impact on the integration. Future invoices continue to post with this tax, and tax liability balances increment correctly inside your QuickBooks reports.

Resolving Mixed-Eligibility Tax Calculation Discrepancies

A mathematical variance can occur when an invoice contains multiple items with mixed tax eligibility (e.g., Item A is subject to State and County tax, while Item B is subject only to State tax):

  • Our Platform: Calculates tax line-item by line-item based on specific product taxability rules.
  • QuickBooks Online: Calculates taxes based on the cumulative invoice subtotal.

In mixed-tax scenarios, QuickBooks may calculate a higher total sales tax than what was charged to the customer. When the client pays the correct invoice total, the payment syncs to QuickBooks, but the invoice in QBO will remain open and underpaid by the amount of the tax discrepancy.

The 3-Step Reconciliation Procedure:

  1. Step 1: Calculate the Discrepancy Amount
    Open Menu > Profile > Accounting > Document Reconciliation. Locate the invoice. The figures under the This Platform line represent the true, legally binding transaction. Calculate the exact dollar difference between the two systems (e.g., $3.00).
  2. Step 2: Create a Credit Memo in QuickBooks
    In QuickBooks Online, create a Credit Memo for the customer for the exact difference amount ($3.00) and apply it to the open invoice. This zeroes out the open balance, marking the invoice as Paid/Closed.
  3. Step 3: Post an Adjusting Journal Entry in QuickBooks
    Rebalance your General Ledger in QuickBooks to clear the phantom tax liability and reallocate the funds to revenue:
    Debit:  Sales Tax Payable (Difference amount, e.g., $3.00)
    Credit: Sales / Revenue Account (Difference amount, e.g., $3.00)

Note: The Document Reconciliation report will continue to flag the initial variance as a permanent historical audit footprint; this is expected behavior.

Inventory, Receivings & COGS

Blue Sail Agency maintains independent, real-time inventory management. Inventory quantities on hand are never pushed to QuickBooks Online.

Why QOH is Not Sent to QuickBooks

All inventory items are synced to QuickBooks Online classified as Non-Inventory or Service items. If items were classified as "Inventory" in QuickBooks, QBO would execute automated dual-accounting entries for cost of goods sold, resulting in duplicate entries as our platform already calculates and pushes COGS/Inventory entries to QBO.

Accounting for Inventory Deliveries (Receivings)

When stock arrives and a Receiving is recorded in Blue Sail Agency, the platform increments the on-hand quantity and pushes a balanced journal entry to QuickBooks:

Debit:  Inventory Asset Account (Item account or global setting fallback)
Credit: Accounts Payable (Configured AP account)

Processing the Corresponding Vendor Invoice in QuickBooks

Because the material cost has already been credited to Accounts Payable via the automated receiving journal, entering the full vendor bill in QuickBooks would duplicate your AP liability. When processing the physical vendor bill in QBO, enter a transaction for the recoverable taxes only:

Debit:  Tax Receivable / Input Tax Credits (Recoverable Tax Amount)
Credit: Accounts Payable (Vendor)

Inventory Journal Exclusions

The following transactions will never transmit journal entries to QuickBooks:

  • Zero-dollar ($0) journal entries.
  • Journal entries for "Service" category inventory items.
  • Stock adjustments received under the "Internal Adjustment" dummy vendor.
  • Journals carrying a GL date prior to the Integration Effective Date.
  • All inventory movements when Cash Basis Accounting is enabled.

Journal Entry Explorer

To inspect and audit all automated general ledger activity generated by the system, navigate to Menu > Profile > Accounting > Journal Entry Explorer.

Audit Capabilities & Multi-Dimensional Filters

  • Time Period: Filter ledger records across custom date spans or monthly accounting cycles.
  • Sync Status: Filter entries by their synchronization state with QuickBooks (Synced, Pending, or Sync Errors).
  • Targeted Search: Quickly locate specific entries by typing a Reference Number, exact Dollar Amount (debit or credit), or Customer Name.

Interactive Source Document Drill-Down

The Journal Entry Explorer is fully interactive. Clicking the blue Reference Number on any journal entry instantly opens the underlying source transaction that generated the entry (such as an inventory receiving, invoice, inventory write-off adjustment, or customer refund).

Built-In Synchronization Diagnostics

If a journal entry has not synchronized with QuickBooks Online, the explorer displays an on-screen diagnostic explanation directly on the record. It flags whether the entry is held due to Cash Basis mode settings, dates prior to your Integration Effective Date, $0 threshold rules, or active API validation errors.

Unearned vs. Earned Revenue Engine

To adhere to strict accrual accounting principles, the platform provides an automated revenue engine that tracks deferred income without manual bookkeeping.

Unearned Revenue (UR) Entries

When a client pays an invoice tied to a work order that is not yet marked as "Completed", the payment is recognized as a liability. The system automatically creates an Unearned Revenue journal entry in QBO labeled with the prefix UR-[OrderID]:

Debit:  Sales / Income Accounts (Removes premature revenue from P&L)
Credit: Unearned Revenue Liability Account (Records customer deposit liability)

Earned Revenue (ER) Entries

The moment an administrator or field technician marks that work order as Completed, an Earned Revenue entry is transmitted to QBO labeled with the prefix ER-[OrderID]:

Debit:  Unearned Revenue Liability Account (Clears balance sheet liability)
Credit: Sales / Income Accounts (Officially recognizes earned income on P&L)
Granular Journal Auditing

Each multi-item work order generates an itemized journal entry in QuickBooks. Every line item provides full transaction metadata: Customer Name, Order ID, Item Description, Quantity, and Price. In the Journal Entry Explorer, you can look up any entry by searching the Order ID, the exact document number (e.g., UR-1048), or exact debit/credit dollar values.

Discounts, Late Fees & Tips

Early Payment Discounts

When a customer pays an invoice early and claims an eligible payment terms discount:

  • The platform automatically generates a Credit Memo in QuickBooks labeled with the invoice ID plus _CM (e.g., cifhw5d7bp_CM).
  • The Credit Memo is applied directly to the invoice balance, accompanied by an automated $0 clearing payment.
  • Prorated Tax Handling: If the order contains both taxable and non-taxable products, the discount is proportionally prorated across items to ensure tax credits apply strictly to taxable amounts.
  • Note: Minor 1-cent penny differences may appear in reconciliation due to rounding across two separate QBO records (Invoice + Credit Memo).

Interest & Late Fees

Overdue interest and late fees accrue daily within Blue Sail Agency, but are not pushed to QuickBooks while unpaid to protect closed accounting periods from unauthorized updates:

  • When the customer pays the overdue bill, the platform creates an independent invoice in QuickBooks for the fee amount, marked with the suffix _INT (e.g., cifhw5d7bp_INT).
  • The transaction and GL dates for the _INT invoice are set to the payment date.
  • Interest and late fees are treated as non-taxable. If your jurisdiction requires tax on late fees, manage them outside of this module.
  • If your business requires daily accrual of earned interest or late fees before payment, perform manual journal entries in QBO at month-end to accrue for these transactions.

Employee Tips Accounting

Customer tips collected on work orders and invoices follow distinct accounting rules:

  • Sync Upon Payment: Tips are sent to QuickBooks only when the invoice is actually paid. Tips are recognized strictly on a cash-collected basis.
  • Distinct Invoice Generation: Tips post as an independent invoice in QuickBooks assigned the original invoice number plus _TIP (e.g., cifhw5d7bp_TIP), dated the day payment occurred.
  • Tax Exemption: Employee tips are non-taxable and are excluded from sales tax calculations.
  • Immediate Recognition: Tips are never deferred to Unearned Revenue; they post directly to employee tip liability accounts regardless of whether the physical work order is complete.

Expenses, Receipts & Job Costing

The Expenses module (accessible on the Premium Plan) allows managers to record company expenses, upload physical receipts, and allocate job costs.

Transaction Types: Purchases vs. Bills

  • Paid / Purchase: Expenses settled immediately out-of-pocket using cash, debit, or corporate credit cards. Pushes to QBO as an Expense/Purchase transaction.
  • Still Owing / Bill: Invoiced expenses received from suppliers with payment due in the future. Pushes to QBO as an open Bill under Accounts Payable.

Split Ledger Lines & Customer Job Costing

Use the Breakdown section to split a single receipt across multiple GL expense accounts (e.g., $100 to Materials, $5 to Taxes). You can also associate breakdown lines with specific customer work orders, which will support future job costing functionality on our platform. Note: Linking an expense to an order is for internal job profitability tracking only; it will not bill the charge to the client's invoice.

Receipt Attachments

  • Supports JPEG, JPG, PNG, and PDF formats.
  • Maximum of 10 attachments per transaction; each individual file must be under 20MB.
  • Attachments sync directly to QuickBooks and attach to the corresponding Purchase or Bill.
  • Note: Attachment upload failures do not log errors in the Error Manager; inspect the file list on the expense record to check attachment sync status.

Editing, Exclusions & Duplication Safeguards

  • Record Immutability: To preserve accounting audit trails, expenses cannot be deleted. If an error occurs, mark the expense as Excluded in Blue Sail Agency (removing it from platform metrics), delete the matching Bill/Purchase in QuickBooks, and create a new expense record.
  • Duplicate Reference Prevention: The platform blocks creation of expenses containing an existing Reference Number (case-insensitive). However, QuickBooks Online does not enforce this restriction; avoid entering an expense in both systems manually.

Cash vs. Accrual Accounting Modes

You can set your accounting methodology under Menu > Profile > Accounting > Integration Settings.

Cash Basis Mode

Income is recognized only when cash is received, and expenses are recognized only when cash is disbursed:

  • All inventory receiving journals and COGS transfers to QuickBooks are suppressed.
  • Unearned Revenue (UR) and Earned Revenue (ER) reclassification entries are disabled.
  • The Pending Records queue and Error Manager ignore all inventory and revenue accrual entries.

Accrual Basis Mode

Revenue is recognized when earned, and expenses are recognized when incurred. All inventory valuations, AP payables, and UR/ER journal entries continuously transmit to QuickBooks.

Switching Accounting Methods

If you switch from Cash Basis to Accrual Basis, historical journal entries that were previously held back will suddenly populate your Pending Records queue. To avoid flooding QuickBooks with obsolete entries, define an Integration Effective Date prior to switching methods, then review and click Upload.

Error Manager & Diagnostics

When a transaction fails to synchronize due to QuickBooks validation errors, an alert is logged in the Error Manager (Menu > Profile > Accounting > Error Manager).

Automated Retries & Error Resolution

  • Automated 10-Minute Retry: The system automatically re-attempts failed transactions once, 10 minutes after initial failure. If successful, the alert clears automatically.
  • Manual Retry: After correcting the underlying issue in QuickBooks or Blue Sail Agency, open the Error Manager and click Retry. If successful, the item is cleared.
  • Marking as Reviewed: Moves the item into the Reviewed Errors list. This is purely an administrative archive to record internal notes; it does not re-attempt synchronization or fix the record in QBO.

Common Integration Errors & Solutions

1. "The account period has been closed"
Cause: The transaction date falls within a closed reporting period in QuickBooks.
Solution: Consult your accountant to temporarily unlock the closed books period in QuickBooks Online under Account and Settings > Advanced > Close the books, then click Retry in the Error Manager.

2. "Object Not Found / Record Deleted or Inactive"
Cause: An associated customer, vendor, tax, or GL account was deactivated in QuickBooks.
Solution: Reactivate the record inside QuickBooks Online and click Retry in the Error Manager.

3. "Parent Category Hierarchy Lost"
Cause: A parent category was deleted and re-created in QuickBooks, severing subcategory links.
Solution: Open each subcategory in Blue Sail Agency and click Save (without making changes). This resends the category structure and restores the parent-child relationship in QBO.

Our Quickbooks Online integration was built with an intense focus on the minimization of integration errors. As a result, you should see these only in rare and exceptional cases. If you see an unexpected error or don't know how to resovle an integration error, please reach out to our Support Team as soon as possible and we'll investigate the issue for you.

Document Reconciliation Tool

The Document Reconciliation Tool (Menu > Profile > Accounting > Document Reconciliation) provides a visual, side-by-side audit of all billing records between Blue Sail Agency and QuickBooks Online. It is an essential audit to run prior to closing your monthly books.

Reconciliation Columns & Visual Indicators

The reconciliation audits three core financial values for every transaction: Invoice Total, Amount Owing (Balance), and Sales Tax.

  • Verified Live Data: Rows labeled "QuickBooks" display data pulled directly and live from QuickBooks Online via API. The platform does not assume or cache this information, guaranteeing that you are reviewing QBO data.
  • Red Discrepancy Highlighting: If a discrepancy exists between our platform and QuickBooks for any figure, that specific column is highlighted in red.
  • Interactive Explanations: Clicking the red question mark icon () opens a diagnostic window where the system explains the underlying cause of the variance (e.g., subtotal tax rounding or missing credit memos).
  • Targeted View Filtering: Use the view filter at the top of the table to toggle between All Documents or Only Documents with Differences for efficient reconciliation.

Rules of Engagement & Synchronization Safeguards

  1. Never Create Invoices in QuickBooks: Invoices must always originate in Blue Sail Agency. Creating an invoice in QBO for work tracked in the platform creates duplicates and misstates income.
  2. Voiding Payments in QuickBooks: If an invoice was marked as paid via QBO sync, voiding or deleting that payment inside QuickBooks will not unmark the invoice as paid in Blue Sail Agency.
  3. Partially Paid Invoices: If an invoice is partially paid in QuickBooks, manually marking the invoice as paid inside Blue Sail Agency will force the QuickBooks invoice to fully paid.
  4. Missing Due Dates: If an invoice is generated without an explicit Due Date, QuickBooks Online automatically sets the due date to the Transaction Date plus 1 calendar month.
  5. Manual QBO Deletions: If you delete an invoice, payment, refund, or journal entry directly inside QuickBooks, the platform will never resend it. The deletion will be highlighted as a missing record exception in the Document Reconciliation report.
  6. Stripe Reference Truncation: Stripe Charge and Refund IDs are automatically truncated to their last 21 characters in QuickBooks to comply with Intuit field limits.

QuickBooks Online Integration FAQs

Blue Sail Agency and Tenthbase make QuickBooks Online integration seamless. We automate your data entry to ensure accuracy and eliminate duplication. Verify your records with our visual reconciliation tool, and manage any exceptions via our user-friendly Error Manager.

General

What is Tenthbase?
Put simply, Tenthbase is a sub-system of Blue Sail Agency that just runs on a different web domain (i.e. tenthbase.com).

Tenthbase allows you to connect your Blue Sail Agency account to QuickBooks Online.

Tenthbase runs on the same server, codebase, and database as Blue Sail Agency and is governed by Blue Sail Agency's Terms and Conditions and Privacy Policy. The security measures that Blue Sail Agency uses to protect your data are identical to those used by our Tenthbase system.

In-Scope Transactions

What objects are pushed to from Blue Sail Agency to QuickBooks Online?
The following objects are pushed from Blue Sail Agency to QuickBooks Online:
  • Invoices
  • Credit Memos
  • Payments
  • Refunds
  • Cancelled Invoices (i.e. Voids)
  • Tax objects for city, county, state, country and misc. taxes
  • Customers
  • Vendors
  • Item Categories
  • Items
  • Journal Entries
  • GL Accounts
  • Payment Methods
  • Bills
  • Purchases

Please note that when 'Cash Basis Accounting' is selected within the Integration Settings page, Journal Entries related to inventory and unearned/earned revenue will not be sent to QuickBooks.
What transactions are pushed from QuickBooks Online to Blue Sail Agency?
The following transactions are automatically pushed from QuickBooks Online to Blue Sail Agency:
  • New customers
  • Payments on invoices where the invoice has been fully paid
What data can be manually pulled from QuickBooks into Blue Sail Agency?
The following data elements can be manually pulled from QuickBooks into Blue Sail Agency:
  • New customers
  • GL Accounts
  • Payment Methods

Out-of-Scope Transactions

What transactions are not pushed from Blue Sail Agency to QuickBooks Online?
The following transactions are not pushed from Blue Sail Agency to QuickBooks Online:
  • Quotes
  • Work orders
  • Requests for quotes
  • Invoices with a total of $0
  • Purchase orders
These transactions are not sent to QuickBooks Online as they do not have a financial impact to your Income Statement or Balance Sheet.
What transactions are not pushed from QuickBooks Online to Blue Sail Agency?
The following transactions are not pushed from QuickBooks Online to Blue Sail Agency:
  • Customers updates that are added to QuickBooks
  • Invoices, work orders, and quotes created on QuickBooks
  • Credit memos created on QuickBooks
  • Updates to invoices, work orders, and quotes that originate on QuickBooks
  • Updates to tax objects on QuickBooks
  • Refunds initiated on QuickBooks
  • Purchase orders created on QuickBooks
  • Items created on QuickBooks
  • Item categories created on QuickBooks
  • Vendors created on QuickBooks

Syncing

What do I need to do to prepare my QuickBooks Online account for syncing to and from Blue Sail Agency?
Prior to syncing any data to QuickBooks, if you're using the Payment Terms functionality on Blue Sail Agency, you'll want to disable automatic late fees within QuickBooks Online. If you do not do this, invoices sent to QuickBooks may have duplicate interest and late fees assessed on them.

  • Log in to your QuickBooks Online dashboard.
  • Click the Gear icon (⚙) in the top right corner.
  • Select Account and settings.
  • Navigate to the Sales tab in the left-hand menu.
  • Find the Late fees section and click on this section.
  • Toggle the switch for Default charge applied to overdue invoices to Off.
  • Click Save and then Done in the bottom right hand corner of the screen.

Also, before transactions can be sent from Blue Sail Agency to QuickBooks Online, you'll have to complete the 'Integration Settings' page on our system (Accounting Dashboard Integration Settings). When completing this page, if you notice that certain account dropdown selections are blank, you'll need to setup these accounts by going to the Accounting Dashboard View GL Accounts Create GL Account.
How do transactions get pushed to QuickBooks Online?
Financial Objects
Objects such as invoices, payments, refunds, and journal entries are automatically sent to QuickBooks 10 minutes after their last update. Expense records may be sent within a few minutes.

Supporting Objects
Objects such as customers, items, taxes, and vendors are pushed immediately to QuickBooks after creation or edit.

You can manually push pending objects to QuickBooks at any time by going into menu Accounting Pending Records and by clicking “Upload”
Within the Pending Records screen, I see invoices listed that have not recently been updated. Why are these scheduled to be sent to QuickBooks?
Each time you or a customer opens an unpaid invoice on our platform, the database record is saved. This save triggers to the record to be resent to QuickBooks. This process flow ensures that the data in QuickBooks ties to this platform.

To prevent further syncing of an invoice to QuickBooks, uncheck the "Sync to QuickBooks Online" checkbox immediately below the invoice.
How long does it take for QuickBooks Online transactions to be reflected in my Blue Sail Agency account?
It can take as little as 1 minute and up to a few minutes for a transaction (ie. payment or new customer) to be reflected in your Blue Sail Agency account.
How can I push historical Blue Sail Agency transactions to QuickBooks Online?
At the time of connecting your QuickBooks account to your Blue Sail Agency account, you may already have a lot of financial data in your Blue Sail Agency account. To push all this historical information to QuickBooks, follow these steps:
  • Within the Integration Settings page (menu Accounting Integration Settings), set the 'Integration Effective Date' to control which transactions will be sent to QuickBooks
  • Then, go into menu Accounting Pending Records and click “Upload”
Please note that when pushing past records to QuickBooks, invoices, both voided and non-voided, that are $0 will not be sent.
How do I stop an invoice and its journal entries from syncing to QuickBooks?
To prevent an invoice and its related journal entries from syncing, uncheck the 'Sync to QuickBooks Online' box when viewing the specific invoice. This is useful if you need to manually adjust taxes in QuickBooks and want to prevent your changes from being overwritten by future updates.

Note: Invoices usually sync immediately upon creation, so disabling this switch primarily prevents future updates from being pushed to QuickBooks. Payments processed directly in QuickBooks will still sync back to your Blue Sail Agency account regardless of this setting.
What does the 'Auto-deposit payments to selected bank account' setting do?
This setting can be found in the Integrations Settings page.

When checked, this setting automatically deposits payments processed in your Blue Sail Agency account to the QuickBooks Online bank account selected (eg. 'Checking'). When not selected, payments will automatically land in your 'Undeposited Funds' account on QuickBooks Online. The 'Undeposited Funds' account is automatically created when you sign up for QuickBooks Online.
If I make an update to an invoice on Blue Sail Agency that has already been sent to QuickBooks Online, will that update be sent to QuickBooks Online?
Yes, updates to unpaid invoices that you make on Blue Sail Agency will be automatically sent to QuickBooks Online.
Does Blue Sail Agency connect to QuickBooks Desktop?
No, Blue Sail Agency is only integrated with QuickBooks Online.
What happens when I change the QuickBooks company instance that I’m connected to?
When you change the QuickBooks company that you're connected to, the association between configuration records in Blue Sail Agency and QuickBooks is removed. This includes taxes, customers, vendors, item categories, and items. In order to sync these items to QuickBooks, go into menu Accounting Pending Records and click 'Upload'.

If you change your QuickBooks company instance, transactional elements such as past invoices, credit memos, payments, and journal entries that have already been synced to a company in QuickBooks will not be synced to the new company that you've connected to.

Taxes

How is the syncing of taxes handled between Blue Sail Agency and QuickBooks Online?
When you create tax configuration for a city, county, state, country, or 'other' tax on Blue Sail Agency, it will be sent to QuickBooks automatically. When you change certain details about a tax, such as its name or tax rate, a new tax object will be created and automatically sent to QuickBooks Online.

In order to ensure proper syncing of taxes between Blue Sail Agency and QuickBooks, there is no need for you to create or update tax objects on QuickBooks. Blue Sail Agency handles this automatically and seemlessly so that your invoices and tax liability accounts in QuickBooks contain the correct amounts.
What should I do if I need to update a tax rate?
If the tax rate for one of your jurisdictions has changed, you should update the tax rate within your Blue Sail Agency account. This will create a new tax object, which will automatically be sent to QuickBooks.
What happens if I accidentally deactivate a tax in QuickBooks that was sent from Blue Sail Agency?
There will be no impact. Invoices sent to QuickBooks will still contain this tax and the total tax on the invoice will still show up correctly. Within your tax liability reports on QuickBooks, the balance of this tax will still increment as desired as additional invoices post to QuickBooks that contain this tax.
For invoices that originated on Blue Sail Agency, within QuickBooks, several taxes appear as one line item on the invoice. Why?
This is standard behavior for QuickBooks integrations. While taxes appear as a single line item on the invoice, QuickBooks preserves the correct breakdown internally. This is strictly a visual difference.
Why is there a difference between the tax calculated in the system versus what appears in QuickBooks?

This discrepancy occurs due to the different ways the two platforms calculate tax:

  • QuickBooks: Typically calculates tax based on the invoice subtotal.
  • Our System: Calculates tax based on specific line-item eligibility and your specific tax configurations.

When an invoice contains multiple items with mixed tax eligibility (some taxable, some exempt) where there are multiple taxes on the invoice, QuickBooks may over-calculate the tax on the total. You will see this difference highlighted in the Document Reconciliation after the invoice has been synced.

Example:

  • Widget #1: Subject to Tax #1 and Tax #2
  • Widget #2: Subject to Tax #1, but not Tax #2
As a result of this discrepency, once an invoice with this issue is paid on this system, within the Document Reconciliation, it will show up as Paid on this platform, but still unpaid on QuickBooks.
How do I fix the tax discrepancy in QuickBooks so my books balance?

Because QuickBooks has calculated a higher tax amount than what was actually charged to the customer, you need to adjust the invoice balance and your general ledger. Follow these three steps:

  1. Step 1: Calculate the Difference
    Identify the specific dollar amount of the discrepancy using the Document Reconciliation. The dollar figures provided on the 'This Platform' line should be taken as correct.
    Example: If our platform calculated Tax #1 as $7.00, but QuickBooks calculated it as $10.00, the difference is $3.00.

  2. Step 2: Create a Credit Memo
    To ensure the outstanding invoice balance matches the payment received from the customer, you must reduce the balance of the invoice in QuickBooks.
    Create a Credit Memo for the difference amount (e.g., $3.00) and apply it to the invoice. When the payment is synced to QuickBooks, the open balance of the invoice will now match the payment amount and be marked as Paid/Closed.

  3. Step 3: Post a Journal Entry
    You must correct your Sales and Tax Liability accounts to reflect the reality of the transaction. Create a Journal Entry in QuickBooks with the following adjustments:

    Debit: Tax Payable (Difference amount, e.g., $3)
    Credit: Revenue/Sales (Difference amount, e.g., $3)

    This entry removes the excess tax liability created by QuickBooks and correctly reallocates that amount as revenue.

Please Note: Even with these corrections in place within QuickBooks, the Document Reconciliation on our platform will still display a difference for the Tax and Invoice Total. This is expected behavior, as the report highlights the discrepancy caused during the initial sync.


Customer Import

What is the minumum data requirements for a customer to be imported from QuickBooks into Blue Sail Agency?
Before a customer on QuickBooks can be imported into Blue Sail Agency, the customer has to have the following information set:
  • First and last name (where first and last name doesn't exist in our platform already)
  • Email address (where email doesn't exist in our platform already)
  • Phone Number (not mobile number), which has to be an 11 or 10 digit number
  • Billing address
Can I run the customer Import from QuickBooks multiple times or will this create dupliciate customer records within Blue Sail Agency?
You can run the customer import as often as you want. This will only pick up any new customers that don’t already exist in your Blue Sail Agency account. Updates to customers that already exist on within your Blue Sail Agency account will not be picked up by the import. If a customer's name or email address already exists in your Blue Sail Agency account, that customer will not be imported into your account.

Inventory

Does Blue Sail Agency sync my Inventory Quantity on Hand (QOH) to QuickBooks?
No. Blue Sail Agency does not send Quantity on Hand information to QuickBooks. We track inventory levels in great detail directly within our platform to ensure real-time accuracy for your operations. Based on how we've integrated with QuickBooks, QuickBooks is used strictly for recording financial transactions, while Blue Sail Agency remains the source of truth for your actual stock levels.
Will the specific purchase cost for my items be sent to QuickBooks?
We ensure that the total Cost of Goods Sold (COGS) is posted to the correct General Ledger account in QuickBooks for accurate financial reporting. However, we do not sync specific per-unit cost data to the individual item records in QuickBooks.
How can I locate inventory-related journal entries that haven't yet been synced with QuickBooks?
Please use the Journal Entry Explorer to locate journal entries that haven't yet been synced to QuickBooks. Within the Journal Entry Explorer, filter on Pending transactions or Sync Errors.

The Journal Entry Explorer can be found by going to menu Accounting Journal Entry Explorer.
Which transactions from the inventory module will not be sent to QuickBooks?
The following transactions will not be sent to QuickBooks:
  • $0 journal entries
  • Journal entries for 'service' inventory items. This does not apply journal entries that will record earned and unearned revenue.
  • Journal entries resulting from receivings of inventory from the 'Internal Adjustment' vendor. As these transactions don't relate to a specific vendor and therefore, don't impact Accounts Payable, they are not sent to QuickBooks.
  • Journal entries with a general ledger date before the Integration Effective Date
  • Journal entries related to inventory and unearned/earned revenue where 'Cash Basis Accounting' is selected within your QuickBooks Integration Settings.
What happens when I receive inventory?
The quantity on hand will increase on our platform and the following journal entry will be sent to QuickBooks:

Debit: Inventory Asset (This will leverage the account set on the item; if no account is set on the item, it will fallback to the Inventory Account specified in Integration Settings)
Credit: Accounts Payable (actual account will be based settings per the Integration Settings page)
How are inventory items configured when synced to QuickBooks?

Items sent to QuickBooks are set up as Non-Inventory or Service items.

We intentionally do not classify items as "Inventory" in QuickBooks. If we did, QuickBooks would automatically generate its own accounting entries for inventory and cost of goods sold. Since our platform is the source of truth for this information and already sends it to QuickBooks, we prevent QuickBooks from making these duplicate entries.

Consequently, quantity on hand is not tracked in QuickBooks. Instead, please rely on our platform for:

  • Inventory Cost
  • Inventory On Hand
Does deactivating a vendor, category, or item on this platform do anything in QuickBooks?
No. When you set a vendor, category, or item as inactive on our platform, the object will not be deactivated or deleted on QuickBooks.
Since Accounts Payable increases when I receive inventory, how should I process the vendor invoice in QuickBooks?
If your inventory receipt was processed correctly and matches your order, typically, the only remaining cost to record from the invoice is the recoverable tax (taxes paid to the vendor that you can claim back from the government).

To record these taxes in QuickBooks, enter a transaction for the tax amount only:
Debit: Tax Receivable (Recoverable Taxes)
Credit: Accounts Payable (Vendor)

Interest, Late Fees, and Tips

How are interest and late fees handled between Blue Sail Agency and QuickBooks Online?
To ensure your accounting records remain accurate without affecting prior periods, interest is handled as follows:
  • Accrual: Interest accrues daily within Blue Sail Agency on individual invoices, but it is not sent to QuickBooks Online until the invoice is paid. This prevents changes to closed accounting periods.
  • Payment & GL Dates: When the client pays, we create a separate invoice in QuickBooks for the interest amount and mark it as paid. This invoice is assigned the original invoice number plus "_INT" so the two related invoices can be easily matched visually. The General Ledger (GL) date for this transaction will match the payment date.
  • Reporting: Within the Sales Summary, the interest reported is based on the payment date to ensure alignment with QuickBooks.
How are tips handled between Blue Sail Agency and QuickBooks Online?
To ensure your accounting records remain accurate without affecting prior periods, tips are handled as follows:
  • A tip can be added to the invoice by a customer or by you, with the permission of the cutomer. This tip amount will not be sent to QuickBooks until the invoice is paid as tips should only be recognized when they are actually paid.
  • Payment & GL Dates: When the client pays, we create a separate invoice in QuickBooks for the tip amount and mark it as paid. This invoice is assigned the original invoice number plus "_TIP" so the two related invoices can be easily matched visually. The General Ledger (GL) date for this transaction will match the payment date.
  • Reporting: Within the Sales Summary, the employee tips reported are based on the payment date to ensure alignment with QuickBooks.
Is sales tax applied to interest and late fees?
No. Interest and late fees calculated on overdue invoices do not have any tax assessed on them.

Note: If you operate in a jurisdiction that requires tax to be assessed on these types of fees, we do not recommend using the Payment Terms module in this platform to assess interest or late fees on invoices.
Is sales tax applied to employee tips?
No. Any tips added to an invoice do not have any tax assessed on them.

Note: If you operate in a jurisdiction that requires tax to be assessed on tips, please be aware of the fact that our platform does not support this.
Why doesn't unpaid interest, late fees, or tips appear in my reconciliation totals?
Reconciliation totals in the platform do not include interest, late fees, or tips for non-paid invoices. Interest/late fee/tip revenue is only recognized and synced to QuickBooks at the moment of payment.
What if I need to recognize interest revenue as it is incurred?
Because we only sync interest and late fees upon payment, we do not automatically post daily accruals to QuickBooks.

If interest and late fee revenue is material to your business and/or needs to be recognized as incurred for compliance, you will need to perform manual journal entries to accrue any earned interest revenue as at the end of your reporting periods. Please speak to your accountant to determine if this is required for your business and how this can be done in QuickBooks.
Where do interest/late fees and tips invoices appear in the Document Reconciliation?
To keep your records organized, interest/late fee and tip invoices are automatically grouped with the original invoice within the Document Reconciliation.


Early Payment Discounts

How are Early Payment Discounts handled in QuickBooks?
When a customer pays an invoice within the early payment discount period, we automatically handle the accounting as follows:
  • We create a Credit Memo in QuickBooks for the specific amount of the discount.
  • This Credit Memo is assigned the original invoice number plus "_CM" (e.g., Credit Memo vbz5ut8krf_CM is created for invoice vbz5ut8krf).
  • The Credit Memo is immediately applied to the Invoice as a payment.
How is sales tax calculated on Early Payment Discounts?
Because a discount reduces the total taxable revenue of a transaction, the sales tax collected must also be reduced. Our platform handles this automatically.

If an invoice contains both taxable and non-taxable line items, the discount is prorated across those items. This ensures that the tax credit is calculated accurately based only on the taxable portion of the discount.

Please note that when viewing invoices with early payment discounts within the Document Reconciliation, you may notice penny differences between the taxes as per our platform and the taxes as per QuickBooks. This is due to complex tax calculations and rounding that may not reconcile 100% of the time between our system and QuickBooks given that our system reports these taxes on one document whereas the taxes will be spread across two documents within QuickBooks (i.e. the original invoice and the credit memo).
Where do Early Payment Discounts appear in the reconciliation?
To keep your records organized, the Credit Memos generated for early payment discounts are automatically grouped with the original invoice within the Document Reconciliation.

You will see the Credit Memo (ending in _CM) listed directly alongside the specific invoice it was applied to, rather than as a standalone transaction.
When a customer pays an invoice that has an early payment discount, a $0 payment shows up in QuickBooks when reviewing the customer's transactions. Why?
This is a record that simply applies the credit memo (relating to the early payment discount) to the invoice. It is expected to be $0.

Unearned Revenue

What is the difference between "Unearned" and "Earned" revenue?
Unearned Revenue (also known as deferred revenue) is money you have collected from a customer for a product or service that you have not yet delivered or completed. In accounting, this is treated as a liability because you still "owe" the customer the work.

Earned Revenue is recognized when you actually complete the work or deliver the product. At this point, the liability is cleared, and the money officially counts as income on your Profit & Loss statement.
When does the system create an Unearned Revenue (UR) entry?
If a customer pays a work order before the job is marked as "Completed" in our system, we automatically generate an Unearned Revenue journal entry. This debits your sales accounts and credits your Unearned Revenue liability account in QuickBooks, keeping your books perfectly compliant.
When does the system create an Earned Revenue (ER) entry?
The moment you mark a previously paid job as "Completed" or "Done", our system triggers an Earned Revenue entry. This entry automatically moves the funds out of your Unearned Revenue liability account and credits your actual Sales/Income accounts.
How will these entries look in my QuickBooks Online?
To keep your general ledger perfectly clean, we sync these financial events to QuickBooks as Journal Entries:
  • Custom Document Numbers: You can easily identify them by their document numbers. Unearned entries start with "UR-" (e.g., UR-105) and Earned entries start with "ER-" (e.g., ER-105).
  • Clean Grouping: If a customer pays for 10 different items on one work order, we group them into a single journal entry. Within that journal entry in QuickBooks, there will be one line for each item on the invoice.
  • Detailed Descriptions: Each line on the journal entry will tell you exactly what it is for, including the Customer Name, Order ID, Item Title, Quantity, and Price.
How are early payment discounts handled?
Early payment discounts are automatically calculated and included directly on the journal entries for both unearned and earned revenue. This ensures your liability and income accounts perfectly reflect the discounted price the customer actually paid.
How are tips handled if they are paid before the job is completed?
We do not move where tips land in your General Ledger. Tips are recognized immediately on the payment date, regardless of whether the actual work order has been marked as completed yet.
Can I search for a specific Unearned or Earned Journal Entry?
Yes! In our system's transaction explorer, you can search by the exact Document Number (e.g., typing "105", "UR-105", or "ER-105"). You can also search by the exact dollar amount (positive or negative), and we will automatically pull up any journal entries that match that debit or credit.

Errors

How are transaction errors between Blue Sail Agency and QuickBooks Online dealt with?
If there is an error on a transaction, our system will create an error record, which you’ll see in the Error Manager. Our system will attempt to automatically rerun these transactions once. Rerun attempts are scheduled to happen every 10 minutes. If an automatic rerun attempt is successful, the error will be removed from the Error Manager. If it is not successful, the error will remain in your Error Center so that you can attempt to manually rerun it after underlying issues have been resolved.
What happens when I mark an error record as reviewed in the Error Manager?
When you mark an error record as reviewed in the Error Manager, this simply moves the record to the 'Reviewed Errors' list. No other background processing happens and this will remain an error that has not yet been dealt with. If you’d like, you can add a note to the error record to explain how you’ve manually handled this error either on Blue Sail Agency or QuickBooks. As an example, you can note that you've manually created the invoice on QuickBooks where the invoice couldn't automatically be sent to QuickBooks.
What should I do if I receive an error about posting to a "Closed Accounting Period"?
This error occurs because the transaction date falls within a timeframe that has been "closed" in QuickBooks Online. To resolve this, you can either temporarily unlock the period in your QuickBooks Advanced Settings or manually enter the transaction into QuickBooks with the correct accounting date.

Note: We recommend consulting with your accountant before unlocking a closed period.
Within the Error Manager, what happens when I ‘retry’ an error record?
When you ‘retry’ an error record, our system will attempt to reprocess the original transaction that had initially failed. If the transaction is processed successfully, it will be removed from the open errors list and will not appear in the closed errors list. If the error cannot be cleared and you’re not sure how to deal with it, please submit a support ticket and reference the Error ID on the support ticket that you create.
I've received an error that indicates that an object has been deleted. What should I do?
This error usually indicates that a required record is currently inactive. To resolve this, please reactivate the item in QuickBooks and then click "Retry" in the Error Manager.
What errors might I see within the Error Manager?
Our integration is designed to automatically handle most data validation rules required by QuickBooks, so errors are rare. However, if an alert does appear in the Error Manager, it is usually due to one of the following scenarios:

  • Deleted/Inactivated Records: You are attempting to update a record on QuickBooks that has been deleted or inactivated. Since the record no longer exists in QuickBooks or is inactive, the synchronization cannot take place.
  • Closed Books: You are attempting to sync a transaction dated within a "closed" accounting period in QuickBooks.

If you encounter an error not listed above, please contact our Support team for assistance.
I accidentally deleted a parent category in QuickBooks. This platform has re-created the category in QuickBooks, but it not longer has any sub-categories under it. How do I fix this?
To fix this, go into each of the sub-categories within our platform and, without making any changes, simply save the edit form. This action will trigger a refresh that re-establishes the parent-child relationship within QuickBooks.

Expenses

What is the difference between recording a "Purchase" and a "Bill"?
When entering a transaction, you must choose how it was handled:
  • Paid / Purchase: Use this for expenses that have already been paid (e.g., using a company credit card, cash, or bank debit).
  • Still Owing / Bill: Use this for vendor invoices that you have received but will pay at a later date (Accounts Payable). This option requires you to specify a Due Date and select the Vendor you owe.
Can I split a single receipt across multiple expense categories or customer jobs?
Yes! The Breakdown (Line Items) section acts like a ledger, allowing you to split a single receipt into as many separate lines as you need.

For example, on a $105 receipt, you can code $100 to "Materials" and $5 to "Taxes". You can also link individual lines directly to specific customer invoices to ensure accurate job costing. Note: The sum of all your line items must exactly match the Total Amount of the transaction.
Can I attach pictures of my receipts, and are there file limits?
Yes, you can upload multiple image files and pdfs to your your transaction. These files are securely stored and automatically pushed to QuickBooks Online as attachments on the corresponding Purchase or Bill.

Uploads are restricted to standard image formats (JPEG, JPG, PNG) and PDF files and each individual file must be under 20MB in size. You can attach up to 10 files per Expense.
Why isn't my newly created expense syncing to QuickBooks Online?
  • Approval Status: Only expenses marked as "Approved" are sent to QuickBooks. If your expense is in "Draft" or "Pending Approval" status, it will be held back until a manager approves it.
  • Integration Date: The transaction date of the expense is prior to your established QuickBooks Integration Effective Date.
  • Open Errors: The transaction may have hit a QuickBooks validation error (e.g., a deleted GL account). Check the Error Manager on your Accounting Dashboard for details.
  • Request Limit: You may have reached the maximum number of allowed requests to/from QuickBooks for the day. If this is the case, your Expense will automatically sync to QuickBooks within the next day.
Why can't I delete an expense in Blue Sail Agency?
To maintain strict financial compliance and preserve your accounting audit trails, Blue Sail Agency restricts the hard-deletion of expense records once they are created.

If you made a mistake on an expense that has already synced to QuickBooks Online, please follow these steps:
  • Mark the expense as 'Excluded' on our platform. This will prevent this record from being picked up by any reports on our system
  • Delete the Bill or Purchase in Quickbooks
  • Re-create the expense with the correct details on our platform
Can I edit an expense after it has already synced to QuickBooks Online?
Most fields cannot be edited to prevent data discrepancies between Blue Sail Agency and QuickBooks. Having said this, you're allowed to mark the expense as 'Excluded' so it doesn't show up on reports within our platform. You can also change the customer orders that are associated with individual expense lines.
What is the effect of linking a customer's order to an expense line?
Selecting a customer's order (invoice or work order) on a breakdown line simply associates that expense with the specific job for your internal record-keeping and job-costing visibility.

This will not be billed to the customer. Linking the order does not automatically add the expense charge to the customer's actual work order or invoice. If you need to pass this out-of-pocket cost on to your customer, you must manually add it as a line item on their specific order.
Who can use the expenses module?
The expenses module is available to users with a Premium subscription. You do not need to have a connected QuickBooks account to create expenses; however, without being connected to QuickBooks, you won't be able to select General Ledger (GL) codes and payment methods when creating expenses on our platform.
I fixed an error that was preventing an expense from being sent to QuickBooks. How do I ensure it gets sent now?
Within a few minutes of the issue being resolved on the expense, it will be automatically be sent to QuickBooks.
If a file attached to an expense fails to upload to QuickBooks, will there be an error in the Error Manager?
No, attachment upload failures do not trigger an alert in the Error Manager. This issue will only be visible when reviewing the specific expense. You will see the failure indicator directly in the list of files attached to that expense.
What protections exist to prevent duplicate entry of expenses?
To help prevent duplicate records, our system automatically prevents the creation of an expense if the reference number already exists in your account (regardless of capitalization). Please note, however, that QuickBooks Online does not enforce this same restriction. If an expense is entered directly into QuickBooks and then entered again into our system, it will still sync successfully, resulting in a duplicate entry within your QuickBooks account.

Cash Basis Accounting

What is cash basis accounting?

Cash Basis Accounting is a method where financial transactions are recorded only when money actually changes hands.

  • Income: Revenue is recorded only when payment is received from the customer, regardless of when the work was completed.
  • COGS & Expenses: Cost of goods sold and operating expenses are recorded only when you pay your vendors, rather than when the inventory was delivered/installed or when the expense incurred.

This differs from Accrual Accounting, which records income when it is earned and expenses when they are incurred, regardless of the actual cash flow.

How does the QuickBooks integration change when I select 'Cash Basis Accounting' within the Integration Settings page?
When 'Cash Basis Accounting' is selected:
  • Journal entries related to inventory transactions are not synced to QuickBooks.
  • Journal entries to record unearned/earned revenue are not synced to QuickBooks.
  • You will not see any pending or error records related to inventory-based journal entries within the Pending Records or Error Manager pages.
Can I switch my QuickBooks integration from cash basis to accrual basis accounting?

While switching accounting methods is discouraged and may be restricted by local tax laws, our platform does support this change. You can update this preference on the Integration Settings page.

Once you've enabled accrual basis accounting in the Integration Settings, any journal entries that were not previously synced to QuickBooks will appear on the Pending Transactions page, where they can be reviewed and uploaded.

To limit which historical transactions are added to the sync queue, please define an Integration Effective Date when enabling Accrual Basis Accounting.

Can I switch my QuickBooks integration from accrual basis to cash basis accounting?

While switching accounting methods is discouraged and may be restricted by local tax laws, our platform does support this change. You can update this preference on the Integration Settings page.

After making this change,
  • Inventory-based journal entries are not synced to QuickBooks.
  • Journal entries to record unearned/earned revenue are not synced to QuickBooks.
  • You will not see any pending or error records related to inventory-based journal entries within the Pending Records or Error Manager pages.

Miscellaneous

Within QuickBooks, can I send an invoice to a customer for payment when the invoice originated on Blue Sail Agency?
Yes, this can be done without issue. Any payments that are processed within QuickBooks will automatically mark the invoice as paid within your Blue Sail Agency account.

Please note that if a payment term has been attached to the invoice in Blue Sail Agency or the invoice contains grouped items, you may wish to send the customer the invoice from Blue Sail Agency as the QuickBooks invoice will not have interest, late fees, early payment discounts, or grouped items.
I've deleted a customer from my Blue Sail Agency profile, but the customer doesn't get deleted from QuickBooks.
QuickBooks doesn't allow for customer records to be deleted from their platform. If, after deleting a customer within your Blue Sail Agency profile, you run the QuickBooks customer import, this customer will be created one again in your Blue Sail Agency profile.
Why do aggregated invoice lines appear as individual items in QuickBooks?
Since tax status can vary by product, we must sync every line item individually to ensure that QuickBooks applies the correct tax rates to the invoice. In addition, revenue GL accounts can vary by item, which means that we're required to send line item level detail to QuickBooks to ensure financial accuracy.
Why are Stripe Charge and Refund IDs truncated within QuickBooks?
QuickBooks enforces specific character limits for payment reference fields. To ensure compatibility with these integration constraints, Stripe IDs are truncated to the last 21 characters. 21 characters will provide you with enough information to confidently match a payment between QuickBooks and your Stripe account.
What things should I be aware of when connecting QuickBooks to Blue Sail Agency?
  • Never create an invoice on QuickBooks that has already been created on Blue Sail Agency. To do this will result in duplicate invoices.
  • If an invoice was marked paid on QuickBooks and, as a result, the invoice was marked as paid on Blue Sail Agency, the status of the invoice on Blue Sail Agency will not change even if you delete or void the payment on QuickBooks.
  • If you’ve connected your Blue Sail Agency account to QuickBooks, always use the revenue and tax liability information reported in that system when completing official documents such as applications or tax returns.
  • It's your responsibility to review and address any Accounting System Errors and differences as per the Document Reconciliation prior to completing any tax returns or preparing any financial statements. Differences within the reconciliation represent differences between the records on Blue Sail Agency and QuickBooks.
  • Where an invoice is partially paid in QuickBooks, marking the invoice as paid in Blue Sail Agency will set the invoice as fully paid in QuickBooks.
  • When no due date is indicated on an invoice on Blue Sail Agency, QuickBooks automatically adds 1 month to the transaction date and sets that as the due date on the invoice.
  • Remember to keep on top of markng jobs as complete as soon as they are completed. This is important when it comes to maintaining the accuracy of your financial information in this platform and on QuickBooks.
I am experiencing a significant delay while attempting to connect to a new QuickBooks company.
If you have previously uploaded a large volume of data (such as items or customers) to a past QuickBooks company, the system must update these records before syncing them to the new company. Please allow extra time for this process to complete.
Why are items created for Interest/Late Fees, Early Payment Discounts, and Employee Tips in QuickBooks?
We create these dedicated items to ensure that interest, late fees, early payment discounts, and tips are automatically mapped to the correct General Ledger (GL) accounts. This ensures your financial reporting remains accurate and consistent with the specific configurations you selected in your Integration Settings.
When I mark as work order as completed and that work order has a payment term on it, I cannot manually select a completion date. Why is this and what transaction date will be sent to QuickBooks for the resulting invoice?
This is to avoid a situation where the invoice that is generated is already aged or overdue by the time the customer receives it. Such a situation could lead to premature interest or late fees to be applied to the invoice.

If you mark a work order with a payment term as complete, the completion date is automatically set as the current date. As a result, the transaction date sent to QuickBooks is the current date.
If I delete a document in QuickBooks, will it be re-sent?
No. If you delete a transaction (such as an Invoice, Payment, Refund, or Journal Entry) directly within QuickBooks, our system will not automatically resend it nor can you manually resend it.

The Document Reconciliation page will indicate where documents have been manually deleted in QuickBooks. The Journal Entry and Expense Explorers won't, however.
There are invoices and journal entries from the past that are sitting in Pending Transactions. Why weren't these processed automatically?
These might be the result of one of the following scenarios:
  • Changes to Accounting Settings: You enabled cash basis accounting, generated journal entries, and subsequently disabled cash basis accounting.
  • Connection Interruption: You disconnected from your QBO account, created transactions, and then reconnected.
  • Effective Date Changes: You created transactions that were dated prior to the Integration Effective Date, and subsequently moved the Integration Effective Date back to include them.

In these specific cases, transactions that are now eligible for integration will not be automatically picked up by the scheduler. This prevents historical data from syncing without your knowledge and gives you time to review the entries. If you are happy with them, you can manually click 'Upload' within the Pending Records screen.

Please note that once these transactions are visible within the Pending Records page, opening one of these invoices, refunds, etc. will automatically send the transaction to QuickBooks.
Can I connect one QuickBooks Online company to multiple accounts on Blue Sail Agency?
No, this is not possible. One company on QuickBooks Online can be connected to one account on Blue Sail Agency at most.

Connecting Stripe & API Keys

To accept credit and debit card payments on your website, you must link an active Stripe account. Stripe accounts are free to set up, activate instantly, and incur standard processing fees (typically 2.9% + 30¢ per transaction).

How to Connect Your Stripe API Keys

  1. Log into your Stripe account. In the left navigation menu, click Developers, then click API keys.
  2. Stripe Developers API keys menu

  3. Copy your live Publishable key and Secret key.
  4. Stripe live API keys

  5. Paste both keys into the matching live fields on your Booking Form Settings page.
  6. Live API key inputs in Booking Form Settings

  7. Switch to test mode in Stripe by clicking the View test data toggle in the left menu.
  8. Stripe view test data toggle

  9. Click Developers > API keys again.
  10. Stripe Developers test mode menu

  11. Copy your test Publishable key and Secret key.
  12. Stripe test API keys

  13. Paste these keys into the test fields on your Booking Form Settings page.
  14. Test API key inputs in Booking Form Settings

  15. Return to Stripe and click the toggle back to live mode.
  16. Stripe live mode active toggle

Once all keys are saved, the secure Stripe card payment element will appear at checkout on your live site provided you've properly configured your booking form settings (Menu > Website > Website Setup > Booking Form Settings).

Payment Method Requirement

The Stripe key fields on your Booking Form Settings page are only visible when Payment Method is configured to either "Customer can pay at time of booking or after booking" or "Customer has to pay at time of booking".

Form Visibility & Minimums

Why Is the Stripe Card Form Not Visible at Checkout?

If a customer reaches checkout and cannot see the Stripe card form, check the following two causes:

  1. Invoice Total Under Minimum: The total invoice or booking amount must be at least $1.00. If the balance is under $1.00, the Stripe payment form will not load.
  2. Booking Form Configuration: Ensure your settings are correctly enabled:
    • Navigate to Menu > Website > Website Setup > Booking Form Settings.
    • Set Invoice Pricing to "Calculate invoice total in dollars".
    • Set Payment Method to either "Customer can pay at time of booking or after booking" or "Customer has to pay at time of booking".
    • Ensure all 4 Stripe Key fields (Live Publishable, Live Secret, Test Publishable, Test Secret) are populated with valid keys.

Minimum Invoice Charge Amount

The minimum invoice balance that can be charged through Stripe is $1.00. You cannot charge a saved card on file or process a payment form submission for an invoice total less than $1.00.

Website Compliance Checklist

Stripe closely reviews merchant websites to mitigate fraud, chargebacks, and legal non-compliance. Excessive dispute rates can result in account termination. Ensure your website clearly communicates your operational scope, policies, and contact information.

Required Website Information

  • Service Descriptions: Both primary services (e.g., Deep Home Cleaning) and add-on services (e.g., Blinds) must include clear descriptions detailing what will and will not be provided during an appointment.
  • Terms and Conditions: Your terms must be defined via the Terms and Conditions setup screen and should clearly cover:
    • Refund Policy: Specific terms under which customers can receive a refund.
    • Delivery Policy: How, where, and when services and products will be delivered.
    • Warranty Policy: Conditions for service re-performance, exchanges, or returns.
    • Cancellation Policy: Notice requirements and any applicable cancellation fees.
    • Promotions: Clear guidelines indicating whether promotional discounts apply only to initial bookings or carry over to repeat visits.
    • Free Trials: Full explanations of coverage periods and end-of-trial billing terms.
    • Safety & Respect: Expectations for the job site (e.g., securing pets, maintaining safe working conditions, respectful treatment of staff) and what happens if these terms are violated.
    • Legal Restrictions: Any trade or regional regulations that could alter job delivery.
  • Visible Contact Details: Your physical address, phone number, and support email must be visible in your website footer.
Pre-Configured Platform Compliance

Our platform handles several required Stripe items automatically: currency indicators at checkout, compliant Privacy Policy language, PCI-DSS encryption documentation, promotional discount disclosures, and card network logos.

Card Security & Tokenization

Protecting cardholder data is vital. Our platform adheres to strict industry compliance standards and partners with Stripe to safeguard your customers' payment information.

Encryption During Transmission (SSL)

Our systems comply fully with PCI-DSS standards. All data transmitted between user browsers and our servers is encrypted over SSL/TLS. The padlock icon in the browser address bar confirms this active encryption:

SSL browser address bar lock icon

Encryption During Storage

Our servers never store sensitive payment card numbers or CVV codes. We store only safe identification details: card brand, expiration date, and the last 4 digits. Full card details are retained solely within Stripe's encrypted, PCI-compliant infrastructure.

How One-Click Charging Works (Tokenization)

Merchants can charge customer cards without storing card numbers through secure tokens:

  1. The customer enters their card details on your checkout form.
  2. The encrypted card information is sent directly to Stripe.
  3. Stripe authorizes the card and returns a secure token (e.g., src_1IASDV5F9JFJ1KZC68VI4).
  4. Our platform saves this token under the customer’s profile.
  5. For future invoices, our platform sends only the token, the charge amount, and your authorized Stripe API credentials to execute the payment.
Token Isolation

Stripe tokens are cryptographically locked to your specific merchant account. In the unlikely event of a system compromise, a token cannot be charged or accessed by an outside party or another Stripe merchant account.

Preventing Disputes & Chargebacks

When customers have billing disagreements, they should always contact your business first. If issues remain unresolved, they may file a chargeback with their card issuer. High chargeback rates put your merchant account at risk. Proactive communication and clear policies minimize dispute risk.

8 Best Practices to Prevent Chargebacks

  1. Keep Terms Current: Ensure your Terms and Conditions accurately reflect your pricing, cancellation, and refund guidelines.
  2. Highlight Critical Policies: Add key rules (such as late cancellation charges) to the Booking Form Note 2 field so customers see them before placing an order.
  3. Verify Booking Rates: Ensure all service prices, drivers, and add-on rates on your booking form are accurate and up to date.
  4. Add Inquiries Note to Invoices: Use the Invoice Note field in your Booking Form Settings to instruct clients to direct any billing questions directly to you before contacting their bank.
  5. Obtain Authorization Before Charging Cards on File: Use the Request Payment option so clients review their invoice. If charging a card on file directly, ensure you have recorded consent for the final amount.
  6. Send Invoices Promptly: Always issue an invoice immediately upon completion of service.
  7. Maintain Service Quality: Arrive on time within your confirmed arrival window, communicate any unforeseen delays promptly, and use platform surveys to gather post-service feedback.
  8. Resolve Billing Concerns Immediately: Answer customer inquiries about charges quickly. Delayed responses frequently lead to bank disputes.
Important Testing Rule:

Never charge your personal payment card on your live site to run tests. Stripe flags live self-transactions as suspicious. Always test checkout flows using Stripe Test Mode and official test card credentials. Running tests on your live site using actual payment cards is prohibited by us as well as Stripe and can lead to account suspension on both systems.

Charges & Refunds: Viewing Transaction Logs

To inspect real-time transaction activity, monitor successful payments, or diagnose why a customer's payment card was declined, navigate to Menu > Online Payments > Charges and Refunds.

This screen provides a comprehensive audit log of every successful payment, failed checkout attempt, and issued refund processed through your linked Stripe gateway. Clicking on any entry opens a detailed transaction breakdown.

Transaction Record Overview

Each transaction record is organized into four core data groups:

  • Customer Information: Displays the full name, primary email address, and contact phone number attached to the transaction.
  • Order Details: Summarizes the Order ID, payment status (e.g., Paid), invoice date, total dollar amount charged, payment card brand and last 4 digits (e.g., Visa ending in 4242), and any coupon codes applied.
  • Billing Address: Shows the street address, suite/unit, city, province/state, country, and postal/ZIP code submitted during checkout.
  • Stripe Gateway Metadata: The raw verification response returned directly from Stripe's processing engine.

Diagnosing Payment Statuses

The Stripe Charge Details section will clearly explain whether a payment completed or failed:

1. Successful Charge

When a transaction clears successfully, the record displays confirmation identifiers along with automated fraud-risk scoring:

  • Charge ID: The permanent transaction ID assigned by Stripe (e.g., ch_3fdf434545afUasfzEe).
  • Paid: True
  • Outcome Type: authorized
  • Seller Message: Payment complete.
  • Risk Level: Evaluated by Stripe Radar (e.g., normal).

2. Failed or Declined Charge

If a customer card is declined during checkout, the log captures the technical failure reason returned by the cardholder's issuing bank:

  • Paid: False
  • Outcome Type: Explains the failure (e.g., "Card Error. Card was declined and couldn't be charged.").
  • Error Type: The machine-readable category (e.g., card_error).
  • Seller Message / Error Message: Specific bank decline reason (e.g., Transaction failed / Insufficient Funds / Incorrect CVC).

3. Refund Record

When an existing charge is refunded, the record links directly to the original billing transaction:

  • Refund ID: The unique Stripe refund reference (e.g., re_3Q6Udfaasdf4fadfa43fa).
  • Refund Status: Confirmation from Stripe (e.g., succeeded).
  • Original Charge ID: The initial charge reference (e.g., ch_3fdf434545afUasfzEe) that was reversed.

Pending Refunds: Monitoring & Reconciliation

In rare circumstances, a refund may not settle immediately with the customer's financial institution and will enter a Pending state. You can monitor and manage these delayed settlements by navigating to Menu > Online Payments > Pending Refunds.

Why Do Refunds Become Pending?

While most credit card refunds post within a few business days, settlement delays can occur if:

  • The original payment was processed via an ACH/bank debit or alternative local payment method that requires multi-day settlement windows.
  • The cardholder's receiving bank has placed an administrative hold on the incoming credit.
  • The transaction was processed during regular interbank clearing cycles.

Checking Live Status from Stripe

When viewing an individual pending refund record, you will see a Refresh Status from Stripe button. Clicking this button triggers an immediate API handshake with Stripe to check whether the issuing bank has finalized or rejected the return.

Handling Failed Refunds

If the issuing bank ultimately rejects the electronic refund (for instance, if the customer's bank account or credit card has been permanently closed and cannot accept incoming credits), the status will update from Pending to Failed.

Resolving Failed Refunds:

When a refund is confirmed as failed, the platform provides an action prompt allowing you to record an offline resolution. You can document the alternative method you used to reimburse the customer (such as sending a physical check, cash return, or direct bank transfer), keeping your invoice ledger and client accounting fully reconciled.

Billing & Invoices

Manage your platform subscription plan, payment details, and billing information directly from your account settings.

How Billing Works

Subscribing to the Premium Plan creates an ongoing monthly recurring charge to your payment card. There are no long-term contracts, minimum commitment periods, or cancellation penalties.

Viewing and Modifying Billing Details

To inspect your subscription status or make changes, go to Menu > Profile > Subscription.

Profile Subscription management page

From this page, you can:

  • Review billing periods and renewal dates.
  • Update your credit or debit card on file.
  • Change your company billing address.
  • Modify your active subscription status.

Subscription Cancellation

You can cancel your Premium Website Subscription at any time without fees or penalties.

How to Cancel

  1. Navigate to Menu > Profile > Subscription.
  2. Locate your Subscription Status row.
  3. Click the Change button next to the status.
  4. Update the status from Active to Cancelled and click Save.
Post-Cancellation Website Access

Your website remains live and accessible until the end of your prepaid billing period. If you need your website taken offline immediately, please submit a Support Ticket.

Free Plan: Sales Threshold & Feature Limits

Our Free Plan provides a complete website foundation with no time limits or trial expirations—your website will always remain free to host and operate.

Monthly Sales Threshold

While your site remains permanently free, the Free Plan includes a monthly sales volume threshold (view specific volume details on our Pricing page). Once your business reaches this monthly transaction threshold, advanced self-service payment and quotation features are temporarily paused on your booking form and Client Portal.

Restricted Functionality When Threshold Is Reached

If your monthly sales cap is reached, the following customer-facing actions are temporarily disabled:

  • Booking Form Card Entry: Customers can no longer enter or authorize payment cards during checkout on your online booking form.
  • Client Portal Invoice Payments: Customers can no longer view or settle outstanding invoices through the self-service Client Portal.
  • Client Portal Card Management: Customers are unable to add, update, or store payment cards on file in the portal.
  • Quote Approvals: Customers can no longer view, accept, or reject estimates and quotes within their portal dashboard.
  • Prepayments: Customers cannot make advance prepayments for future scheduled visits.
How to Restore Full Functionality

Your website will never be taken offline as a result of meeting the sales threshold. All online card intake, quote approvals, and automated portal payment features are immediately restored upon activating a subscription to the Premium Plan.

Mobile App: Installation & Device Setup

Our mobile app provides field technicians and managers with quick, full-screen access to their dashboard, schedule, and job tools. Built as a high-performance Progressive Web App (PWA), it installs directly from your mobile browser onto your device's home screen without requiring an app store download.

Key Benefits of Installing the App

  • Dedicated Home Screen Icon: Access your schedule and customer accounts with a single tap.
  • Full-Screen Workspace: Removes the mobile browser address bar and navigation controls, maximizing visible screen real estate for work orders and checklists.
  • Hardware-Level Features: Unlocks device GPS location tracking for field safety and dispatching, as well as native push notifications.
Critical Prerequisite: Use the "www" Address

When installing the app, you must visit the www version of your site address (e.g., https://www.bluesailagency.com). Accessing the address without "www" will prevent your mobile browser from displaying the installation option.

Step-by-Step Installation

On Android (Google Chrome):

  1. Open Chrome and navigate to https://www.bluesailagency.com.
  2. Tap the three dots (menu) in the top-right corner of the screen.
  3. Select Add to Home Screen (or Install app).
  4. Tap Install to confirm.

On Apple iOS (Safari):

  1. Open Safari and navigate to https://www.bluesailagency.com.
  2. Tap the Share button (the square icon with an upward arrow at the bottom of the screen).
  3. Scroll down and tap Add to Home Screen.
  4. Tap Add in the top-right corner.

First-Time Login & Device Permissions

Once installed, tap the app icon on your home screen and log into your account. Upon initial launch, your device will prompt you for two essential permissions:

  • Location Access: Tap Allow if your employer or business operations utilize location tracking for field dispatch and checklist completion.
  • Push Notifications: Tap Allow. Granting notification permissions is essential for receiving real-time team chat alerts and automated schedule updates.

GPS Tracking & Privacy Controls

The mobile app features integrated GPS location tracking to assist with dispatch routing, field staff safety, and job accountability.

Where GPS Data Is Used

  • Real-Time Dispatching: Allows office dispatchers to monitor technician proximity to upcoming appointments and route emergency or same-day service calls efficiently.
  • Technician Safety: Confirms technician arrival and presence at remote job sites.
  • Checklist & Task Audits: When field staff check off items on a job task checklist, their GPS coordinates are logged alongside their timestamp. (Note: Task GPS coordinates are confidential and visible only to account administrators.)

Strict Privacy Safeguards

The app is engineered with strict privacy boundaries to ensure employees are never tracked outside of active working hours:

  • Active Usage Only: GPS coordinates are only reported when the technician is actively using and viewing the app on their device screen.
  • No Background Tracking: Once the app is minimized, sent to the background, or the user switches to another application, all location reporting immediately ceases.
  • Standby & Screen Lock: If the mobile device enters standby mode, the screen locks, or the phone is powered off, no location data is transmitted.

How to Disable Location Tracking

If an employee needs to revoke location access, permissions can be managed directly through the device settings:

On Android (Chrome):

  1. Open device Settings.
  2. Tap Apps & notifications (or Installed Apps).
  3. Select Chrome (or your default browser).
  4. Tap Permissions.
  5. Select Location and switch it to Don't allow.

On iOS (Safari):

  1. Open device Settings.
  2. Scroll down and tap Safari.
  3. Tap Location under the Settings for Websites section.
  4. Select Never (or Deny).

Push Notifications, Chat & Automations

Installing the mobile app allows field technicians and staff to receive instant, native push notifications directly on their device screen—even when they do not have an active browser tab open.

1. Integrated Team & Customer Chat

The platform’s built-in live chat engine routes direct messages from office staff, fellow crew members, and customers straight to the technician’s device. Push notifications alert staff instantly to:

  • New direct messages or internal dispatch instructions.
  • Real-time customer inquiries while navigating to or working on a job site.
  • Urgent schedule adjustments or cancellations.

2. Automation Module Triggers

Through Menu > Automations > Automation Setup, administrators can configure workflow rules that trigger push notifications to employee mobile devices based on specific operational events:

  • New Job Assignments: Notify technicians the moment a newly booked appointment or work order is dispatched to their schedule.
  • Schedule Adjustments: Alert staff when arrival windows, target service addresses, or job scopes are modified.
  • Pre-Shift Reminders: Dispatch automated morning summaries highlighting upcoming jobs, gate codes, and required tools.
Troubleshooting Notifications:

If a technician is not receiving push notifications, verify that notifications are enabled under both their device system settings (Settings > Notifications) and that browser notification permissions were not accidentally blocked upon initial login.







About Us
© 2026 Blue Sail Agency. All Rights Reserved.
Tool Tip
Topic