Skip to content

Custom Business Software

Custom CRM: a CRM shaped like your relationships

A standard CRM thinks a customer is a person with an address. Your biggest customer is a property manager with 38 sites, an agreement on each, one person who opens the door, another who approves anything over $1,000 and a third who pays. A custom CRM models that, and sends each request, approval and invoice to the right person by rule. We model your relationships and rules with you, then build the CRM around them.
In a standard CRMFacilities · 14 Oak StFacilities · 220 Mill RdFacilities · 9 Pine AveFacilities · 31 Lake DrFacilities · 6 Elm Ct⋮38 contacts · 1 companyIn your CRMA-07 · property manager · 38 sitesSite 14 · Oak StSite 22 · Mill Rd+ 36 more sitesquarterly servicerenews Mar 1site contactdoor accessapprover · M.K.over $1,000accounts payableinvoicesSite 14 · no heatquote $1,840over $1,000 → approverto M.K. for approvalinvoice → accounts payable

When your best customers don't fit

Commercial accounts break standard CRMs in predictable ways. One company becomes 38 contacts. Agreements live in a notes field. Nobody can see that Site 14 is on quarterly service, or who approves a quote above the limit, so quotes wait in the wrong inbox and invoices go to the person who opened the door.

A custom CRM starts from how the relationship works: an account, its sites, an agreement per site, and people with roles. Work routes by those roles, renewals come from the agreements, and reports finally show an account as one customer.

Today, and with a custom CRM

Today

  1. 01Each site is entered as its own contact.
  2. 02Agreements are tracked in a spreadsheet beside the CRM.
  3. 03Quotes are emailed to whoever called.
  4. 04Invoices are sent to the site, then forwarded, sometimes.

Quotes wait on the wrong person, renewals are missed, and the biggest account looks like 38 small ones.

With a custom CRM

  1. 01One account, with its sites underneath.
  2. 02Each site carries its agreement and renewal date.
  3. 03Quotes route to the approver set for that account.
  4. 04Invoices go to accounts payable; the site contact gets the visit details.

The account behaves like one customer, and every request reaches the person who can act on it.

What a standard CRM assumes

Each assumption is fine for most businesses. When it isn't true for yours, it's the reason to build.
A customer is a person or a companyA property manager with 38 sitesAccount → sites → equipment
A deal is one saleAgreements renew per siteAgreements with visits and renewal dates
One owner per recordSomeone opens the door, someone approves, someone paysRoles on each contact
Pipeline stagesApproval limits set by each accountApproval rules per account

The records behind it

Four records, each with a clear job. Everything else (quotes, visits, invoices) hangs off them.

Account

Example
A-07 · property manager
Holds
sites, contacts with roles, approval limit, billing terms
Owned by
account manager

The parts it's built from

Each part is built and tested on its own, so you can start with one and add the rest.
  1. Model

    CRM Architecture

    Accounts, sites, agreements and roles.

  2. Screens

    Custom CRM Applications

    • the account
    • its sites
    • who decides what

    no approver set → the account manager decides

  3. Rules

    Custom CRM Applications

    Approvals, renewals and invoices routed by role.

  4. Connect

    API Services

    Quotes, jobs and invoices stay in step with the tools that make them.

Underneath every stepDatabase DesignRecords that keep their relationships as the account grows.

What changes from one business to the next

RelationshipsAccounts, sites, households or groups: whatever your customers really are
RolesWho decides, receives and can see what
AgreementsWhat renews, how often, and what starts the renewal
ConnectionsWhich tools make quotes, jobs and invoices

A common starting point is a Postgres database, a Next.js application, sign-in for your team (and for account contacts, if they get a portal), and API connections to your quoting and accounting tools. These are starting candidates, not requirements.

Is a custom CRM the right system?

Good fit

  • Your most valuable customers don't fit a standard CRM's shape.
  • Customising your CRM has become its own project.
  • Who approves, pays and receives differs by account.

Avoid when

  • Your customers fit a standard CRM. Configure one, or rebuild the one you have with CRM Modernization.
  • You have a handful of commercial accounts. A well-kept spreadsheet beside the CRM may be enough.

How we'd approach it

Most of the early work is mapping your relationships, the roles in each, your agreements and the systems it connects to.
  1. 01

    Understand

    As much as the problem needs

    We map how the work runs today: who does what, which systems hold the records, and where it breaks.

  2. 02

    Design

    Decided before it's built

    Ownership, rules, integrations and exceptions, agreed with you and written down with acceptance criteria.

  3. 03

    Build

    Connected to what you use

    We build the scoped system, connect it to the tools you already run, and test it on the cases that matter.

Questions about custom CRMs

Why not customise a standard CRM?

Often that's the right answer, and we'll say so. It stops being right when the customisations cost more each year than they save, or the CRM still can't express how your accounts work.

What happens to our current CRM data?

It's mapped into the new model: duplicate contacts merged into accounts and sites, notes turned into agreements where they describe one, and anything unclear listed for a person.

Can account contacts log in?

They can, through a portal that shows only their sites, agreements and invoices, if you want one.

Does it handle email and calls?

Messages and calls are logged against the account and site. Sending stays in the tools you use, connected through their APIs.

Get a CRM shaped like your customers

Tell us how your biggest customers are organised and where your CRM falls short. We'll show you how they'd be modelled.

Start a project