Preview Image

What is SuiteCRM? SuiteCRM is an open-source Customer Relationship Management platform built on top of SugarCRM Community Edition. It provides a 360-degree view of your customers and business operations, bringing

What is SuiteCRM?


SuiteCRM is an open-source Customer Relationship Management platform built on top of SugarCRM Community Edition. It provides a 360-degree view of your customers and business operations, bringing together sales, marketing, and support workflows in one system. On Day 1, you get comfortable with the SuiteCRM interface — understanding how data is structured, how to navigate the UI, and how the platform handles information across its core modules. Before you can develop anything meaningful in SuiteCRM, you must understand CRM basics and how it approaches and organizes data, and that is exactly what our Day 1 training will teach you.


Core Modules


SuiteCRM organizes all business data into Modules. Each module represents a category of records — like tables in a database, but with a full UI built around them.


  • Accounts: Organizations or companies you do business with. The anchor record that links to Contacts, Opportunities, Cases, and more.

  • Contacts: Individual people, typically linked to an Account. Holds phone numbers, emails, titles, and interaction history.

  • Leads: Prospective customers not yet qualified. Can be converted into Contacts, Accounts, and Opportunities.

  • Opportunities: Active sales deals with a monetary value, close date, and pipeline stage (e.g., Prospecting → Closed Won).

  • Cases: Support tickets submitted by customers, used by the support team to track resolution.

  • Calls, Meetings, Tasks, Notes: Activity modules that log every customer interaction and keep historical context.

  • Campaigns: Email and marketing campaigns, complete with target lists, templates, and ROI tracking.

  • Documents: Centralized file storage attached to any record in the system.

All 22 Field Types in SuiteCRM


Every module is made up of Fields — the individual data points stored on a record. SuiteCRM supports 22 field types. Custom fields added through Studio are stored in the _cstm table and use the _c suffix.


Field Type DB Type Key Notes 
Text (VARCHAR) Multi-line. No character limit enforced at the DB level. Used for notes/descriptions Single-line input for names, codes, and short labels. Default max 255 chars. 
Text Area TEXT Multi-line. No character limit enforced at DB level. Used for notes/descriptions 
Integer INT Whole numbers. No decimal places. 
Currency DECIMAL(26,6) Monetary values. Uses system currency settings. 
Float DOUBLE Decimal numbers where precision is less critical. 
Decimal DECIMAL(26,6) High-precision numbers for measurements or scientific values. 
Date DATE Date only (no time). Formatted per user locale. 
DateTime DATETIME Date + time. Always stored as UTC; displayed per user timezone. 
Checkbox TINYINT(1) Boolean true/false toggle. 0 = false, 1 = true in the database. 
DropDown VARCHAR(100) Single-select from a named dropdown list (e.g., account_type_dom). 
MultiSelect TEXT Multiple options stored as caret-delimited string (^value1^^value2^). 
Relate VARCHAR(36) + VARCHAR(255) UI link to another module. Stores both UUID and display name. 
ID (Relate ID) CHAR(36) Hidden companion field storing the UUID. Suffix _id (e.g., account_id). 
Email email_addresses table Stored separately. Supports primary, secondary, opt-out, invalid flags. 
Phone VARCHAR(100) Phone number string. No validation built-in — treat as text. 
URL VARCHAR(255) Web address. Renders as clickable link in DetailView. 
Image VARCHAR(36) (file UUID) Image file (JPEG/PNG/GIF). Stored in upload/ directory. 
File VARCHAR(36) (file UUID) Any file type. Stored in upload/ directory by UUID filename. 
Calculated VARCHAR or TEXT Read-only field computed from other fields using a formula. 
Encrypt TEXT (encrypted) Stores AES-encrypted text. Only decrypt via SuiteCRM APIs. 
Address  5× VARCHAR columns  Composite: Street, City, State, Postal Code, Country — 5 DB columns.  
FullName first_name + last_name Compound display field. Respects locale (Last, First vs First Last). 

Views in SuiteCRM


SuiteCRM renders each record through four distinct Views. The key aspect of CRM basics is understanding which view you're in matters when customizing layouts in Studio.


ListView: The searchable grid of all records in a module. Columns are configurable. Supports inline editing.

DetailView: The read-only single-record page. Shows all visible fields organized in a 2-column layout by default.

EditView: The form used to create or edit a record. Shares layout panel with DetailView in Studio.

SearchView: Basic and Advanced search forms above ListViews. Customized separately from other views.


Do: Always use Studio for client-facing layout changes. Don't: Edit core module files in the modules/ directory — your changes will be overwritten on upgrade. Use the custom/ extension folder instead.


Relationships


Relationships define how records in different modules connect. SuiteCRM supports three relationship types:


One-to-One (1:1): Rare in SuiteCRM; typically implemented as a 1:M with a UI constraint.

One-to-Many (1:M): A single parent record links to many child records. Stored as a foreign key column on the child table (account_id on Contacts).

Many-to-Many (M: M): Any record in module A can link to many records in module B and vice versa. Stored in a relationship table (e.g., accounts_contacts).


Example: Relationship Definition in Vardefs



Do's and Don'ts


  • DO: Prefix all custom fields and modules with a company or project identifier (e.g., ow_) to avoid naming collisions.

  • DO: Place all custom code inside custom/Extension/ or custom/modules/ — never in core directories.

  • DO: Run Quick Repair & Rebuild (Admin → Repair) after any metadata change to regenerate caches.

  • DON'T: Delete fields that have existing data — mark them hidden in layouts instead, then migrate data before removal.

  • DON'T: Create relationships through direct SQL inserts — always use the SuiteCRM relationship API or Studio.

  • DON'T: Share admin credentials. Use role-based access (Security Suite) for granular permissions.

What’s Next


That’s the end of our discussion on CRM basics. This is all you need to understand about SuiteCRM on Day 1. With modules, fields, views, and relationships as your foundation, Day 2 builds directly on top — Studio lets you customize existing modules without touching code, Module Builder lets you create entirely new ones from scratch, and the Extension Framework ensures every change you make survives an upgrade.


Read More:

What Is CRM Hosting? Types, Comparison & How to Choose the Right Solution

Respond to this article with emojis
You haven't rated this post yet.