Happy Dog Software Clipper and Salon - Knowledge Base
✂

Happy Dog Software Clipper and Salon

A lightweight, self-hosted Customer Relationship Management application built for barbers and salon managers. Manage customers, schedule appointments, send emails, and export reports - all from one place.

🆕 Version 3.0.0

🆕 New in Version 3.0.0

🆕 New in Version 2.0.7

🆕 New in Version 2.0.6

🆕 New in Version 1.90

ℹ️ Upgrading from 1.80? Everything from 1.80 is still here - the Business time zone & daily alert time, the Users-in-Settings menu, logos on printouts, and the expanded Reports exports.

💾 Installation

ℹ️ Happy Dog Software Clipper and Salon ships as a standard Windows installer (ClipperSalonCRM-windows-setup.exe). Run it and the setup wizard installs the application, creates Start Menu shortcuts, and can launch the app for you when it finishes.

System Requirements

RequirementMinimumRecommended
Operating SystemWindows 10 (64-bit)Windows 11
RAM256 MB free512 MB free
Disk Space200 MB500 MB (including data)
NetworkNone (offline capable)For SMTP email sending
Browser (localhost mode)Any modern browserChrome / Edge

Installation Steps

1
Run the installer

Double-click the downloaded ClipperSalonCRM-windows-setup.exe and approve the Windows administrator prompt (the app installs to Program Files).

2
Follow the setup wizard

Tick Create a desktop icon if you want one, then click Install. The app is placed in C:\Program Files\ClipperSalonCRM\ with Start Menu shortcuts created automatically.

3
Launch and choose your mode

Leave Launch Happy Dog Software Clipper and Salon checked on the final wizard page (or start it any time from the Start Menu). Press 1 for a native desktop window (recommended) or 2 to open in your default web browser.

4
Sign in with the default credentials

Username: admin   Password: ClipperSalonCRM

⚠️ Change the admin password after your first login. Go to the Settings cog ⚙ › User Settings › Change Password.

Command-Line Options

You can pass flags directly to the executable (installed at C:\Program Files\ClipperSalonCRM\ClipperSalonCRM.exe) to skip the interactive prompt:

ClipperSalonCRM.exe                     # interactive prompt (default)
ClipperSalonCRM.exe --mode webview      # desktop window via pywebview
ClipperSalonCRM.exe --mode localhost    # open in default browser
ClipperSalonCRM.exe --mode localhost --port 8080   # custom port

🚀 First Launch

On first run, Happy Dog Software Clipper and Salon automatically:

✓ Your data is stored in %APPDATA%\ClipperSalonCRM\ and will persist across application updates. The database is never deleted when you update or reinstall the executable.

🔐 Default Login Credentials

🔐 Administrator Account
FieldValue
Usernameadmin
PasswordClipperSalonCRM
RoleAdmin

To change the default credentials at startup, set environment variables before launching:

set ADMIN_USERNAME=myadmin
set ADMIN_PASSWORD=MySecurePass123
ClipperSalonCRM.exe

☷ Dashboard

The Dashboard provides a live overview of your business at a glance:

☺
Total Contacts
Count of all customer records in the database.
📅
Upcoming Appointments
Scheduled appointments from today onward.
☍
Pipeline Value
Total price of all upcoming Scheduled appointments.
★
Completed Revenue
Sum of prices from all Completed appointments.

The dashboard also shows your next 5 upcoming appointments and your 4 most recently added customers.

Complete a visit & book the next one

Click any row in Today's Schedule to open the appointment. From there:

1
Mark Complete

Records the visit as done and adds its price to the customer's lifetime value.

2
Book their next appointment

You're offered a follow-up screen pre-filled to match the customer's usual rhythm - their typical day of the week, time, and how often they visit. Pick how many weeks out with the quick buttons (it snaps to their usual day), adjust anything if needed, and book. Choose No thanks to skip.

☺ Customers

The Customers module stores all client information including:

Customer Statuses

StatusMeaning
LeadInitial contact, not yet engaged
ProspectIn conversation, evaluating services
ActiveCurrent paying customer
ChurnedFormer customer, no longer active

Lifetime Value (LTV)

LTV is not directly editable to preserve accuracy. It is updated in two ways:

📅 Schedule & Calendar

Manage appointments for your customers. Each appointment has:

List Views

Three list tabs let you filter by time range:

Each list view also supports filtering by Type and Status.

📅 Calendar View

Click the Calendar tab to switch to the monthly calendar view.

🔔 Reminders & Alerts

Happy Dog Software Clipper and Salon can automatically remind your customers about upcoming appointments by text message or email, and can send an alert the moment an appointment is booked. Everything is set up from inside the application - no typing of commands is required.

Appointment Alerts (when booking)

On the New Appointment screen, pick a customer and their address, phone, and email appear automatically. Tick either box before saving:

Automated Reminders (before the appointment)

1
Open Settings › Messaging (Text SMS)

Choose how messages are sent: Vonage or Twilio for text messages, or email.

2
Turn on "Enable Automated Reminders"

Set how many hours before the appointment the reminder should go out, and edit the message wording if you like.

3
Save

From now on, every appointment you book automatically schedules a reminder.

Editing an appointment updates its reminder; deleting or cancelling it removes the reminder. On the Appointments page, Send Reminders Now sends any due reminders immediately.

Sending while the app is closed - the Background Helper

Reminders and Web Intake are placed in a queue and handled by a small background helper. Installing the helper lets them run on schedule even when the Happy Dog Software Clipper and Salon window is closed.

1
Say “Yes” when you first open Happy Dog Software Clipper and Salon

The first time you launch the app it asks “Install the background service?” - click Yes and the helper is set up automatically. It then quietly checks for and sends due reminders and new intake every few minutes.

2
Changed your mind later?

Open Settings ⚙ › Background Service to install, remove, or run it on demand, and to confirm it's installed. (The helper's scripts also live in %APPDATA%\ClipperSalonCRM\service.) It's a Scheduled Task, so it won't show up in services.msc - see Background Service - where is it?

⚠️ Keep the same Windows user signed in. The helper runs under the Windows account that installed it and shares that account's Happy Dog Software Clipper and Salon data, so reminders send while that user is logged in on the machine.
ℹ️ If you do not install the helper, reminders and alerts are still queued - use Send Reminders Now on the Appointments page to send them while the app is open.

✉ Emails

The Emails module allows you to:

ℹ️ Email sending requires SMTP to be configured. See the SMTP Email Setup section. Without SMTP configured, emails are logged to the console only (mock mode).

📥 Web Intake (QR Sign-up)

Web Intake lets new clients add themselves. You display a QR code (on a flyer, your window, or a business card). Scanning it opens the customer's email app, already addressed to you with the subject filled in and a short template in the message (Name, Email, Phone, Address, Preferred days, Preferred times, Notes). They fill it in and hit send. Happy Dog Software Clipper and Salon checks your inbox and lists each new email under the Intake menu, where you review it and either Approve (which adds them as a customer) or Dismiss it.

ℹ️ No website or sign-up form is involved - it's just email, so there is nothing to host and your computer never needs to be reachable from the internet. And nothing is added automatically: every submission waits for your approval, so spam or mistakes never become customers on their own.

One-time setup

1
Open Settings › Web Intake

Click the gear icon, then choose Web Intake from the left menu.

2
Turn on “Enable web intake”

Tick the checkbox at the top of the page.

3
Enter your intake mailbox (IMAP)

This is the email account that will receive the submissions - it can be the same address you use for sending, or a dedicated one. Fill in the Host, Port, Username, and Password. As with SMTP, most providers require an App Password (not your normal login password). Leave Folder as INBOX and Security as SSL/TLS (port 993) unless your provider says otherwise.

Shortcut: if submissions come to the same address you already send from, click “Use my SMTP settings” at the top of the page. It copies the username and password from your SMTP settings and fills in the matching host (for example smtp.gmail.com → imap.gmail.com). Check the host looks right for your provider, then Save.

4
Set your intake email address

This is the address the QR code writes to - the one customers email. Leave it blank to use the IMAP username above. The Subject Tag ([HDCRM-INTAKE] by default) is what the app looks for, so only tagged emails are read.

5
Save Web Intake Settings

Click Save. You can then click Check mailbox now to test the connection.

6
Share your QR code

The same page shows your QR code and the address it emails. Click Print QR Code to print a ready-to-post sign - choose whether your company logo, your company name, or nothing (QR only) appears above the code. Customers can also just email that address with the subject tag by hand.

7
Install the Background Helper (recommended)

So the mailbox is checked automatically every few minutes even when the app is closed, make sure the background helper is installed - the app offers this the first time you open it (the same helper used for reminders). Without it, use the Check mailbox now button on the Intake page while the app is open.

Common IMAP servers

ProviderIMAP HostPortSecurity
Gmailimap.gmail.com993SSL/TLS
Outlook.com / Microsoft 365outlook.office365.com993SSL/TLS
Yahoo Mailimap.mail.yahoo.com993SSL/TLS

Username and password are the same App Password you would use for SMTP with that provider. Turn on the provider's 2-Step Verification first, then generate an App Password for “Mail”.

Reviewing submissions

New submissions appear under Intake in the sidebar (with a red count badge). Open it to see each lead's contact details. For each one:

⚠️ Web Intake reads only messages that carry its subject tag ([HDCRM-INTAKE] by default), so it will not disturb the rest of your inbox. For the tidiest setup, point it at a dedicated mailbox or an inbox rule/folder for intake.

☍ Reports & Exports

Export any dataset as a CSV file compatible with Excel and Google Sheets. Clicking Export saves the file into your Downloads folder and shows you the file name; open it from there.

DatasetContents
CustomersAll customer records including contact info and address
AppointmentsAll scheduled appointments with customer names
EmailsSent email log with subjects and delivery status

Use the Preview button to review data in the browser before downloading. Filters for status and date range are available on the Customers and Appointments datasets.

⏰ Time Clock

The Time Clock module lets staff track work hours directly within Happy Dog Software Clipper and Salon.

Clocking In and Out

1
Clock In

Click Clock In on the Time Clock page. Optionally add a note (e.g. task description). Your session start time is recorded immediately.

2
Clock Out

Click Clock Out when done. Duration is automatically calculated in minutes. You can optionally add or update your shift note.

Viewing Time Entries

ℹ️ Time entries can be exported from Reports & Exports as a CSV under the Time Entries dataset.

👤 User Management

Administrators can manage user accounts from the Users page.

Roles

RoleCapabilities
Admin Full access: manage all users, view all data, configure SMTP and settings
User Access to Customers, Schedule, Emails, Reports. Cannot manage users or SMTP settings.

Managing Users

1
Create a user

Go to Users page and click New User. Set username, display name, password, and role.

2
Change a password

Admins can reset any user's password. Users can change their own from Settings ⚙ › User Settings.

3
Deactivate a user

Edit the user and uncheck Active. Deactivated users cannot log in but their data is preserved.

⚙ Settings

Access the Settings page by clicking the cog icon ⚙ in the top-right corner of any page.

SectionWho can accessDescription
User Settings All users Update display name; link to change password
SMTP Settings Admins only Configure outbound email server (host, port, credentials)
Text Settings Admins only Default email signature and welcome message placeholders
Application Preferences Admins only Turn the login screen on, turn the Time Clock on, edit the service types
Web Intake Admins only Intake mailbox, subject tag, and your QR code (with a printable sign)
Background Service Admins only Install/remove the helper that sends reminders while the app is closed
Update Admins only Shows your version and checks for a newer one

Background Service - where is it?

Open Settings ⚙ › Background Service to see whether the helper is installed, and to Install, Remove, Run now, or reinstall it - no command line needed.

ℹ️ It is a Scheduled Task, not a Windows Service. That means it will not appear in services.msc. And because it runs for about a second every 5 minutes and then exits, you will rarely catch it in Task Manager. To see it outside the app, open Task Scheduler (taskschd.msc) and look for ClipperSalonCRM Message Service.

Turning the login screen on

Happy Dog Software Clipper and Salon opens straight to the Dashboard - there is no login screen out of the box. That suits the usual setup: one computer at the front desk, used by the people who work there. The app only listens on that computer and is not reachable from the internet.

If more than one person uses the machine and you want separate accounts and a sign-in, open Settings ⚙ › Application Preferences and untick Disable login.

⚠️ Check your password before you turn login on. A new install's admin account is admin / ClipperSalonCRM - the same on every install, so anyone could look it up. That page shows you the current sign-in and tells you whether it is still the default. Change it under Settings › Users, then turn the login screen on. If you switch it on without knowing the password, you will be locked out of your own data.

Updating Happy Dog Software Clipper and Salon

Open Settings ⚙ › Update. It shows the version you're running and a Check for Updates button, which asks the Happy Dog Software site whether a newer release is out. If there is one, you get a download link; run the installer over your existing install.

✓ Updating keeps everything. Your database, settings, and license live in your data folder (%APPDATA%\ClipperSalonCRM) - separate from the installed program in Program Files. Installing a new version replaces only the program files, so customers, appointments, SMTP/messaging settings, and your license are all preserved. Uninstalling does not remove that data folder either.

🔑 License

Open Settings ⚙ › License to see whether Happy Dog Software Clipper and Salon is currently licensed, view your license key, and see where the license file is stored on this computer.

Applying a license

From the License page, click Apply License. You can activate either way:

⚠️ Don't re-save or compress the license picture. The key is embedded pixel-for-pixel in the original file; re-encoding it (for example, opening and re-saving as JPEG) destroys the embedded key and the app will no longer recognize it as valid.

What "Not licensed" means

An unlicensed install still works, with a cap on the number of appointments you can create. Once a valid license picture or key is applied, that cap is lifted immediately - no restart needed.

Haven't purchased yet? The License page has a Purchase a License link that opens the Happy Dog Software store in your browser.

✉ SMTP Email Setup

To enable outbound email, configure your SMTP server in Settings ⚙ › SMTP Settings.

Gmail (App Password)

FieldValue
SMTP Hostsmtp.gmail.com
SMTP Port587
Usernameyouraddress@gmail.com
Password16-character App Password (not your Gmail password)
From Addressyouraddress@gmail.com

Microsoft 365 / Outlook

FieldValue
SMTP Hostsmtp.office365.com
SMTP Port587
Usernameyouraddress@yourdomain.com
PasswordYour Microsoft account password or App Password
⚠️ SMTP passwords are stored in the local SQLite database (%APPDATA%\ClipperSalonCRM\crm.db). Ensure the database file is protected with appropriate Windows file permissions.

Environment Variable Override

SMTP settings can also be provided via environment variables (take effect immediately, override the database values):

set SMTP_HOST=smtp.gmail.com
set SMTP_PORT=587
set SMTP_USER=you@gmail.com
set SMTP_PASSWORD=yourapppassword
set FROM_ADDRESS=you@gmail.com
set FROM_NAME=Happy Dog Software Clipper and Salon

📄 Environment Variables

VariableDefaultDescription
ADMIN_USERNAMEadminDefault admin username (seeded on first run)
ADMIN_PASSWORDClipperSalonCRMDefault admin password (seeded on first run)
SECRET_KEYbuilt-in dev keyFlask session secret - set this in production
SMTP_HOSTemptySMTP server hostname
SMTP_PORT587SMTP server port
SMTP_USERemptySMTP authentication username
SMTP_PASSWORDemptySMTP authentication password
FROM_ADDRESSemptySender email address
FROM_NAMEHappy Dog Software Clipper and SalonSender display name
⚠️ Always set SECRET_KEY to a long random string in any shared or network-accessible deployment. Without it, sessions are signed with a weak default key.

🗃 Data Storage

Database Location

When running as a packaged executable, the database is stored in:
%APPDATA%\ClipperSalonCRM\crm.db

This ensures your data survives application updates. To find this folder quickly, paste the path into Windows Explorer's address bar.

Backup

To back up your data, simply copy crm.db to a safe location. The database is a standard SQLite file and can be opened with any SQLite viewer (e.g., DB Browser for SQLite).

Tables in the Database

TableContents
customersCustomer records and contact details
appointmentsScheduled appointments
emailsSent email log
usersUser accounts and hashed passwords
settingsApplication settings (SMTP, text templates)

🔧 Troubleshooting

⚠️ Application won't start

Ensure all files in the ClipperSalonCRM\ folder are present. Run ClipperSalonCRM.exe from a command prompt to see error output. Antivirus software may need to whitelist the executable.

🌐 "localhost" not loading in browser

Use http://127.0.0.1:5000 instead of localhost:5000. Windows sometimes does not resolve localhost to the loopback address. Check Windows Defender Firewall if the port is blocked.

✉ Emails not sending

Verify SMTP credentials in Settings › SMTP Settings. For Gmail, make sure you are using an App Password, not your main password. 2-Factor Authentication must be enabled on your Google account first.

🔐 Forgot admin password

Set the ADMIN_PASSWORD environment variable to a new value, then delete the existing admin record from the database (or rename crm.db) so it gets re-seeded on next launch. Alternatively, open crm.db with DB Browser for SQLite and update the password_hash field directly.

📄 Missing python313.dll error

This error can appear if the application was built on a machine with Microsoft Store Python and is run on a machine without Python installed. The DLL is now bundled inside _internal\python313.dll - ensure the entire ClipperSalonCRM\ folder is copied, not just the .exe.

📂 Port already in use

Pass a different port: ClipperSalonCRM.exe --mode localhost --port 8080. The application also auto-detects a free port if 5000 is busy.

❓ FAQ

Can multiple users access Happy Dog Software Clipper and Salon at the same time?

Yes - when run in localhost mode, any computer on the same local network can access the app by navigating to http://<host-IP>:5000. Each user needs their own account created by an administrator.

Is my data sent to the cloud?

No. Happy Dog Software Clipper and Salon runs entirely on your local machine. No data is sent externally except outbound email via your configured SMTP server.

Can I import existing customer data?

Currently there is no built-in CSV import. You can insert records directly into the SQLite database using a tool like DB Browser for SQLite.

How do I update the application?

Replace the ClipperSalonCRM\ folder with the new version. Your database at %APPDATA%\ClipperSalonCRM\crm.db is not touched during updates.

Can I run this without an internet connection?

Yes. All features except SMTP email sending work fully offline.