How we built our own ERP, CRM, WMS, EAM and HR (2023–2024)
We started building the ERP, CRM, WMS, EAM and HR in June 2023, and the fifth went live at the end of November 2024. The CRM, WMS, EAM and HR connect to the ERP, and each country’s tax, leave and inspection rules are dated settings. All five run the same code in the cloud or on-premise and launched without AI.
In short
- We started building the ERP, CRM, WMS, EAM and HR in June 2023. They launched one by one, without AI, and the fifth went live at the end of November 2024.
- The CRM, WMS, EAM and HR connect to the ERP. A won deal becomes a sales order, a scan in the warehouse updates stock and its value in the ERP, a spare part that runs short becomes a purchase request, and each payroll run posts to the ledger.
- The standard version of each system can be ready within a week, and we customise it only after a team has used it. Custom work is handed over with the code, and the customer owns 100% of the source code.
- Rules that differ by country are settings, and a rule that changes gets a new row with its effective date. They cover tax rates and chart of accounts templates in the ERP, inspection types and validity periods in the EAM, and leave rules and public holidays in HR.
- We started adding AI features to the five systems in November 2024. All five launched without AI, and every workflow in them runs without it.
At the end of November, the fifth of Sedang Bahagia’s own business systems went live. We started building them in June 2023: an enterprise resource planning (ERP) system, a customer relationship management (CRM) system, a warehouse management system (WMS), enterprise asset management (EAM), and an HR and recruitment system. They launched one by one, all without AI.
We built the CRM, WMS, EAM and HR to connect to the ERP, with the rules that differ by country kept as dated settings. Each system runs a standard workflow from its first day and is customised only after a team has used it. The same code runs in our managed cloud or on a company’s own servers.
Custom builds for clients carried on alongside the systems. The property management system for holiday rentals we delivered in 2023 ran as an 8-week build. Since June 2024 we have built new custom projects with Claude in 4-week sprints, among them the computer-based mock exams for a national tutoring chain.
1. We built the CRM, WMS, EAM and HR to connect to the ERP
The ERP sits at the centre, and the other four read from it and write to it. Sales quotes a customer in the CRM, and finance chases the same customer’s invoice in the ERP. The warehouse stores an item by bin, and purchasing reorders that item. A genset in the EAM register is linked to the fixed asset that finance depreciates, so book value and maintenance history sit on one asset.
The other four meet the ERP in these places:
- CRM and ERP: quotations use the ERP’s price lists and live stock, an order goes through once the credit limit is checked, and a won deal becomes a sales order without being retyped.
- WMS and ERP: the WMS holds stock per bin and pallet, the ERP holds stock per warehouse with its value, and each scan updates both as it happens.
- EAM and ERP: an asset is created from its purchase order and goods receipt, the ERP’s depreciation engine updates its book value every period, and a spare part that runs short becomes a purchase request in the ERP.
- HR and ERP: headcount and cost centres are shared with finance, payroll runs in HR, and each payroll run posts to the ledger as journals per cost centre.
Inside HR, the candidate record becomes the employee record when the offer is signed, so a new hire’s details are never typed twice.
Each system also runs on its own. A company can start with the one it needs and add the others later, and each one added connects to the ERP in the same places. The CRM, WMS, EAM and HR can also connect to an ERP a company already runs, and which records pass between them is set when we customise the system. Beside another ERP, the WMS takes purchase orders in and sends receipts, shipments and adjustments back.
2. Each system runs a standard workflow from its first day
A team can work in any of the five before anything is customised. The standard version of each system can be ready within a week. We customise it after the team has used it and found where it falls short, and the custom work is handed over with the code, documentation and admin access. The customer owns 100% of the source code.
What each system does without AI:
- ERP: finance, procurement, sales, inventory, manufacturing and HR on one database. Each document is created from the one before it, so finance can open an invoice and walk back to the purchase request that started it.
- CRM: leads, field visits and deals in one pipeline, with WhatsApp and email in one shared inbox linked to the customer and the deal. Reps plan visits and check in by GPS from an iOS and Android app, and customers pay invoices in a portal.
- WMS: receiving, put-away, picking, packing and counts by bin, each confirmed by a scan on a handheld or a phone camera. Cycle counts cover a few bins every day while the warehouse keeps working.
- EAM: one register per asset, preventive maintenance by calendar or by meter, work orders from a QR scan to close-out, and statutory certificates with due-date alerts.
- HR and recruitment: every hiring stage from the job post to the signed offer, then employee records, leave, attendance and payroll.
The same code runs in two places. In our managed cloud we host, monitor and update it. On a company’s own servers, the data stays inside its network.
3. Rules that differ by country were built as settings with effective dates
Rules that differ by country, or change on a date, are kept as settings, and a rule that changes gets a new row with the date it applies from. A transaction dated before the change uses the old row, and one dated after uses the new one. An invoice dated 31 December and one dated 1 January can carry different tax rates in the same system, with no release in between.
Three of the systems hold these settings:
- ERP: tax rates with effective dates, chart of accounts templates for Singapore, Malaysia and Indonesia, and connectors to tax systems.
- EAM: statutory inspection types and their validity periods, per country and asset class.
- HR: leave rules per country, with public holidays per state.
In 2024, while we were building the systems, all three countries changed tax, e-invoicing or inspection rules:
| Country | What changed in 2024 |
|---|---|
| Singapore | GST rose from 8% to 9% on 1 January. In April, the tax authority set out InvoiceNow for GST-registered businesses: voluntary from 1 May 2025, newly incorporated companies that register voluntarily from 1 November 2025, and all new voluntary registrants from 1 April 2026 |
| Malaysia | Service tax rose from 6% to 8% on 1 March, with food and beverage, telecommunications, parking and logistics kept at 6%. MyInvois e-invoicing began on 1 August for companies with annual income or sales above RM100 million. Plant that needs a certificate of fitness came under new regulations from 1 June |
| Indonesia | Minister of Finance Regulation 81 of 2024, set on 14 October, made the rules for Coretax, the tax office’s new core system, from 1 January 2025 |
The sources:
- Singapore: the Inland Revenue Authority of Singapore (IRAS) lists 8% for 2023 and 9% as the current rate on its current GST rates page, and set out the InvoiceNow dates in a media release of 15 April 2024.
- Malaysia: the Royal Malaysian Customs Department gives the 8% rate from 1 March 2024 and the services kept at 6% on its MySST background page. The Inland Revenue Board (HASiL) confirmed the first MyInvois phase in a media statement of 22 May 2024.
- Malaysia, inspections: the Department of Occupational Safety and Health (DOSH) gives 1 June 2024 as the start of the Occupational Safety and Health (Plant Requiring Certificate of Fitness) Regulations 2024 on its steam boiler design page.
- Indonesia: the Directorate General of Taxes described the regulation on 15 November 2024.
The new tax rates and inspection rules in that table are the kind of change these settings were built for: a new row with its effective date, entered by someone who knows the new rule and the day it applies from. Which changes belong in settings and which need code is the subject of our post on ERP customisation.
4. We started adding AI features to the five systems in November 2024
All five systems launched without AI, and every workflow in them runs without it. In November we started adding AI features to them, and we are adding more now.
5. Takeaways
The ERP decides how the five systems fit together. The CRM, WMS, EAM and HR each connect to it, so a won deal becomes a sales order, a scan in the warehouse moves stock and its value, and a payroll run posts journals to the ledger.
The standard workflow comes first. The standard version of each system can be ready within a week, and customisation waits until a team has used it and found where it falls short.
Country rules live in dated settings. Singapore and Malaysia raised tax rates in 2024 and Malaysia brought in new inspection regulations, and a change like those is a new row with its effective date.
AI features are an addition. We started adding them to the five systems in November, and every workflow in them runs without AI.
The next tax rate, inspection rule or public holiday will reach the five systems the same way, as a new row with the date it applies from.
Frequently asked questions
Do we have to take all five systems?
No. Each system runs on its own, and you switch on the ones you need. A system added later connects to the ERP in the same places as the others. The CRM, WMS, EAM and HR can also connect to an ERP you already run. Beside another ERP, the WMS takes purchase orders in and sends receipts, shipments and adjustments back.
Can one company run entities in two countries?
Yes. The ERP is multi-company and multi-currency, so entities in Singapore, Malaysia and Indonesia run as separate companies in one database. Each keeps its own chart of accounts template and tax settings, and HR applies each country’s leave rules and public holidays to the staff employed there.