Privacy Policy

Last Updated: February 18, 2026

Plain-language summary: We built CFCRM to help service businesses run their operations — not to harvest data. We don't sell your data. We don't show you ads. We don't track you across the internet. We don't let third parties mine your information. Your business data stays in your isolated database and is used only to provide the service you signed up for. This privacy policy explains exactly what data we collect, where it goes, and why — with no fine print designed to trick you.

1. Who We Are

CFCRM (Customer First CRM) is a customer relationship management platform built for service businesses — chimney sweeps, HVAC companies, plumbers, electricians, roofers, and similar trades. We provide tools for managing customers, jobs, estimates, invoices, scheduling, parts inventory, payments, and integrations with accounting software.

This Privacy Policy applies to all users of CFCRM, including business owners and administrators ("Admins"), employees and field technicians ("Technicians"), end customers who use the customer portal or submit appointment requests ("Customer Portal Users"), and visitors to our website.

2. Our Privacy Commitments — What We Promise

Our Core Privacy Promises

Before getting into the details, here's what we stand for:

Things We Will NEVER Do

We want to be crystal clear about practices we categorically reject:

3. Information We Collect

Here is a complete accounting of every type of data CFCRM collects, exactly why we collect it, and what we do with it:

3.1 Account and Profile Information

Data Why We Collect It Who Provides It
Full name Identify you within the platform, display in UI, include on documents (estimates, invoices) You, at registration
Email address Account login, password reset, system notifications, contact for support You, at registration
Phone number Optional contact method, used if you enable SMS notifications for your account You, optionally
Password (hashed) Account authentication. We store only the bcrypt/argon2 hash — we never store or can recover your plaintext password You, at registration
Business name Display on your customer-facing documents, portal, booking widget Admin, at setup
Role (admin/technician) Access control — determines what features and data you can access Set by Admin

3.2 Business Data You Enter

Data Category Examples Purpose
Customer records Names, addresses, phone numbers, emails, tags, notes, service history, photos Core CRM functionality — manage your customer relationships
Job records Job titles, descriptions, status, assigned technician, scheduled dates, completion notes, photos Track and manage service work
Estimates and invoices Line items, quantities, prices, discounts, taxes, notes, terms, customer references Generate and deliver professional estimates and invoices
Payments Payment amounts, dates, methods, reference numbers, linked invoices Track payment history and outstanding balances
Parts catalog Part names, SKUs, prices, costs, descriptions, categories Manage inventory and pricing for estimates/invoices
Part orders Ordered parts, quantities, prices, job assignments, order status Track parts ordering for jobs
Schedule data Appointment dates, times, durations, assigned technicians, recurrence rules Calendar management and route optimization
Workflow automations Trigger conditions, actions, templates, timing rules Automate reminders, follow-ups, and status-based actions
Uploaded files Photos, documents attached to jobs, customers, or estimates Visual documentation of work performed, property conditions, etc.

All of this data belongs to you. We store and process it solely to provide the CFCRM service. We do not analyze it for trends, sell aggregate insights, or use it for any purpose beyond operating the software for your benefit.

3.3 Data from Third-Party Integrations

When you connect a third-party service, we receive data from that service. Here is exactly what comes in from each integration:

Intuit QuickBooks Online

When you connect your QuickBooks Online account to CFCRM, the following data is accessed and synchronized:

Data Type What Specifically Direction Why
Customers Display name, given/family name, company name, email, phone, billing address, tax status, active status, notes Bidirectional Keep customer records consistent between CRM and accounting
Items / Products Name, type, description, unit price, purchase cost, SKU, tax status, income/expense account references Bidirectional Keep your parts/products catalog in sync for accurate invoicing
Estimates Line items (item ref, quantity, rate, amount), customer reference, doc number, memo, expiration date, discount CFCRM → QuickBooks Push estimates to QuickBooks for accounting records
Invoices Line items, customer reference, doc number, due date, memo, discount, balance CFCRM → QuickBooks Create invoices in QuickBooks when estimates are accepted
Payments Amount, date, payment method, reference number, linked invoice/transaction Bidirectional Record payments in both systems for accurate bookkeeping
Company Info Company name only QuickBooks → CFCRM Display which QuickBooks company is connected in the settings UI

How authentication works: CFCRM uses OAuth 2.0 (the industry standard) to connect to QuickBooks. You are redirected to Intuit's own login page to authorize CFCRM. We never see your QuickBooks username or password. Intuit gives us time-limited access tokens (valid for approximately 1 hour) and a refresh token. Access tokens are automatically refreshed. All tokens are stored securely in your tenant's configuration.

What you control:

Stripe (Payment Processing)

Google Maps

Gmail

3.4 Customer Portal and Appointment Booking Data

When your customers interact with CFCRM through the customer portal or appointment booking widget:

Data Purpose
Name, email, phone Contact information for appointment scheduling and service delivery
Service address Location where services will be performed; geocoded for routing
Service details and notes Understanding what work is requested
Preferred dates/times Scheduling the appointment
Consent record Documenting that the customer agreed to terms and communications
Geographic coordinates Route optimization and accurate service area determination

This data is stored in the Tenant's isolated database and managed by the business that the customer is requesting service from. CFCRM acts as a data processor on behalf of the business (the data controller).

3.5 Automatically Collected Technical Data

Data Purpose Retention
IP address Security (detecting unauthorized access, abuse prevention) Server logs rotated regularly
Browser type and version Ensuring compatibility, debugging rendering issues Server logs rotated regularly
Pages and features accessed Understanding which features are used to prioritize development Aggregated, not individually tracked
Timestamps Security audit trail, debugging Server logs rotated regularly
Error logs Identifying and fixing bugs Retained for troubleshooting, rotated regularly

We do not use analytics services like Google Analytics, Mixpanel, Amplitude, or similar third-party tracking tools. We do not embed tracking pixels. We do not fingerprint your browser or device.

4. How We Use Your Information

Every piece of data we collect serves a specific, stated purpose. Here is the complete list:

Purpose Data Used Legal Basis (GDPR)
Provide the CRM service All business data you enter (customers, jobs, estimates, etc.) Contract performance
Authenticate your identity Email, password hash, session tokens Contract performance
Sync with QuickBooks Customers, items, estimates, invoices, payments (as configured by you) Consent (you explicitly connect the integration)
Process payments via Stripe Transaction data, amounts, customer email Consent (you explicitly connect Stripe)
Send emails via Gmail Recipient addresses, email content Consent (platform admin connects Gmail)
Geocode addresses via Google Maps Street addresses, coordinates Legitimate interest (providing the scheduling features you use)
Send appointment reminders and notifications Customer contact info, appointment details Consent (customer consents at booking; you configure automations)
Security and abuse prevention IP addresses, access logs, authentication attempts Legitimate interest (protecting the platform)
Bug fixes and technical support Error logs, usage context when you report an issue Legitimate interest (maintaining the service)
Feature development Aggregated, anonymized usage patterns (which features are used, not by whom) Legitimate interest (improving the product)

That's it. There are no hidden uses. We don't use your data for "marketing insights," "partner offers," "personalized experiences" powered by surveillance, or any of the other euphemisms that companies use to justify data exploitation.

5. How We Share Your Information

5.1 With Third-Party Services You Connect

When you enable an integration (QuickBooks, Stripe, Google Maps, Gmail), data flows to those services as described in Section 3.3. Each integration is:

We share only the minimum data necessary for each integration to function.

5.2 With Infrastructure Providers

The CFCRM platform runs on server infrastructure. Our hosting provider has physical access to the servers. We select providers with strong security practices and appropriate certifications. Infrastructure providers do not have application-level access to your data — they provide compute, storage, and networking, not data access.

5.3 With Law Enforcement (Only When Legally Required)

We may disclose your information if we are compelled to by:

If legally permitted, we will notify you before disclosing your data in response to legal process, so you have the opportunity to object.

5.4 In a Business Transfer

If CFCRM is acquired, merged, or if substantially all of our assets are sold, your data would transfer to the new owner. In that event:

5.5 Who We Never Share With

To be absolutely clear, we never share your data with:

6. Data Storage, Security, and Architecture

We take security seriously because your livelihood depends on this software and the data in it. Here's exactly how we protect your information:

6.1 Tenant Data Isolation

CFCRM uses a multi-tenant architecture with physical database isolation. This is important and worth explaining:

6.2 Encryption

6.3 Access Controls

6.4 QuickBooks Token Security (Specifically)

Since QuickBooks contains sensitive financial data, here's the specific security around QB tokens:

6.5 Webhook Security

If QuickBooks webhooks are configured (for real-time sync), incoming webhook requests are verified using HMAC-SHA256 signatures with a verifier token. Requests that fail signature verification are rejected and logged.

6.6 Backup and Recovery

7. Data Retention

7.1 Active Accounts

We retain all your data for as long as your account is active. Data you delete within the application (e.g., deleting a customer record) is handled as follows:

7.2 Sync Logs

QuickBooks synchronization logs (which records were synced, when, success/failure) are retained for troubleshooting and audit purposes. These logs help you verify that your data is syncing correctly and help us debug issues.

7.3 After Disconnecting an Integration

When you disconnect a third-party integration (like QuickBooks):

7.4 After Account Termination

7.5 Server Logs

Technical server logs (access logs, error logs) are retained for a limited period for security and troubleshooting, then automatically rotated and deleted.

8. Your Rights and Choices

We believe you should have full control over your data. Here are your rights and exactly how to exercise them:

8.1 Access Your Data

You can view all of your data directly within the CFCRM interface at any time. You can also export it (see 8.3). If you need a formal data access report, contact us.

8.2 Correct Your Data

You can edit any data within CFCRM directly. If you believe our system contains inaccurate data about you that you cannot correct yourself, contact us and we will fix it.

8.3 Export Your Data (Portability)

You can export your data at any time in multiple formats:

We will never charge you for exporting your own data or make it difficult to do so.

8.4 Delete Your Data

You can delete individual records within the application. To request complete deletion of your account and all associated data, contact us. We will process the deletion within 30 days, subject to any legal retention requirements.

8.5 Control Integrations

You have granular control over every integration:

8.6 Communication Preferences

For your customers: Customers who receive communications through CFCRM (appointment reminders, status updates) can opt out by:

For you: System notifications from CFCRM can be configured in your Settings.

8.7 How to Exercise Your Rights

For any privacy-related request, contact us at support@cfcrm.app. We will respond within 30 days (or sooner — we're a small team and we actually read our email).

9. Cookies, Local Storage, and Tracking

9.1 What We Use

Technology What It Stores Why
Session token (localStorage) Encrypted authentication token Keep you logged in between page loads
Theme preference (localStorage) "light" or "dark" Remember your UI theme preference
View preferences (localStorage) Last selected filters, view modes Restore your preferred view when you return
Service Worker cache Application code and assets Enable offline functionality (PWA) and faster page loads

9.2 What We Don't Use

10. Children's Privacy

CFCRM is a business-to-business software tool designed for adult professionals. We do not knowingly collect personal information from children under the age of 13 (or 16 in the EU). If we become aware that we have collected personal information from a child, we will delete it promptly. If you believe a child has provided us with personal information, please contact us immediately.

11. International Data Transfers

CFCRM's servers are located in the United States. If you access CFCRM from outside the United States, your data will be transferred to and processed in the United States. By using CFCRM, you consent to this transfer.

For users in the European Economic Area (EEA), United Kingdom, or other jurisdictions with data transfer restrictions: we rely on the necessity of the transfer for the performance of our contract with you (providing the CFCRM service) as the legal basis for international data transfers.

12. California Privacy Rights (CCPA/CPRA)

If you are a California resident, you have the following rights under the California Consumer Privacy Act and California Privacy Rights Act:

To exercise these rights, contact us at support@cfcrm.app.

13. European Privacy Rights (GDPR)

If you are in the European Economic Area or the United Kingdom, you have additional rights under the General Data Protection Regulation:

Legal bases for processing:

Data processor role: When you (a business) use CFCRM to manage your customers' data, CFCRM acts as a Data Processor and you act as the Data Controller. We process your customers' data only according to your instructions (i.e., the features you use and the automations you configure).

14. SMS/Text Message Privacy

CFCRM sends SMS/text messages to end customers on behalf of service businesses ("Tenants") that use the platform. These messages are transactional and informational in nature — they relate to services the customer has requested or received.

14.1 Types of Messages Sent

SMS messages sent through CFCRM include:

No marketing, promotional, or advertising messages are sent through this system.

14.2 How Consent Is Obtained

Customers consent to receive SMS messages through one or more of the following methods:

All customer phone numbers and consent records are stored in the CFCRM platform. Messages are only sent to customers who have provided their phone number in the context of an active business relationship with a Tenant.

14.3 SMS Delivery Provider

SMS messages are delivered through Twilio, a third-party communications platform. When a message is sent:

14.4 Message Frequency and Rates

14.5 Opt-Out and Help

15. Changes to This Privacy Policy

We may update this Privacy Policy as our practices evolve or as laws change. When we do:

Your continued use of CFCRM after changes take effect constitutes acceptance. If you disagree with material changes, you may export your data and terminate your account before the changes take effect.

16. Contact Us

We mean it when we say we value transparency. If you have questions about this Privacy Policy, want to exercise your rights, or just want to understand how something works — reach out:

We respond to privacy inquiries within 30 days, but usually much sooner.

By using CFCRM, you acknowledge that you have read and understood this Privacy Policy. We've written it to be thorough, honest, and genuinely informative — not to hide things in legal jargon. If anything is unclear, please ask us. We'd rather answer a question than have you wonder.

See also: End User License Agreement | Terms of Service