CumpleAI Overview6452c20
CumpleAI is an AI-powered, multi-tenant SaaS CRM designed specifically for Mexican accounting firms (despachos contables). It streamlines tax compliance, client management, collections, payroll processing, and team coordination -- all within a single platform tailored to the regulatory and operational needs of the Mexican accounting industry.
This User Guide covers the CRM web application at app.cumpleai.com. A separate guide exists for the Client Portal at portal.cumpleai.com.
Key Concepts6452c20
Before you begin using CumpleAI, it helps to understand the foundational concepts that shape how the system is organized.
Organizations (Multi-Tenancy)
Every accounting firm that uses CumpleAI operates within its own Organization. An organization is a fully isolated tenant -- meaning that all clients, employees, documents, and financial data belong exclusively to that firm. No data is shared between organizations.
When your firm signs up for CumpleAI, a new organization is created. All employees of your firm will belong to this organization. Each organization has:
- A unique name and tax identifier (RFC)
- Its own set of departments (offices)
- Its own client roster
- Independent billing and subscription settings
Departments (Offices)
Within an organization, work can be divided into Departments -- typically representing physical office locations. For example, an accounting firm might have a "Guadalajara" department and a "Penasco" department.
Departments serve two purposes:
Roles
CumpleAI uses a role-based access control (RBAC) system with seven distinct roles. Your role determines which pages you can access, which data you can see, and which actions you can perform.
Each role is assigned by an Owner or Admin when creating or editing a user account. A user has exactly one role within an organization. The role cannot be changed by the user themselves -- only by someone with Owner or Admin privileges.
Clients
In CumpleAI, a Client represents a company or individual who uses your firm's accounting services. Each client has:
- A trade name (nombre comercial) -- the commonly used business name
- A legal name (razon social) -- the official registered name
- An RFC -- the Mexican tax identification number
- A fiscal regime -- the tax classification that determines which obligations apply
- A status -- one of four lifecycle states: Onboarding, Active, Blocked, or Inactive
- An assigned accountant -- the team member responsible for this client's compliance
- A monthly fee -- the recurring service charge
Clients progress through a lifecycle from Onboarding (initial setup) to Active (receiving services) and may be Blocked (suspended) or Inactive (no longer served) depending on circumstances. This lifecycle is covered in detail in Chapter 3.
Compliance Tasks
A Compliance Task is a specific tax filing obligation that must be completed for a client. CumpleAI automatically generates compliance tasks based on each client's fiscal regime and contracted services. Common task types include:
- IVA Mensual -- Monthly value-added tax declaration
- ISR Provisional -- Provisional income tax payment
- Nomina IMSS -- Payroll social security filing
- Declaracion Anual -- Annual tax declaration
Each task has a status (To-Do, In Progress, Submitted, Accepted, Overdue, Waiting on Client), a due date, and an assigned accountant.
Compliance Opinions
A Compliance Opinion is a status issued by Mexican authorities (SAT, IMSS, INFONAVIT) indicating whether a taxpayer is in good standing. Opinions can be:
- Positiva (Positive) -- The client is compliant
- Negativa (Negative) -- The client has compliance issues that need resolution
- Pendiente (Pending) -- The opinion has been requested but not yet received
Negative opinions require immediate attention, as they can prevent a client from issuing invoices or conducting certain business operations.
Role Descriptions6452c20
The following table describes each role, its intended audience, and its primary responsibilities within the platform.
| Role | Label (Spanish) | Description | Typical User |
|---|---|---|---|
| owner | Director / Socio | Full access to every feature. Can view partner earnings distribution, manage billing, and access the Admin panel. Sees executive-level dashboards with revenue and collection metrics. | Firm partner or managing director |
| admin | Administrador | Full operational access identical to Owner, including user management and the Admin panel. Does not see partner earnings distribution. | Office administrator or operations lead |
| manager | Gerente Contable | Team management within a department scope. Monitors accountant performance via traffic light indicators. Has oversight of blocked and overdue items. Cannot access the Admin panel or Configuration. | Department head or senior manager |
| accountant | Contador | Sees only their own assigned clients. Manages compliance tasks, documents, and tickets for those clients. Dashboard shows personal progress and pending work. | Staff accountant or tax preparer |
| payroll | Especialista Nomina | Limited to payroll-related clients and tasks. Focused on IMSS, INFONAVIT, and payroll compliance obligations. Can view Reports and Tickets. | Payroll specialist |
| viewer | Auditor | Read-only access to dashboards, client data, compliance, pipeline, collections, tickets, and reports. Cannot create, edit, or delete anything. Useful for external auditors or oversight personnel. | External auditor or compliance reviewer |
| client | Cliente | Portal access only. Clients log in to the separate Client Portal (portal.cumpleai.com) where they can view their documents, deadlines, payments, and tickets. This role is covered in the Client Portal Guide. | Client of the accounting firm |
Access Matrix6452c20
The table below shows which pages each role can access. The symbols indicate:
- ✓ -- Full access (can view and perform all actions)
- ◐ -- Partial access (can view but with restrictions, or limited to own data)
- ✗ -- No access (page is hidden from sidebar navigation)
| Page | {role:owner} | {role:admin} | {role:manager} | {role:accountant} | {role:payroll} | {role:viewer} |
|---|---|---|---|---|---|---|
| Dashboard | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Clients (Clientes) | ✓ | ✓ | ✓ | ◐ | ◐ | ◐ |
| Compliance (Cumplimiento) | ✓ | ✓ | ✓ | ✓ | ✗ | ◐ |
| Pipeline | ✓ | ✓ | ✓ | ✓ | ✗ | ◐ |
| Collections (Cobranza) | ✓ | ✓ | ✓ | ✗ | ✗ | ◐ |
| Tickets | ✓ | ✓ | ✓ | ✓ | ✓ | ◐ |
| ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | |
| Reports (Reportes) | ✓ | ✓ | ✓ | ◐ | ✓ | ◐ |
| Team (Equipo) | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ |
| Configuration (Configuracion) | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ |
| Admin | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ |
The Accountant role sees "Mis Clientes" (My Clients) instead of all clients, and "Mi Trabajo" (My Work) instead of the executive dashboard. The Payroll role sees only payroll-relevant clients and a payroll-specific dashboard.
Partial Access Details
- Clients (Accountant): Sees only clients assigned to them. Cannot create new clients.
- Clients (Payroll): Sees only clients subscribed to the payroll service.
- Clients (Viewer): Sees all clients but cannot create, edit, or change status.
- Compliance (Viewer): Read-only view of compliance tasks and opinions.
- Pipeline (Viewer): Read-only view of the sales pipeline.
- Collections (Viewer): Read-only view of payment records and collection status.
- Tickets (Viewer): Can view tickets but cannot create or respond.
- Reports (Accountant): Limited to reports relevant to their assigned clients.
- Reports (Viewer): Read-only access to all available reports.
Navigation Structure6452c20
CumpleAI uses a sidebar-based navigation layout. The sidebar appears on the left side of the screen and can be collapsed to save space on desktop, or toggled open/closed on mobile devices.
Sidebar Sections
The sidebar is organized into logical groups separated by dividers. For Owner, Admin, and Manager roles, the navigation is grouped as follows:
Primary Section (top):
- Dashboard -- Your main landing page with KPIs and charts
- Clients -- Client management and detail views
- Compliance -- Tax compliance tasks and SAT/IMSS/INFONAVIT opinions
- Pipeline -- Sales pipeline in Kanban view
- Collections -- Payment tracking and collection status
- Tickets -- Support ticket management
Communication & Analytics:
- WhatsApp -- WhatsApp Business messaging integration
- Reports -- Analytics and reporting tools
- Team -- Employee management and workload views
Administration:
- Configuration -- Organization and system settings
- Admin -- Super-admin and advanced settings (Owner and Admin only)
Sidebar Footer
At the bottom of the sidebar, you will find several utility controls:
- Onboarding Wizard -- Re-run the initial setup wizard at any time
- Compact Mode Toggle -- Switch between comfortable and compact row density
- Dark Mode Toggle -- Switch between light and dark color themes
- Collapse Toggle -- Minimize the sidebar to icon-only mode (desktop)
- User Info -- Shows your avatar, name, and role. Includes a logout button.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Cmd+K (Mac) / Ctrl+K (Windows) | Open the global search bar |
[ | Toggle sidebar collapse/expand |
The global search (Cmd+K) allows you to quickly find clients, tickets, and other records without navigating through menus. It appears as a search field in the header bar.
Terminology Reference6452c20
Throughout this guide, certain Spanish terms appear in the interface. Here is a quick reference:
| Spanish Term | English Translation | Context |
|---|---|---|
| Clientes | Clients | Your firm's client companies |
| Cumplimiento | Compliance | Tax filing obligations and regulatory compliance |
| Cobranza | Collections | Payment collection and invoicing |
| Equipo | Team | Your firm's employees and collaborators |
| Reportes | Reports | Analytics and business reports |
| Configuracion | Configuration | System settings |
| Nomina | Payroll | Payroll processing and IMSS/INFONAVIT |
| Contador | Accountant | The accountant assigned to a client |
| Gerente | Manager | A department or team manager |
| Socio / Director | Owner/Partner | The firm's partner or managing director |
| Oficina | Office/Department | A physical location or department |
| RFC | Federal Taxpayer Registry | Mexican tax identification number |
| SAT | Tax Administration Service | Mexico's federal tax authority |
| IMSS | Mexican Social Security Institute | Social security authority |
| INFONAVIT | National Housing Fund Institute | Worker housing fund authority |
| Cuota mensual | Monthly fee | The recurring service charge for a client |
| Vencimiento | Deadline/Expiry | A compliance or payment due date |
| Semaforo | Traffic light | Visual green/yellow/red status indicator |
Platform Architecture6452c20
CumpleAI consists of three web applications, each serving a different audience:
| Application | URL | Purpose |
|---|---|---|
| CRM Web App | app.cumpleai.com | Main application for firm employees (this guide) |
| Client Portal | portal.cumpleai.com | Self-service portal for clients to view documents, deadlines, and payments |
| Admin Panel | admin.cumpleai.com | Super-administrator panel for platform management (CumpleAI staff only) |
CRM Web App (app.cumpleai.com)
This is the application covered by this User Guide. It is used by all employee roles (Owner, Admin, Manager, Accountant, Payroll, Viewer) to manage clients, track compliance, process payments, communicate via WhatsApp, and generate reports.
Client Portal (portal.cumpleai.com)
The Client Portal provides a self-service interface for your firm's clients. Through the portal, clients can:
- View their uploaded documents and download copies
- Check upcoming compliance deadlines and filing status
- Review payment history and outstanding invoices
- Submit support tickets to your team
- Set their communication preferences
The Client Portal is covered in a separate guide. Client users ({role:client}) are automatically redirected to the portal upon login.
Communication Between Applications
The CRM Web App and Client Portal share the same underlying data. When an accountant uploads a document in the CRM, it becomes visible to the client in the portal. When a client submits a ticket in the portal, it appears in the CRM's ticket queue. This bidirectional communication ensures that both your team and your clients always have access to up-to-date information.
Design and Visual Language6452c20
CumpleAI uses a refined visual design system called the "Luxury Tech Theme." The color palette is built around navy and slate blues with dusty rose accents, creating a professional, business-oriented aesthetic.
Key visual elements you will encounter throughout the application:
- Status badges -- Color-coded pills that indicate the status of items (Active, Blocked, Overdue, etc.)
- Traffic light indicators -- Green, yellow, and red dots or circles showing performance status
- KPI cards -- Summary cards at the top of pages showing key metrics with trend indicators
- Data tables -- Sortable tables with row hover effects and pagination
- Chart panels -- Bar charts, line charts, and other visualizations in card containers
- Callout banners -- Informational, warning, or success messages with colored borders
What is Next6452c20
Now that you understand the foundational concepts, continue to the next chapters:
- Chapter 1: Getting Started -- Logging in, the onboarding wizard, and navigating the interface
- Chapter 2: Dashboard -- Understanding your role-specific dashboard and KPIs
- Chapter 3: Clients -- Managing your client roster, creating clients, and the client detail page

Getting Started6ea1b5e
This chapter is a practical first-use guide for daily users of the CRM. It focuses on what to do, not on technical setup.
What You Need Before First Login6ea1b5e
Your admin should provide:
- your work email,
- your temporary or initial password,
- your role (Owner, Admin, Manager, Accountant, Payroll, Viewer),
- the expected department/team assignment.
If any of these are missing, contact your internal admin before proceeding.
First Login Process6ea1b5e
Onboarding Wizard (First Session)6ea1b5e
The wizard is role-aware. You will only see steps relevant to your role.
- Owner/Admin: organization setup, team setup, departments, clients, compliance/billing overview.
- Manager: team workload and operational flow.
- Accountant/Payroll: assigned clients, daily workflow, tickets/documents handling.
- Viewer: read-only orientation and navigation.
You can close and resume later if your organization allows it.
Navigation Basics6ea1b5e
Main workspace areas:
- Sidebar: module navigation based on role.
- Header: quick context, notifications, user actions.
- Content area: page-specific work.
Recommended first routine after login:
Troubleshooting First Access6ea1b5e
- Wrong password: use password reset flow.
- Access denied to expected module: request role/scope correction.
- Empty pages on first day: confirm data has been assigned to your user.
- Session expired: sign in again.
Process Summary6ea1b5e
| Process | Owner/Admin | Manager | Accountant/Payroll | Viewer |
|---|---|---|---|---|
| First login | Complete full onboarding | Complete role onboarding | Complete role onboarding | Complete read-only onboarding |
| First daily check | Dashboard + Team + Config | Dashboard + Pipeline/Blocked | Dashboard + Assigned queues | Dashboard + read-only reports |
| Access issue | Adjust users/roles | Escalate to Admin | Escalate to Manager/Admin | Escalate to Admin |
Dashboard6452c20
The Dashboard is the first page you see after logging in. It provides a high-level summary of your firm's most important metrics, tailored to your role. CumpleAI features five distinct dashboard views, each designed for the specific needs and responsibilities of different team members.
This chapter covers all five dashboards in detail. You will only see the dashboard that corresponds to your assigned role.
| Role | Dashboard Name (Spanish) | Dashboard Name (English) |
|---|---|---|
| owner | Dashboard Ejecutivo | Executive Dashboard |
| admin | Dashboard Operativo | Operational Dashboard |
| manager | Dashboard Equipo | Team Dashboard |
| accountant | Mi Trabajo | My Work |
| payroll | Dashboard Nomina | Payroll Dashboard |
| viewer | Dashboard Equipo (Solo Lectura) | Team Dashboard (Read-Only) |
The {role:viewer} role sees the same Team Dashboard as the Manager, but with a "Solo Lectura" (Read-Only) badge displayed at the top. Viewers cannot perform any actions -- the dashboard is purely informational.
Owner Dashboard: "Dashboard Ejecutivo"6452c20
The Executive Dashboard provides firm partners with a complete financial and operational overview. It is the most comprehensive dashboard in CumpleAI, featuring revenue metrics, partner distributions, compliance health, and workload analysis.

KPI Strip
The top of the dashboard displays five KPI cards arranged horizontally:
| KPI Card | Description | What to Watch For |
|---|---|---|
| Total Clientes Activos | The number of active clients in your firm. Shows total client count as a subtitle. | A decrease may indicate client churn. Compare with the total to understand your active ratio. |
| Ingresos del Mes | Total monthly revenue (invoiced amount) across all clients. Shows pending amount as a subtitle. | Compare with prior months. A high pending amount may signal collection issues. |
| Tasa de Cobro | Collection rate -- the percentage of invoiced revenue that has been collected. Shows the collected amount in MXN. | Target 80% or higher. The card shows "Buen ritmo" (Good pace) at 80%+, "En progreso" at 50-79%, or "Atrasado" (Behind) below 50%. |
| Partner Earnings | Your estimated partner earnings based on the current collection rate and your partnership share (default 33.33%). | This card gives a quick read on your personal financial performance for the month. |
| Opiniones Negativas | Count of clients with a negative compliance opinion from SAT or other authorities this month. | Any value above 0 requires immediate attention. The card turns red when negative opinions exist. |
Revenue by Office (Bar Chart)
Below the KPI strip, the left chart panel shows a bar chart comparing invoiced vs. collected revenue by office (department). Each office has two bars:
- Facturado (Invoiced) -- Total amount billed to clients in that office
- Cobrado (Collected) -- Total amount actually received
This chart helps you identify which offices are performing well in collections and which may need attention.
Compliance Trend (Line Chart)
The right chart panel shows a line chart tracking compliance completion rate over time. The Y-axis runs from 0% to 100%, and each data point represents the compliance completion rate for a given month.
This chart helps you monitor whether your firm's compliance performance is improving, stable, or declining over time.
Partner Distribution Table
Below the charts, a table shows the partner earnings distribution:
| Column | Description |
|---|---|
| Socio (Partner) | Partner name |
| Participacion (Share) | Percentage share of the partnership |
| Cobrado (Collected) | Amount collected attributed to this partner |
| Pendiente (Pending) | Amount still pending collection |
Negative Compliance Opinions List
In the bottom-left panel, a table lists clients with negative compliance opinions:
| Column | Description |
|---|---|
| Cliente (Client) | The client's trade name |
| Institucion (Institution) | The authority that issued the negative opinion (SAT, IMSS, or INFONAVIT) |
| Estado (Status) | Always shows "Negativa" (Negative) with a red badge |
A negative compliance opinion from SAT can have serious consequences for your client, including the inability to issue invoices. Address these immediately by reviewing the client's compliance status and coordinating with the responsible accountant.
If there are no negative opinions, this panel shows a message: "Sin opiniones negativas" (No negative opinions).
Workload by Collaborator (Bar Chart)
The bottom-right panel shows a horizontal bar chart of workload per employee:
- Tareas (Tasks) -- Number of pending compliance tasks assigned to the employee
- Clientes (Clients) -- Number of active clients assigned to the employee
This chart helps identify workload imbalances. If one accountant has significantly more tasks or clients than others, it may be time to redistribute work.
Admin Dashboard: "Dashboard Operativo"6452c20
The Operational Dashboard is designed for administrators who manage the day-to-day technical and operational aspects of the firm. It focuses on automation monitoring, system health, compliance management, and incident tracking.

KPI Strip
Five KPI cards across the top:
| KPI Card | Description |
|---|---|
| Automatizaciones Hoy | Number of automated processes that have run today. Shows error count as a subtitle. |
| Incidencias Pendientes | Count of open (unresolved) incidents. Shows the number of critical-severity incidents. |
| Pendientes SAT | Number of SAT compliance opinions still in "Pending" status. |
| Pendientes IMSS | Number of IMSS compliance opinions still in "Pending" status. |
| Opiniones Negativas | Total count of negative compliance opinions across all institutions this month. |
Automation Monitor Table
The left panel displays a table of recent automated processes:
| Column | Description |
|---|---|
| Automatizacion | Name of the automated process (e.g., "Recordatorio SAT", "Sincronizacion Pagos") |
| Ultima Ejecucion | Timestamp of the last run |
| Estado (Status) | A badge showing "Exitoso" (Success, green), "Error" (red), or "Advertencia" (Warning, yellow) |
| Registros (Records) | Number of records processed in the last run |
Compliance Opinion Management
The right panel shows a summary of compliance opinions organized by institution in three cards:
- SAT -- Total opinions, broken down into Positivas (Positive), Negativas (Negative), and Pendientes (Pending)
- IMSS -- Same breakdown for the Mexican Social Security Institute
- INFONAVIT -- Same breakdown for the National Housing Fund
Each card displays color-coded counts: green for positive, red for negative, and neutral for pending.
Recent Incidents
The bottom-left panel lists recent system incidents:
- Each incident shows a severity dot (green for low, yellow for medium, red for critical)
- The title describes the incident
- A status badge shows "Abierta" (Open), "Investigando" (Investigating), or "Resuelta" (Resolved)
- The severity label and timestamp appear below the title
System Health
The bottom-right panel shows the operational status of key system components:
- Each service has a status dot (green = Operational, yellow = Degraded, red = Down)
- The service name identifies the component
- A status label in matching color shows "Operativo", "Degradado", or "Caido"
- An uptime percentage may be displayed
Manager Dashboard: "Dashboard Equipo"6452c20
The Team Dashboard gives department managers visibility into their team's performance. It uses a traffic light system (green/yellow/red) to quickly identify which accountants are on track and which need attention.

KPI Strip
Four KPI cards:
| KPI Card | Description |
|---|---|
| Total Clientes Equipo | Number of active clients managed by your team. Shows the number of accountants as a subtitle. |
| En Tiempo (On Time) | Percentage of accountants with a green traffic light (all tasks on time). Shows count like "3 de 5 contadores." |
| Bloqueados (Blocked) | Number of overdue compliance tasks across the team. |
| Dias para Dia 17 (Days to Day 17) | Countdown to the 17th of the month, which is the standard monthly tax filing deadline in Mexico. Shows "Hoy es dia 17" when it is the deadline day. |
The 17th of each month is a critical date in Mexican tax compliance. Most monthly tax obligations (IVA, ISR provisional, IMSS contributions) are due on or before the 17th. The countdown helps managers plan their team's workload accordingly.
Accountant Traffic Light Table ("Semaforo por Contador")
This table is the heart of the Manager Dashboard. Each row represents an accountant on your team:
| Column | Description |
|---|---|
| Contador (Accountant) | Employee name |
| Asignados (Assigned) | Number of active clients assigned to this accountant |
| Cerrados (Closed) | Number of compliance tasks completed (status: Submitted, Accepted, or Completed) |
| Pendientes (Pending) | Number of compliance tasks still in progress or not started |
| Estado (Status) | A traffic light indicator dot |
| Color | Meaning | Criteria |
|---|---|---|
| Green | On track | No overdue tasks AND 90%+ of tasks completed |
| Yellow | Needs attention | No overdue tasks BUT less than 90% of tasks completed |
| Red | Critical | Has one or more overdue tasks |
Blocked Items Table ("Que Esta Bloqueado")
Below the traffic light, a detailed table lists all blocked and overdue compliance tasks. This table has built-in filters:
Filters:
- Accountant dropdown -- Filter by a specific accountant or view all
- Client search -- Text search to find a specific client
- Deadline range -- "Todos los plazos" (All), "Solo vencidos" (Overdue only), "Ultimos 7 dias" (Last 7 days), "Ultimos 14 dias" (Last 14 days)
Table columns:
| Column | Description |
|---|---|
| Cliente | Client trade name |
| Contador | Assigned accountant name |
| Obligacion (Obligation) | The type of compliance task (e.g., "IVA Mensual", "ISR Provisional", "Nomina IMSS") |
| Estado | Badge showing "Vencido" (Overdue, red) or "Esperando Cliente" (Waiting on Client, yellow) |
| Dias (Days) | Number of days past due (positive number with "+" prefix), "Hoy" (Today), or days remaining (negative) |
Workload Distribution Chart ("Distribucion de Carga")
A horizontal bar chart showing the number of clients assigned to each accountant. This visual helps managers quickly spot uneven workload distribution and take action to rebalance.
Upcoming Deadlines ("Proximos Vencimientos")
A timeline view of the 5 nearest compliance deadlines:
- Each deadline shows a numbered circle indicating days remaining
- The client name and obligation type appear next to it
- The due date is displayed on the right
- An urgency label appears: "Urgente" (3 days or fewer), "Pronto" (4-7 days), or the number of remaining days
Accountant Dashboard: "Mi Trabajo"6452c20
The Accountant Dashboard is a personal workspace focused on your assigned clients and tasks. It provides a clear view of your progress toward monthly compliance deadlines and highlights any items that need immediate attention.

Progress Hero Section
At the top of the dashboard, a large hero section shows your overall monthly progress:
- Traffic Light Circle -- A large colored circle (green/yellow/red) indicating your overall status
- Progress Text -- "X de Y clientes cerrados" (X of Y clients closed) showing how many of your clients have all compliance tasks completed
- Progress Bar -- A horizontal bar filling from left to right as you complete tasks, with the percentage displayed below
- Days Countdown -- A large number showing days remaining until the 17th of the month
Traffic light criteria for accountants:
| Color | Meaning |
|---|---|
| Green | No overdue tasks AND 70%+ of tasks completed |
| Yellow | No overdue tasks AND less than 70% completed |
| Red | One or more overdue tasks |
KPI Strip
Four personal KPI cards:
| KPI Card | Description |
|---|---|
| Mis Clientes Asignados (My Assigned Clients) | Number of active clients assigned to you |
| Clientes Cerrados (Clients Closed) | Number of your clients with all compliance tasks completed this month. Shows completion percentage. |
| Tareas Pendientes (Pending Tasks) | Number of compliance tasks still requiring your attention. Highlights overdue count if any. |
| Tickets Abiertos (Open Tickets) | Number of support tickets assigned to you that are open or in progress |
My Clients Table ("Mis Clientes")
A table listing your assigned active clients:
| Column | Description |
|---|---|
| Cliente | Client trade name |
| Estado (Status) | Status badge (Active, Onboarding, etc.) |
| Semaforo (Traffic Light) | A colored dot for this specific client: green (all tasks done), yellow (in progress), red (has overdue tasks) |
My Pending Tasks ("Mis Tareas Pendientes")
A list of your pending compliance tasks, sorted by due date (soonest first):
- Each task shows a priority dot (color-coded by status: red for overdue, yellow for in progress, neutral for to-do, blocked for waiting on client)
- The task type (e.g., "IVA Mensual", "ISR Provisional") and client name
- The due date and a status badge
Upcoming Deadlines ("Proximos Vencimientos")
A timeline view of your nearest compliance deadlines, similar to the Manager Dashboard but filtered to only your assigned tasks. Each deadline shows:
- A clock icon in an urgency-colored circle (red = 1 day or less, yellow = 2-3 days, neutral = 4+ days)
- The task type and status badge
- The client name
- A large days remaining number on the right with "dia" or "dias" label
Payroll Dashboard: "Dashboard Nomina"6452c20
The Payroll Dashboard is specialized for payroll professionals and focuses on IMSS, INFONAVIT, and payroll-related compliance obligations.

KPI Strip
Four KPI cards focused on payroll compliance:
| KPI Card | Description |
|---|---|
| Obligaciones IMSS Pendientes | Number of pending IMSS compliance opinions |
| Obligaciones INFONAVIT Pendientes | Number of pending INFONAVIT compliance opinions |
| Nominas Pendientes | Number of payroll compliance tasks (type: "Nomina IMSS") still pending. Shows total task count as a subtitle. |
| Tickets Abiertos | Number of open or in-progress support tickets |
Obligation Calendar ("Calendario de Obligaciones")
The left panel displays a monthly obligation calendar for the current month. Each row represents a payroll-related deadline:
- A day circle with the due date (color-coded: green = completed, yellow = pending, gray = to-do)
- The obligation description (e.g., "Declaracion provisional ISR Nomina", "Pago IMSS cuotas", "Pago INFONAVIT")
- A status badge: "Completado" (Completed), "Pendiente" (Pending), or "Por hacer" (To-Do)
Standard payroll dates include:
| Date | Obligation |
|---|---|
| 17th | ISR Payroll provisional declaration |
| 17th | IMSS contribution payment |
| 17th | INFONAVIT payment |
| 20th | SUA (Unified Collection System) presentation |
| 28th | Biweekly payroll closing |
| 28th | Payroll receipt stamping (timbrado) |
My Pending Tasks ("Mis Tareas Pendientes")
The right panel lists open tickets and pending payroll tasks:
- Each task shows the subject/title, the client name, a priority badge (Critical, High, Medium, Low), and the status
- If no tickets are available, the panel falls back to showing pending "Nomina IMSS" compliance tasks with their due dates
Dashboard Best Practices6452c20
Regardless of your role, here are recommended practices for getting the most out of your dashboard:
Daily Check-In Routine
Weekly Review (Managers and Owners)
Next Steps6452c20
Now that you understand how to read and use your dashboard, continue to:
- Chapter 3: Clients -- Learn how to manage your client roster, create new clients, and explore client detail pages
Clients6452c20
The Clients module is the core of CumpleAI. It is where you manage your firm's client roster -- from onboarding new clients to tracking their compliance status, payments, documents, and communications. This chapter covers the client list page, filtering and searching, creating new clients, the client detail page, and the client lifecycle.
Client List Page6452c20
The Clients page (/clients) displays all clients visible to your role in a filterable, searchable table. Access this page by clicking "Clientes" (or "Mis Clientes" for accountants) in the sidebar.

Role-Based Visibility
What you see on the Clients page depends on your role:
| Role | What You See |
|---|---|
| owner | All clients in the organization, all columns including monthly fee |
| admin | All clients in the organization, all columns including monthly fee |
| manager | All clients in your department scope, all columns including monthly fee |
| accountant | Only clients assigned to you. The "Monthly fee" column is hidden. Sidebar label reads "Mis Clientes" instead of "Clientes." |
| payroll | Only clients subscribed to the payroll service. The "Monthly fee" column is hidden. |
| viewer | All clients in the organization (read-only). All columns are visible. |
KPI Strip
At the top of the page, four summary cards provide a quick snapshot of your client portfolio:
| Card | Description |
|---|---|
| Activos (Active) | Number of clients with status "Active" -- these are clients your firm is currently serving |
| Onboarding | Number of clients currently going through the initial onboarding process |
| Bloqueados (Blocked) | Number of clients whose accounts are blocked, typically due to missing documentation or compliance issues |
| Inactivos (Inactive) | Number of clients who have been deactivated or are no longer receiving services |
The KPI numbers update in real-time as you apply filters. However, they always reflect the full count within your role-filtered set, not just the currently filtered view.
Filters
CumpleAI provides three ways to narrow down the client list:
Status Filter
A row of pill-shaped buttons lets you filter by client status:
- Todos (All) -- Show all clients regardless of status
- Activos (Active) -- Show only active clients
- Onboarding -- Show only clients in the onboarding process
- Bloqueados (Blocked) -- Show only blocked clients
- Inactivos (Inactive) -- Show only inactive clients
Office Filter
A second row of pills lets you filter by department (office):
- Todas (All) -- Show clients from all offices
- Guadalajara -- Show only clients assigned to the Guadalajara office
- Penasco -- Show only clients assigned to the Penasco office
Search Bar
A text search field allows you to find specific clients by name or RFC:
All three filter types (status, office, search) can be combined. For example, you can search for "Tacos" among "Active" clients in the "Guadalajara" office.
Client Table
The main data table displays the following columns:
| Column | Description | Visibility |
|---|---|---|
| Cliente (Client) | Two lines: trade name (bold) and legal name (smaller) | Always visible |
| RFC | The client's Federal Taxpayer Registry number in monospaced font | Hidden on small screens |
| Regimen (Regime) | The client's fiscal regime (e.g., "Persona Fisica", "Persona Moral General") | Hidden on small and medium screens |
| Oficina (Office) | The department/office the client belongs to, shown as a pill badge | Hidden on small screens |
| Contador (Accountant) | The name of the assigned accountant, or "Sin asignar" (Unassigned) if none | Hidden on small and medium screens |
| Estado (Status) | A color-coded status badge (Active, Onboarding, Blocked, Inactive) | Always visible |
| Cuota mensual (Monthly Fee) | The client's monthly service fee in MXN format | Only visible to Owner, Admin, Manager, and Viewer roles |
Creating a New Client6452c20
The "Nuevo Cliente" (New Client) button appears in the top-right area of the Clients page for users with creation permissions.
Who can create clients:
| Role | Can Create? |
|---|---|
| owner | ✓ |
| admin | ✓ |
| manager | ✓ |
| accountant | ✗ |
| payroll | ✗ |
| viewer | ✗ |
- Nombre Comercial (Trade Name) -- The name the business is commonly known by (e.g., "Tacos El Patron")
- Razon Social (Legal Name) -- The official registered name (e.g., "Jose Luis Patron Lopez")
- RFC -- The Federal Taxpayer Registry number (13 characters for individuals, 12 for companies)
- Regimen Fiscal (Fiscal Regime) -- Select from the dropdown (e.g., "Persona Fisica con Actividad Empresarial", "Persona Moral General")
- Oficina (Office) -- Assign the client to a department
- Contador Asignado (Assigned Accountant) -- Select an accountant from your team
- Cuota Mensual (Monthly Fee) -- The monthly service charge in MXN
- Servicios (Services) -- Select applicable services: Contabilidad (Accounting), Nomina (Payroll), Cumplimiento (Compliance), Planeacion Fiscal (Tax Planning)
- Contacto Principal (Primary Contact) -- Name, email, and phone number
Client Detail Page6452c20
Clicking on any client in the list opens their detail page (/clients/[id]). This is a comprehensive view of all information related to that client.

Client Header Card
At the top of the detail page, a card displays the client's primary information:
Left column:
- Legal name (large, bold) with a status badge and office badge
- Trade name below the legal name
- RFC in a monospaced pill
- Fiscal regime with a building icon
- Contact name, email, and phone (if available)
- Assigned accountant name
Quick action buttons:
- Enviar WhatsApp (Send WhatsApp) -- Opens a WhatsApp message to the client
- Crear Ticket (Create Ticket) -- Opens a new ticket form for this client
- Agregar Nota (Add Note) -- Opens the notes section to add an internal note
Right column:
- Cuota mensual (Monthly Fee) displayed prominently
- Service badges -- Colored pills for each contracted service (Contabilidad, Nomina, Cumplimiento, Planeacion Fiscal)
- Onboarding progress bar (only shown for clients in Onboarding status) with percentage complete
Collapsible Information Sections
Below the header card, four collapsible sections provide detailed client information. Click on any section header to expand or collapse it:
Informacion Fiscal (Fiscal Information)
Displays the client's tax-related data in a grid layout:
| Field | Description |
|---|---|
| RFC | Federal Taxpayer Registry number |
| Regimen Fiscal | Tax regime classification |
| Tipo | Client type (individual or company) |
| Entidad de Facturacion | Billing entity name |
| Obligaciones Fiscales | List of fiscal obligations as pill badges |
| Domicilio Fiscal | Registered fiscal address (street, city, state, postal code) |
Contactos (Contacts)
A table of all contact persons associated with this client:
| Column | Description |
|---|---|
| Nombre (Name) | Contact's full name with avatar initials |
| Rol (Role) | Contact's role within the client organization (e.g., "Representante Legal", "Contador Interno") |
| Contact email address | |
| Telefono (Phone) | Contact phone number |
Servicios Contratados (Contracted Services)
A grid of service cards showing each contracted service with its current status:
- Activo (Active) -- Service is currently being provided
- Pausado (Paused) -- Service is temporarily suspended
Asignacion (Assignment)
Shows the currently assigned accountant with their avatar and name. This section is useful for verifying or updating the accountant assignment.
Content Tabs
Below the collapsible sections, a tabbed interface provides access to different types of client data. On clients with Onboarding status, an additional "Onboarding" tab appears first.
The available tabs are:
| Tab | Icon | Description |
|---|---|---|
| Onboarding | Clipboard | Document checklist and onboarding progress (only for clients in Onboarding status) |
| Cumplimiento | Checkmark | Compliance tasks (IVA, ISR, IMSS, etc.) with status tracking |
| Documentos | File | Uploaded documents with version history and access logs |
| Pagos | Credit Card | Payment history with amounts, status, and methods |
| Tickets | Chat Bubble | Support tickets related to this client |
| Actividad | Clock | Activity timeline showing all events for this client |
| Mensajes | Paper Plane | WhatsApp message history with the client |
| Notas | Sticky Note | Internal notes visible only to your team |
Compliance Tab (Cumplimiento)
A data table showing all compliance tasks for this client:
| Column | Description |
|---|---|
| Tarea (Task) | Task title (e.g., "IVA Mensual Enero 2026") |
| Periodo (Period) | The fiscal period (e.g., "Enero 2026") |
| Fecha Limite (Due Date) | The filing deadline |
| Estado (Status) | Status badge: TODO, IN_PROGRESS, SUBMITTED, ACCEPTED, OVERDUE, WAITING_ON_CLIENT |
| Evidencia (Evidence) | A check icon if evidence/proof of filing has been uploaded |
Documents Tab (Documentos)
A card-based layout showing uploaded documents:
Each document card shows:
- Document type badge (Constancia Fiscal, Acta Constitutiva, Identificacion, e.firma, etc.)
- Status badge (current processing status)
- File name
- Upload date, file size, and uploaded by
Expandable sections within each document card:
- Historial de versiones (Version History) -- Click to see all uploaded versions with version number, upload date, uploader, and change reason
- Registro de acceso (Access Log) -- Click to see who viewed, downloaded, or re-uploaded the document, with timestamps and IP addresses
Payments Tab (Pagos)
The Payments tab begins with a three-card summary:
| Card | Description |
|---|---|
| Total Adeudado (Total Owed) | Sum of all invoice amounts |
| Total Pagado (Total Paid) | Sum of all payments received |
| Saldo (Balance) | Remaining balance (highlighted in accent color if positive) |
| Column | Description |
|---|---|
| Periodo (Period) | The billing period |
| Monto (Amount) | Invoice amount in MXN |
| Pagado (Paid) | Amount paid (color-coded: normal if fully paid, accent if partial, muted if zero) |
| Estado (Status) | Payment status badge |
| Metodo (Method) | Payment method (transfer, card, cash, etc.) |
| Factura (Invoice) | Invoice number in monospaced font |
Tickets Tab
A data table of support tickets related to this client:
| Column | Description |
|---|---|
| Asunto (Subject) | Ticket subject line |
| Prioridad (Priority) | Priority badge (Critical, High, Medium, Low) |
| Estado (Status) | Status badge (Open, In Progress, Resolved, Closed) |
| Creado (Created) | Creation date |
| Comentarios (Comments) | Number of comments on the ticket |
Activity Tab (Actividad)
A vertical timeline showing all events related to this client in chronological order. Each event displays:
- A type icon in a colored circle (compliance, document, payment, ticket, WhatsApp, note, status change, assignment)
- The event title and description
- A timestamp
- The user who performed the action (with avatar initials)
Messages Tab (Mensajes)
A WhatsApp-style chat interface showing the message history with this client:
- Messages are grouped by date with date separator labels ("Hoy", "Ayer", or the full date)
- Outgoing messages (from your firm) appear on the right with a dark background
- Incoming messages (from the client) appear on the left with a light background
- Each message shows the sender name, message text, timestamp, and delivery status (sent, delivered, read, failed)
- Template messages are marked with a "Plantilla" badge
- Document and image attachments display with appropriate icons
At the bottom of the chat, a visual input bar with "Escribe un mensaje..." (Write a message...) placeholder and a send button allow you to compose new messages.
Notes Tab (Notas)
Internal notes that are visible only to your firm's team members (not to the client):
Client Onboarding Flow6452c20
When a new client is created, they begin in the Onboarding status. The onboarding process ensures that all required documentation and setup steps are completed before the client becomes fully active.

Onboarding Tab
Clients in Onboarding status have a special Onboarding tab that appears as the first tab on their detail page. It contains:
Documentation Progress Bar
A horizontal progress bar showing how many required documents have been verified:
- "X de Y completados" (X of Y completed)
- The bar fills as documents move from "Pendiente" to "Verificado"
SLA Indicator
An SLA (Service Level Agreement) progress bar tracking how long the onboarding has been in progress:
- Shows "Dias restantes: X de Y" (Days remaining: X of Y)
- The bar fills as days elapse
- The bar turns accent-colored when 80% of the SLA time has been used, indicating urgency
Blocking Reason (if applicable)
If the onboarding is blocked for any reason, a warning banner appears with the blocking reason. This helps the team understand what is preventing the client from moving forward.
Document Checklist
A detailed checklist of all required documents. Each item shows:
| Element | Description |
|---|---|
| Checkbox | Visual indicator: filled check (verified), X (rejected), clock (uploaded/pending review), empty (not yet uploaded) |
| Document name | The required document type |
| Upload date | When the document was uploaded (if applicable) |
| Notes | Reviewer notes, especially for rejected documents |
| Status badge | "Pendiente" (Pending), "Subido" (Uploaded), "Verificado" (Verified), or "Rechazado" (Rejected) |
Status Flow Visualization
A horizontal flow diagram shows the onboarding progression:
No Iniciado --> En Progreso --> Bloqueado --> Listo --> Activo
The current stage is highlighted with a filled badge. The flow helps everyone understand where the client stands in the process.
Client Status Transitions6452c20
Clients in CumpleAI follow a defined lifecycle through four statuses:
ONBOARDING --> ACTIVE --> BLOCKED --> INACTIVE
^ |
|______________________|
Status Definitions
| Status | Description | How to Enter | How to Exit |
|---|---|---|---|
| ONBOARDING | Client has been created but has not completed the initial document and setup process. | Created via "Nuevo Cliente" button. | All onboarding documents verified and client is activated. |
| ACTIVE | Client is fully set up and receiving services. Compliance tasks are generated automatically for active clients. | Onboarding completed, or reactivated from Inactive/Blocked. | Blocked due to compliance issues, or deactivated. |
| BLOCKED | Client's account is suspended, typically due to missing critical documents, negative compliance opinions, or payment issues. | Triggered by compliance events or manual action by Owner/Admin/Manager. | Issue resolved and client is reactivated. |
| INACTIVE | Client is no longer receiving services. No new compliance tasks are generated. | Manual deactivation by Owner/Admin. | Reactivated by Owner/Admin to Active or Onboarding status. |
Blocking or deactivating a client stops the generation of new compliance tasks. Make sure to complete any in-progress tasks before changing a client's status, or they may be lost.
Typical Client Journey
Working with Clients: Tips6452c20
For Accountants
- Check your dashboard first. The "Mi Trabajo" dashboard shows which of your clients need attention before you navigate to the Clients page.
- Use the traffic light indicators. A red dot next to a client on your dashboard means you have overdue tasks for that client -- prioritize them.
- Leverage the Compliance tab. This is your primary workspace. Sort tasks by due date and work from soonest to latest.
- Add notes for context. If a client calls with a question or provides information verbally, add a note so the team has a record.
For Managers
- Use the Blocked Items table. Your dashboard shows all blocked tasks across your team. Use the filters to drill down to specific accountants or clients.
- Monitor the office filter. If your firm has multiple offices, regularly check each office's client roster to ensure balanced workloads.
- Review onboarding clients weekly. Clients stuck in Onboarding status for too long may need a follow-up. Check the SLA indicator on the Onboarding tab.
For Owners and Admins
- Use the monthly fee column to get a quick view of your revenue base. Sort by monthly fee to identify your highest-value clients.
- Review inactive clients periodically. Some may be candidates for reactivation. Others may have data that should be archived.
- Track collection rates per office using the dashboard. If a specific office has lower collection rates, investigate whether it is a client quality issue or a process issue.
Next Steps6452c20
Continue to the upcoming chapters for more detailed coverage of:
- Chapter 4: Compliance -- Managing tax obligations, filing declarations, and tracking SAT/IMSS/INFONAVIT opinions
- Chapter 5: Tickets -- Creating and managing support tickets
- Chapter 6: WhatsApp -- Client communication via WhatsApp Business integration
Chapter 4: Compliance (Cumplimiento)6452c20
The Compliance module is the operational heart of CumpleAI. It automates the monthly tax obligation cycle for every client in your portfolio, ensuring that your accounting firm meets every SAT, IMSS, and INFONAVIT deadline without fail. This chapter explains how to navigate the compliance dashboard, manage tasks, upload evidence, track opinions, and respond to critical alerts.
4.1 Accessing the Compliance Module6452c20
Navigate to Cumplimiento in the left sidebar. The module opens on the Tareas (Tasks) tab by default.

The Compliance page contains five tabs:
| Tab | Description |
|---|---|
| Tareas | Task list with KPIs, filters, and status management |
| Calendario | Calendar view of deadlines organized by day |
| Mapa de Calor | Heatmap of compliance rates per client over 6 months |
| Opiniones | SAT, IMSS, and INFONAVIT opinion tracking |
| Flujo Mensual | Automated monthly workflow milestones |
Role-Based Visibility
{role:accountant} Accountants see only tasks assigned to them and opinions for their assigned clients.
{role:manager} Managers see all tasks within their department.
{role:owner} Owners see all tasks across the entire organization.
4.2 Monthly Compliance Cycle Overview6452c20
Every month, CumpleAI follows a structured, automated cycle. Understanding this cycle is essential for managing your workload effectively.
| Day | Milestone | Description |
|---|---|---|
| 1 | Task generation | Automatic creation of compliance tasks for all active clients |
| 5 | Documentation request | Automated WhatsApp and email messages requesting fiscal documents from clients |
| 10 | Reminder | Second reminder to clients who have not delivered documentation |
| 15 | Risk alert | Internal alert for clients with incomplete documentation or stalled tasks |
| 17 | Critical deadline | Statutory deadline for monthly declarations. All non-compliant clients flagged as at-risk |
| 20 | Monthly report | Compliance report generated and sent to firm leadership |
| 25 | Monthly closing | Account reconciliation and closing entries |
| 28 | Next period preparation | Pre-generation of tasks for the following month |
Day 15 and Day 17 are critical checkpoints. On Day 15, CumpleAI generates internal alerts for any client whose tasks are not progressing. On Day 17, all non-submitted declarations trigger an escalation visible to managers and partners.

4.3 Auto-Generation of Compliance Tasks6452c20
On the first day of each month, the system automatically creates three compliance tasks per active client:
Additional task types are generated depending on the client's tax regime:
- IVA Mensual -- Monthly VAT declaration
- ISR Provisional -- Provisional income tax payment
- Nomina IMSS -- Payroll tax and social security withholdings
- Declaracion Anual -- Annual declaration (generated during the appropriate period)
4.4 Tasks Tab (Tareas)6452c20
The Tasks tab is where your daily compliance work happens. It displays a KPI strip at the top, followed by filters and a detailed task list.
4.4.1 KPI Strip
The KPI strip provides a real-time summary of the selected period:
| KPI | Description |
|---|---|
| Total tareas | Total number of compliance tasks for the period |
| Completadas | Tasks with status Accepted or Submitted |
| En progreso | Tasks currently being worked on |
| Vencidas | Tasks past their deadline without submission |
| Esperando cliente | Tasks blocked pending client documentation |
| Pendientes | Tasks not yet started (To Do status) |

4.4.2 Task Status Flow
Every compliance task progresses through the following statuses:
To Do --> In Progress --> Waiting on Client --> Submitted --> Accepted
\--> Issue
| Status | Spanish Label | Description |
|---|---|---|
TODO | Pendiente | Task has been generated but work has not started |
IN_PROGRESS | En progreso | An accountant is actively working on it |
WAITING_ON_CLIENT | Esperando cliente | Blocked because the client has not delivered required documentation |
SUBMITTED | Presentada | Declaration has been filed with the tax authority |
ACCEPTED | Completada | Tax authority has acknowledged receipt |
ISSUE | Problema | An issue was detected (e.g., rejected declaration, negative opinion) |
A task with status Issue requires immediate attention. In most cases, the system auto-creates a corresponding support ticket when an issue is detected. See Chapter 7: Tickets for details.
4.4.3 Filtering Tasks
Use the three filter dropdowns above the task list to narrow your view:
4.4.4 Selecting a Period
Use the period selector at the top of the page to navigate between months. The default is the current period (e.g., "Feb 2026"). You can select any of the available periods to review historical compliance data.

4.5 Evidence Upload6452c20
Each compliance task supports evidence attachments. Evidence is the documentation that proves a declaration was filed or an opinion was obtained.

4.6 Calendar View6452c20
The Calendario tab displays a month-view calendar showing all tax obligation deadlines. Each day cell shows the events scheduled for that date, color-coded by status:
| Color | Status |
|---|---|
| Muted blue | Completed |
| Navy | In progress |
| Rose accent | Overdue |
| Light gray | Pending |
- The client name
- The obligation type (IVA, ISR, Nomina, IMSS, INFONAVIT, Anual)
- A brief description
- The current status
Navigate between months using the left/right arrow buttons flanking the month/year header.

Deadlines by Client Regime
Different client regimes have different obligation calendars. The calendar reflects each client's specific set of deadlines:
- Personas Morales (Legal entities) -- IVA, ISR provisional, payroll, IMSS, INFONAVIT
- Personas Fisicas with employees -- IVA, ISR provisional, payroll
- Personas Fisicas without employees -- IVA, ISR provisional only
4.7 Compliance Heatmap6452c20
The Mapa de Calor (Heatmap) tab provides a 6-month historical view of compliance rates for each client. This is one of the most powerful analytical tools in CumpleAI for identifying trends and problem clients.
Reading the Heatmap
Each row represents a client. Each column represents a month. The cell shows the percentage of compliance tasks completed for that client in that month, with color intensity indicating the rate:
| Rate | Color Intensity | Meaning |
|---|---|---|
| 90-100% | Deep primary | Excellent compliance |
| 70-89% | Medium primary | Good but room for improvement |
| 50-69% | Light | Needs attention |
| 0-49% | Very light / near white | Critical -- requires immediate action |

4.8 Compliance Opinions6452c20
The Opiniones tab tracks the current status of each client's official opinions from the three Mexican regulatory bodies:
- SAT -- Opinion de cumplimiento de obligaciones fiscales
- IMSS -- Opinion de cumplimiento en materia de seguridad social
- INFONAVIT -- Opinion de cumplimiento de aportaciones patronales
Opinion Status
Each opinion can have one of two outcomes:
| Status | Description | Action |
|---|---|---|
| Positiva | Client is in good standing | No action required |
| Negativa | Client has compliance issues | Immediate action required |
Negative Opinion Handling
When a negative opinion is detected, CumpleAI automatically:

4.9 Monthly Flow (Flujo Mensual)6452c20
The Flujo Mensual tab visualizes the automated monthly workflow as a vertical timeline. Each milestone in the cycle is represented by a card showing:
- Day number -- When in the month this milestone occurs
- Label -- A descriptive name for the milestone
- Description -- Detailed explanation of what happens
- Status -- Completado (completed), En progreso (in progress), or Pendiente (pending)
- Affected clients -- How many clients are impacted
- Tasks count -- How many tasks are involved
- Critical flag -- Whether this milestone is a regulatory deadline
This view is read-only and provides a bird's-eye view of the current month's progress through the compliance cycle.

4.10 Critical Alerts and Escalations6452c20
CumpleAI implements a two-stage alert system during the compliance cycle:
Day 15 Warning
On day 15 of the month, the system automatically:
- Identifies all clients whose compliance tasks have not progressed beyond "To Do" or "Waiting on Client"
- Generates internal alerts for the assigned accountants
- Notifies the department manager
- Marks these clients as "at risk" on the compliance dashboard
Day 17 Escalation
On day 17 (the statutory deadline for most monthly declarations), the system:
- Marks all unsubmitted declarations as overdue
- Escalates overdue items to the manager and owner/partner level
- Updates the monthly flow milestone to "critical" status
- Includes overdue items in the compliance report sent to firm leadership
4.11 Filtering and Search6452c20
Across all compliance tabs, you can filter data by the following dimensions:
| Filter | Available On | Options |
|---|---|---|
| Client | Tareas, Opiniones | All clients in your portfolio |
| Status | Tareas | All statuses (Todo, In Progress, Waiting, Submitted, Accepted, Issue) |
| Period | Tareas, Calendario, Heatmap | Available months (6-month rolling window) |
| Assignee | Tareas | Team members (visible to manager and owner) |
| Task type | Tareas | IVA, ISR, Nomina, Anual |
4.12 Best Practices6452c20
Based on the experience of successful Mexican accounting firms, here are recommended practices for the Compliance module:
Next chapter: Chapter 5: Pipeline -- Learn how to manage operational tasks with the Kanban workflow, track blocked items, and monitor team performance through KPIs.
Chapter 5: Pipeline6452c20
The Pipeline module provides a comprehensive operational task management system with a Kanban workflow. While the Compliance module focuses specifically on monthly tax obligations, the Pipeline gives you a broader view of all tickets and tasks -- including drag-and-drop status changes, blocked item tracking, per-collaborator performance analysis, and key performance indicators (KPIs). This chapter walks you through all four Pipeline tabs and explains how to use each one effectively.
5.1 Accessing the Pipeline6452c20
Navigate to Pipeline in the left sidebar. The module opens on the Pipeline (Kanban) tab by default.

The Pipeline page contains four tabs:
| Tab | Icon | Purpose |
|---|---|---|
| Pipeline | Kanban board | Visual workflow management with drag-and-drop |
| Bloqueados | Warning | Blocked items requiring intervention |
| Por Colaborador | People | Per-team-member workload and performance |
| KPIs | Chart | Aggregate performance metrics and charts |
5.2 Pipeline Tab (Kanban Board)6452c20
The Pipeline tab displays all tickets in a Kanban board layout with five columns representing the complete status workflow.
5.2.1 Kanban Columns
| Column | Spanish Label | Meaning |
|---|---|---|
| Open | Abiertos | New tickets that have not been started |
| In Progress | En Progreso | Tickets actively being worked on |
| Waiting on Client | Esperando Cliente | Blocked pending information from the client |
| Resolved | Resueltos | Work is complete, awaiting confirmation |
| Closed | Cerrados | Fully resolved and archived |
Abiertos --> En Progreso --> Esperando Cliente --> Resueltos --> Cerrados

5.2.2 Kanban Cards
Each card on the board represents a single ticket and displays:
| Element | Description |
|---|---|
| Subject | The ticket title / subject line |
| Client name | The client this ticket belongs to |
| Priority badge | Color-coded pill showing priority level |
| Category | The ticket category (e.g., Cumplimiento, Documentos, Fiscal) |
| Assignee | The team member assigned to this ticket |
| Comments count | Number of comments/notes on the ticket |
Priority Color Coding
| Priority | Color | Spanish Label |
|---|---|---|
| Critical | Rose/red accent | Critico |
| High | Dark interactive | Alta |
| Medium | Secondary text tone | Media |
| Low | Muted tone | Baja |
5.2.3 Drag-and-Drop Status Changes
To change a ticket's status, simply drag the card from one column and drop it into another.

5.2.4 List View Toggle
If you prefer a traditional table view over the Kanban layout, click the List icon (lines icon) in the top-right of the Pipeline tab. The view switches to a sortable, filterable table showing all tickets in rows.
Click the Kanban icon (grid icon) to switch back to the board view.

5.2.5 Filters
Above the Kanban board, use the filter controls to narrow down which tickets are displayed:
| Filter | Options |
|---|---|
| Status | All statuses, or a specific one |
| Priority | All, Critical, High, Medium, Low |
| Assignee | All team members, or a specific person |
5.2.6 Ticket Notes and @Mentions
Certain tickets have internal notes visible as a tooltip or popover when you hover over the comments count on a card. Notes support @mentions -- type @ followed by a team member's name to tag them. Mentioned team members receive a notification.
Example note:
"Revisando documentacion con @Carlos Herrera para avanzar rapido."
5.3 Blocked Items Tab (Bloqueados)6452c20
The Blocked Items tab surfaces tickets and tasks that are stalled and require intervention. This tab is essential for {role:manager} and {role:owner} roles who need to identify and resolve bottlenecks across the team.
5.3.1 Blocked Items KPIs
At the top of the tab, four KPI cards summarize the current blocking situation:
| KPI | Description |
|---|---|
| Total bloqueados | Total number of currently blocked items |
| Dias promedio bloqueado | Average number of days items have been blocked |
| > 7 dias | Count of items blocked for more than 7 days |
| > 15 dias | Count of items blocked for more than 15 days (critical) |

5.3.2 Block Types
Every blocked item is categorized by one of four block types:
| Block Type | Spanish Label | Typical Scenario |
|---|---|---|
| Documentation pending | Documentacion pendiente | Client has not provided required documents (e.g., acta constitutiva, poder notarial, e.firma) |
| Waiting on client | Esperando cliente | Client is unresponsive after multiple contact attempts |
| Declaration error | Error en declaracion | An inconsistency was found (e.g., CFDI mismatch, incorrect coefficient) |
| Review pending | Revision pendiente | Work requires manager or partner approval before proceeding |
5.3.3 Blocked Items Table
The main table shows each blocked item with the following columns:
| Column | Description |
|---|---|
| Client | The client name |
| Block type | Category of the block (see above) |
| Reason | Detailed explanation of why this item is blocked |
| Responsible | The team member assigned to resolve this |
| Days blocked | Number of days since the item became blocked |
| Deadline | The target resolution date |
| Action | Recommended next step to unblock |
| Office | Which office this client belongs to (Guadalajara or Penasco) |
5.3.4 Color-Coded Alert Levels
Rows in the blocked items table are color-coded based on how long the item has been blocked:
| Duration | Alert Level | Visual Indicator |
|---|---|---|
| > 15 days | High alert | Rose/red background tint |
| > 7 days | Medium alert | Amber/warm background tint |
| <= 7 days | Normal | Standard row background |
Items blocked for more than 15 days are a serious operational risk. They often correspond to clients who may miss statutory deadlines, resulting in penalties. Managers should review these items daily and escalate as needed.
5.3.5 Filters on Blocked Items
Use the filter controls to narrow the blocked items view:

5.4 By Collaborator Tab (Por Colaborador)6452c20
The By Collaborator tab presents a card-based view of each team member's workload and performance. This view is designed for {role:manager} and {role:owner} roles to assess team capacity and identify team members who may need support.
5.4.1 Collaborator Cards
Each team member is represented by a card containing:
| Field | Description |
|---|---|
| Name | Full name of the team member |
| Role | Their role in the firm (Accountant, Admin, Payroll Specialist, Partner) |
| Office | Which office they belong to |
| Traffic light status | Green, Yellow, or Red indicator (see below) |
| Clients assigned | Number of clients in their portfolio |
| Pending tasks | Tasks that need to be completed |
| Open tickets | Active support tickets |
| Months to close | Number of monthly closings still outstanding |
| Completion % | Percentage of their assigned work that is complete |
| At-risk clients | List of client names currently flagged as at-risk |

5.4.2 Traffic Light Status
Each collaborator has a traffic light indicator that provides an at-a-glance assessment of their workload health:
| Status | Color | Criteria |
|---|---|---|
| Verde (Green) | Green | Completion rate >= 80%, no at-risk clients, pending tasks under threshold |
| Amarillo (Yellow) | Amber/Yellow | Completion rate 60-79%, or 1-2 at-risk clients, or elevated pending tasks |
| Rojo (Red) | Red | Completion rate < 60%, or 3+ at-risk clients, or critically high pending tasks |
A "Red" traffic light does not necessarily mean poor performance. It may indicate an overloaded team member who needs tasks redistributed. Use this as a management signal, not a performance judgment.
5.4.3 Sorting Options
Use the sort controls above the cards to reorder collaborators by:
| Sort Option | Description |
|---|---|
| By urgency | Red first, then Yellow, then Green |
| By client load | Most clients first |
| By pending tasks | Most pending tasks first |
| By completion % | Lowest completion rate first |
5.5 KPIs Tab6452c20
The KPIs tab provides aggregate metrics and charts that give firm leadership a data-driven view of operational performance. This tab is most valuable for {role:owner} and {role:manager} roles.
5.5.1 Key Metrics
The top of the tab displays headline metrics:
| Metric | Description |
|---|---|
| % compliance before day 17 | Percentage of declarations submitted before the statutory deadline |
| Average close days | Mean number of days to complete a monthly closing per client |
5.5.2 Compliance Rate Over Time
A line chart shows the monthly compliance rate (percentage of declarations submitted before day 17) over a 6-month rolling window. This chart makes it easy to identify trends -- whether the firm's compliance discipline is improving, stable, or declining.

5.5.3 Workload Distribution
A bar chart shows the distribution of clients and pending tasks across team members. Each bar represents a collaborator, with two data series:
- Clientes (Clients) -- Number of assigned clients
- Tareas (Tasks) -- Number of pending tasks
This chart helps identify workload imbalances. If one team member has significantly more pending tasks relative to their client count, they may need assistance.

5.5.4 Block Reason Distribution
A pie chart breaks down the current blocked items by block type:
- Documentacion pendiente
- Esperando cliente
- Error en declaracion
- Revision pendiente
This chart helps leadership understand the systemic causes of bottlenecks and invest in the right solutions (e.g., if most blocks are "Waiting on client," the firm may need to improve its client communication processes).

5.5.5 Monthly Compliance by Portfolio
A detailed table shows compliance metrics broken down by collaborator:
| Column | Description |
|---|---|
| Colaborador | Team member name |
| Total clientes | Number of assigned clients |
| Cerrados | Clients with completed monthly closing |
| Pendientes | Clients still pending |
| Cumplimiento % | Completion percentage |
| Dias promedio | Average days to close |

5.6 Pipeline Workflow Best Practices6452c20
For Accountants {role:accountant}
For Managers {role:manager}
For Owners and Partners {role:owner}
Next chapter: Chapter 6: Collections -- Learn how to track revenue, manage invoices, handle extra income, and configure partner distribution splits.
Chapter 6: Collections (Cobranza)6452c20
The Collections module manages all revenue-related operations for your accounting firm: invoicing clients, tracking payments, recording extra revenue streams, and distributing income among partners. This chapter covers each of the four tabs in detail and explains how the collections workflow integrates with the rest of CumpleAI.
6.1 Accessing the Collections Module6452c20
Navigate to Cobranza in the left sidebar. The module opens on the Cobranza General tab by default.

The Collections page contains four tabs:
| Tab | Icon | Purpose |
|---|---|---|
| Cobranza General | Dollar sign | Revenue overview, charts, and payment tracking |
| Facturas | Document | Invoice management and status tracking |
| Ingresos Extra | Briefcase | Non-standard revenue items (SIROC, REPSE, consulting, etc.) |
| Socios | People | Partner income distribution and split configuration |
Office Filter
All tabs share a global Office filter at the top of the page with three options:
| Option | Description |
|---|---|
| Todas | Show data from all offices combined |
| Guadalajara | Show only Guadalajara office data |
| Penasco | Show only Puerto Penasco office data |
6.2 Cobranza General Tab6452c20
The General Collections tab provides a high-level financial overview with KPIs, a 6-month revenue chart, a payment tracking table, and an extra revenue summary.
6.2.1 KPI Cards
Four KPI cards summarize the current month's financial position:
| KPI | Description | Example |
|---|---|---|
| Facturado | Total amount invoiced for the period | $485,200 MXN |
| Cobrado | Total amount actually collected (paid by clients) | $342,600 MXN |
| Pendiente | Outstanding balance (Facturado minus Cobrado) | $142,600 MXN |
| Tasa de cobro | Collection rate as a percentage (Cobrado / Facturado) | 70.6% |
- Facturado shows "Total en facturas" as a subtitle
- Cobrado shows the collection rate percentage
- Pendiente shows the percentage still outstanding
- Tasa de cobro shows whether the rate is progressing well or needs attention

6.2.2 Revenue Chart (6 Months)
Below the KPIs, a bar chart displays the Facturado vs Cobrado comparison over the last 6 months. Each month shows two bars:
- Navy bar -- Facturado (invoiced amount)
- Rose bar -- Cobrado (collected amount)
The gap between the two bars represents outstanding payments. A healthy firm should see the rose bars closely tracking the navy bars.

6.2.3 Payment Table
The payment table shows individual payment records for the current month. Each row contains:
| Column | Description |
|---|---|
| Cliente | Client trade name |
| Monto | Total invoiced amount for this client |
| Pagado | Amount actually paid |
| Restante | Remaining balance |
| Estado | Payment status (see below) |
| Metodo | Payment method (transfer, check, cash, etc.) |
| Factura | Associated invoice number |
| Entidad | Billing entity used |
Payment Status Filters
Above the payment table, a row of filter buttons lets you narrow by payment status:
| Status | Spanish Label | Description |
|---|---|---|
| Todos | Todos | Show all payments |
| Paid | Pagado | Fully paid |
| Pending | Pendiente | Payment not yet received |
| Overdue | Vencido | Past due date without payment |
| Partial | Parcial | Partially paid |

6.2.4 Extra Revenue Summary
At the bottom of the Cobranza General tab, a summary card shows extra revenue for the current month -- income that comes from sources other than standard monthly accounting fees. This includes SIROC registrations, REPSE renewals, tax planning engagements, and other professional services. The summary aggregates these items and links to the dedicated Ingresos Extra tab for details.
6.3 Facturas Tab (Invoices)6452c20
The Facturas tab provides full invoice lifecycle management, from creation through collection.
6.3.1 Invoice Status Flow
Every invoice progresses through the following statuses:
Emitida --> Recibida --> Cobrada
\--> Pendiente --> Vencida
| Status | Spanish Label | Description |
|---|---|---|
Emitida | Emitida | Invoice has been issued/generated |
Recibida | Recibida | Client has acknowledged receipt |
Cobrada | Cobrada | Payment has been collected in full |
Pendiente | Pendiente | Invoice is awaiting payment |
Vencida | Vencida | Invoice has passed its due date without payment |
6.3.2 Invoice KPIs
At the top of the Facturas tab, three KPI cards summarize the invoice portfolio:
| KPI | Description |
|---|---|
| Total facturado | Sum of all invoice amounts for the period |
| Cobrado | Sum of collected invoices |
| Pendiente/Vencido | Sum of unpaid and overdue invoices |
6.3.3 Invoice Filters
Two filter controls appear above the invoice table:
| Filter | Options |
|---|---|
| Status | Todas, Emitida, Recibida, Cobrada, Pendiente, Vencida |
| Billing entity | All entities, or a specific entity |
6.3.4 Invoice Table
The invoice table displays each invoice with the following columns:
| Column | Description |
|---|---|
| Numero | Invoice number (e.g., "FAC-2026-0142") |
| Cliente | Client trade name |
| Entidad | Billing entity that issued the invoice |
| Monto | Invoice amount in MXN |
| Fecha emision | Issue date |
| Fecha vencimiento | Due date |
| Estado | Current status badge |

6.3.5 Creating a New Invoice
To create a new invoice:
- Cliente -- Select the client from the dropdown
- Monto -- Enter the invoice amount
- Fecha de emision -- Select the issue date (defaults to today)
- Fecha de vencimiento -- Select the due date
- Entidad de facturacion -- Select the billing entity

6.4 Ingresos Extra Tab (Extra Revenue)6452c20
The Extra Revenue tab tracks income from professional services beyond standard monthly accounting fees. These are typically one-time or periodic engagements that generate additional revenue for the firm.
6.4.1 Extra Revenue Categories
CumpleAI supports six categories of extra revenue:
| Category | Description | Common Examples |
|---|---|---|
| SIROC | Sistema de Registro de Obras de Construccion | Registration of construction projects |
| REPSE | Registro de Prestadoras de Servicios Especializados | Registration/renewal for specialized service providers |
| Planeacion Fiscal | Tax planning | Strategic tax planning engagements |
| Servicios Legales | Legal services | Corporate formation, labor law advisory, contract review |
| Servicios Financieros | Financial services | Credit facilitation, financial advisory |
| Personalizado | Custom | Any other revenue that does not fit standard categories |
6.4.2 Revenue Types
Each extra revenue item is classified as one of two types:
| Type | Spanish Label | Description | Example |
|---|---|---|---|
| Fixed | Fijo | A flat fee for the service | SIROC registration: $6,500 MXN |
| Percentage | Porcentaje | A percentage of a base amount | Tax planning: 3.5% of $850,000 = $29,750 MXN |
"850,000 x 3.5% = 29,750"
6.4.3 Extra Revenue Table
The table displays each extra revenue item with:
| Column | Description |
|---|---|
| Cliente | Client name |
| Oficina | Office (Guadalajara or Penasco) |
| Categoria | Revenue category |
| Concepto | Description of the service |
| Tipo | Fijo or Porcentaje |
| Monto base | Base amount (for percentage items) or the fee amount (for fixed items) |
| Porcentaje | Percentage applied (null for fixed items) |
| Monto calculado | Final calculated amount |
| Periodo | The billing period |
6.4.4 Category Filters
Use the category filter buttons above the table to narrow the view to a specific category (e.g., show only SIROC items or only Legal Services).

6.4.5 Creating a New Extra Revenue Item
- Cliente -- Select the client
- Oficina -- Select the originating office
- Categoria -- Choose from the six categories
- Concepto -- Enter a description of the service
- Tipo -- Select Fijo (fixed) or Porcentaje (percentage)
- Monto base -- Enter the base amount
- Porcentaje -- If type is Porcentaje, enter the percentage (e.g., 3.5)
- Periodo -- Select the billing period
"Monto base x Porcentaje% = Monto calculado"
6.5 Socios Tab (Partners)6452c20
The Partners tab manages how the firm's revenue is distributed among its partners. This is particularly important for firms with multiple partners who share income from certain revenue streams.
6.5.1 Partner Cards
At the top of the Socios tab, partner cards display each partner's key financial metrics:
| Field | Description |
|---|---|
| Name | Partner name |
| Role | Partner role (e.g., Socio Fundador, Socio Director, Socia Operativa) |
| Split % | Their percentage share of shared revenue |
| Total | Total revenue allocated to this partner |
| Cobrado | Amount actually collected for this partner's share |
| Pendiente | Outstanding amount for this partner |

6.5.2 Revenue Scope
CumpleAI defines two revenue scopes that determine how income is distributed:
| Scope | Spanish Label | Description |
|---|---|---|
| SHARED_PARTNERS | Compartido entre socios | Revenue is split among all partners according to their split percentages |
| OFFICE_ONLY | Solo oficina | Revenue belongs entirely to the originating office and is not shared with other partners |
Standard monthly accounting fees are typically OFFICE_ONLY (each office keeps its own client revenue). Extra revenue from services like tax planning, legal work, or financial advisory is often SHARED_PARTNERS, as the entire firm benefits from these engagements regardless of which office originated them.
6.5.3 Partner Split Configuration
The split percentages define how SHARED_PARTNERS revenue is divided. In a typical three-partner firm, the split might be:
| Partner | Role | Split % |
|---|---|---|
| Alexis | Socio Fundador | 33.33% |
| David | Socio Director | 33.33% |
| Gabriela | Socia Operativa | 33.34% |
Split percentages must total exactly 100%. CumpleAI validates this when saving configuration changes. The last partner's percentage may include a fractional adjustment to ensure the total is precise (e.g., 33.34% instead of 33.33%).
6.5.4 Allocation Table
Below the partner cards, the allocation table shows each shared revenue item with its per-partner breakdown:
| Column | Description |
|---|---|
| Ingreso | Description of the revenue item |
| Oficina origen | The office that originated this revenue |
| Monto total | Total amount of the revenue item |
| Pagado | Total amount collected so far |
| Revenue scope | SHARED_PARTNERS or OFFICE_ONLY |
| Sub-column | Description |
|---|---|
| Partner name | The partner |
| Amount | Their allocated share |
| Paid | How much of their share has been collected |
Example Allocation
For a tax planning engagement totaling $29,750 MXN with SHARED_PARTNERS scope:
| Partner | Amount | Paid | Outstanding |
|---|---|---|---|
| Alexis (33.33%) | $9,916 | $9,916 | $0 |
| David (33.33%) | $9,916 | $9,916 | $0 |
| Gabriela (33.34%) | $9,918 | $9,918 | $0 |

6.6 Understanding the Financial Flow6452c20
The following diagram illustrates how revenue flows through the Collections module:
Client Payment
|
v
Invoice (Facturas tab)
|
+--> Standard fee --> Payment record (Cobranza General)
| |
| +--> OFFICE_ONLY scope --> Office retains 100%
|
+--> Extra service --> Extra Revenue (Ingresos Extra)
|
+--> OFFICE_ONLY scope --> Office retains 100%
|
+--> SHARED_PARTNERS scope --> Partner Split (Socios)
|
+--> Partner A: X%
+--> Partner B: Y%
+--> Partner C: Z%
6.7 Collection Workflow Best Practices6452c20
Invoice Discipline
Payment Follow-Up
Extra Revenue Tracking
Partner Distribution
- Review partner splits quarterly to ensure they reflect current agreements.
- Use the allocation table to verify that per-partner amounts are correct before distributing payments.
- Keep OFFICE_ONLY and SHARED_PARTNERS scopes clearly defined in your firm's partnership agreement.
Next chapter: Chapter 7: Tickets -- Learn how to manage support tickets, track conversations, and handle auto-created tickets from compliance issues.
Chapter 7: Tickets6452c20
The Tickets module is CumpleAI's support ticket management system. It provides a centralized location for tracking all client issues, internal requests, and system-generated alerts. This chapter covers the ticket list view, ticket detail page, auto-created tickets, and the various filters and workflows available to your team.
7.1 Accessing the Tickets Module6452c20
Navigate to Tickets in the left sidebar. The module opens on the ticket list view with the KPI strip at the top.

Role-Based Visibility
Different roles see different sets of tickets:
| Role | Visibility |
|---|---|
| owner | All tickets across the organization |
| admin | All tickets across the organization |
| manager | All tickets within their department |
| accountant | Only tickets assigned to them |
Accountants can only see tickets where they are the assigned team member. If a ticket needs to be visible to a different accountant, it must be reassigned by a manager or admin.
7.2 KPI Strip6452c20
At the top of the Tickets page, four KPI cards provide a snapshot of the current ticket landscape:
| KPI | Icon | Description |
|---|---|---|
| Total tickets | Message bubble | Total number of tickets in the system |
| Open | Alert triangle | Tickets with status OPEN or IN_PROGRESS |
| Critical | Warning | Tickets with "critical" priority that are not yet resolved or closed |
| Average resolution time | Clock | Mean time from ticket creation to resolution |

7.3 Filtering Tickets6452c20
Below the KPI strip, a comprehensive set of filters helps you find specific tickets quickly.
7.3.1 Status Filters
A row of filter buttons lets you narrow by ticket status:
| Status | Spanish Label | Description |
|---|---|---|
| Todos | Todos | Show all tickets (default) |
| OPEN | Abiertos | New tickets, not yet started |
| IN_PROGRESS | En Progreso | Actively being worked on |
| WAITING_ON_CLIENT | Esperando | Blocked pending client response |
| RESOLVED | Resueltos | Issue resolved, awaiting confirmation |
| CLOSED | Cerrados | Fully resolved and archived |
7.3.2 Priority Filters
A second row of filter buttons narrows by priority:
| Priority | Spanish Label | Color Indicator |
|---|---|---|
| Todas | Todas | No filter (default) |
| Critical | Critica | Rose/red dot |
| High | Alta | Dark interactive dot |
| Medium | Media | Secondary tone dot |
| Low | Baja | Muted tone dot |
7.3.3 Search
A search field allows free-text search across ticket subjects and client names. Type any part of a subject line or client name to filter the list in real time.

7.4 Ticket Table6452c20
The main content area displays a table of tickets. Tickets are sorted by priority (Critical first, then High, Medium, Low) to ensure the most urgent items are always at the top.
7.4.1 Table Columns
| Column | Description |
|---|---|
| ID | Unique ticket identifier (e.g., #42) |
| Subject | The ticket title describing the issue |
| Client | The client's trade name |
| Priority | Color-coded priority badge |
| Category | The ticket category (see Section 7.5) |
| Assigned | The team member responsible |
| Status | Current status badge |
| Updated | When the ticket was last modified |
| Comments | Number of comments on the ticket |
7.4.2 Priority Color Coding
Ticket priority is indicated by a colored dot next to the priority label in the table:
| Priority | Dot Color | Meaning |
|---|---|---|
| Critical | Rose/red | Requires immediate attention -- regulatory deadline at risk |
| High | Dark blue | Important -- should be addressed within 24 hours |
| Medium | Gray-blue | Standard priority -- address within the normal workflow |
| Low | Light gray | Minor issue -- address when capacity allows |
7.4.3 Clicking a Ticket Row
Click any row in the ticket table to navigate to the Ticket Detail Page (see Section 7.7).

7.5 Ticket Categories6452c20
Every ticket is assigned one of six categories that help organize and route issues:
| Category | Spanish Label | Typical Use Cases |
|---|---|---|
compliance_issue | Cumplimiento | Negative SAT opinion, rejected declaration, missed deadline |
document_request | Documentos | Client requesting a copy of a filing, constancia, or opinion document |
tax_query | Fiscal | Client asking about tax implications, regime changes, or planning |
system_issue | Sistema | Technical problems with the portal, login issues, or data errors |
onboarding | Onboarding | New client setup, initial document collection, credential configuration |
billing | Facturacion | Invoice disputes, payment questions, fee adjustments |
Categories help the system route tickets to the right team member. For example,compliance_issuetickets are typically assigned to the accountant managing that client, whilesystem_issuetickets may go to the admin team.
7.6 Creating a New Ticket6452c20
Tickets can be created in three ways:
7.6.1 Manual Creation
- Cliente -- Select the client from the dropdown (required)
- Asunto -- Enter a clear, descriptive subject line (required)
- Descripcion -- Provide detailed context about the issue (optional but recommended)
- Prioridad -- Select Low, Medium, High, or Critical (defaults to Medium)
- Categoria -- Choose the appropriate category (required)
- Asignado a -- Optionally assign to a specific team member
7.6.2 Auto-Created from Compliance
When the Compliance module detects a negative opinion (SAT, IMSS, or INFONAVIT), it automatically creates a ticket with:
- Category:
compliance_issue - Priority:
highorcritical(depending on the severity) - Subject: A descriptive title referencing the negative opinion
- Assigned to: The accountant responsible for that client
- Description: Details about which opinion was negative and the recommended remediation steps
These auto-created tickets appear in the ticket list alongside manually created tickets and follow the same workflow.
7.6.3 Client-Created via Portal
Clients can create tickets through the Client Portal (portal.cumpleai.com). These tickets appear in the Tickets module with the client's name and a category selected by the client. Portal-created tickets always start with status OPEN and are assigned to the client's primary accountant.
7.7 Ticket Detail Page6452c20
Clicking a ticket row navigates to the full Ticket Detail Page, which provides comprehensive information and interaction capabilities.
7.7.1 Navigation
At the top of the detail page, a "Volver a Tickets" (Back to Tickets) link with an arrow icon returns you to the ticket list.
7.7.2 Ticket Header
The header card displays:
| Element | Description |
|---|---|
| Ticket ID | The unique identifier displayed in a monospace badge (e.g., #42) |
| Status badge | Current status with color coding |
| Priority badge | Priority level with the corresponding color |
| Category badge | The ticket category |
| Subject | The full ticket title |
| Client name | Linked to the client profile |
| Created date | When the ticket was created |

7.7.3 Status Change
On the detail page, you can change the ticket's status using a dropdown:
- Abierto (Open)
- En Progreso (In Progress)
- Esperando Cliente (Waiting on Client)
- Resuelto (Resolved)
- Cerrado (Closed)
7.7.4 Assigned Team Member
The sidebar of the detail page shows the assigned team member with their avatar initials. {role:manager} and {role:admin} can reassign tickets to different team members.
7.7.5 Conversation Thread
The main body of the detail page is the conversation thread. This is where all communication about the ticket takes place.
Each comment in the thread shows:
| Element | Description |
|---|---|
| Author avatar | Initials badge of the comment author |
| Author name | Full name of the commenter |
| Role badge | The author's role (Admin, Contador, Cliente, Sistema) |
| Timestamp | Date and time of the comment |
| Content | The comment text, which may include @mentions |
- Admin -- Dark primary background
- Contador (Accountant) -- Secondary background
- Cliente (Client) -- Interactive accent background
- Sistema (System) -- Muted background

7.7.6 Adding a Comment
To add a comment to the conversation:
@ followed by their name (e.g., @Carlos Herrera). The mentioned person will receive a notification.7.7.7 @Mentions
The @mention system works as follows:
@ followed by a team member's full or partial name@Juan Perez) or partial name.7.7.8 Attachments
Comments can include file attachments. Click the attachment button (paperclip icon) to add files to your comment. Supported formats include PDF, XML, images (PNG, JPG), and common document formats.
7.7.9 System Comments
Certain actions generate automatic system comments in the thread:
- Status changes -- "Status changed from OPEN to IN_PROGRESS"
- Reassignment -- "Ticket reassigned from Ana Patricia Reyes to Carlos Herrera"
- Priority changes -- "Priority changed from Medium to Critical"
System comments are displayed with a "Sistema" role badge to distinguish them from human comments.
7.8 Auto-Created Tickets from Compliance6452c20
When the Compliance module detects issues, it creates tickets automatically. Understanding these auto-created tickets helps you respond efficiently.
Trigger: Negative Compliance Opinion
When a client receives a negative opinion from SAT, IMSS, or INFONAVIT:
- Subject: "Opinion negativa [SAT/IMSS/INFONAVIT] - [Client Name]"
- Category:
compliance_issue
- Priority:
highorcritical
- Assigned to: The accountant managing this client
Responding to Auto-Created Tickets
compliance_issue category and high/critical priority.@Maria Fernanda Lopez for manager approval of remediation plan).7.9 Pagination6452c20
The ticket table displays 15 tickets per page. When there are more than 15 tickets matching your current filters, pagination controls appear at the bottom of the table.
| Control | Description |
|---|---|
| Left arrow | Navigate to the previous page |
| Right arrow | Navigate to the next page |
| Page indicator | Shows the current page number and total pages |
7.10 Ticket Lifecycle Summary6452c20
The complete lifecycle of a ticket from creation to closure:
Created (OPEN)
|
v
Acknowledged (IN_PROGRESS)
|
+--> Need client info --> WAITING_ON_CLIENT
| |
| +--> Client responds --> IN_PROGRESS
|
+--> Issue resolved --> RESOLVED
|
+--> Client confirms --> CLOSED
|
+--> Client disagrees --> IN_PROGRESS (reopen)
Status Transition Rules
| From | Allowed Transitions |
|---|---|
| OPEN | IN_PROGRESS |
| IN_PROGRESS | WAITING_ON_CLIENT, RESOLVED |
| WAITING_ON_CLIENT | IN_PROGRESS |
| RESOLVED | CLOSED, IN_PROGRESS |
| CLOSED | (Terminal -- no further transitions) |
While the table above shows the standard flow, CumpleAI does not strictly enforce these transitions. A manager can move a ticket from any status to any other status if the situation requires it. The standard flow is a guideline, not a hard constraint.
7.11 Best Practices6452c20
For Accountants {role:accountant}
For Managers {role:manager}
For Owners {role:owner}
compliance_issue tickets for the same client), it may indicate a deeper problem that needs strategic attention.Previous chapter: Chapter 6: Collections -- Revenue tracking, invoicing, and partner distribution.
WhatsApp6452c20
CumpleAI integrates with the WhatsApp Business API to provide a unified communication channel between your accounting firm and its clients. From the WhatsApp page, your team can manage conversations, leverage an AI-powered bot for automated responses, send template messages, monitor employee notifications, and review messaging metrics -- all without leaving the CRM.
Access and Permissions6452c20
The WhatsApp page is available to the following roles:
| Role | Access Level |
|---|---|
| owner | Full access -- all tabs, send messages, manage templates |
| admin | Full access -- all tabs, send messages, manage templates |
| manager | Full access -- all tabs, send messages, manage templates |
| accountant | Conversations for assigned clients only, send messages |
| payroll | No access |
| viewer | No access |
Page Layout6452c20
The WhatsApp page is organized into five tabs, accessible via the tab bar at the top of the page:
Above the tabs, a KPI bar displays four summary metrics:
- Total Conversaciones -- Number of active conversations
- Mensajes sin Leer -- Unread incoming messages awaiting attention
- Plantillas Enviadas Hoy -- Template messages dispatched today
- Tasa de Respuesta -- Percentage of client messages that received a reply

Conversations Tab6452c20
The Conversations tab is the core messaging interface. It follows a split-pane layout familiar to anyone who has used a messaging application: a conversation list on the left and a message thread on the right.
Conversation List
The left panel displays all active conversations with clients. Each conversation entry shows:
- Client initials -- A circular avatar with the client's name initials
- Client name -- The full name of the client contact
- Last message preview -- A truncated preview of the most recent message
- Timestamp -- When the last message was sent or received (shows time for today, "Ayer" for yesterday, day of week for the last 7 days, or a date)
- Unread badge -- A numbered badge indicating unread messages, displayed only when there are unread messages
The conversation list is sorted by the most recent activity, with the newest conversations at the top.
Searching Conversations
At the top of the conversation list, a search field allows you to filter conversations by client name. As you type, the list narrows to show only conversations matching your search text.
Message Thread
When you select a conversation from the list, the right panel displays the full message thread. The thread header shows the client's name and phone number.
Each message bubble includes:
- Message text -- The content of the message
- Sender name -- Displayed above the message for incoming messages
- Timestamp -- The time the message was sent
- Delivery status (outgoing messages only) -- An icon indicating the current delivery state
Message Types
Messages can be one of four types, each displayed with distinct visual styling:
| Type | Description | Visual Indicator |
|---|---|---|
| Text | Standard text message | Plain message bubble |
| Template | A pre-approved WhatsApp template message | Highlighted with a template icon and the template name |
| Document | A file attachment (PDF, spreadsheet, etc.) | Shows a document icon with the file name |
| Image | An image attachment | Displays inline within the bubble |
Delivery Status Icons
Outgoing messages display delivery receipts as small icons next to the timestamp:
| Status | Icon | Meaning |
|---|---|---|
| Sent | Single check mark | Message left the CumpleAI server |
| Delivered | Double check mark (gray) | Message reached the client's WhatsApp |
| Read | Double check mark (dark) | Client opened and viewed the message |
| Failed | Alert circle | Message could not be delivered |
A "Failed" status typically indicates the client's phone number is invalid, the WhatsApp Business API quota has been exceeded, or the client has blocked the business number. Check the Configuration page for API status details.
Sending Messages
At the bottom of the message thread, you will find the message composer. To send a message:
The composer also provides buttons for:
- Attachment (paperclip icon) -- Attach a file to the message
- Template (template icon) -- Open the template selector to send a pre-approved template
Sending a Template Message
Template messages are pre-approved by WhatsApp and can be sent proactively to clients even outside the 24-hour messaging window. Each template belongs to a category and may include variable placeholders.
- Template name (e.g., "Recordatorio de Declaracion")
- Category badge (Recordatorio, Alerta, Informativo, Cobranza)
- Message preview with variable placeholders like
{{tipo}},{{periodo}},{{fecha}}
tipo (tax type), periodo (period), and fecha (deadline date).The available template categories are:
| Category | Spanish Label | Use Case |
|---|---|---|
| Reminder | Recordatorio | Deadline reminders, document requests, fiscal certificate expiry |
| Alert | Alerta | Negative compliance opinions, CFDI cancellations |
| Informational | Informativo | Declaration filed confirmations, case status updates |
| Billing | Cobranza | Payment reminders, invoice notifications |
Starting a New Conversation
You can initiate a new WhatsApp conversation from a client's profile page.
Mobile View
On mobile devices, the conversation list and message thread are displayed in a stacked layout rather than side-by-side. Tap a conversation to view its messages, and use the back arrow button at the top to return to the conversation list.
Bot AI Tab6452c20
The Bot AI tab displays the activity log of CumpleAI's intelligent WhatsApp bot. The bot automatically responds to common client inquiries, reducing the workload on your team while providing instant answers to clients.
How the Bot Works
When a client sends a message to your firm's WhatsApp number, the AI bot analyzes the content and attempts to provide an immediate response. The bot can handle the following types of inquiries:
- Case status inquiries -- "What is the status of my January declaration?"
- Pending document questions -- "Have you received my bank statements?"
- Deadline inquiries -- "When is my next fee payment due?"
- Document requirements -- "What documents do I need for the annual declaration?"
- General questions -- "What are your office hours?"
When the bot cannot confidently answer a question, or when the client explicitly requests to speak with a human, the conversation is escalated to a human agent.
Bot Conversation Log
The Bot AI tab shows a table of recent bot interactions with the following columns:
| Column | Description |
|---|---|
| Client Name | The name of the client who initiated the conversation |
| Phone | The client's WhatsApp phone number |
| Last Question | The most recent question the client asked |
| Bot Response | The automated response provided by the bot |
| Timestamp | When the interaction occurred |
| Status | Whether the bot resolved the query or escalated it |
Resolution Statuses
Each bot conversation has one of two resolution statuses:
- Resuelta por Bot (Resolved by Bot) -- The bot successfully answered the client's question with no human intervention required
- Escalada a Agente (Escalated to Agent) -- The bot determined that human assistance was needed and routed the conversation to an available team member
Voice Message Transcription
The Bot AI tab also includes a Voice Messages section. When clients send voice messages (audio notes) via WhatsApp, the system automatically:
Each voice message entry shows:
| Field | Description |
|---|---|
| Client Name | Who sent the voice message |
| Phone | The client's phone number |
| Duration | Length of the audio message (e.g., "0:42") |
| Transcription | The full text transcription of the voice message |
| Ticket ID | The automatically generated ticket reference (e.g., "TK-0887") |
| Timestamp | When the voice message was received |
Voice message transcription supports Spanish language audio. The system handles various accents common in Mexico. Transcription accuracy may vary with background noise or very fast speech.
Templates Tab6452c20
The Templates tab provides a management interface for your WhatsApp message templates. Templates must be approved by WhatsApp before they can be sent to clients. This tab lets you view, organize, and monitor the approval status of all your templates.
Template List
Each template card displays:
- Template name -- A descriptive identifier (e.g., "Solicitud de Documento")
- Category -- The functional category of the template
- Approval status -- Current WhatsApp approval state
- Message body -- The template text with variable placeholders
- Quick replies -- Pre-defined response buttons that appear to the client
- Last updated -- Date of the most recent modification
- Usage count -- How many times the template has been sent
Template Categories
Templates are organized into five categories:
| Category | Spanish Label | Typical Use |
|---|---|---|
| Documents | Documentos | Requesting documents, digital signature requests |
| Reminders | Recordatorios | Deadline warnings, missing document follow-ups |
| Case Status | Estado de Caso | Case progress updates, next steps |
| Confirmations | Confirmaciones | Document receipt confirmations, onboarding welcome |
| Surveys | Encuestas | Client satisfaction surveys |
Approval Statuses
Each template has an approval status from WhatsApp:
| Status | Spanish Label | Meaning |
|---|---|---|
| Approved | Aprobada | Template can be sent to clients |
| Pending | Pendiente | Template is awaiting WhatsApp review |
| Rejected | Rechazada | Template was rejected by WhatsApp and cannot be used |
Templates with "Rejected" status cannot be sent. You must modify the template content and resubmit for approval. Common rejection reasons include promotional language, missing opt-out options, or non-compliant variable usage.
Template Variables
Templates use double-brace placeholders for dynamic content. Common variables include:
| Variable | Description | Example Value |
|---|---|---|
{{nombre_cliente}} | Client's full name | "Carlos Mendoza Rodriguez" |
{{nombre_documento}} | Document being requested | "Estado de cuenta bancario" |
{{periodo}} | Fiscal period | "Enero 2026" |
{{fecha_limite}} | Deadline date | "28 de febrero 2026" |
{{motivo}} | Reason for the request | "Declaracion mensual IVA" |
{{nombre_asesor}} | Assigned accountant's name | "Laura Gomez" |
{{numero_caso}} | Case/ticket reference | "TK-0845" |
{{monto}} | Monetary amount | "$8,500 MXN" |
{{referencia}} | Payment reference number | "REF-88421" |
Employee Notifications Tab6452c20
The Employee Notifications tab tracks internal WhatsApp notifications sent to your team members. These are automated alerts that keep accountants and managers informed about events requiring their attention.
Notification List
Each notification entry includes:
| Field | Description |
|---|---|
| Employee Name | The team member who received the notification |
| Type | Category of the notification event |
| Message | The full notification text |
| Related Client | The client associated with the event |
| Timestamp | When the notification was dispatched |
| Delivery Status | Whether the notification was successfully delivered |
Notification Types
The system generates eight types of employee notifications:
| Type | Spanish Label | Trigger |
|---|---|---|
| New Client | Nuevo Cliente | A new client is assigned to the employee's portfolio |
| Missing Document | Documento Faltante | A client has outstanding documents past the submission date |
| 7-Day Warning | Vence en 7d | A compliance obligation is due in 7 days |
| 3-Day Warning | Vence en 3d | A compliance obligation is due in 3 days |
| 1-Day Warning | Vence manana | A compliance obligation is due tomorrow |
| Escalation | Escalacion | An obligation has passed its deadline and requires escalation |
| Status Change | Cambio Estado | A compliance task's status has been updated |
| Ticket Expiry | Ticket Vence | A ticket is approaching its resolution SLA |
Delivery Statuses
Each notification displays its delivery outcome:
| Status | Spanish Label | Meaning |
|---|---|---|
| Read | Leido | Employee opened and read the notification |
| Delivered | Entregado | Notification reached the employee's phone |
| Failed | Fallido | Notification could not be delivered |
Notifications with "Failed" delivery status mean the employee did not receive the alert. This could lead to missed deadlines. If you see failed notifications, verify the employee's WhatsApp number in Configuration > Team and ensure they have WhatsApp active on their device.
Metrics Tab6452c20
The Metrics tab provides visual analytics about your firm's WhatsApp messaging activity. All charts are interactive and responsive, adapting to both desktop and mobile screen sizes.
Daily Message Volume
A line chart displaying message volume over the last 30 days with two data series:
- Enviados (Sent) -- Outgoing messages from your firm
- Recibidos (Received) -- Incoming messages from clients
This chart helps you identify communication patterns, peak activity days, and trends over time. Weekends typically show lower volumes.

Message Type Distribution
A pie chart breaking down total messages by sender category:
| Category | Description |
|---|---|
| Clientes | Messages sent by or to clients |
| Empleados | Messages sent by team members manually |
| Bot Automatico | Messages generated and sent by the AI bot |
Template Usage by Category
A bar chart showing how frequently each template category is used:
- Documentos -- Document request templates
- Recordatorios -- Reminder and deadline templates
- Estado Caso -- Case status update templates
- Confirmaciones -- Receipt and onboarding confirmation templates
- Encuestas -- Client satisfaction survey templates
This chart helps you understand which template types are most valuable to your operations and identify opportunities to create new templates for underserved categories.
Best Practices6452c20
Responding to Clients
- Aim to respond to client messages within the 24-hour WhatsApp messaging window. After 24 hours, only approved template messages can be sent.
- Use template messages for proactive outreach (reminders, confirmations) and free-form text for conversational replies.
Managing the Bot
- Review the Bot AI tab regularly to check escalation patterns. If the bot is frequently escalating similar questions, consider creating a knowledge base entry or a new template to handle those inquiries automatically.
- Voice message transcriptions should be reviewed for accuracy, especially when they result in auto-created tickets.
Template Strategy
- Keep templates focused and concise. WhatsApp may reject overly long or promotional templates.
- Include quick reply buttons to make it easy for clients to respond with a single tap.
- Monitor template usage counts to retire underperforming templates and invest in high-usage ones.
Notification Monitoring
- Check the Employee Notifications tab daily to ensure all critical alerts (escalations, 1-day warnings) are being delivered successfully.
- If delivery failures spike, contact the system administrator to verify the WhatsApp Business API connection status.
Related Chapters6452c20
- Chapter 03: Clients -- Starting conversations from client profiles
- Chapter 06: Tickets -- Tickets created from voice message transcriptions
- Chapter 09: Reports -- Organization-wide analytics including communication metrics
- Chapter 11: Configuration -- WhatsApp API settings and template management
Reports (Reportes y Analitica)6452c20
The Reports page provides comprehensive analytics across three dimensions -- Revenue, Compliance, and Clients. It aggregates data from across the platform into interactive charts and tables, giving your firm a data-driven view of financial performance, regulatory compliance rates, and client portfolio health. All report data is fetched live from the API, ensuring the numbers reflect the current state of your organization.
Access and Permissions6452c20
All roles have access to the Reports page, though the data scope varies:
| Role | Access Level |
|---|---|
| owner | Full access -- all analytics, all clients, export and scheduling |
| admin | Full access -- all analytics, all clients, export and scheduling |
| manager | Full access -- scoped to their department |
| accountant | Partial access -- limited to assigned clients only |
| payroll | Full access -- payroll-relevant analytics |
| viewer | Read-only access -- all analytics visible, no export or scheduling |
Page Header Controls6452c20
The top of the Reports page features two groups of controls: the period selector and the export options.
Period Selector
A segmented button group lets you choose the time range for all charts and tables on the page:
| Period | Spanish Label | Data Range |
|---|---|---|
| Last Month | Ultimo Mes | Previous calendar month |
| Last Quarter | Ultimo Trimestre | Previous 3 months |
| Last Semester | Ultimo Semestre | Previous 6 months |
| Annual | Anual | Previous 12 months |
Export Options
Three export actions are available to the right of the period selector:
| Button | Description |
|---|---|
| Exportar CSV | Downloads a CSV spreadsheet of the current report data |
| Exportar PDF | Generates a formatted PDF document of the current report |
| Programar Reporte | Opens a dropdown to schedule recurring report delivery |
The Programar Reporte (Schedule Report) button is hidden for {role:viewer} users, as read-only roles cannot create scheduled tasks.
Scheduling a Recurring Report
- Diario (Daily) -- Report delivered every day
- Semanal (Weekly) -- Report delivered every Monday
- Mensual (Monthly) -- Report delivered on the 1st of each month
When a report export or schedule action succeeds, a toast notification appears in the top-right corner of the screen showing the file name (e.g., "compliance_febrero_2026.csv") and disappears after 3 seconds.
Revenue Analytics (Analitica de Ingresos)6452c20
The first analytics section focuses on your firm's financial performance. It is headed by a navy icon with a trending-up arrow and the title "Analitica de Ingresos". A small download button in the top-right corner of this section allows you to export just the revenue data.
Cumulative Revenue Area Chart
The left chart in this section displays Ingresos Acumulados (Cumulative Revenue) as a dual-area chart covering 6 months:
- Ingresos acumulados (Cumulative Invoiced) -- A navy-colored area showing the total amount invoiced over time
- Cobrado acumulado (Cumulative Collected) -- A rose-colored area showing the total amount actually collected
The gap between these two areas represents outstanding receivables. If the lines are close together, your collection rate is healthy. A widening gap signals growing unpaid invoices.
Chart features:
- X-axis: Month labels (e.g., "Sep 2025", "Oct 2025", ... "Feb 2026")
- Y-axis: Monetary values in millions (formatted as "1.5M", "2.0M", etc.)
- Tooltip: Hover over any point to see the exact MXN amount
- Legend: Identifies the two data series

Collection by Office (Cobro por Oficina)
The right chart in the revenue section is a stacked bar chart comparing collections across your firm's offices (departments). For a typical firm, this shows:
- Guadalajara -- Collections from the Guadalajara office
- Penasco -- Collections from the Penasco office
Each bar represents one month, with the segments stacked to show each office's contribution to total collections.
Chart features:
- X-axis: Month labels
- Y-axis: MXN amounts formatted as currency
- Tooltip: Hover to see individual office amounts per month
- Legend: Color-coded by office
Top 10 Clients by Revenue
Below the charts, a data table ranks the top 10 revenue-generating clients:
| Column | Description |
|---|---|
| # | Ranking position (1-10) |
| Client | Client company name |
| Invoiced | Total amount invoiced for the period |
| Collected | Total amount collected for the period |
| Collection Rate | Percentage of invoiced amount that has been collected |
- High collection rate (>90%) indicates a reliable payer
- Low collection rate (<70%) signals collection issues that may require follow-up
Compliance Analytics (Analitica de Cumplimiento)6452c20
The second analytics section focuses on regulatory compliance performance. It is headed by a shield icon and titled "Analitica de Cumplimiento".
Compliance Rate Trend
A line chart tracking the overall compliance rate across the selected period. Each data point represents one month's compliance percentage, calculated as:
Compliance Rate = (Completed + Submitted + Accepted tasks) / Total tasks x 100
This chart helps you identify trends -- whether compliance performance is improving, stable, or declining. A downward trend may indicate staffing issues, increased client load, or systemic delays.
Chart features:
- X-axis: Month labels
- Y-axis: Percentage (0-100%)
- Single data line with data points
- Tooltip: Exact percentage per month
Task Distribution (Donut Chart)
A donut chart breaking down the current period's compliance tasks by status:
| Status | Spanish Label | Description |
|---|---|---|
| Completed | Completada | Task fully processed and verified |
| Submitted | Presentada | Declaration or filing submitted to authorities |
| In Progress | En progreso | Task is being actively worked on |
| Waiting on Client | Esperando | Blocked pending client action (documents, information) |
| Overdue | Vencida | Task has passed its deadline without completion |
| Pending | Pendiente | Task has not yet been started |
Compliance by Accountant
A horizontal bar chart showing each accountant's compliance rate. This chart is derived from compliance tasks grouped by the assigned employee:
- Each bar represents one accountant (shown by first and last name)
- The bar length represents their compliance rate percentage
- Accountants are listed in descending order of performance
This chart is particularly useful for {role:manager} and {role:owner} roles to:
- Identify top-performing accountants
- Spot team members who may need additional support or training
- Balance workloads if one accountant is consistently underperforming
Client Analytics (Analitica de Clientes)6452c20
The third analytics section focuses on your client portfolio composition and growth. It is headed by a users icon and titled "Analitica de Clientes".
Clients by Fiscal Regime
A pie chart showing the distribution of clients across Mexican fiscal regimes:
| Regime | Description |
|---|---|
| Persona Moral | Legal entity (corporation, S.A. de C.V., etc.) |
| RESICO | Simplified Trust Regime for individuals |
| Persona Fisica con Actividad Empresarial | Individual with business activity |
| Regimen General | General regime for larger businesses |
| Sin Fines de Lucro | Non-profit organizations |
Chart features:
- Color-coded segments using the CumpleAI design palette (navy, rose, slate tones)
- Tooltip: Hover over any segment to see the exact count and regime name
- Legend: Labels for each regime
Clients by Status
A bar chart categorizing clients by their current account status:
| Status | Spanish Label | Description |
|---|---|---|
| Active | Activos | Clients receiving regular service |
| Onboarding | Onboarding | New clients in the setup process |
| Blocked | Bloqueados | Clients with suspended services (e.g., non-payment) |
| Inactive | Inactivos | Former clients or dormant accounts |
New Clients Per Month
A bar chart showing client acquisition over the past 6 months. Each bar represents the number of new clients onboarded in that month.
This chart helps track growth trends and seasonal patterns. For Mexican accounting firms, new client acquisition often peaks ahead of major filing seasons (annual declarations in March-April).

Chart Interactions6452c20
All charts on the Reports page share common interactive features:
Tooltips
Hover over any data point, bar, or pie segment to see a tooltip with precise values. Tooltips display monetary amounts formatted as Mexican Pesos (MXN) and percentages where applicable.
Responsive Layout
Charts automatically adapt to your screen size:
| Screen | Chart Height | Layout |
|---|---|---|
| Desktop | 300px | Two charts side-by-side in grid columns |
| Mobile | 200px | Single column, stacked vertically |
Section Export
Each analytics section (Revenue, Compliance, Clients) has a dedicated download button in its header. Clicking this button exports just that section's data as a CSV file. The toast notification confirms the export with the generated file name.
Loading State6452c20
When the Reports page first loads, it fetches data from multiple API endpoints simultaneously (dashboard, compliance tasks, payments, clients, employees, and specialized report endpoints). During this time, a loading spinner is displayed with the text "Cargando datos de reportes..." (Loading report data...).
The page will display charts and tables progressively as data becomes available.
Use Cases by Role6452c20
For Owners and Partners
- Review cumulative revenue vs. collections to monitor cash flow health
- Use the Top 10 clients table to identify your most valuable accounts
- Track new client acquisition trends to evaluate business development efforts
- Schedule weekly PDF reports for board meetings or partner reviews
For Managers
- Compare compliance rates across accountants to identify performance gaps
- Monitor task distribution to ensure no single status category dominates
- Check collection by office to compare departmental performance
- Export CSV data for detailed analysis in spreadsheet tools
For Accountants
- Review your personal compliance rate over time
- Check which of your assigned clients appear in the Top 10 revenue table
- Monitor client status distribution for your portfolio
For Payroll Specialists
- Track compliance rates for payroll-related obligations (IMSS, INFONAVIT)
- Review task distribution to manage monthly payroll deadlines
Related Chapters6452c20
- Chapter 02: Dashboard -- Role-specific KPIs and summary charts
- Chapter 05: Compliance -- Detailed compliance task management
- Chapter 07: Collections -- Payment tracking and collection management
- Chapter 10: Team -- Employee performance metrics
Team (Equipo)6452c20
The Team page is the central hub for managing your firm's employees, monitoring their activity and performance, reviewing login sessions, understanding the role-based permission system, and auditing all actions taken within the platform. It combines people management with operational oversight, giving managers and owners the visibility needed to keep the firm running efficiently.
Access and Permissions6452c20
The Team page is available to management-level roles only:
| Role | Access Level |
|---|---|
| owner | Full access -- all tabs, can edit employees, view audit log |
| admin | Full access -- all tabs, can edit employees, view audit log |
| manager | Full access -- scoped to their department's employees |
| accountant | No access |
| payroll | No access |
| viewer | No access |
Page Structure6452c20
The Team page opens with a KPI strip summarizing real-time team status, followed by a tab navigation bar providing access to five distinct views:
KPI Strip6452c20
Four summary cards are displayed at the top of the page:
| KPI | Description |
|---|---|
| En linea ahora | Number of employees currently logged in with an "online" status |
| Ausentes | Number of employees with an "away" status (logged in but idle) |
| Horas hoy (equipo) | Total hours worked today across all team members |
| Acciones hoy | Total number of actions performed today (logins, record updates, etc.) |
Team Tab (Equipo)6452c20
The Team tab displays employee cards in a responsive grid layout (1 column on mobile, 2 columns on tablet, 3 columns on desktop). Each card provides a comprehensive snapshot of an employee's status and performance.
Employee Card Anatomy
Each employee card contains the following elements:
Header area:
- Avatar circle -- Displays the employee's initials. Partners/Owners use the accent color (dusty rose); all other roles use the primary navy color.
- Status indicator -- A small colored dot on the avatar showing online status:
- Dark (navy) dot: Online
- Accent (rose) dot: Away
- Muted (gray) dot: Offline
- Employee name -- Full name with truncation for long names
- Traffic light indicator -- A colored dot with label next to the name (described below)
- Role -- The employee's role displayed in the accent color
Contact information:
- Office location (MapPin icon)
- Email address (Mail icon)
- Phone number (Phone icon)
Activity summary:
- Last login timestamp
- Hours worked today and this week
Workload metrics:
- Clients count -- Number of active clients assigned
- Tasks count -- Number of pending compliance tasks
- Tickets count -- Number of open tickets
Compliance progress:
- A labeled progress bar showing the employee's overall compliance rate as a percentage
- The bar color changes based on performance level
Traffic Light Performance Indicators
Each employee card includes a traffic light indicator that provides an at-a-glance assessment of their performance:
| Color | Label | Threshold | Meaning |
|---|---|---|---|
| Navy (dark) | Excelente | Compliance rate > 85% | Employee is performing well. All major tasks are on track. |
| Rose (accent) | Aceptable | Compliance rate 70-85% | Some tasks may be delayed. Monitor for potential issues. |
| Rose-dark (hover) | Atencion | Compliance rate < 70% | Critical delays present. Intervention may be needed. |
An "Atencion" (attention needed) traffic light does not necessarily mean the employee is underperforming -- it could indicate they have been assigned too many clients, are dealing with unresponsive clients, or have inherited a backlog. Use this indicator as a starting point for conversation, not as a judgment.
Employee Card Actions
Each card includes action buttons in the top-right corner:
- View (eye icon) -- Opens a detail modal showing the employee's session history
- Edit (pencil icon) -- Opens an edit form for updating the employee's profile information
Editing an Employee
- Name -- The employee's display name
- Role -- Their system role (dropdown selection)
- Office -- Their assigned department/office
- Phone -- Contact phone number
- Email -- Email address
Activity Tab (Actividad)6452c20
The Activity tab displays a bar chart visualizing each employee's workload across two dimensions:
- Tasks -- Number of compliance tasks assigned to the employee
- Clients -- Number of active clients in their portfolio
The chart shows employees by their short name (first name + last initial) on the X-axis, with dual bars for tasks and clients.
Chart features:
- Height: 300px on desktop, 220px on mobile
- Color coding: Navy for tasks, rose for clients
- Tooltip: Hover to see exact counts
- Legend: Identifies the two data series
This view is essential for workload balancing. If one employee has significantly more tasks or clients than others, it may be time to redistribute assignments.

Interpreting the Activity Chart
- Equal distribution -- Tasks and clients are spread evenly across team members, indicating good workload management
- One employee overloaded -- A single tall bar suggests that employee may need help or client reassignment
- High tasks, low clients -- The employee has complex clients requiring many compliance tasks per client
- Low tasks, high clients -- The employee has many simple clients (possibly RESICO regime) with fewer obligations each
Sessions Tab (Sesiones)6452c20
The Sessions tab provides a detailed view of each employee's login history and time spent in the system. This information is useful for compliance auditing, billing verification, and ensuring adequate system usage.
Session Table
For each employee, you can expand their session history to see a table with the following columns:
| Column | Description |
|---|---|
| Date | The calendar date of the session |
| Login Time | When the employee logged in |
| Logout Time | When the session ended (or "Active" if still logged in) |
| Duration | Total session length |
| Actions | Number of actions performed during the session |
| IP Address | The IP address from which the employee connected |
Time Tracking Summary
Each employee entry in the Sessions tab also shows aggregate time metrics:
- Hours today -- Time spent in the system today
- Hours this week -- Cumulative time for the current week
- Hours this month -- Cumulative time for the current month
Roles and Permissions Tab (Roles y Permisos)6452c20
The Roles and Permissions tab provides a visual reference for CumpleAI's role-based access control (RBAC) system. This is a read-only reference view -- role definitions are built into the system and cannot be modified from this tab.
Role Definitions
The top section lists all seven system roles with their details:
| Role ID | Spanish Name | User Count | Description |
|---|---|---|---|
| owner | Propietario | 1 | Full system access. Controls configuration, billing, and users. |
| admin | Admin | 1 | Complete operational management of clients and team. |
| manager | Gerente Contable | 2 | Supervises accountants, reviews deliverables and reports. |
| accountant | Contador | 5 | Manages assigned clients, documents, compliance, and tickets. |
| payroll | Especialista Nomina | 1 | Payroll processing, IMSS, INFONAVIT for assigned clients. |
| auditor | Auditor | 1 | Read-only access to all data. Cannot edit or delete. |
| client | Cliente | 40 | Limited portal access. Can only see their own data and documents. |
Permission Matrix
Below the role definitions, a permission matrix table shows the access level for each role across eight resource areas:
| Resource | owner | admin | manager | accountant | payroll | auditor | client |
|---|---|---|---|---|---|---|---|
| Clientes | Full | Full | Full | Own | Own | Read | None |
| Documentos | Full | Full | Full | Own | Own | Read | Own |
| Tickets | Full | Full | Full | Own | Own | Read | Own |
| Compliance | Full | Full | Full | Own | Own | Read | None |
| Cobranza | Full | Full | Read | Read | None | Read | Own |
| Reportes | Full | Full | Full | Own | Own | Read | None |
| Admin | Full | Full | None | None | None | None | None |
| Portal | Full | Read | Read | None | None | None | Own |
| Level | Meaning |
|---|---|
| Full | Can create, read, update, and delete all records in this resource |
| Read | Can view all records but cannot create, modify, or delete |
| Own | Can only view and manage records assigned to or created by the user |
| None | Resource is completely inaccessible; the page is hidden from navigation |
This permission matrix is enforced at both the API level and the UI level. Even if a user were to manually navigate to a restricted URL, the API would deny the request.
Audit Log Tab (Registro de Auditoria)6452c20
The Audit Log tab provides a chronological record of all significant actions performed within your organization. This is a critical compliance and governance tool that answers the question: "Who did what, and when?"
Audit Entry Fields
Each audit log entry contains the following information:
| Field | Description |
|---|---|
| User Name | The employee who performed the action |
| Action | A categorized action type (see table below) |
| Entity Type | The type of record affected (Client, Document, Ticket, etc.) |
| Entity ID | The unique identifier of the affected record |
| Entity Name | A human-readable name for the affected record |
| Detail | A description of what changed |
| Before State | The record's values before the action (for updates) |
| After State | The record's values after the action (for creates and updates) |
| IP Address | The IP address from which the action was performed |
| Timestamp | When the action occurred |
Action Types
The following action types are tracked in the audit log:
| Action Code | Spanish Label | Icon | Description |
|---|---|---|---|
client.created | Cliente creado | UserPlus | A new client was registered |
client.updated | Cliente actualizado | Edit | Client information was modified |
document.uploaded | Documento subido | Upload | A document was uploaded to the system |
document.downloaded | Documento descargado | Download | A document was downloaded |
compliance.status_changed | Compliance actualizado | Shield | A compliance task status was changed |
ticket.created | Ticket creado | Ticket | A new ticket was created |
payment.registered | Pago registrado | DollarSign | A payment was recorded |
user.login | Inicio de sesion | LogIn | An employee logged into the system |
user.role_changed | Rol cambiado | Key | An employee's role was modified |
settings.updated | Config. actualizada | Settings | Organization settings were changed |
Filtering the Audit Log
Three filter dropdowns allow you to narrow the audit log:
Filters can be combined. For example, you can filter for all "document.uploaded" actions by "Carlos Herrera" to see every document that employee uploaded.
Expanding Audit Details
Each audit entry can be expanded to show the before/after state comparison:
- Estado Anterior (Before State) -- Key-value pairs showing the previous values
- Estado Posterior (After State) -- Key-value pairs showing the new values
client.updated entry might show that the phone number was changed from "+52 33 1111 2222" to "+52 33 3333 4444".Audit Log Use Cases
- Security review -- Check for logins from unexpected IP addresses or unusual times
- Change tracking -- Verify who changed a client's fiscal regime or status
- Compliance auditing -- Demonstrate to external auditors that all compliance status changes are recorded with timestamps and user attribution
- Dispute resolution -- Confirm when a payment was registered and by whom
- Training verification -- Ensure new employees are performing expected actions in the system
Inviting New Team Members6452c20
To add a new employee to your organization:
- Name -- Full name
- Email -- Their work email address (used for login)
- Role -- Select the appropriate role from the dropdown
- Office -- Assign them to a department/office
Department Management6452c20
Employees are organized by department (office), such as "Guadalajara" or "Penasco". Departments serve as organizational boundaries for scoped access:
- Managers scoped to a department will only see employees and clients within that department
- Accountants belong to a department but their scope is limited to individually assigned clients
To manage departments (create, rename, or deactivate offices), go to Configuration > General where the organization's office list can be updated.
Hierarchy
The organizational hierarchy within CumpleAI follows a three-tier structure:
Director / Socio (Owner)
|
+-- Gerente Contable (Manager)
|
+-- Contador (Accountant)
+-- Especialista Nomina (Payroll)
- Owners and Admins have visibility across all departments
- Managers oversee their assigned department's employees
- Accountants and Payroll specialists focus on their individually assigned client portfolios
Related Chapters6452c20
- Chapter 00: Overview -- Role definitions and the full access matrix
- Chapter 09: Reports -- Compliance by accountant analytics
- Chapter 11: Configuration -- Team management in the Configuration page
- Chapter 12: Admin -- Advanced user management and system administration
Configuration (Configuracion)6452c20
The Configuration page is the central settings hub for your CumpleAI organization. It provides nine distinct sections covering everything from basic organization profile data to advanced automation rules, email templates, security settings, and third-party integrations. A sticky navigation bar at the top of the page allows quick access to any section.
Access and Permissions6452c20
| Role | Access Level |
|---|---|
| owner | Full access -- can view and modify all settings |
| admin | Full access -- can view and modify all settings |
| manager | Partial access -- can view most sections; cannot modify billing or security |
| accountant | No access |
| payroll | No access |
| viewer | No access |
Section Navigation6452c20
At the top of the page, a sticky horizontal navigation bar provides quick-jump links to each of the nine configuration sections. The navigation bar remains visible as you scroll, so you can switch between sections at any time.
The nine sections are:
| # | Section | Icon | Anchor |
|---|---|---|---|
| 1 | General | Building | #general |
| 2 | MessageCircle | #whatsapp | |
| 3 | Equipo (Team) | Users | #equipo |
| 4 | Facturacion (Billing) | CreditCard | #facturacion |
| 5 | Integraciones (Integrations) | Plug | #integraciones |
| 6 | Notificaciones (Notifications) | Bell | #notificaciones |
| 7 | Emails | #emails | |
| 8 | Automatizaciones (Automations) | Zap | #automatizaciones |
| 9 | Seguridad (Security) | Shield | #seguridad |
1. General Settings6452c20
The General section displays your organization's core profile information. This data is read from your organization's record in the system.
Organization Profile Fields
| Field | Spanish Label | Description |
|---|---|---|
| Legal Name | Razon Social | Your firm's official registered business name |
| RFC | RFC | Your firm's Federal Taxpayer Registry identifier |
| Offices | Oficinas | A list of department/office locations displayed as badge chips |
| Phone | Telefono | Primary contact phone number |
| Email Corporativo | Primary contact email address |
Office locations appear as rounded badge chips (e.g., "Guadalajara", "Penasco"). If your organization has multiple offices, all are shown side by side.
2. WhatsApp Settings6452c20
The WhatsApp section manages your WhatsApp Business API connection. This is where you configure and monitor the technical integration that powers the WhatsApp messaging features described in Chapter 08: WhatsApp.
Connection Status Dashboard
The section displays a set of status cards showing:
| Metric | Description |
|---|---|
| API Status | Whether the WhatsApp Business API is currently connected (Conectado/Desconectado) |
| Phone Number | The business phone number registered with WhatsApp |
| Templates Count | Number of approved message templates |
| Monthly Usage | Messages sent/received in the current billing cycle |
API Configuration
Below the status cards, two technical fields are displayed:
| Field | Description |
|---|---|
| API Key | Your WhatsApp Business API authentication key (partially masked for security) |
| Webhook URL | The CumpleAI endpoint URL that receives incoming WhatsApp events |
Testing the Connection
3. Team (Equipo)6452c20
The Team section within Configuration provides an employee table view -- a more compact alternative to the card-based view on the Team page.
Employee Table
The table displays the following columns:
| Column | Description |
|---|---|
| Name | Employee's full name with avatar initials |
| Role | Their system role |
| Office | Assigned department/office location |
| Contact email address | |
| Active Clients | Number of clients currently assigned |
| Status | Current online/offline/away status |
Invite User Button
At the top of the team section, the Invitar Usuario (Invite User) button opens the employee invitation flow:
4. Billing (Facturacion)6452c20
The Billing section shows your current subscription plan and payment information.
Plan Information
| Field | Description |
|---|---|
| Plan Name | Your current subscription tier (e.g., "Founding Partner", "Standard", "Premium") |
| Monthly Price | The recurring charge (e.g., "$1,000 USD") |
| Client Limit | Maximum number of clients allowed on your plan (e.g., "150 clients") |
| Payment Method | The payment instrument on file (e.g., credit card ending in 4242) |
| Next Invoice Date | When the next billing cycle charge will occur |
To upgrade your plan, increase your client limit, or update your payment method, contact CumpleAI billing support. Plan changes take effect at the start of the next billing cycle.
Usage Indicators
The billing section also shows current usage against your plan limits:
- Clients Used / Limit -- How many of your allocated client slots are occupied
- Storage Used -- Document storage consumption
5. Integrations (Integraciones)6452c20
The Integrations section displays connected third-party services. Each integration is shown as a card with:
| Field | Description |
|---|---|
| Service Name | The name of the integration (e.g., "WhatsApp Business") |
| Status | Connected or Not Connected, indicated by a check or X icon |
| Description | A brief explanation of what the integration provides |
Available Integrations
| Service | Status | Description |
|---|---|---|
| WhatsApp Business | Connected | Automated messaging with clients via WhatsApp |
| Google Drive | Not Connected | File storage and synchronization |
| Stripe | Connected | Online payment processing for client invoices |
6. Notifications (Notificaciones)6452c20
The Notifications section lets you control which types of alerts your organization receives. Each notification preference is represented as a toggle switch with a label and description.
Notification Preferences
| Preference | Description | Default |
|---|---|---|
| Notificaciones por email | Receive alerts and summaries via email | On |
| Alertas por WhatsApp | Compliance and deadline notifications via WhatsApp | On |
| Recordatorios de cumplimiento | Automatic alerts for upcoming fiscal obligations | On |
| Recordatorios de pago | Collection notices and pending client payment alerts | On |
| Reportes semanales | Weekly activity summary and key metrics report | On |
Toggling Notifications
7. Email Templates (Emails)6452c20
The Email Templates section manages the automated email messages sent by CumpleAI. Six pre-configured templates cover the most common communication scenarios, and each can be customized to match your firm's tone and branding.
Template List
| Template | Description | Default Status |
|---|---|---|
| Recordatorio Documentos Pendientes | Reminds clients about outstanding documents | Active |
| Aviso de Vencimiento | Warns clients about approaching compliance deadlines | Active |
| Bienvenida Onboarding | Welcome email sent to newly onboarded clients | Active |
| Confirmacion de Recepcion | Confirms that documents have been received | Active |
| Alerta de Incumplimiento | Urgent notice about missed compliance obligations | Inactive |
| Resumen Semanal | Weekly activity summary for clients | Active |
Editing a Template
- Subject -- The email subject line
- Body -- The full email body text
Template Variables
Email templates support dynamic placeholders that are replaced with actual data at send time:
| Variable | Description | Example Value |
|---|---|---|
{{client_name}} | Client's full name | "Carlos Mendez Rodriguez" |
{{firm_name}} | Your firm's registered name | "Vazquez Aceves y Asociados" |
{{deadline_date}} | Relevant due date | "28 de febrero 2026" |
{{document_list}} | List of documents (bulleted) | "Estado de cuenta, Conciliacion bancaria" |
{{obligation_name}} | Name of the compliance obligation | "Declaracion Mensual IVA" |
{{status}} | Current task or obligation status | "En proceso" |
{{accountant_name}} | Assigned accountant's name | "Laura Gomez" |
{{portal_url}} | Link to the client portal | "https://portal.cumpleai.com" |
{{week_range}} | Date range for weekly summaries | "10 - 16 Feb 2026" |
{{completed_count}} | Number of completed obligations | "8" |
{{pending_count}} | Number of pending obligations | "3" |
{{docs_received}} | Number of documents received | "5" |
{{upcoming_deadlines}} | List of upcoming deadlines | "ISR 28/02, IVA 28/02" |
{{received_date}} | Date documents were received | "18 de febrero 2026" |
Email History
Below the template list, an Email History table shows a log of all emails sent by the system:
| Column | Description |
|---|---|
| Recipient | Email address the message was sent to |
| Template | Which template was used |
| Subject | The actual subject line sent |
| Sent | Date and time the email was dispatched |
| Status | Delivery status |
Email Delivery Statuses
| Status | Spanish Label | Meaning |
|---|---|---|
| Opened | Abierto | Recipient opened the email |
| Delivered | Entregado | Email reached the recipient's inbox |
| Pending | Pendiente | Email is queued for delivery |
| Bounced | Rebotado | Email could not be delivered (invalid address, full inbox, etc.) |
Emails with "Bounced" status indicate a delivery failure. Common causes include invalid email addresses, full mailboxes, or spam filters. Update the client's email address and consider re-sending the notification manually.
8. Automations (Automatizaciones)6452c20
The Automations section manages the 10 automated workflow rules that CumpleAI executes on your behalf. These automations handle routine notifications, reminders, and system checks without manual intervention.
Automation Rules List
Each automation rule is displayed as a card showing:
| Field | Description |
|---|---|
| Name | Descriptive name of the automation |
| Description | What the automation does |
| Trigger | When or how the automation is activated |
| Channel | Communication channel used (WhatsApp, Email, Both, System) |
| Frequency | How often the automation runs |
| Last Run | When the automation last executed |
| Next Run | When the automation is scheduled to run next |
| Toggle | On/off switch to enable or disable the automation |
Available Automations
The following table lists all 10 default automation rules:
| # | Name | Channel | Trigger | Frequency |
|---|---|---|---|---|
| 1 | Recordatorio de cumplimiento (7 dias) | 7 days before deadline | Automatic per event | |
| 2 | Recordatorio de cumplimiento (3 dias) | WhatsApp + Email | 3 days before deadline | Automatic per event |
| 3 | Alerta de vencimiento pasado | WhatsApp + Email | 1 day after deadline | Automatic per event |
| 4 | Recordatorio de pago pendiente | 5 days after invoice issued | Automatic per event | |
| 5 | Pago vencido -- escalamiento | 15 days after payment due | Automatic per event | |
| 6 | Solicitud de documentos pendientes | Documents unreceived for 3 days | Every 3 days until complete | |
| 7 | Resumen diario para contadores | Every business day at 8:00 AM | Daily (Mon-Fri) | |
| 8 | Reporte semanal para administradores | Every Monday at 7:00 AM | Weekly (Monday) | |
| 9 | Seguimiento de onboarding | Every 2 days during onboarding | Every 2 days | |
| 10 | Verificacion de opinion de cumplimiento | System | 1st of each month | Monthly |
Channel Indicators
Each automation shows its communication channel as a colored badge:
| Channel | Spanish Label | Badge Color |
|---|---|---|
| Navy background | ||
| Gray background | ||
| Both | WhatsApp + Email | Accent background |
| System | Sistema interno | Gray background |
Enabling and Disabling Automations
Automation Details
- Event-driven automations fire when a specific condition is met (e.g., a deadline is 7 days away). They check conditions continuously and trigger messages as needed.
- Scheduled automations run at fixed intervals (daily, weekly, monthly) regardless of specific events.
- The onboarding follow-up (#9) is disabled by default and can be activated when you want automated reminders for clients in the onboarding stage.
9. Security (Seguridad)6452c20
The Security section displays your organization's security configuration and authentication settings.
Authentication
| Feature | Details |
|---|---|
| Provider | Firebase Authentication |
| SSO | Google Single Sign-On (SSO) supported |
| MFA | Multi-factor authentication available (configurable per user) |
Encryption
| Layer | Standard |
|---|---|
| Data at Rest | AES-256 encryption |
| Data in Transit | TLS 1.3 |
Backup Configuration
| Setting | Value |
|---|---|
| Frequency | Automatic backup every 24 hours |
| Retention | Backups retained for 30 days |
Active Sessions
The security section shows:
- Active Sessions Count -- Number of currently active user sessions across all employees
- Session Timeout -- How long a session remains valid without activity (configurable)
Security Best Practices
- Enable MFA for all Owner and Admin accounts
- Regularly review the Audit Log for unusual login patterns
- Verify that all team members' email addresses are current
- Monitor the active sessions count for unexpected spikes
Related Chapters6452c20
- Chapter 08: WhatsApp -- Using the WhatsApp features configured here
- Chapter 10: Team -- The full Team management page with employee cards and audit log
- Chapter 12: Admin -- Advanced administration including feature flags and system health
Admin Panel (Panel de Administracion)6452c20
The Admin Panel is the operational command center for your CumpleAI organization. While the Configuration page handles settings and preferences, the Admin Panel focuses on real-time system health monitoring, automation execution tracking, incident management, and the client lifecycle pipeline. It is designed for technical administrators and firm owners who need visibility into the platform's operational status.
Access and Permissions6452c20
The Admin Panel has the most restricted access of any page in CumpleAI:
| Role | Access Level |
|---|---|
| owner | Full access -- all sections, can toggle automations |
| admin | Full access -- all sections, can toggle automations |
| manager | No access |
| accountant | No access |
| payroll | No access |
| viewer | No access |
KPI Dashboard6452c20
The Admin Panel opens with a four-card KPI strip providing an at-a-glance view of system status:
| KPI | Description | Alert Condition |
|---|---|---|
| Automatizaciones Activas | Count of currently running automations vs. total (e.g., "8/10") | N/A |
| Tareas en Cola / Jobs Hoy | Number of queued tasks pending execution, or total jobs run today | N/A |
| Incidentes Abiertos / Incidentes (7 dias) | Open incidents requiring attention | Highlighted in accent color when > 0 |
| Salud del Sistema | System uptime percentage over the last 30 days (e.g., "99.2%") | N/A |
- Jobs Today shows the count of automation jobs that have run in the current day
- Incidents (7 days) shows the count of failed jobs in the last week
- System Health is calculated as the success rate:
(total jobs - failed jobs) / total jobs x 100
When the API is unavailable, the panel falls back to static default values for demonstration purposes.
Automation Monitor6452c20
The Automation Monitor section provides a detailed view of every automation rule's execution status. Unlike the Configuration page (which shows automation scheduling rules), this view focuses on actual execution history and real-time status.
Automation Table
Each automation entry displays:
| Column | Description |
|---|---|
| Name (Nombre) | The automation's descriptive name |
| Type (Tipo) | "Programada" (Scheduled) or "Evento" (Event-driven) |
| Status (Estado) | Current execution state with a color-coded badge |
| Last Run (Ultima Ejecucion) | Timestamp of the most recent execution |
| Next Run (Proxima Ejecucion) | When the automation is next scheduled to execute |
| Duration (Duracion) | How long the last execution took |
| Toggle | On/off switch to enable or disable the automation |
Execution Statuses
Each automation displays one of four execution statuses:
| Status | Spanish Label | Badge Style | Meaning |
|---|---|---|---|
| Running | Activo | Green background | The automation is currently executing or regularly active |
| Queued | En Cola | Yellow background | The automation is waiting in the execution queue |
| Completed | Completado | Gray background | The last execution finished successfully |
| Failed | Error | Red background | The last execution encountered an error |
Default Automations
The Admin Panel tracks 13 automations covering the full operational pipeline:
| # | Automation | Type | Typical Duration |
|---|---|---|---|
| 1 | Generacion tareas mensuales | Scheduled | ~4 min |
| 2 | Verificacion opiniones SAT | Scheduled | ~13 min |
| 3 | Recordatorio vencimiento (7 dias) | Event | ~1 min |
| 4 | Recordatorio vencimiento (3 dias) | Event | ~1 min |
| 5 | Recordatorio vencimiento (1 dia) | Event | ~42 sec |
| 6 | Verificacion obligaciones vencidas | Scheduled | ~2 min |
| 7 | Alerta expiracion documentos | Event | ~1.5 min |
| 8 | Resumen semanal IA | Scheduled | ~8 min |
| 9 | Escalamiento facturas vencidas | Event | ~35 sec |
| 10 | Recordatorios de onboarding | Event | ~1 min |
| 11 | Recordatorios de pago | Event | ~48 sec |
| 12 | Resumen diario contadores | Scheduled | ~3 min |
| 13 | Respaldo nocturno BD | Scheduled | ~15 min |
Toggling Automations
API Integration
When the CumpleAI API is available, the Automation Monitor fetches real data from the useAdminAutomations() hook. Worker job logs are mapped to the display format, showing actual execution times and durations. When the API is unavailable, the panel displays the default static data to ensure the interface remains functional for demonstration and development purposes.
Incident Tracker6452c20
The Incident Tracker section displays operational incidents that require attention. Incidents are problems or anomalies detected in the system's services.
Incident Fields
Each incident entry contains:
| Field | Description |
|---|---|
| ID | Unique incident identifier (e.g., "INC-001") |
| Service (Servicio) | The affected service or microservice name |
| Severity (Severidad) | Criticality level of the incident |
| Message (Mensaje) | Description of the problem |
| Date (Fecha) | When the incident was detected |
| Status (Estado) | Whether the incident is open or resolved |
Severity Levels
Incidents are classified into four severity levels:
| Severity | Spanish Label | Badge Style | Meaning |
|---|---|---|---|
| Critical | Critica | Red background | Service-impacting outage or critical failure requiring immediate action |
| High | Alta | Red background | Significant issue affecting a major feature or service |
| Medium | Media | Yellow background | Noticeable issue with workaround available |
| Low | Baja | Gray background | Minor issue with minimal user impact |
Example Incidents
The following are typical incidents you might encounter:
| Incident | Service | Severity | Description |
|---|---|---|---|
| INC-001 | cumpleai-whatsapp | High | Webhook timeout: WhatsApp API response exceeds 30s |
| INC-002 | cumpleai-worker | Medium | Email delivery failure: SMTP connection refused (3 retries) |
| INC-003 | cumpleai-api | High | Rate limit reached on AI API: 429 Too Many Requests |
| INC-004 | cumpleai-worker | Medium | Nightly backup exceeded 15-minute window |
| INC-005 | cumpleai-portal | Low | Elevated latency in portal document loading |
| INC-006 | cumpleai-app | Critical | Memory spike on primary server: 95% RAM utilization |
Incident Statuses
| Status | Spanish Label | Meaning |
|---|---|---|
| Open | Abierto | The incident has been detected and requires attention |
| Resolved | Resuelto | The incident has been investigated and resolved |
When the API is available, incidents are derived from failed worker job logs. The system automatically creates incident entries when jobs fail, mapping the job name to the service and extracting error messages from the job's error log.
System Health Dashboard6452c20
The System Health section provides real-time monitoring of all CumpleAI microservices. This is the go-to section when you suspect system issues or want to verify that everything is operating normally.
Service Status Table
Each service is displayed with comprehensive health metrics:
| Column | Description |
|---|---|
| Service Name | The internal service identifier |
| Status | Operational health state |
| Uptime | Percentage uptime over the last 30 days |
| P95 Latency | 95th percentile response time |
| Last Check | How recently the service was last health-checked |
| Memory Usage | Current RAM utilization percentage |
| CPU Usage | Current processor utilization percentage |
Service Status Indicators
| Status | Spanish Label | Meaning |
|---|---|---|
| Operational | Operativo | Service is running normally |
| Degraded | Degradado | Service is running but with reduced performance |
| Down | Caido | Service is not responding |
Monitored Services
| Service | Description | Typical Latency |
|---|---|---|
| cumpleai-app | Main CRM web application (Next.js) | 145ms P95 |
| cumpleai-portal | Client portal application | 210ms P95 |
| cumpleai-api | Backend API server (Hono) | 89ms P95 |
| cumpleai-worker | Background job processor (BullMQ) | 520ms P95 |
| cumpleai-whatsapp | WhatsApp integration service | 310ms P95 |
System Metrics Chart
Below the service table, a system metrics chart displays 24-hour performance data as a multi-line area chart:
- CPU -- Aggregate CPU usage across all services
- Memory -- Aggregate memory usage
- Latency (Latencia) -- Average response latency in milliseconds
The X-axis shows time in 2-hour intervals (00:00 through 22:00). This chart helps identify patterns:
- Morning spike (08:00-10:00): Normal. Users logging in and starting their workday.
- Afternoon peak (14:00-16:00): Expected during heavy compliance task processing.
- Overnight dip (00:00-06:00): Normal. Minimal usage except for scheduled backup jobs.

Interpreting Health Data
Use the following guidelines to assess system health:
| Metric | Healthy | Warning | Critical |
|---|---|---|---|
| Uptime | > 99.5% | 98-99.5% | < 98% |
| P95 Latency | < 200ms | 200-500ms | > 500ms |
| Memory | < 70% | 70-85% | > 85% |
| CPU | < 50% | 50-80% | > 80% |
If a service shows "Caido" (Down) status, check the Incident Tracker for related incidents. If no incident is listed, the health check may have temporarily failed. Wait for the next check cycle (typically 1-3 minutes) and refresh the page.
Client Lifecycle Pipeline6452c20
The Admin Panel includes a pipeline state machine view showing the distribution of clients across lifecycle stages:
| Stage | Description | Typical Count |
|---|---|---|
| No Iniciado | No initial contact has been made | Prospects |
| Onboarding | Documentation pending, setup in progress | New clients |
| Activo | Regular service being delivered | Main client base |
| Cierre Mensual | Monthly closing process in progress | Cyclical |
| Presentado | All obligations filed and up to date | Compliant clients |
User Management6452c20
From the Admin Panel, Owners and Admins can perform advanced user management operations that go beyond the basic team management available on the Team page:
Adding and Editing Users
Role Changes
When changing a user's role, the following effects take place immediately:
- The user's sidebar navigation updates to reflect their new access level
- API-level permissions are enforced on their next request
- Any role-scoped data filters are updated (e.g., changing from Manager to Accountant restricts visibility to assigned clients only)
Password Reset
Administrators can trigger a password reset for any team member:
Feature Flags6452c20
CumpleAI supports feature flags that can enable or disable specific functionality for your organization. Feature flags are managed at the organization level and affect all users within the organization.
Common feature flags include:
| Flag | Description |
|---|---|
| whatsapp_bot | Enable/disable the AI WhatsApp bot |
| voice_transcription | Enable/disable voice message transcription |
| scheduled_reports | Enable/disable scheduled report delivery |
| google_drive_sync | Enable/disable Google Drive integration |
Audit Log Access6452c20
The Admin Panel provides access to the organization-wide audit log, which is also available on the Team page. From the Admin Panel, the audit log includes additional system-level events:
- Automation execution logs (start, complete, fail)
- System health check results
- Feature flag changes
- Billing events (plan changes, payment failures)
- API rate limit events
For detailed information about the audit log's fields, filtering, and expanding entries, see Chapter 10: Team -- Audit Log.
Trial Enforcement6452c20
For organizations on a trial plan, the Admin Panel displays trial-related information:
| Field | Description |
|---|---|
| Trial Status | Active, Expiring Soon, or Expired |
| Days Remaining | Number of days left in the trial period |
| Client Limit | Maximum clients allowed during trial |
| Feature Restrictions | Which premium features are unavailable during trial |
- Users can still log in and view data
- Create, update, and delete operations are disabled
- A banner prompts the organization to upgrade to a paid plan
User Impersonation6452c20
For support purposes, the Admin Panel includes a user impersonation feature that allows Owners and Admins to view the system as another user would see it.
Best Practices6452c20
Daily Monitoring
- Check the KPI strip each morning for any open incidents
- Review the Automation Monitor for any "Failed" statuses
- Glance at the System Health table to confirm all services are "Operativo"
Weekly Review
- Review the system metrics chart for performance trends
- Check the incident tracker for any recurring patterns
- Verify that the nightly backup automation is consistently completing
Monthly Tasks
- Review the client lifecycle pipeline for bottlenecks
- Audit user roles and deactivate any former employees
- Check billing status and plan usage against limits
Related Chapters6452c20
- Chapter 10: Team -- Employee management, audit log, and RBAC reference
- Chapter 11: Configuration -- Organization settings, automation scheduling rules, and security settings
- Chapter 08: WhatsApp -- WhatsApp messaging features monitored by the Admin Panel
Role Playbooks (Web CRM)6ea1b5e
This chapter provides operational playbooks by role.
Owner Playbook6ea1b5e
Daily sequence
Weekly sequence
Admin Playbook6ea1b5e
Process: Create a new user
Process: First-day user verification
Manager Playbook6ea1b5e
Daily sequence
Weekly sequence
Accountant Playbook6ea1b5e
Daily sequence
End-of-day checklist
- No unreviewed urgent deadlines.
- All client-facing blockers documented.
- Ticket comments updated for handoff.
Payroll Playbook6ea1b5e
Daily sequence
Viewer Playbook6ea1b5e
Daily sequence
Cross-Role Process: First Login for a New Team Member6ea1b5e
Escalation Matrix6ea1b5e
| Situation | First Owner | Escalate To |
|---|---|---|
| Access or role mismatch | Admin | Owner |
| Critical compliance blocker | Accountant | Manager -> Owner |
| Team overload | Manager | Owner |
| System incident impact | Admin | Owner + support |