What is custom CRM development?
Custom CRM development is building a customer relationship management system for one business's own sales and service process, owned by that business and hosted in its accounts, instead of subscribing to a generic CRM priced per user. The result is usually a web app with a pipeline, client records, quoting, messaging and reports.
The businesses that ask for it tend to sell by quote rather than by checkout. Think of a Newcastle kitchen renovator, a Perth commercial cleaning contractor bidding for tenders, a Brisbane pool builder or a Melbourne signage company. Each receives enquiries, prices a job, follows up, wins or loses, and then hands the work to operations and accounts. Generic CRMs were mostly designed around software-style sales teams, so these businesses bend them with custom fields, add-on apps and spreadsheets on the side.
A custom CRM removes the bending. Stages match your real process, the quote is a first-class part of the record, and the handover to Xero and to the field crew happens automatically. It is not a rebuild of a giant sales platform; a good first release covers one pipeline properly and grows from there.
When does an Australian business outgrow per-seat CRM pricing?
You have outgrown per-seat pricing when you pay for logins that people barely use, or avoid giving staff access to save money, or need to jump a plan tier just to get one feature such as custom permissions or automation. Each of these means the pricing model, not the software, is shaping how your team works.
Quote-based businesses feel this sharply. The estimator, the office manager, the owner, the apprentice who logs site photos and the bookkeeper all need some access, but only one or two live in the CRM all day. Paying full seats for occasional users adds up, and the usual response is shared logins, which then wrecks your audit trail and breaks privacy basics.
The honest way to decide is arithmetic over a few years, not a gut feeling. Add up the current subscription, the add-on apps and connectors you pay for, and the staff hours spent re-keying data or working around limits. Compare that with a one-off build from US$900 plus hosting and optional support. We do not publish vendor prices, because they change, but the worksheet in the tables below shows exactly what to count.
- Seats for people who log in once a week
- Shared logins to avoid adding users
- A plan upgrade just to get one missing feature
- Paid connectors to reach Xero or your SMS gateway
- Spreadsheets tracking what the CRM cannot
Custom CRM development or an off-the-shelf CRM: how should you decide?
Choose off-the-shelf when your sales process looks like most businesses in your industry and the total subscription is comfortable; choose custom CRM development when your process is distinctive, the seat bill keeps rising, or data ownership matters enough to justify a build. Many businesses sit in between and are best served by keeping their CRM and adding one integration.
A subscription CRM wins on day-one speed, a large feature set and a vendor who handles upgrades. Its costs are ongoing fees, features you must adapt to, and data held under someone else's terms. A custom CRM wins on fit, predictable running costs and control. Its costs are an upfront build, a first release that does fewer things than a mature product, and the need for someone to maintain it.
Stay with your current CRM when
It fits most of your process, the team likes it, and the only real pain is one missing connection, such as to Xero.
Build when
Quoting, variations and follow-ups live outside the CRM, seat costs are climbing, or you need permissions and exports no plan offers.
Hybrid when
Marketing email stays in a subscription tool while the quote pipeline and job handover move into a system you own.
Designing a CRM pipeline for a quote-based business
A quote-based pipeline should track the steps that actually decide whether you win: how quickly you respond, whether a site visit happened, how fast the quote went out, and how many follow-ups followed. Stage names matter less than the rules for moving between them.
We usually start with six stages: new enquiry, qualified, site visit or measure booked, quote sent, follow-up, and won or lost. Each stage has an entry rule (for example, a quote cannot be marked sent until a PDF exists) and an automatic action (a reminder SMS the day before a site visit, a follow-up task three days after a quote). Lost deals require a reason, because “price”, “timing” and “went with someone else” tell you very different things.
Quotes deserve special care. Line items come from your price list with margins hidden from junior staff, options let clients choose tiers, variations attach to the original quote, and an online accept button records the name, time and version accepted. That record is useful if there is a later dispute about what was agreed.
Use the pipeline design table below as a starting point, then change it to match your trade.
How much does custom CRM development cost?
With BtechWaleTech, custom CRM development starts from US$900 for a focused first release, and the final quote depends on pipelines, quote complexity, integrations, automations and data migration. There are no per-user fees, so adding staff later does not change the price.
The main cost drivers are easy to list. Integrations: each connected system (Xero, an SMS gateway, your website forms, a calendar) needs mapping, error handling and testing. Quote logic: simple line items are quick; deposits, progress claims, variations and option sets take longer. Automations: every rule that sends a message or creates a task needs edge cases thought through. Migration: moving years of records from another CRM or a spreadsheet can be a line item of its own.
Running costs stay with you and stay visible: cloud hosting billed to your own account, SMS credits with your gateway, and optional support. See starting prices for the other services we offer.
How does a custom CRM sync invoices with Xero?
A custom CRM connects to Xero through Xero's official API, authorised once by your Xero admin, and then creates or updates contacts and invoices when a quote is accepted or a job is completed, pulling payment status back so sales staff see who has paid without logging in to Xero.
The design decisions are where projects go right or wrong. Should the CRM create draft invoices for the bookkeeper to approve, or authorised invoices directly? Which account codes, tracking categories and GST tax rates apply to each line? How are deposits and progress claims handled? What happens if a contact already exists in Xero with a slightly different name? We agree these rules with you and your bookkeeper before writing code.
Syncs also need to fail safely. We queue each change, retry on temporary errors, respect the API's rate limits, and log every failure where the office can see it. The deeper detail is on our Xero integration page.
Sending SMS from your CRM through ClickSend or MessageMedia
Your CRM can send SMS through an Australian messaging gateway such as ClickSend or MessageMedia, using an account you own, so messages go out from your business name or number and replies return to the client record. We connect to the gateway's API; you keep the account and pay for credits directly.
Most CRM messages are service messages: site visit reminders, “your quote is ready”, “our technician is on the way”. Marketing messages are different. The Spam Act 2003 requires commercial electronic messages to be sent with consent, to include accurate sender information and to contain a functional unsubscribe facility.
We build the CRM to support those obligations: a consent field with the date and source it was collected, sender identification in every template, opt-out handling that flags the contact so marketing sends stop, and a log of every message. Whether a particular message counts as commercial, and how your consent wording should read, is for your own adviser to confirm.
Role permissions in a custom CRM: who should see what?
Give each role the least access it needs: estimators see and edit their own pipeline, office staff see everything but cannot change pricing, field staff see only the jobs assigned to them, and only the owner can export the full database or change user roles. Every change is recorded in an audit log.
Permissions are one of the main reasons businesses build their own CRM, because generic products often reserve fine-grained roles for higher plans. In a custom build, roles are just rules we write for you. Margins can be hidden from junior staff, commission figures visible only to the owner, and client phone numbers masked for subcontractors.
Good permissions also help with privacy. If your business is covered by the Privacy Act, limiting who can see personal information and logging access are practical steps that support the security principle. Your adviser should confirm what applies to you.
Owning your CRM data: exports, backups and access requests
Owning your data means the database sits in a cloud account billed to your business, you can export every record in a standard format whenever you like, and backups are tested rather than assumed. With a custom CRM, none of this depends on a vendor's plan tier or cancellation terms.
We build a full export that produces CSV files for every table, plus attachments, from an owner-only screen. Automated database backups run daily in your account, and we test a restore before go-live. The code sits in your GitHub, so another developer could take over without asking us for anything.
Ownership also makes privacy requests easier. The OAIC explains that organisations covered by the Privacy Act must give people access to their personal information on request, and suggests 30 days as a reasonable response period. A client-record export makes that a two-minute job.
Moving from your current CRM or spreadsheet without losing history
Migrate in three passes: export everything from the old system, clean and map it into the new structure in a test copy, then run a final import at cutover with both systems briefly side by side. Rushing any pass is how businesses lose years of client history.
The first pass usually uncovers duplicates, contacts with three spellings, free-text notes where structured data should be, and stages that meant different things to different staff. We show you a mapping sheet listing every old field and where it lands, and flag anything we plan to drop.
Cutover happens on a quiet day. The old CRM stays read-only for a few weeks as a safety net, and staff get a short recorded walkthrough of the new system. Cancel the old subscription only once the team has worked a full cycle without reaching for it.
What tech stack should a custom CRM use?
A custom CRM should use a mainstream, well-supported stack: a relational database such as PostgreSQL, a TypeScript web app, background jobs for syncs and messages, and hosting in an Australian cloud region. Boring choices make it cheap to maintain and easy for any future developer to support.
- Database: PostgreSQL, with row-level rules where roles demand it
- App: Next.js with TypeScript, or a React front end on a Node.js API
- Jobs and queues: for Xero syncs, SMS sends and scheduled reminders
- Files: object storage for quote PDFs, photos and signed documents
- Hosting: AWS Sydney (ap-southeast-2) by default, in your own account
- Auth: individual logins with multi-factor authentication for every user
If your team is mostly in the field, a companion phone app on the same backend can come later. Our dedicated React developer option suits businesses that want the CRM to keep evolving month by month after the first release.
Working with a CRM developer in India from Australia: the first two weeks
The first fortnight is spent on your process, not code. Your afternoon lines up with our morning, so discovery calls happen after lunch on the east coast, or late morning in Perth, and written notes follow the same day.
Contracts, confidentiality and the quote are settled in writing before we see any client data; our terms give the general basis. Invoices come from India in USD and are paid by Wise or bank wire. For GST on imported services, ask your accountant.
Days 1–5
Walk us through a real enquiry from first call to paid invoice on screen share. We draft the stages, the quote structure, roles and a list of integrations.
Days 6–10
You review clickable wireframes of the pipeline and quote screens. We collect a sample export of existing data with sensitive fields removed and draft the field mapping.
End of week 2
Scope confirmed, accounts created in your name (cloud, GitHub, SMS gateway, Xero app connection), and the first build sprint starts with a demo date booked.
How long does custom CRM development take?
A first release of a custom CRM usually takes 6–12 weeks from approved scope to go-live, depending on integrations and migration. Additional modules such as a field app or dashboards are quoted and scheduled as later phases.
A typical run: one to two weeks of discovery and wireframes, four to eight weeks of build in weekly demos, one week of migration rehearsal and user testing, and a cutover week. Delays usually come from waiting on API access, slow decisions about quote rules, or data that needs more cleaning than expected. We flag each risk in writing as soon as we see it.
Risks and red flags in a custom CRM project
The biggest risk is trying to build every feature of a mature CRM in the first release; the biggest red flag in a developer is one who will host your database in their own account. Both leave you worse off than the subscription you are leaving.
- Scope that copies a big CRM's feature list instead of your process
- Database, code or SMS account registered to the developer
- No export screen, or exports only on request
- Integrations with no error log the office can see
- Shared logins or no audit trail
- No migration rehearsal before cutover
- Automations that send marketing SMS without consent tracking
Worked example: a Newcastle renovation business replaces its per-seat CRM
This is a hypothetical scenario for illustration. Picture a Newcastle kitchen and bathroom renovator with an owner, three estimators, two office staff and a bookkeeper. They pay for a subscription CRM, but quotes are built in a spreadsheet, variations live in email, and invoices are typed into Xero by hand.
Discovery shows that only the estimators use the CRM daily. The first release of their custom CRM covers the six-stage pipeline, a quote builder using their price list with options for benchtop and tile tiers, online acceptance, and a Xero sync that creates a draft deposit invoice when a quote is accepted. Reminder SMS for measure appointments go through their own ClickSend account.
The bookkeeper gets a read-only role plus the Xero sync log. Estimators cannot see each other's margins. After go-live, the old subscription runs read-only for a month, then ends. A later phase adds a phone app for site measures. None of this describes a real business; it shows how a modest first release can remove the most painful double handling.
Custom CRM development checklist for Australian SMBs
Work through this list before you request quotes. Clear answers make every quote comparable and keep the first release small.
- Your pipeline stages, written as they really happen
- A sample quote, including options, deposits and variations
- Roles in the team and what each should see or change
- Systems to connect: Xero, SMS gateway, website forms, calendar
- Current costs: seats, add-ons, connectors and re-keying time
- Where your data should be hosted and who can export it
- How consent for marketing messages is collected and stored
- Which old records must migrate, and which can be archived
If an AI assistant answering website questions is also on your list, the AI chatbot guide explains how it can feed leads straight into the pipeline.