dreams-crm/dashboard
Dreams CRM Executive Dashboard Preview
React 19 SPA

1.1 Introduction & Overview

Welcome to the comprehensive technical and user manual for Dreams CRM v1.0.0 — the premier WordPress-native Customer Relationship Management solution.

Traditional WordPress CRM plugins store records as Custom Post Types (CPTs) inside wp_posts and wp_postmeta. As contact databases grow past 10,000 records, standard WP queries experience severe degradation, causing slow dashboard page loads and database timeouts. Dreams CRM solves this architectural bottleneck by operating on an isolated, dedicated database schema comprising 52 custom SQL tables with full indexing.

Key Architectural Pillars
Decoupled React 19 SPA

Runs inside WordPress Admin as a client-side Single Page Application built with React 19, Redux Toolkit, and RTK Query. UI state transitions execute in sub-50ms with zero full-page browser reloads.

52 Non-CPT Custom SQL Tables

Stores all contacts, leads, deals, tasks, activities, and custom fields in 52 dedicated wp_dcrm_* SQL database tables created via dbDelta. Guarantees maximum query efficiency.

Granular RBAC Engine

Stores custom capability matrices in wp_dcrm_roles_meta. Enforces 52 permission flags across view, edit, delete, and export actions for every WordPress role.

Action Scheduler Async Engine

Executes heavy background tasks (email campaigns, Contact Form 7 ingestion logs, WooCommerce order sync) asynchronously without slowing down visitor storefront response times.

1.2 System Requirements & Server Directives

Please review the minimum and recommended server configuration settings required to run Dreams CRM smoothly:

Component / Directive Minimum Requirement Recommended Setting Technical Rationale
PHP Version PHP 7.4 PHP 7.4 Utilizes typed properties, match expressions, and nullsafe operators.
WordPress Core WordPress 6.0+ WordPress 6.5 - 6.7 Requires WP REST API v2 infrastructure and Gutenberg block compatibility.
MySQL Database Engine MySQL 5.7 / MariaDB 10.3 MySQL 8.0+ / MariaDB 10.6+ Requires InnoDB storage engine with full foreign key constraint support.
PHP Memory Limit 128M 256M or 512M Supports batch CSV data imports and concurrent Action Scheduler queues.
max_input_vars 1000 3000 or higher Prevents field truncation when saving large RBAC matrix permission forms.
max_execution_time 30 seconds 300 seconds Allows database table creation during initial plugin activation via dbDelta.
WooCommerce (Optional) WooCommerce 8.0+ WooCommerce 8.9+ For WooCommerce Sales Analytics, Cart Drawer, and Checkout Field Builder.

1.3 Core Architecture & Directory Layout

Dreams CRM adheres strictly to PSR-4 autoloading standards under the root PHP namespace Dreams\CRM\. The file organization is structured as follows:

wp-content/plugins/dreams-crm/
├── admin-app/                  # React 19 TypeScript Single Page App source
│   ├── build/                  # Production compiled JS/CSS asset bundle
│   └── src/
│       ├── components/         # UI Component Views (Dashboard, Contacts, Kanban, Graph)
│       ├── hooks/              # Custom React hooks & state helpers
│       ├── store/              # Redux Toolkit Slices & RTK Query REST endpoints
│       ├── utils/              # Client-side utility functions & formatters
│       ├── types.ts            # TypeScript interfaces & entity definitions
│       └── index.tsx           # React SPA Root Entrypoint
├── assets/                     # Enqueued frontend & admin styles/scripts
│   ├── css/                    # Global admin CSS & layout styles
│   └── js/                     # Beacon tracker & frontend scripts
├── includes/                   # PHP Backend Core (PSR-4 Namespace: Dreams\CRM\)
│   ├── admin/                  # Admin setup wizard & UI controllers
│   ├── cli/                    # WP-CLI commands (wp dreams-crm seed)
│   ├── core/                   # Activator, Deactivator, EventBus, Permissions
│   ├── entities/               # Contacts, Companies, Leads, Deals, Tasks, Notes
│   ├── integrations/           # CF7 form ingestion & WooCommerce core bridge
│   ├── modules/                # Deduplication merge engine & business modules
│   ├── rest/                   # WP REST API Routes & 20+ REST Controllers
│   ├── services/               # Seeder, Scoring, Dedup, Email Queue, Import/Export
│   ├── settings/               # System configuration & setting registries
│   └── woo-suite/              # Checkout Field Builder, Quick Cart & Product Compare
├── languages/                  # Translation POT/PO/MO files (i18n)
├── tests/                      # Automated unit & integration test suites
├── composer.json               # Composer dependencies & PSR-4 autoload rules
├── package.json                # React 19 & TypeScript npm dependencies
├── phpcs.xml                   # WordPress Coding Standards (WPCS) ruleset
├── uninstall.php               # Plugin cleanup & table drop handlers
└── dreams-crm.php              # Main Plugin Bootstrap File

1.4 Comprehensive Feature Matrix

Executive Analytics
  • Real-time KPI metric widgets
  • Revenue pipeline funnel charts
  • WooCommerce LTV & AOV tracking
Kanban Pipelines
  • Drag & drop stage transitions
  • Configurable deal probabilities
  • Bulk stage transitions & deal values
Granular RBAC
  • 52 capability permission flags
  • Custom role registry table
  • Client-side & server-side enforcement
Node Canvas Graph
  • SVG draggable relationship graph
  • Bidirectional entity link nodes
  • Side detail drawer for entity nodes
CF7 Form Ingestion
  • Form mail-tag field mapping
  • Deduplication rules (skip/update)
  • Background retry via Action Scheduler
Woo Commerce Suite
  • AJAX quick cart drawer
  • Checkout field builder
  • Product compare side drawer

1.5 End-to-End CRM Sales Workflow

Dreams CRM is engineered to automate and streamline every phase of the customer journey, from initial prospect capture to long-term account retention. Below is the standard operational lifecycle executed across the 20+ interconnected modules:

Step 1: Ingestion
Capture

Leads captured via Contact Form 7, WooCommerce checkout, or CSV batch migration into wp_dcrm_contacts.

Step 2: Scoring
Enrich & Dedup

Predictive scoring algorithm evaluates email domain & budget. Fuzzy deduplication prevents duplicate contact pollution.

Step 3: Qualification
Kanban Deal

Qualified leads convert to deals in multi-pipeline Kanban boards. Sales reps advance deals with drag-and-drop ease.

Step 4: Fulfillment
Invoice & LTV

Deals marked Won trigger branded PDF invoice generation, payment tracking, and automated WooCommerce LTV sync.

Unified Data Integrity: Because all entities share foreign key relationships within the custom wp_dcrm_* database schema, updates to contacts immediately reflect across deals, invoices, audit activities, and the node relationship canvas without cache delay.

2.1 Installation via WP Admin

  1. Log into your WordPress Admin Dashboard (/wp-admin).
  2. Navigate to Plugins → Add New → Upload Plugin.
  3. Select the dreams-crm.zip installation archive and click Install Now.
  4. Click Activate Plugin. The 52 custom SQL database tables will automatically seed via dbDelta.
  5. Access the main CRM interface from the new Dreams CRM left sidebar menu item.

2.2 Manual FTP Upload

  1. Unzip dreams-crm.zip on your local computer.
  2. Open your FTP client (FileZilla, Cyberduck) and connect to your web server.
  3. Upload the unzipped dreams-crm/ folder into /wp-content/plugins/.
  4. Log into WP Admin, navigate to Plugins → Installed Plugins, and click Activate next to Dreams CRM.

2.3 Demo Content Seeding

Dreams CRM includes a built-in relational demo data seeder engine that automatically populates all CRM modules (Contacts, Companies, Leads, Deals, Invoices, Projects, Tasks, Sales Funnels, A/B Tests, Campaigns, and Activity Streams) with realistic, fully mapped sample records for immediate evaluation.

  1. In WP Admin, navigate to Dreams CRM and click the Settings button in the top navigation bar.
  2. Select the Data Retention tab from the settings menu bar.
  3. Under Seed Developer Demo Data, select your preferred record count per module (10, 20, 50, or 100 records) and click the Seed Demo Records / Module button. Seeding imports connected records across all modules with full relational mapping.
  4. Alternatively, trigger seeding via WP-CLI: wp dreams-crm seed (or specify count: wp dreams-crm seed --count=20, wp dreams-crm seed --count=50, wp dreams-crm seed --count=100).
Note: Demo datasets can be safely emptied at any time under Dreams CRM → Settings → Data Retention → Truncate All CRM Records by clicking Empty All CRM Records & Logs. This cleans contact records, companies, leads, invoices, deals, pipelines, and activity streams while preserving your database schemas, user roles, and plugin settings.

Section 3: Core CRM Plugin Modules

Detailed technical manual, entity data flows, database schemas, and administrative workflows for core CRM business modules.

3.1 Executive Dashboard Module

The Executive Dashboard serves as the central command center for Dreams CRM, fetching real-time aggregated metrics asynchronously via GET /wp-json/dreams-crm/v1/dashboard/kpis with sub-50ms render speed.

Executive Dashboard

Figure 3.1: Dreams CRM Executive Dashboard Panel embedded inside WP Admin.

Widget Specifications & Analytics Data Models
Total Contacts & Accounts Widget

Calculates active customer profiles stored in wp_dcrm_contacts and wp_dcrm_companies. Displays Week-over-Week (WoW) and Month-over-Month (MoM) growth rates using sliding 30-day window intervals.

  • Formula: ((Current_Month - Previous_Month) / Previous_Month) * 100
  • Filterable by date ranges: 7 Days, 30 Days, This Quarter, YTD
Revenue Pipeline Funnel Widget

Visualizes deal pipeline progression across defined stages (Prospecting, Discovery, Proposal Sent, Negotiation, Closed Won).

  • Calculates total pipeline valuation (Sum of wp_dcrm_deals.amount)
  • Weighted revenue forecast formula: Sum(Amount × Win_Probability_%)
Live Audit Activity Stream

Logs system events from wp_dcrm_activities in real-time. Tracks contact creation, deal stage movements, assigned tasks, and user notes with user avatar attribution.

WooCommerce Commerce Summary

Direct integration with storefront order tables. Synchronizes orders to display total gross revenue, Customer Lifetime Value (LTV), and Average Order Value (AOV).

User Operational Guide: Navigating the Executive Dashboard
  1. Adjust Date Ranges: Click the date range selector at the top-right of the dashboard to filter aggregated statistics across Last 7 Days, Last 30 Days, This Month, This Quarter, or Year-to-Date (YTD).
  2. Interpret KPI Badges: Green positive percentages indicate growth compared against the prior equivalent period, while red negative badges indicate a decline, allowing sales leadership to detect performance trends early.
  3. Inspect Real-Time Activity: The live activity audit feed updates dynamically as team members create contacts, move deals, or log calls. Click any activity item to open the corresponding record drawer.
  4. Export Snapshot Reports: Click Export Summary Report to generate a branded CSV or printable summary of current CRM KPIs for executive stakeholder presentations.

3.2 Contacts Directory Module

The Contacts Directory serves as the single source of truth for individual customer profiles, prospects, and stakeholders. Stored in the dedicated SQL table wp_dcrm_contacts, it provides sub-second debounced searching, lifecycle stage tracking, custom field values, and comprehensive bulk batch management.

Contacts Directory Interface

Figure 3.2: Dreams CRM Contacts Directory Interface.

Step-by-Step User Guide: How to Manage Contacts
  1. Adding a New Contact: Click the + Add Contact button in the top header. In the modal, fill in First Name, Last Name, Email, Phone, Company, Lifecycle Stage (Lead, MQL, SQL, Customer, Churned), and assign an internal sales owner. Fill in any custom fields defined for contacts and click Save Contact.
  2. Live Search & Filtering: Use the instant search bar to find contacts by name, email, or telephone. Use the dropdown filters to isolate contacts by Lifecycle Stage, Assigned Sales Rep, or Creation Date Range.
  3. Using the 5-Tab Detail Inspector Drawer: Click on any contact name in the table to open the slide-out inspector drawer without leaving the page:
    • Overview Tab: View contact details, computed predictive lead score badge, and quick action buttons (Call, Email, Add Deal).
    • Activities Timeline: Full chronological audit log of all emails sent, meetings scheduled, deals created, and stage movements.
    • Associated Deals: Summary of open and closed deals tied to this contact with stage status and dollar value.
    • Notes & Calls: Write internal notes with rich text or log summaries of phone conversations with call outcome tags.
    • Custom Fields: View and update business-specific custom field attributes on the fly.
  4. Logging Calls & Notes: In the contact drawer's Notes & Calls tab, click + Log Call to record call duration, date, and call outcome (e.g. Interested, Left Voicemail, Wrong Number), which instantly appends to the customer's timeline.
  5. Executing Bulk Batch Actions: Select multiple contacts using the left-hand checkboxes. Use the bulk action bar to: Reassign Sales Owner, Update Lifecycle Stage, Export Selected to CSV, or Move to Trash.
Database Schema Specification: wp_dcrm_contacts
Column Name Data Type Index Key Description
id BIGINT(20) UNSIGNED PRIMARY KEY Unique auto-increment contact identifier.
first_name VARCHAR(100) - Contact given name.
last_name VARCHAR(100) - Contact family name.
email VARCHAR(255) INDEX (MUL) Primary email address (Indexed for instant lookup).
phone VARCHAR(50) - Direct phone / mobile number.
company_id BIGINT(20) UNSIGNED FOREIGN KEY FK → wp_dcrm_companies.id. Associated organization.
lifecycle_stage VARCHAR(50) INDEX (MUL) Stage: subscriber, lead, customer, churned.
score INT(11) - Calculated predictive lead score integer.
owner_id BIGINT(20) UNSIGNED FOREIGN KEY FK → wp_users.ID. Assigned WP user/sales rep.
created_at DATETIME - Timestamp of record creation.

3.3 Companies Directory Module

Stores corporate organization accounts in wp_dcrm_companies. Supports B2B account-based management, corporate domain tracking, employee size banding, annual revenue estimation, and parent/subsidiary account linking.

Companies Directory

Figure 3.3: Companies Directory & Organization Profiles.

Step-by-Step User Guide: How to Manage B2B Accounts
  1. Creating a Company Profile: Click + Add Company. Enter Company Name, Corporate Website Domain (e.g. acme.corp), Industry dropdown selection, Employee Size Band, Annual Estimated Revenue, Phone, and Billing Address.
  2. Automatic Contact Grouping: Once a company is created, any contact added with an email matching the company domain or explicitly mapped to the company will automatically appear in the company's Employees & Stakeholders roster.
  3. Parent / Subsidiary Linking: For corporate enterprise clients with regional subsidiaries, set the Parent Company dropdown to establish a hierarchical organizational tree visible in the Relationship Graph.
  4. Account Pipeline Valuation: Open the company drawer to immediately see the combined revenue value of all past and active deals linked to any contact under this organization.
Firmographic Account Attributes
Corporate Domain & Web Enrichment

Automatically extracts root website domains (e.g. acme.com) to display favicon brand logos and group employee contact records.

Parent / Child Account Hierarchy

Establishes corporate hierarchies linking subsidiary regional offices to global parent corporate headquarters.

3.4 Leads & Deals Kanban Board

The Sales Pipeline module provides dual interfaces: an Inbound Leads Directory table and a multi-pipeline Drag & Drop Deals Kanban Board. It enables sales teams to manage opportunities from initial prospect acquisition through stage qualification to deal closure.

Inbound Leads List & Pipeline

Figure 3.4a: Inbound Leads Pipeline & Qualification Manager.

Deals Drag and Drop Kanban Board

Figure 3.4b: Deals Drag & Drop Kanban Board.

Step-by-Step User Guide: Managing Pipelines & Deals
  1. Qualifying & Converting Inbound Leads: In the Leads tab, review new prospects captured via website forms. Once a lead is verified, click Convert to Deal to create an active pipeline deal while converting the lead to a Contact.
  2. Switching Pipelines: Use the top pipeline selector dropdown to toggle between different business pipelines (e.g. Direct Sales, Enterprise B2B, Upsells & Renewals).
  3. Adding a New Deal: Click + Add Deal. Enter the Deal Title, select the primary Contact and Company, specify Deal Valuation Amount (e.g. $25,000), Target Expected Close Date, and select the initial stage.
  4. Dragging Cards Across Stages: Drag any deal card horizontally to transition it (e.g. from Discovery to Proposal Sent). Each stage card recalculates the total column dollar volume and weighted forecast amount automatically.
  5. Closing Deals (Won / Lost):
    • Closed Won: Drag to the Won stage or click Mark Won to trigger success celebrations, record the win date, and optionally generate an Invoice.
    • Closed Lost: Drag to Lost to open the Lost Reason modal. Select why the deal was lost (e.g. Price, Competitor, Budget Cut, Lost Interest) to power win/loss ratio reports.
  6. Switching Views (Kanban vs DataTable): Click the view toggle buttons in the top right to switch between the visual Kanban Board and a sortable DataTable view with bulk edit capabilities.
Kanban Stage Mechanics & Optimistic UI Updates

Dragging a deal card across stage columns triggers an immediate optimistic UI update. If the API request succeeds, a success notification fires; if it fails, RTK Query automatically rolls back the deal card position.

// Optimistic RTK Query stage transition handler snippet
const [moveDeal] = useMoveDealMutation();
const handleDragEnd = async (dealId, targetStageId) => {
  try {
    await moveDeal({ id: dealId, stage_id: targetStageId }).unwrap();
    toast.success('Deal stage updated successfully');
  } catch (err) {
    toast.error('Stage transition failed. Rolling back...');
  }
};

3.5 Invoicing & Financial Billing Engine

Dreams CRM features a full-featured, enterprise-grade invoicing and payment collection engine. Stored in wp_dcrm_invoices and wp_dcrm_inv_items, it provides multi-currency billing, custom tax rate calculation, line item pricing calculators, printable PDF export, and direct linking across Contacts, Companies, and Deals.

Invoicing & Financial Billing Engine

Figure 3.5: Dreams CRM Invoicing & Financial Billing Engine.

Step-by-Step User Guide: Creating & Dispatching Invoices
  1. Creating a New Invoice: Click + Create Invoice. Select the recipient Contact or Company account, choose the linked Deal (optional), specify Invoice Number (e.g. INV-2026-0042), Issue Date, Due Date, and Billing Currency (USD, EUR, GBP, AUD, etc.).
  2. Building Itemized Line Items: Click + Add Item to add service or product rows. Enter Description, Quantity, Unit Rate, and select individual Tax Rates. The dynamic calculator computes item totals, subtotal, total tax, and net grand total in real time.
  3. Applying Discounts & Notes: Enter fixed or percentage invoice discounts, specify Payment Terms (e.g. Net 30 Days), and add personalized client thank-you notes or bank wire instructions.
  4. Exporting & Printing Branded PDFs: Click Print / PDF to generate a clean, branded PDF invoice document incorporating company logos, addresses, and tax identifiers ready for sending or physical printing.
  5. Recording Payments & Tracking Lifecycle: When payment is received, click Record Payment to update the status from Sent to Paid. Overdue invoices automatically highlight in red on the dashboard once the due date elapses.
Core Financial Capabilities & Accounting Architecture
Multi-Line Item Builder

Dynamic line item builder supporting product descriptions, unit costs, quantities, and line item tax allocations.

Automated Tax & Discount Engines

Calculates subtotal, percentage/fixed tax deductions, and net balance due in real time with localized currency formatting.

Payment Lifecycle Tracking

Automates invoice lifecycle statuses (Draft, Sent, Paid, Overdue) with due-date reminders and status badges.

Invoice Database Entity Structure
Field Type Description
invoice_number varchar(64) Unique sequential invoice identifier (e.g. INV-2026-001).
contact_id / company_id bigint(20) unsigned Foreign keys linking billing recipient records.
subtotal / tax_rate / total_amount decimal(12,2) Monetary aggregates with precise currency rounding.
status varchar(32) Payment tracking status: draft, sent, paid, overdue.

3.6 Dynamic Custom Fields Engine

The Custom Fields Engine enables administrators to extend Contacts, Companies, Leads, and Deals without modifying PHP code. Definitions are stored in wp_dcrm_custom_fields and values use an EAV model in wp_dcrm_custom_field_values.

Dynamic Custom Fields Engine

Figure 3.6: Dreams CRM Dynamic Custom Fields Configuration.

Step-by-Step User Guide: Creating & Deploying Custom Fields
  1. Creating a New Custom Field: Navigate to Dreams CRM → Settings → Custom Fields and click + Add Field.
  2. Configuring Field Definition: Enter the Field Label (e.g. Tax ID / VAT Registration), a unique machine key (e.g. vat_number), and select the target Entity Binding (Contacts, Companies, Deals, Leads, or Tasks).
  3. Selecting Input Type: Choose from the 6 supported types: Text, Number/Currency, Dropdown Select, Date Picker, Boolean Switch, or Multi-Select. For select menus, enter the option choices separated by commas.
  4. Setting Validation Rules: Toggle Required Field if data input is mandatory before record submission, and specify an optional default value or input placeholder text.
  5. Automatic Form & Drawer Injection: Once saved, the new field automatically injects into the entity creation modal, edit dialog, and the Slide-Out Detail Drawer's Custom Fields tab with zero code modification.
Supported Custom Field Input Types
Text & Textarea

Single-line string values and multi-line formatted text blocks.

Number & Currency

Integer, decimal values, and formatted monetary currency inputs.

Select & Radio

Single-choice dropdown select menus and radio button lists.

Date Picker

ISO formatted date values (YYYY-MM-DD) with calendar popups.

Boolean Switch

True/False toggle switches for flags and compliance opt-ins.

Multi-Select

Multiple checkbox selections stored as JSON array strings.

3.7 User Roles & Granular RBAC Matrix

Dreams CRM includes an enterprise-grade Role-Based Access Control (RBAC) engine. Capabilities are stored in wp_dcrm_roles_meta and enforced both in PHP REST controllers and client-side React routes.

User Roles & Granular RBAC Matrix

Figure 3.7: User Roles & Granular RBAC Matrix Manager.

Step-by-Step User Guide: Configuring Roles & Permissions
  1. Selecting or Creating a Role: Under Settings → User Roles, select a standard WordPress role (e.g. Administrator, Editor, Author) or click + Add Custom CRM Role (e.g. Sales Representative, Junior SDR, Finance Manager).
  2. Configuring Permission Checkboxes: The matrix organizes permissions into intuitive entity rows (Contacts, Deals, Companies, Invoices, Reports, Settings). Check or uncheck permissions across the 5 access columns: View, Create, Edit, Delete, and Export.
  3. Restricting Financial & Admin Tools: For junior sales reps, uncheck delete_contacts, export_reports, and purge_database to prevent unauthorized data extraction.
  4. Saving & Real-Time Enforcement: Click Save Permissions. The matrix updates wp_dcrm_roles_meta immediately. Any affected logged-in user will instantly see restricted navigation items hidden, and unauthorized REST API queries will return 403 Forbidden.
52 Granular Capability Permission Flags
Module Category Capability Flag Name Access Description
Contacts view_contacts, create_contacts, edit_contacts, delete_contacts Grants read, write, update, and delete access to contact profiles.
Deals view_deals, create_deals, edit_deals, move_deals, delete_deals Controls stage movements and monetary valuation edits on deal cards.
Analytics view_analytics, export_reports Allows viewing executive metrics and exporting financial reports.
Settings manage_settings, purge_database, manage_rbac Administrative permissions for security policies and database tools.

3.8 Interactive Relationship Node Canvas Graph

The Relationship Graph visualizes complex interconnections between Contacts, Companies, and Deals on an interactive SVG canvas stored in wp_dcrm_relationships.

Interactive Relationship Node Canvas Graph

Figure 3.8: Interactive Relationship Node Canvas Graph.

Step-by-Step User Guide: Navigating the Relationship Canvas
  1. Canvas Pan & Zoom: Click and drag on the canvas background to pan across large networks. Use the mouse scroll wheel or the zoom controls in the corner to zoom in for detailed inspection or zoom out for a high-level network topology overview.
  2. Rearranging Nodes: Drag any node (Contact, Company, Deal) with your mouse. The physics simulation smoothly repositions connected link lines in real time.
  3. Opening Entity Inspector: Click on any node circle to open the entity's slide-out drawer, displaying its profile attributes, open deal values, and quick communication buttons.
  4. Filtering Entity Types: Use the top filter buttons to isolate specific relationships (e.g. show only Company-to-Contact employment links, or Contact-to-Deal stakeholder links).
Supported Entity Link Relationship Types
  • works_at — Links a Contact node to an employer Company node.
  • decision_maker — Designates a Contact as a key stakeholder on a Deal opportunity.
  • referred_by — Tracks peer-to-peer customer referral links between Contacts.
  • associated_with — Connects external vendor or subsidiary accounts.

3.9 Lead Scoring & Fuzzy Duplicate Detection

Automates lead prioritization and database hygiene using customizable scoring rules, activity event weightings, and Levenshtein-distance fuzzy matching algorithms.

Predictive Scoring Rule Engine
  • Email Engagement: +5 points per click, +2 points per open.
  • Form Submissions: +15 points for Contact Form 7 lead form submissions.
  • Demographic Matching: +25 points for corporate domain matching.
  • Inactivity Decay: Automatically degrades score by 10% after 30 days of continuous inactivity.
Step-by-Step User Guide: Running Deduplication & Merging Records
  1. Running a Batch Dedup Scan: Navigate to Dreams CRM → Contacts → Deduplication and click Run Deduplication Scan. The background runner evaluates contact records using exact and fuzzy matching on email address, phone number digits, and name similarity.
  2. Reviewing Candidate Pairs: Identified potential duplicate pairs appear in the Deduplication Queue with a similarity match percentage badge (e.g. 95% Similarity).
  3. Side-by-Side Merge Inspection: Click Review & Merge on any pair to open the side-by-side comparison modal. Choose which record serves as the Master Record and select field-by-field which email, phone, or company attribute to retain.
  4. Executing the Safe Merge: Click Confirm & Merge. The engine moves all deals, notes, calls, tasks, and audit logs from the duplicate into the master record in a single database transaction, and removes the redundant record without data loss.

3.10 A/B Split Testing & Conversion Funnels

The A/B Split Testing & Sales Funnel module empowers growth and marketing teams to configure multi-variant experiments, track step-by-step conversion drop-offs, and monitor conversion metrics directly inside WordPress.

A/B Split Testing & Sales Funnel Analytics

Figure 3.10: Dreams CRM A/B Split Testing & Conversion Funnel Experiments.

Step-by-Step User Guide: Launching an A/B Test
  1. Creating a Test: In the A/B Testing module, click + Create New Test. Enter the Experiment Title and select the conversion goal type (e.g. Form Submission, Deal Created, or WooCommerce Checkout).
  2. Defining Variants: Configure Variant A (Control) and Variant B (Variant). Allocate traffic percentage splits (e.g. 50% / 50% or 70% / 30%).
  3. Tracking Funnel Progression: As visitors interact with your site, impressions and conversion events are logged into wp_dcrm_ab_logs. Real-time conversion percentage graphs visualize performance side-by-side.
  4. Declaring a Winner: When a variant reaches statistical confidence (> 95%), click Declare Winner to automatically route 100% of future traffic to the winning configuration.
Key Experimentation Features
Multi-Variant Split Tests

Test landing pages, promotional headlines, or checkout flows with randomized traffic distribution.

Funnel Drop-Off Stages

Track visitors from Initial Visit ➔ Lead Capture ➔ Deal Opportunity ➔ Won Conversion with stage-by-stage percentages.

Statistical Winner Declaration

Computes conversion rate deltas and statistical confidence to automatically identify winning variants.

3.11 Email Campaigns & Visual Template Designer

Dispatches personalized HTML broadcast and drip campaigns to targeted segments. Manages templates in wp_dcrm_email_templates and processes delivery queues via wp_dcrm_email_queue and Action Scheduler for zero mail server throttling.

Email Campaigns & Visual Template Designer

Figure 3.11: Dreams CRM Email Template Designer & Campaign Queue.

Step-by-Step User Guide: Designing Templates & Sending Campaigns
  1. Creating Reusable Email Templates: Navigate to Campaigns → Email Templates and click + Create Template. Compose mobile-responsive HTML layouts with header logos, formatted text, call-to-action buttons, and compliant footer unsubscribe links.
  2. Injecting Dynamic Merge Tags: Personalize email copy using merge tags like {{first_name}}, {{last_name}}, {{company_name}}, or custom field tokens. The delivery engine replaces these tokens with recipient values at send time.
  3. Dispatching a Test Email: Click Send Test Email and enter your inbox address to inspect desktop and mobile layout rendering before sending to your contact list.
  4. Configuring & Launching Campaigns: Click + New Campaign. Select your target recipient audience (filtered by Lifecycle Stage, Deal Pipeline, or Custom Tag), pick your email template, and set the send schedule (Immediate or Scheduled).
  5. Action Scheduler Throttled Queue: Outgoing emails enter wp_dcrm_queue. The Action Scheduler automatically dispatches batches of 50 emails per interval to maintain high deliverability and avoid SMTP rate limits. Real-time open and click telemetry is recorded in wp_dcrm_events.
Key Campaign Capabilities & Features
  • Visual HTML Template Designer: Craft mobile-responsive email layouts with live preview, dynamic personalization tokens ({{first_name}}, {{company_name}}, {{lead_score}}), and test email dispatcher.
  • Automated Throttled Batch Dispatcher: Sends queued emails in batches of 50 via WP-Cron or Action Scheduler, preventing web host SMTP rate limits and blacklisting.
  • Live Engagement Telemetry: Embeds transparent tracking pixels and tracked redirect hyperlinks to record open rates, clicks, and bounce diagnostics in real time.
  • Dynamic Segment Resolution: Automatically resolves targeted recipient criteria (by contact stage, deal status, or custom tags) at send time.

3.12 Bulk Data Import & Export Migration Engine

Enables friction-free bulk data migration into and out of Dreams CRM. Supports Contacts, Companies, Leads, and Deals with intelligent column auto-detection, CSV/JSON file ingestion, and comprehensive backup exports.

Bulk Data Import & Export Migration Engine

Figure 3.12: Dreams CRM Bulk Import & Export Migration Interface.

Step-by-Step User Guide: Bulk Data Migration
  1. Downloading Sample CSV Templates: Click Download Template for Contacts, Companies, or Leads to review required column headers and sample data formats.
  2. Uploading Spreadsheet: Drag and drop your CSV or JSON file into the upload zone. The engine reads header rows and displays the visual field mapping screen.
  3. Mapping Columns to CRM Fields: The visual mapper automatically matches common column names (e.g. First Name ➔ first_name, Email Address ➔ email). Adjust any custom field mappings manually using the dropdown selectors.
  4. Configuring Duplicate Collision Rules: Choose how to handle records with matching emails: Skip Duplicates (preserves existing record untouched), Update Existing (overwrites with newer spreadsheet values), or Create New (forces new record creation).
  5. Executing Background Import: Click Start Import. An asynchronous batch worker imports records in chunks of 100 with a live progress indicator bar. An import summary report details total imported, skipped, and error rows.
Import & Export Workflow Capabilities
Flexible CSV & JSON Import

Upload spreadsheet exports from HubSpot, Salesforce, Zoho, or custom CSVs with visual drag-and-drop column mapping and duplicate resolution options.

Filtered Backup Exports

Export filtered CRM datasets by lifecycle stage, date range, or assigned owner into standard CSV or JSON format for compliance and reporting.

3.13 Contact Form 7 Ingestion Engine

Connects Contact Form 7 submissions directly to Dreams CRM. Mail-tags (e.g. [your-name], [your-email]) are mapped to CRM fields in wp_dcrm_cf7_feeds with automatic background retry handling.

Contact Form 7 Ingestion Engine

Figure 3.13: Contact Form 7 Field Mapping & Ingestion Manager.

Step-by-Step User Guide: Connecting CF7 Forms
  1. Creating an Ingestion Feed: Under Dreams CRM → Settings → Contact Form 7, click + Add New Feed.
  2. Selecting Your Target Form: Choose the target Contact Form 7 form from the dropdown list of forms installed on your WordPress site.
  3. Mapping CF7 Tags to CRM Fields: Pair form tags to CRM attributes (e.g. [your-name] ➔ Contact Name, [your-email] ➔ Contact Email, [your-phone] ➔ Phone, [your-message] ➔ Activity Note).
  4. Default Stage & Sales Owner: Select the default Lifecycle Stage for submissions (e.g. Lead) and assign an internal sales rep to automatically receive newly captured prospects.
  5. Testing Submission: Submit a test entry through your site's contact form. The entry instantly generates a new contact profile in Dreams CRM, logs the message into the activity stream, and increments the predictive lead score.
Deduplication Strategies
  1. Update Existing Record: Overwrites contact attributes if matching email address is found.
  2. Skip Duplicate: Ignores incoming submission if contact already exists in wp_dcrm_contacts.
  3. Create New Record: Always creates a new contact profile regardless of existing records.

3.14 General Settings & Administration Hub

Dreams CRM provides a centralized, reactive administration center that gives administrators complete command over system behavior, enabled workspace modules, sales pipeline definitions, dynamic lead scoring weights, master taxonomies, and transactional email transports.

The Settings Hub is organized into four core categories with real-time keyword search filtering:

Core & Modules

Module Manager, General Preferences, Data Retention & Seeder, and Developer API Docs.

Sales & Pipelines

Sales Pipelines & Stages, Predictive Scoring Rules, and Stage Lifecycle Registries.

Dictionary & Taxonomies

Lead Sources, Lost Deal Reasons, Industries, Call Reasons, Testimonials, FAQs, and Geographic Locations.

Email & ESP

SMTP transports (Custom SMTP, SendGrid, Mailgun, SES, Postmark) and Live Test Broadcast Dispatcher.

3.14.1 Organization & Regional Preferences

Configures primary brand identity, legal organization details, corporate headquarters contacts, and financial localization standards. These settings automatically brand generated PDF invoices, customer notifications, and currency displays throughout the entire CRM.

Organization and Regional Preferences

Figure 3.14.1: Organization & Regional Preferences Configuration.

Key Configuration Options
Setting Field Type / Format Functional Description & System Impact
Company Name string (required) Legal corporate business name displayed on invoice headers, customer portals, and outbound email signatures.
Industry Sector select dropdown Primary operating vertical (e.g. Software & Technology, Healthcare, Manufacturing) used for default benchmarking.
Primary Contact Email email string Official organization contact address used as the default sender and return-path for CRM transactional notifications.
Primary Phone Number tel string Main corporate contact phone number printed on invoice footers and contact correspondence.
Currency Code & Symbol select dropdown Sets base operating currency (e.g. USD $, EUR €, GBP £, INR ₹, AUD $, CAD $, JPY ¥). Drives all financial valuations, pipeline deal totals, and invoice calculations.
Default Timezone select dropdown Standardized timezone (e.g. Asia/Kolkata, America/New_York, UTC) applied to activity timestamps, scheduled email broadcasts, and task deadlines.
Date Format select dropdown User-preferred date display format across tables and logs (e.g. Month Day, Year, DD/MM/YYYY, or YYYY-MM-DD).
3.14.2 Dreams CRM Modules Manager

The Module Manager delivers granular control over CRM feature sets. Administrators can selectively enable or disable individual modules to tailor the workspace to specific organizational workflows or streamline navigation for sales agents.

Dreams CRM Modules Manager

Figure 3.14.2: Dreams CRM Modular Feature Toggle Grid.

Non-Destructive Toggle Architecture: Disabling a module instantly hides corresponding sidebar menus and suspends background tasks for that feature, but preserves all database records, custom fields, and relational links in MySQL. Re-enabling a module immediately restores full operational state without data loss.
All 20 Configurable Modules
Module Name Key Identifier Functional Scope
Contacts Management contacts Core contact directory, notes, calls, communications log, and detail modals.
Prospect Leads & Kanban leads Lead qualification pipeline board, scoring badges, and convert-to-deal workflow.
Companies Directory companies Enterprise accounts directory, employee associations, and account profiles.
Deals & Sales Pipeline deals Multi-stage sales opportunity pipeline, win/loss probabilities, and revenue conversion.
Dynamic Custom Fields Manager custom_fields Cross-module dynamic custom field schemas, types (text, number, date, select), and validations.
Service Invoicing Engine invoices Manual line-item service billing, tax calculations, PDF generation, and overdue tracking.
Service Projects & Tasks projects Post-sale client delivery workspaces, milestone progress, linked task boards, and work logs.
Relationship Mapping Graph relationships Interactive visual SVG network graph canvas displaying multi-entity corporate hierarchies.
Contact Dedup & Merge Engine dedup Multi-pass duplicate scanner, fuzzy confidence scoring, and side-by-side record merge tools.
Activity Stream & Audit Log activity Append-only CRM event stream recording logins, record updates, exports, and stage changes.
Analytics & Reporting reports Executive visual charts, pipeline velocity, agent performance metrics, and exportable reports.
Revenue Attribution Engine attribution Storefront tracking beacon, first/last-touch campaign attribution, and WooCommerce revenue tie-back.
Sales & Marketing Funnels funnels Step-by-step visitor journey mapping, stage drop-off rates, and conversion bottlenecks.
A/B Split Testing abtests Landing page and campaign variant performance comparison with statistical win declaration.
Campaign Email Management campaigns Targeted audience rule-builder, scheduled broadcast dispatcher, and engagement tracking.
Central Email Templates templates Reusable responsive HTML email templates with dynamic merge tag personalization tokens.
Bulk Import & Export Data Manager import_export High-performance CSV/Excel batch migrator with auto-column matching and chunked execution.
User Management & Granular RBAC users_roles Custom role builder, 18+ capability matrix toggles, and user assignment permissions.
Contact Form 7 Integration Module cf7_integration Real-time form tag mapping, duplicate handling rules, and automatic lead creation.
WooCommerce Suite & Connect woo_suite Live store order stream, sales analytics, AJAX cart drawer, checkout customizer, and product compare.
3.14.3 Sales Pipelines & Stage Configuration

Tailors your sales cycles to match distinct operational processes. Administrators can configure multiple distinct pipelines (e.g. Inbound Sales, Enterprise Retainers, Partner Channels) and customize the exact sequence of deal stages.

Sales Pipeline Configuration

Figure 3.14.3: Custom Sales Pipelines and Stage Outcome Flags.

Stage Capabilities & Won/Lost Outcome Flags
  • Custom Stage Creation: Define customized deal steps (e.g. Lead Qualified ➔ Discovery Call ➔ Proposal Sent ➔ Negotiation ➔ Closed Won).
  • Visual Stage Reordering: Click the Up and Down arrows to adjust stage ordering in the deal Kanban board and analytics funnels.
  • Outcome Designators: Mark terminal stages explicitly with WON OUTCOME STAGE or LOST OUTCOME STAGE. When a deal reaches a designated Won or Lost stage:
    • The system automatically records the completion timestamp and computes cycle duration.
    • For lost deals, a prompt requests the specific Lost Reason for post-mortem reporting.
    • Pipeline conversion KPIs and win-rate charts update in real time.
3.14.4 Predictive Lead Scoring Rules Engine

The Lead Scoring Rules Engine dynamically evaluates prospect engagement and assigns points based on online behavior, store interactions, and campaign responses. It blends raw event weights with algorithmic Recency, Frequency, and Monetary (RFM) exponential decay mathematics.

Predictive Lead Scoring Rules

Figure 3.14.4: Lead Scoring Event Triggers & Weight Customizer.

Standard Scoring Triggers
Event Trigger Event Key Default Weight Scoring Description
Storefront / Page Visit page_visit +1.00 pt Points awarded per tracked web page session visit captured via the beacon snippet.
Email Open email_open +2.00 pts Points awarded when a prospect opens an outbound HTML campaign broadcast.
Email Link Clicked email_click +5.00 pts Points awarded when a recipient clicks a tracked redirect hyperlink in an email.
Cart Abandoned cart_abandonment +8.00 pts High-intent indicator awarded when a shopper leaves items in cart without completing checkout.
Order Placed order_placed +15.00 pts Maximum engagement score awarded for completing a WooCommerce checkout transaction.
Lead Scoring Workflow Operations
  • Custom Event Rules: Click + Add Custom Rule to define organization-specific triggers (e.g. Webinar Attended, Whitepaper Downloaded, or negative point penalties for Unsubscribes).
  • Interactive Rule Testing: Click Test Trigger beside any rule to immediately simulate a live telemetry event against a contact profile and verify instant score recalculation.
  • Batch Recalculation: Clicking Recalculate Scores launches a background worker that re-evaluates all historical events against updated rule weights across the entire database.
3.14.5 Dictionary, Taxonomies & Master Registries

Standardizes data entry across your sales and support teams. By defining central lookup tables, Dreams CRM eliminates typos, ensures consistent dropdown selections, and enables structured analytics across all CRM modules.

Lead Sources Taxonomy Registry

Figure 3.14.5a: Lead Sources Taxonomy Registry.

Lost Deal Reasons Taxonomy Registry

Figure 3.14.5b: Lost Deal Reasons Taxonomy Registry.

Supported System Taxonomies
Lead Sources

Track where prospects originate: Direct Call, Organic Search, Referral, Social Media, Website, and Paid Advertising.

Lost Deal Reasons

Understand why deals fail: Price Point Too High, Selected Competitor, Budget Frozen, Feature Gap, and Client Unresponsive.

Industries

Industry sector classification for company accounts: Software & Technology, Finance & Banking, Healthcare, Retail, etc.

Call Log Reasons

Categorize telephone interactions: Discovery Call, Demo Presentation, Contract Review, and Account Check-in.

Testimonials & FAQs

Maintain pre-approved client quotes and frequently asked objection-handling questions accessible within deal notes.

Geographic Locations

Relational three-tier hierarchy: Countries (with ISO-2 codes) ➔ States / Provinces ➔ Cities for cascading address fields.

3.14.6 Email Delivery & ESP Configuration

Dreams CRM features an enterprise SMTP and Email Service Provider (ESP) delivery engine designed to ensure 99%+ deliverability for marketing campaigns, invoice notifications, and lead alerts.

Email Delivery & ESP Configuration

Figure 3.14.6: Email Delivery Settings & Instant SMTP Tester.

Supported Delivery Transports
  • WordPress Default (wp_mail): Uses the web server's native sendmail daemon. Recommended only for local testing and lightweight notifications.
  • Custom Authenticated SMTP: Connects to corporate mail servers, Google Workspace, Microsoft 365, or dedicated relays using TLS (Port 587) or SSL (Port 465).
  • Cloud ESP Providers: Direct API / relay integration with high-volume deliverability engines: SendGrid Mailgun Amazon SES Postmark
Built-In SMTP Delivery Tester

Before launching live campaigns, verify that your SMTP credentials and DNS SPF/DKIM records are properly configured:

  1. Enter your personal inbox in the Target Email Address field on the right-hand panel.
  2. Click Send Test Broadcast.
  3. Dreams CRM executes an immediate socket handshake, authenticates with the remote SMTP server, and delivers a diagnostic HTML test email with full header verification.
3.14.7 Data Retention, Seeding & Maintenance

Provides critical database maintenance tools for system administrators, staging environment developers, and staging sandbox onboarding.

Data Retention and Factory Reset

Figure 3.14.7: Developer Demo Data Seeder and Safe Truncate Tool.

Seed Developer Demo Data

Populates realistic, interconnected test records into Contacts, Companies, Leads, Deals, Invoices, Projects, Tasks, and Activity Streams with full relational mapping.

Supported Quantities: 10, 20, 50, or 100 records per module with realistic names, enterprise companies, phone numbers, deal stages, and financials.

Truncate All CRM Records (Safe Purge)

Empties all contact records, companies, leads, invoices, deals, pipelines, and activity audit streams while strictly preserving database schemas, roles, permissions, custom field definitions, and global settings.

Requires an explicit admin confirmation dialog to prevent accidental data loss.

3.14.8 In-App REST API & Developer Hub

Developers can access an interactive REST API reference and live console directly within the Settings dashboard without opening external documentation or third-party API clients.

Dreams CRM Developer Hub

Figure 3.14.8: In-App Interactive REST API Specification & Console.

Developer Hub Highlights
  • Interactive Endpoint Directory: Explore all available REST endpoints across Contacts, Companies, Deals, Invoices, Campaigns, and Webhooks with parameter descriptions and return schemas.
  • Multi-Method Authentication Guide: Clear documentation for X-WP-Nonce cookie authentication for frontend JS apps and Application Passwords for external microservices, Zapier, and mobile integrations.
  • WordPress Actions & Filters Reference: Complete listing of native WordPress hooks (e.g. dreams_crm_contact_created, dreams_crm_deal_stage_changed) enabling deep theme and plugin customization.

Section 4: WooCommerce Integration Suite

Detailed technical manual for WooCommerce sales analytics, cart drawers, checkout field customization, and product comparison tools.

4.1 WooCommerce Sales Analytics Module

Integrates directly with WooCommerce storefront order tables. Synchronizes completed orders into wp_dcrm_woo_orders to calculate Customer Lifetime Value (LTV), Average Order Value (AOV), and customer retention cohort analytics.

WooCommerce Sales Analytics

Figure 4.1: Dreams CRM WooCommerce Sales Analytics Dashboard.

Step-by-Step User Guide: Analyzing Storefront Sales
  1. Automated Order Synchronization: Completed WooCommerce orders automatically sync into wp_dcrm_woo_orders via woocommerce_order_status_completed hooks with zero manual intervention.
  2. Evaluating Customer Lifetime Value (LTV): Filter metrics by date range to evaluate revenue generated per customer contact. High-LTV customers automatically receive VIP score boosts.
  3. Monitoring Average Order Value (AOV): Analyze fluctuations in basket size across marketing campaigns and seasonal promotion periods to optimize pricing strategies.
  4. Cohort Repeat Purchase Rates: Track the percentage of buyers who make a 2nd or 3rd purchase within 30, 60, and 90 days, identifying dormant buyers for automated retention email sequences.
Core E-Commerce Metrics & Formulas
Customer Lifetime Value (LTV)

Total revenue generated by a single customer contact across all historical WooCommerce orders.

Average Order Value (AOV)

Formula: Total Gross Revenue / Total Order Count over selected timeframe.

Repeat Customer Rate

Percentage of customer contacts with more than 1 completed purchase.

4.2 AJAX Quick Cart Drawer Module

The AJAX Quick Cart Drawer replaces traditional page-refresh WooCommerce cart redirects with a frictionless side drawer that slides out smoothly upon adding any product to cart. Built with vanilla JavaScript and custom REST API endpoints (/wp-json/dreams-crm/v1/cart/), it maintains real-time state synchronization with WooCommerce cart sessions without requiring full-page reloads.

AJAX Quick Cart Drawer

Figure 4.2: Dreams CRM AJAX Quick Cart Drawer Interface.

Step-by-Step User Guide: Configuring the Quick Cart Drawer
  1. Enabling the Cart Drawer: Navigate to Dreams CRM → WooCommerce → Quick Cart and toggle Enable AJAX Cart Drawer to Active.
  2. Setting Free Shipping Goal: Enter your minimum free shipping threshold amount (e.g. $100.00). The animated progress bar inside the drawer will automatically compute the remaining amount required as shoppers add items.
  3. Configuring Recommended Cross-Sells: Toggle Show Cross-Sell Carousel and select the maximum number of items (1 to 6) to display. Complementary products appear at the bottom of the drawer with 1-click Add to Cart buttons.
  4. Customizing Drawer Appearance: Choose the slide-in entrance direction (Slide from Right or Slide from Left) and select your theme accent color for the checkout button.
  5. Abandoned Cart Capture: When a shopper enters their email in the drawer or checkout form, the session is tracked in wp_dcrm_carts to trigger automated recovery workflows if checkout is abandoned.
Key Technical Capabilities & Features:
  • Free Shipping Threshold Bar: Dynamic progress indicator calculated against active WooCommerce shipping zone rules (e.g. "Add $15.00 more to qualify for FREE Express Shipping!").
  • 1-Click Coupon Application: AJAX discount input field allowing instant coupon code validation and subtotal recalculation inside the cart drawer.
  • Cross-Sell Carousel: Embedded horizontal product slider recommending complementary products based on current cart items with 1-click add-to-cart capability.
  • Quantity Adjuster & Real-Time Fragment Sync: Instant quantity increment counters (+ / -) operating via wc_fragment_refresh hooks without full page refreshes.
  • Cart Retention Recovery Trigger: Automatically captures guest email inputs and queues pending cart sessions to wp_dcrm_abandoned_carts table for automated recovery email workflows.
Module Configuration Matrix
Parameter Setting Range Technical Function
Drawer Position Left / Right Slide Controls entrance animation direction for slide-out cart overlay.
Free Shipping Goal Numerical (e.g. 100.00) Sets target threshold value for real-time progress bar calculation.
Cross-Sell Max Items 1 – 6 Products Defines maximum recommended product items rendered inside cart slider.
Trigger Auto-Open Enable / Disable Automatically slides drawer open upon clicking any storefront Add to Cart button.

4.3 Checkout Field Builder Module

The Checkout Field Builder empowers store administrators to completely customize, reorder, add, or disable WooCommerce checkout fields through a visual drag-and-drop management panel inside WP Admin. It supports both classic WooCommerce checkout forms and modern Gutenberg WooCommerce Checkout Blocks.

Checkout Field Builder

Figure 4.3: Dreams CRM Checkout Field Builder Configuration Panel.

Step-by-Step User Guide: Customizing Checkout Fields
  1. Visual Drag-and-Drop Reordering: Navigate to Dreams CRM → WooCommerce → Checkout Builder. Drag any field card vertically to adjust the display order on your storefront checkout page.
  2. Adding Custom Fields: Click + Add Custom Field. Enter the Field Label (e.g. VAT / Tax ID, Preferred Delivery Date), Field Key, Field Type (Text, Dropdown, Date Picker, Checkbox), and assign to Billing or Shipping section.
  3. Setting Conditional Visibility Rules: Configure logic triggers so fields only appear under specific criteria (e.g. display Company Tax ID only if the Company Name field is populated, or show Delivery Date only for specific shipping methods).
  4. Validation & Regex Masks: Enforce mandatory input rules and regex formats (e.g. valid European VAT syntax or standardized telephone number formatting).
  5. Mapping to CRM Contact Attributes: Map custom checkout inputs directly to contact fields in wp_dcrm_contact_meta so buyer submissions seamlessly populate customer profiles upon order placement.
Key Technical Capabilities & Features:
  1. Visual Drag-and-Drop Ordering Grid: Intuitively rearrange standard WooCommerce billing and shipping fields (First Name, Last Name, Company, Address, Phone, Email, Order Notes).
  2. Custom Field Injection & CRM Mapping: Create custom checkout input fields (VAT / Tax ID, Business Registration, Preferred Delivery Date, Delivery Notes) and map field inputs directly to custom contact attributes in wp_dcrm_contact_meta.
  3. Conditional Visibility & Logic Rules: Define display rules based on cart subtotal, shipping destination country, customer user role, or specific product categories present in order.
  4. Field Validation & Regex Masking: Enforce required field rules, regex pattern matching (e.g. valid VAT formats, phone formatting), and custom field placeholder tooltips.
  5. Filter Hook Compatibility: Hooks directly into WooCommerce checkout filter hooks (woocommerce_checkout_fields, woocommerce_billing_fields, woocommerce_shipping_fields) preserving full compatibility with gateway plugins.
Supported Input Field Types
Text & Textarea

Single-line text, email inputs, and multi-line notes boxes.

Select & Radio

Single choice select dropdowns and radio option groups.

Date & Time Picker

Flatpickr date picker with min/max date boundaries.

4.4 Dynamic Thank You Page Rules & Customizer

The Dynamic Thank You Page Rules module replaces the generic WooCommerce order confirmation screen with intelligent, context-driven thank-you experiences. Merchants can configure granular conditional redirection rules, personalized post-purchase promotional banners, survey feedback forms, and exclusive cross-sell vouchers tailored to what the customer actually bought.

Dynamic Thank You Page Rules

Figure 4.4: Dreams CRM Dynamic Thank You Page Rules & Customizer Interface.

Step-by-Step User Guide: Configuring Dynamic Thank You Rules
  1. Creating a Thank You Rule: Under Dreams CRM → WooCommerce → Thank You Rules, click + Add New Rule. Enter a descriptive title (e.g. High-Value Orders VIP Banner).
  2. Configuring Trigger Conditions: Set conditions based on: Gross Order Subtotal (e.g. > $200), Payment Method (e.g. Direct Bank Transfer), or Specific Product Categories.
  3. Customizing Confirmation Content: Choose whether to inject a personalized greeting banner, embed a video walkthrough, display a post-purchase feedback survey, or generate a dynamic 15% re-order coupon code valid for 48 hours.
  4. Ordering Rule Priorities: Drag rules in the priority table. The engine evaluates order parameters from top to bottom; the first matching rule dictates the confirmation layout.
Key Capabilities & Conditional Triggers:
  • Multi-Condition Rule Engine: Evaluate orders against parameters including payment gateway used (e.g. Stripe, PayPal, COD), total order value ranges, user membership role, shipping method, and product taxonomy/category matches.
  • Custom Content Injection & Visual Blocks: Display personalized post-purchase video embeds, order-specific delivery instructions, customer survey widgets, or dynamic social sharing links.
  • Dynamic Discount & Re-Order Coupon: Generate unique, time-limited discount coupon codes on the confirmation screen to incentivize repeat purchases within 24–48 hours.
  • External Redirection or In-Page Replacement: Option to seamlessly replace native WooCommerce order-received templates or redirect high-value VIP customers to specialized dedicated landing pages.
  • Order Meta Synchronization: Automatically logs rule triggers and customer survey feedback into wp_dcrm_activities and attaches details to the customer contact timeline.
Rule Trigger Evaluation Priority
Priority Order Trigger Condition Type Evaluation Logic
Level 1 Specific Product / Category Highest precedence; matches if order contains configured target SKU or category IDs.
Level 2 Order Value Range (Min/Max) Evaluates gross order subtotal against thresholds (e.g. VIP orders > $500).
Level 3 Payment Method Gateway Matches checkout payment IDs (e.g. custom bank transfer instructions vs credit card).
Level 4 Default Fallback Template Standard enhanced thank-you layout rendered when no specific rule criteria match.

4.5 Product Compare Matrix Module

The Product Compare Matrix provides buyers with a floating side-by-side comparison drawer, enabling them to select multiple WooCommerce items across catalog pages and compare technical specifications, prices, attributes, stock availability, and customer ratings in a clean tabular grid.

Product Compare Matrix

Figure 4.5: Dreams CRM Product Compare Matrix Panel.

Step-by-Step User Guide: Enabling & Managing Product Comparisons
  1. Enabling the Compare Module: Under Dreams CRM → WooCommerce → Product Compare, toggle Enable Comparison Dock to On.
  2. Selecting Global Attributes to Compare: Check the global WooCommerce attributes to include in comparison rows (e.g. pa_brand, pa_size, pa_color, pa_ram, Weight, Dimensions, In-Stock Status, Customer Rating).
  3. Storefront Customer Experience: When shoppers browse catalog or single product pages, clicking the Compare button docks items into a persistent bottom floating dock bar.
  4. Side-by-Side Comparison Drawer: Clicking Compare Now opens a clean modal comparison table. Shoppers can toggle the Highlight Differences switch to spotlight contrasting technical specs, and click Add to Cart directly from the table headers.
Key Technical Capabilities & Features:
  • Sticky Storefront Floating Dock: Persistent bottom dock bar showing current selected items for comparison, accessible from archive grids, shop pages, and single product views.
  • Attribute Difference Highlight: Interactive toggle ("Highlight Differences") that isolates conflicting specs (e.g., CPU, RAM, Dimensions, Warranty) to assist buyers in evaluating competing product variations.
  • LocalStorage & Session Persistence: Stores comparison lists in browser localStorage and customer session cookies so selected comparison items persist seamlessly across page navigations.
  • 1-Click Purchase from Comparison: Direct Buy buttons inside comparison table headers enabling immediate purchase of evaluated items.
  • Custom Attribute Schema Mapping: Configurable attribute selection allowing store managers to specify global attributes (e.g. pa_brand, pa_color, pa_size, pa_material) rendered in comparison grids.
Technical Performance Specifications
Capability Specification / Limit Implementation Details
Max Compare Items Up to 4 Products Simultaneously Optimized horizontal layout grid for side-by-side matrix view.
Viewport Adaptation Full Responsive Scroll Horizontal touch-drag scrolling for tablet and mobile viewports.
Specs REST Endpoint GET /wp-json/dreams-crm/v1/compare/specs Asynchronous REST API query returning cached attribute matrix JSON.

5.1 REST API Specification & Endpoint Directory

Dreams CRM features a decoupled, headless architecture powered by a high-throughput REST API under namespace dreams-crm/v1. Every action available in the React Single-Page Application is accessible to external developers, ERP systems, Zapier automations, and mobile clients.

Dreams CRM REST API Specification

Figure 5.1: Dreams CRM Interactive REST API Specification & Endpoint Explorer.

Authentication Mechanisms
Cookie Nonce Authentication

For internal WordPress admin requests and the React SPA. Requires header: X-WP-Nonce: {wp_create_nonce('wp_rest')}.

Application Passwords & Bearer Tokens

For external integrations (Zapier, mobile apps, third-party microservices). Requires header: Authorization: Basic {base64(user:app_password)} or Bearer {jwt_token}.

Comprehensive REST Endpoint Directory
HTTP Endpoint Route Capability Flag Operation Description
Dashboard & Telemetry
GET /dreams-crm/v1/dashboard/kpis view_analytics Aggregated KPIs: contact growth, pipeline total, conversion rates, and activity stream.
GET /dreams-crm/v1/funnel/analytics view_analytics Step-by-step conversion funnel drop-off analytics.
GET /dreams-crm/v1/attribution view_analytics Multi-touch marketing revenue attribution touchpoints.
Contacts Directory
GET /dreams-crm/v1/contacts view_contacts List paginated contacts with debounced search, stage filters, and sorting.
POST /dreams-crm/v1/contacts create_contacts Create new contact record with associated custom fields.
GET /dreams-crm/v1/contacts/{id} view_contacts Fetch single contact profile with linked deals, company, notes, and activity timeline.
PUT /dreams-crm/v1/contacts/{id} edit_contacts Update contact attributes, lifecycle stage, or custom field values.
DELETE /dreams-crm/v1/contacts/{id} delete_contacts Permanently remove or soft-delete contact record.
POST /dreams-crm/v1/contacts/{id}/calls edit_contacts Log phone call duration, date, and outcome notes to contact timeline.
Companies Directory
GET /dreams-crm/v1/companies view_companies List organization accounts with employee counts and total deal valuation.
POST /dreams-crm/v1/companies create_companies Create organization account with domain, industry, and address details.
PUT /dreams-crm/v1/companies/{id} edit_companies Update organization firmographics or parent company linkage.
Pipelines & Deals
GET /dreams-crm/v1/deals view_deals Fetch deals grouped by pipeline and stages for Kanban rendering.
POST /dreams-crm/v1/deals create_deals Create new deal opportunity with monetary amount, probability, and close date.
POST /dreams-crm/v1/deals/{id}/move move_deals Transition deal card to new stage ID with optimistic update rollback support.
GET /dreams-crm/v1/pipelines view_deals List configured pipelines and their defined stages with win probabilities.
Invoicing & Billing
GET /dreams-crm/v1/invoices view_invoices List invoices with payment status, balances due, and recipient details.
POST /dreams-crm/v1/invoices create_invoices Generate itemized invoice with multi-line items, taxes, discounts, and currency.
POST /dreams-crm/v1/invoices/{id}/record-payment edit_invoices Record partial or full payment against invoice and transition status to Paid.
Roles & Security
GET /dreams-crm/v1/roles manage_rbac Fetch 52-capability matrix for all registered WordPress and custom CRM roles.
PUT /dreams-crm/v1/roles/{role} manage_rbac Update granular permission checkboxes stored in wp_dcrm_roles_meta.
Scoring & Deduplication
POST /dreams-crm/v1/dedup/scan manage_settings Trigger asynchronous background deduplication scan across contacts.
POST /dreams-crm/v1/dedup/merge edit_contacts Merge candidate duplicate into primary master record with consolidated timeline.
WooCommerce Suite
GET /dreams-crm/v1/woo/analytics view_analytics Fetch WooCommerce sales totals, Customer Lifetime Value (LTV), and Average Order Value (AOV).
GET /dreams-crm/v1/cart None (Public) Fetch real-time cart fragments, subtotal, and free shipping progress for quick drawer.
GET /dreams-crm/v1/compare/specs None (Public) Return comparative technical specification JSON for requested product IDs.
Sample Request: Create Contact Record
POST /wp-json/dreams-crm/v1/contacts HTTP/1.1
Host: yoursite.com
Content-Type: application/json
X-WP-Nonce: a1b2c3d4e5

{
  "first_name": "Alexander",
  "last_name": "Hamilton",
  "email": "alexander@treasury.gov",
  "phone": "+1-212-555-0177",
  "company_id": 14,
  "lifecycle_stage": "lead",
  "score": 45,
  "custom_fields": {
    "vat_number": "US-987654321",
    "budget": "$100,000"
  }
}

5.2 Database Architecture & 52-Table Schema

Unlike traditional WordPress CRM plugins that store records as Custom Post Types (CPTs) in wp_posts and wp_postmeta—causing severe database bloat and query timeouts beyond 10,000 rows—Dreams CRM operates on an isolated, dedicated database schema comprising 52 custom SQL tables with foreign key indexing.

52 Dedicated SQL Tables Breakdown
Core Entities & Billing (12 Tables)
  • wp_dcrm_contacts — Primary contact profiles
  • wp_dcrm_contact_meta — Contact EAV attributes
  • wp_dcrm_companies — Organization B2B accounts
  • wp_dcrm_leads — Inbound lead acquisition records
  • wp_dcrm_deals — Pipeline deal opportunities
  • wp_dcrm_pipelines — Multi-pipeline registries
  • wp_dcrm_stages — Pipeline stage definitions
  • wp_dcrm_invoices — Invoice header records
  • wp_dcrm_inv_items — Itemized invoice line items
  • wp_dcrm_projects — Client project milestones
  • wp_dcrm_tasks — Scheduled team tasks
  • wp_dcrm_relationships — Bidirectional node graph links
Marketing, Funnels & Scoring (16 Tables)
  • wp_dcrm_campaigns — Broadcast email campaigns
  • wp_dcrm_templates — Reusable HTML email templates
  • wp_dcrm_queue — Throttled outgoing mail queue
  • wp_dcrm_events — Email opens, clicks, and bounces
  • wp_dcrm_ab_tests — A/B split experiment headers
  • wp_dcrm_ab_vars — A/B test variant configurations
  • wp_dcrm_ab_logs — Impression & conversion telemetry
  • wp_dcrm_funnels — Sales conversion funnels
  • wp_dcrm_f_steps — Funnel progression steps
  • wp_dcrm_f_analytics — Funnel conversion metrics
  • wp_dcrm_score_rules — Predictive scoring criteria
  • wp_dcrm_contact_scores — Computed contact score cache
  • wp_dcrm_score_history — Score fluctuation audit log
  • wp_dcrm_dedup_candidates — Duplicate candidate pairs
  • wp_dcrm_merge_log — Contact merge audit records
  • wp_dcrm_revenue_attr — Revenue attribution models
Commerce & Integrations (8 Tables)
  • wp_dcrm_woo_orders — Synced WooCommerce order cache
  • wp_dcrm_carts — Abandoned storefront cart sessions
  • wp_dcrm_checkout_fields — Custom checkout field definitions
  • wp_dcrm_thankyou_rules — Conditional thank-you page rules
  • wp_dcrm_cf7_feeds — Contact Form 7 field mappings
  • wp_dcrm_custom_fields — Dynamic entity custom field schema
  • wp_dcrm_custom_field_values — Custom field value storage
  • wp_dcrm_roles_meta — 52-capability RBAC matrix
Lookups, Logs & Registries (16 Tables)
  • wp_dcrm_activities — Global CRM interaction stream
  • wp_dcrm_activity_log — System security event log
  • wp_dcrm_c_notes / wp_dcrm_c_calls — Contact notes & calls
  • wp_dcrm_comp_notes / wp_dcrm_comp_calls — Company notes & calls
  • wp_dcrm_sources — Lead acquisition source dropdowns
  • wp_dcrm_industries — Organization industry sectors
  • wp_dcrm_lost_reasons — Closed deal loss categorization
  • wp_dcrm_call_reasons — Phone call purpose taxonomies
  • wp_dcrm_countries / states / cities — Geographic lookups
  • wp_dcrm_dash_prefs — User dashboard widget arrangements

5.3 PHP Action & Filter Hooks Guide

Dreams CRM exposes standard WordPress action and filter hooks, allowing theme developers and agency partners to programmatically extend every workflow.

Core Action Hooks
Action Hook Parameters Trigger Timing
dreams_crm/contact_created (int $contact_id, array $data) Fires immediately after a new contact profile is inserted into wp_dcrm_contacts.
dreams_crm/deal_stage_changed (int $deal_id, int $old_stage, int $new_stage) Fires when a sales deal is moved across pipeline Kanban stages.
dreams_crm/invoice_paid (int $invoice_id, float $amount, string $gateway) Fires when an invoice payment is recorded or synced from WooCommerce.
dreams_crm/cf7_lead_ingested (int $contact_id, int $form_id, array $posted_data) Fires when a Contact Form 7 submission successfully creates or updates a lead.
Developer Code Examples
// Example 1: Send Slack webhook notification when a deal is Won
add_action( 'dreams_crm/deal_stage_changed', function( $deal_id, $old_stage, $new_stage ) {
    // Stage ID 5 represents 'Closed Won' in this pipeline
    if ( 5 === (int) $new_stage ) {
        wp_remote_post( 'https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK', [
            'headers' => [ 'Content-Type' => 'application/json' ],
            'body'    => json_encode( [
                'text' => sprintf( '🎉 Deal #%d was officially marked WON! Congratulations team!', $deal_id ),
            ] ),
        ] );
    }
}, 10, 3 );

// Example 2: Add custom merge tag for email campaign templates
add_filter( 'dreams_crm_email_merge_tags', function( $tags, $contact_id ) {
    $loyalty_tier = get_user_meta( $contact_id, 'loyalty_tier', true ) ?: 'Bronze';
    $tags['{{loyalty_tier}}'] = $loyalty_tier;
    return $tags;
}, 10, 2 );

5.4 WP-CLI Terminal Automation Tools

Dreams CRM includes native WP-CLI command integration for automated staging deployment, headless server provisioning, demo data generation, and cron maintenance.

WP-CLI Command Accepted Options Function Description
wp dreams-crm seed --count=[10|20|50|100] Populates all CRM modules with realistic relational demo records (Contacts, Companies, Deals, Invoices, Tasks).
wp dreams-crm truncate --force Empties all CRM records and activity streams while safely preserving database schema definitions and settings.
wp dreams-crm dedup run --batch=[50|100] Executes an immediate command-line batch deduplication scan over contact profiles without browser overhead.
wp dreams-crm status --format=json Outputs system health status, active table row counts, Action Scheduler queue sizes, and version info.
CLI Terminal Example:
# Seed 50 demo records across all CRM modules
$ wp dreams-crm seed --count=50
Success: Seeded 50 contacts, 50 companies, 50 leads, 50 deals, and 50 invoices successfully.

# Check CRM system health status
$ wp dreams-crm status
+-------------------+------------+
| Component         | Status     |
+-------------------+------------+
| Custom Tables     | 52 / 52 OK |
| Total Contacts    | 1,240      |
| Total Deals       | 315        |
| Active Pipelines  | 3          |
| Action Scheduler  | 0 Pending  |
+-------------------+------------+

5.5 Troubleshooting & Frequently Asked Questions

Q: REST API returns 404 Not Found on all endpoints?

Resolution: WordPress rewrite rules require flushing. Navigate to WP Admin → Settings → Permalinks and simply click Save Changes. Ensure your permalink structure is set to Post name rather than Plain.

Q: Database tables not created upon plugin activation?

Resolution: Verify your MySQL database user possesses CREATE TABLE and ALTER TABLE privileges. You can manually re-trigger migration creation at any time under Dreams CRM → Settings → Maintenance → Re-run Migrations.

Q: "Nonce Verification Failed" or 403 Forbidden errors in admin SPA?

Resolution: WordPress security nonces expire every 12–24 hours. Refresh your browser window to regenerate a fresh nonce token, or clear your browser cache if aggressive object caching (Redis/Memcached) is serving stale admin HTML pages.

Q: Large CSV import runs into PHP memory exhaustion or timeout?

Resolution: Increase your server PHP memory limit in wp-config.php via define('WP_MEMORY_LIMIT', '256M'); and set max_execution_time = 300 in your php.ini. For files exceeding 20,000 rows, use the native WP-CLI import command.

Q: Outgoing campaign emails landing in spam or not sending?

Resolution: Shared web host wp_mail() often lacks SPF, DKIM, and DMARC DNS records. Configure an authenticated SMTP service (e.g. SendGrid, Mailgun, Amazon SES) under Dreams CRM → Settings → Email Delivery to guarantee 99%+ deliverability.

Support

Need Support?

If this documentation does not address your questions, please feel free to contact us via email at support@dreamstechnologies.com

Reach the team at GMT+5:30. Typical reply within 12–24 hours on weekdays — rarely up to 48 hrs during holidays. Support is available to verified buyers for template-related issues.

Contact Support

Important Note : We strive to offer top-notch support, but it's only available to verified buyers and for template-related issues such as bugs and errors. Custom changes and third-party module setups are not covered.

Custom Work

Do you need a customized application for your business?

If you need a customized application for your business depends on your specific requirements and goals, Please contact us. Customization can be the key to success, ensuring your project perfectly aligns with your unique goals and requirements.

Don't Miss Out on the Benefits of Customization!

Unlock the potential of your project. It's time to ensure your project isn't another cookie-cutter solution but truly unique and effective one.

Discover how customization can make a difference in your project's success. Let's create a solution that's as unique as your vision!

We'll tailor the application to meet your specific needs and preferences.

We will upload your website to the server and ensure it is live.

thanks

Thank You

Thank you once again for downloading Dreams CRM.
We hope you're enjoying your experience, and we kindly request that you take a moment to share your valuable review and rating with us.

Review Link