Getting Started
Coeffection is a configurable CRM. It ships with sensible defaults, but the real value comes from shaping it around how your business actually works. This guide walks you through that, start to finish: think first, model your business, then turn it on. Work through it in order and by the end you'll have real records moving through a pipeline you designed.
How to use this guide#
The order here is deliberate. A lot of CRM projects stall because people start clicking before they've decided what they're building. So the first part is homework you do away from the software. Then you configure, then you connect the tools your team already lives in. Here's the path:
- โขPart 1: Homework first. Map your process, name your entities, and decide how they relate. No software yet.
- โขPart 2: Entity configuration. Build those entities and pick the right field type for every piece of data.
- โขPart 3: Which entities have a journey. Add pipelines, stages, gates, promotions, and SLAs to the ones that move.
- โขPart 4: Integrations. Connect Google, your first and most useful integration.
- โขPart 5: Communication. Calendar sync and the inbox that ties email to records.
- โขPart 6: Lead inbox. Load real lead data from Airtable and start working it.
Part 1: Homework first#
Do this part before you touch the software. A whiteboard, a doc, or a napkin is fine. The point is to decide what you're modelling so that when you do start configuring, you're transcribing a plan instead of inventing one field at a time.
1. Map your business process end to end
Start with the whole journey, from the very first moment a potential customer shows up to the moment the work is done and paid for. Write it as a single line of steps, in plain language, the way your team actually talks about it. Don't worry about the CRM yet. You're just describing reality.
Example: a sign-manufacturing business
Now mark the moments where a thing changes hands or changes character. In the example above, an incoming enquiry, a live deal, and a build-it-and-install-it project are three genuinely different things with different owners, different fields, and different definitions of "done." Those hand-off points are the seams you'll cut along in the next step.
2. Break your process into entities
An entity is a type of record you track. Contacts and Opportunities are built in, but Coeffection lets you define your own, so your entities can match your business exactly instead of forcing your business to match the CRM. Take the seams you found and turn each stretch between them into an entity.
For the sign business, the process above breaks cleanly into three record types that each move through their own life:
- โขLead:a raw enquiry that hasn't been qualified yet. Lightweight, high volume, mostly triage.
- โขOpportunity: a real deal a rep is actively working, with a value and an expected close date.
- โขProject: the work itself once the deal is won. Design, fabrication, install.
Your business will have its own set. A consultancy might have Lead, Engagement, and Deliverable. A property manager might have Enquiry, Application, and Tenancy. The names matter less than the principle: one entity per genuinely distinct kind of record. Resist the urge to cram everything onto one giant "Deal" record with fifty fields, half of which are blank at any given time.
3. Map your customer side
The entities above are the work moving through your business. Running alongside them are the people and organisations that work belongs to. These usually don't move through a pipeline; they're the stable records everything else points at. Sketch out which of these you need:
- โขCompany(also called an Account): the organisation you're doing business with.
- โขContact: an individual person, such as a buyer, an influencer, or a decision-maker.
- โขCompany Contacts:the fact that a Contact belongs to a Company. One company can have many contacts, and you'll want to see them all from the company record.
- โขVendorsor other third parties: suppliers, subcontractors, partners. If you need to track them, they're their own entity too.
The distinction that matters: your process entities (Lead, Opportunity, Project) have a beginning and an end, they move. Your customer-side entities (Company, Contact, Vendor) tend to persist. A company stays a company. This difference decides which entities get a pipeline in Part 3 and which are just records.
4. Decide how your entities relate to each other
You've got two lists now: the things that move, and the people those things belong to. The last piece of homework is drawing the lines between them. For every entity, ask: what is this record connected to, and is it connected to one of them or many?
Company
record only
Contact
record only
Lead
has a pipeline
Opportunity
has a pipeline
Project
has a pipeline
Each Opportunity and Project links back up to its Company and Contact.
Note two different kinds of line in that sketch. Some are belongs-to links: an Opportunity belongs to a Company and a Contact. Others are becomeslinks: a Lead becomes an Opportunity, an Opportunity becomes a Project. Both are real, and Coeffection supports both, but they're built differently. Belongs-to links are relationship fields (Part 2). Becomes links are pipeline promotions (Part 3). Deciding which is which now saves you rework later.
Part 2: Entity configuration#
Now you transcribe the plan. Everything in this part happens under Admin โ Entity Types, the master list of every kind of record your workspace can hold. You'll see the built-in entities there already; you're about to add your own.
5. Build the entities and decide their fields
Create one entity type per record type from your Part 1 list. Give each a clear, singular name (Lead, Opportunity, Project). Once an entity exists, open it and start adding fields. A field is one piece of data you want to capture on every record of that type.
- 1Go to Admin โ Entity Types and click New entity type. Name it after one of your entities.
- 2Open the new entity and use its field editor to add fields one at a time. For each field, give it a name and pick a field type (covered next).
- 3Start with the handful of fields you can't work without. For an Opportunity that's usually a name, an amount, an expected close date, and an owner. You can add more any time.
- 4Repeat for every entity. Don't forget the customer-side ones (Company, Contact) if you're not using the built-ins as they are.
6. Field types and what each is for
The field type is the single most important choice you make about a field. It decides how the value is entered and validated, how it looks across the app, and, crucially, how it behaves in reports and filters. A money amount stored as plain text won't total on a dashboard. A date stored as text won't sort. Pick the type that matches the real shape of the data, every time.
6a. The basic fields
These hold a value directly on the record. Most of your fields will be these, and the rule is simple: match the type to the data.
| Field type | Reach for it when |
|---|---|
| Text / Long Text / Rich Text | Free-form words. Use Text for short labels, Long Text for notes, and Rich Text when you need formatting like bold, lists, and links. |
| Number / Currency / Percent | Anything you'll do math on. Currency carries a currency symbol and totals correctly; Percentrenders as a percentage. Don't put money in a Text field. |
| Date / Date & Time / Timestamp | Calendar values that sort and filter by range. Use Date for a day and Date & Time when the hour matters. |
| Auto Date | A read-only date the app stamps automatically when a record's status changes into a value you configure. Perfect for "Date Won" or "Date Closed" without anyone keying it in. |
| Boolean | A simple yes/no toggle. Contract signed? On hold? |
| Select / Multi-Select | A fixed set of options. Use Select for one choice (a priority, a source) and Multi-Select for several (tags, product interests). Always prefer this over free text for known options, so filters and reports group cleanly. |
| Email / Phone / URL | Contact details with the right input behaviour and click-to-act handling built in. |
| Address / Country / State / Postal | Location data broken into typed pieces so you can filter and group by region instead of parsing one text blob. |
| Image | A picture attached to the record, such as a site photo or a product shot. |
6b. The powerful fields
These are where a configurable CRM earns its keep. Instead of storing a plain value, they connect records to each other and let data flow between them. Reach for these when a field's value is really "another record somewhere else" rather than a fact you type in. They're the difference between a spreadsheet with lookups you maintain by hand and a system that keeps itself in sync.
| Field type | Reach for it when |
|---|---|
| Relationship | Points at a record on another entity type instead of storing text. Set its Related Entity Type (any entity, or a system target like Team or User) and its Cardinality: One-to-One links a single record (a Contact's Company), One-to-Many links several (a project's tasks). Because it's a real link, every field on the linked record travels with it. |
| Fuzzy Match Relationship | A relationship that softens the matching on the way in. When you're linking records where the exact spelling isn't guaranteed, like importing rows where company names are typed slightly differently, this suggests likely matches instead of demanding an exact pick. It stays "staged" as text until someone confirms the match. Ideal for messy inbound data. |
| Relationship Table | The reverse view of a relationship. Put it on the record that gets pointed at, aim it back at the entity that points, and it automatically lists every record linking to this one. Add it to a Company to see all its Contacts, or to a Contact to see all its Opportunities. You enter the link once; both sides show it. |
| Inherited Lookup | Pulls a value down from a linked parent record so you never retype it. It walks the record's parent relationship to a target entity type, then shows either that record's name or a specific target field you choose (even its pipeline stage or status). Show a Contact's Company region on the Contact, and it stays in sync when the company's region changes. Choose First match for a single value or List to collect from all matched parents; you can even coalesce across several sources in priority order. |
| Combined | Merges several fields already on the same record into one. Pick a rule: coalesce (first non-empty wins), newest or oldest (by timestamp), or concat (join them together). Handy for a single display name assembled from parts. |
| Link (any record) | Like a relationship, but not tied to one target type. It can point at any record across every entity type, so use it for a loose "related to" link when you don't want to fix the target up front. |
Alongside these, a few field types embed a whole panel onto the record rather than a single value: Comment Thread, Email Box, SMS History, Meetings, Dropbox File, Drive File, and Table. And Section Break and Tab Grouporganise a long record into readable sections and tabs. You'll use these to lay out a record once your fields are in place.
Part 3: Which entities have a journey#
Back in Part 1 you marked which entities move and which just sit there as records. This part is about the ones that move. A record that moves gets a pipeline: an ordered set of stages it travels through on its way to done.
7. Entity pipelines
Not every entity needs a pipeline. A Company doesn't have stages; it's a stable record you point other things at. An Opportunity absolutely does: it goes from Qualified to Proposal to Negotiation to Won. That's the line. If an entity has a life with a beginning and an end and distinct phases in between, give it a pipeline. If it's a reference record, leave it as records only. Under the hood an entity type simply has a pipeline attached or it doesn't; attaching one is what turns on stage tracking and the kanban board.
Pipelines are managed under Admin โ Pipelines, separately from entities, because one entity can support more than one pipeline (different sales motions for different product lines, for example). The setup is: create the pipeline, add its stages in order, then attach it to the entity so every record of that type carries a stage.
- 1Under Admin โ Pipelines, click New pipeline and name it (for example, Deals Pipeline).
- 2Add stages in the order a record travels them. A simple start:
NewโQualifiedโProposal SentโWon, with aLoststage off to the side. - 3Open the entity type's settings and set this pipeline as its pipeline. Now every record of that entity gets a stage and a kanban column.
- 4Create a test record. It lands in the first stage automatically. Drag its card to the next column, or change the stage on the record itself. Either way the move is logged with who moved it and when.
8. Pipeline stages, gates, promotion, SLAs, and stage automation
A pipeline is more than columns. Each stage can carry rules and behaviour that keep records honest and move work along without anyone babysitting it. Here's what you can layer on, in the order you'll usually want them.
Qualified
25%
Proposal
50%
Negotiation
80%
Won
100%
Stage gates
A gate is a condition a record has to satisfy before it's allowed into a stage. Gates come in two strengths. A soft gate (a warning) lets the person moving the record proceed after acknowledging it. A hard gate blocks the move until the condition is met. The most common kind is a field-rule gate: it checks a field on the record, for example, an amount must be set (or over a threshold) before a deal can reach Proposal. There are also cross-branch gates that hold a record until a parallel branch has caught up. Admins can name specific roles that are allowed to override a gate, and every override and every skipped rule is written to the audit log, so nothing slips through quietly.
Promotion
Promotion is how a record in one pipeline hands off to a record in another. It's the "becomes" link from Part 1: a won Opportunity becomes a Project, a qualified Lead becomes a Deal. You attach a promotion rule to a stage. When a record reaches that stage, the rule creates a linked record of a different entity type and carries over the fields you map.
- โขPromote to picks the entity type the new record is created as, and Landing Stagesets where in that entity's pipeline it starts (defaulting to the first stage).
- โขConfigure Mapping chooses which source fields copy onto the new record. The account, contact, and owner come along automatically; everything else you map explicitly.
- โขTrigger Mode is either Confirm (a review dialog opens first, the safe default) or Automatic (the new record is created the instant the stage is reached).
- โขThe two records stay linked both ways. The original isn't deleted, it keeps a pointer to what it became, and the new record keeps a pointer back. A Revert option undoes a promotion done by mistake.
SLAs
A stage can carry an SLA target: a time budget for how long a record should sit in that stage. You set the target and a warning threshold (a record turns amber at, say, 80% of the budget), and records approaching or past the limit get flagged, so a deal parked in Negotiation for three weeks doesn't quietly rot. If you set business hours on the pipeline, the SLA clock only runs during them. SLAs turn "we should follow up" into something the system surfaces for you.
Stage automation
Reaching a stage can set things in motion on its own. An Auto Datefield stamps a timestamp automatically when a record's status transitions (a clean, hands-off "Date Won"). A promotion rule set to Automatic fires the moment the stage is reached. And stage changes are recorded on the record's history so you always have the trail. Start simple: get records moving through stages first, then add gates, then promotion and SLAs once the basic flow feels right.
Part 4: Integrations#
Your data model is built. Now connect the tools your team already uses so the CRM reflects real activity instead of asking people to log it by hand. Integrations live under Admin โ Integrations. There are many, but there's a clear one to do first.
9. Your first integration: Google
Google is the highest-leverage integration for most teams, because it brings email and calendar, the two places your customer conversations actually happen, straight onto your records. Connecting it means incoming email lands on the right contact's timeline automatically, outbound email sends from your real Gmail address so recipients see your name, calendar events sync both ways, and you can attach Google Drive files to any record. There are two ways to connect it.
Personal Connection (fastest)
Each user connects their own Google account with a single OAuth approval. Best for solo users and small teams.
- 1Go to Admin โ Integrations and open the Google (Gmail & Calendar) card.
- 2Click Connect My Account and sign in through the Google popup with your work email.
- 3Review the requested permissions (read and send email, manage calendar events, view your email address) and click Allow.
- 4Sync starts immediately. Existing emails that match your CRM contacts backfill onto their timelines.
Organization Connection (recommended for teams of 5+)
An admin connects once using Google Workspace Domain-Wide Delegation, and every user in the domain is synced automatically, with no per-person OAuth flow. New employees are connected the moment they're added to the Workspace domain. It takes a bit more setup (a Google Cloud service account and a scope grant in the Google Admin Console), and the full walkthrough is on the Google integration page.
Part 5: Communication#
With Google connected, the Communication Hub comes to life. This is the unified place where email, calendar, and (once you add Twilio or Zoom) calls and meetings all attach themselves to the right records. Two pieces are worth setting up deliberately.
10. Google Calendar
Calendar sync is bidirectional. Create an event in Google and it shows up in Coeffection; create one in Coeffection and it appears in Google. When you schedule a meeting from the CRM, a Google Meet link is generated automatically and included on the invite. Because events are tied to the contacts on them, a meeting you book with a prospect lands on that prospect's record without any extra step.
- โขEvents sync in real time in both directions, so you can live in whichever calendar you prefer.
- โขScheduling from a contact or opportunity attaches the meeting to that record automatically.
- โขGoogle Meet links are auto-generated for events created in the CRM.
11. The inbox, and relating email to records
The Communication Hub inbox is a unified view of every interaction: email, and, once connected, calls, SMS, and meetings, each one logged against the relevant contact, company, opportunity, or case. The point is that nobody copies an email into the CRM by hand. It's already there.
Email attaches to records in two ways. The first is automatic contact matching: when an email syncs in, Coeffection matches it to a CRM contact by email address and shows it on that contact's timeline. Replies are grouped into conversation threads. That covers the common case with zero effort.
The second is manual linking, for when a conversation belongs to more than a contact. Open a thread and link it to any record: a specific opportunity, a project, a case. The link is applied to the whole thread, past and future messages included, so once you've tied a conversation to a deal, every reply on it shows up there too. One email can link to several records at once, and each record shows the conversations attached to it.
Marco Polo
9:15 AM
Re: TechBridge contract, attached
Alice Ng ยท Google Meet
Yesterday
FluxCorp kickoff, linked to the Project
David Park
Yesterday
Question about pricing
Part 6: Lead inbox#
You have a model, pipelines, and communication wired up. The last step is getting real data in. Most teams already have leads sitting somewhere, and Airtable is one of the most common places. Coeffection brings those Airtable rows into the Lead Inbox, a review queue that sits in front of your pipeline so raw leads get a human glance before they become real CRM records.
Here's the important part: the inbox reads your Airtable base live. Rows don't become CRM records just by appearing there. They become records only when you promote them, and a promotion carries over only the fields you mapped, not the whole raw row. That review step keeps junk out of your pipeline and lets you sanity-check the mapping on real data before you trust it.
Connect Airtable
You connect Airtable once, then point the inbox at a base and table. The exact screens and token scopes are on the Airtable integration page; the essentials are:
- 1In Airtable, create a Personal Access Token (or use OAuth) with read access to the base you want to import, then connect it in Coeffection under Admin โ Integrations.
- 2Pick the base and the table to read from. Optionally choose a specific Airtable view so only the records visible in that view show up, an easy way to exclude archived or draft rows.
- 3Set up the field mapping: match Airtable columns to lead fields. This mapping is what decides which data lands on a promoted lead, and it can apply small transforms (trim, uppercase, date formatting) along the way.
Work the inbox
Rita Morales
Cloudify
James Obi
DataVault
Marco Polo
TechBridge
- 1Open Lead Inbox from the Leads area. Each row is an Airtable record showing the fields you chose to display, and rows already imported are filtered out so you never see them twice.
- 2Review a row and click Promoteto turn it into a lead record. Only mapped fields carry over, and the lead's name is derived for you so you never get a blank-titled lead.
- 3Not a real lead? Reject it with a reason, or Snooze it to deal with later. Rejected rows stay out of your pipeline and you keep a record of why.
- 4Promoted rows move to the inbox's Promoted view, and the new lead enters the pipeline you built in Part 3, ready to work.
Airtable isn't the only way in. The same inbox-and-promote pattern backs other lead sources, and if you want to push events from a webhook (Stripe, Typeform, or anything that can sign a request), see Inbound Sources. For a one-off spreadsheet, the CSV importer on any entity list works too. However the data arrives, the principle holds: review it, then let it into your pipeline.
You're ready#
That's the whole setup. If you worked through it in order, you now have every piece you need to run real work through Coeffection:
- โขA process you mapped out, broken into entities that match how your business actually works.
- โขThe right field type on every field, including relationships and inherited lookups that keep your data in sync instead of drifting apart.
- โขPipelines on the entities that move, with stages, gates, promotion, and SLAs doing the routine work for you.
- โขGoogle connected, so email and calendar attach themselves to the right records automatically.
- โขReal leads flowing through the Lead Inbox and into your pipeline.
From here it's refinement, not construction. Add a field when you feel its absence, tighten a gate when bad data sneaks through, connect another integration when a new channel matters. But the foundation is in place, and you can start moving real records through the pipeline you designed. That's the whole point. Go work a deal.