What Claude does inside our ERP, CRM, WMS, EAM and HR
Claude reads documents, answers from your own files and figures, and drafts messages in all five systems. Checks written in code route every draft, a person confirms it before anything posts or reaches a customer, and every workflow still runs with AI switched off.
In short
- Claude reads, drafts and suggests in all five systems. Nothing it prepares posts, moves stock or reaches a customer until a person confirms it, apart from the WhatsApp assistant and the message templates a company switches on.
- Checks written in code route every draft: lines that add up, a tax rate valid for the date, a purchase order and receipt that match, a bank account that matches the supplier record. The model’s confidence is shown to the reviewer and decides nothing.
- Five shared blocks do the work in all five systems: document intake, answers that cite the page, questions about your data, message drafts and scheduled jobs.
- Exact numbers stay with code: three-way match, forecasts, pick routes and depreciation. Torque values and safety steps from a manual are quoted word for word, and AI never decides a permit to work.
- Every AI feature is switched on per company and can be switched off at any time, and every workflow still runs by hand without it. On-premise, Claude runs through the customer’s own cloud account or stays off.
The last of the AI features went into Sedang Bahagia’s five business systems in August 2025, after work that began in November 2024. Claude, Anthropic’s AI model, now works inside the enterprise resource planning (ERP), customer relationship management (CRM), warehouse management (WMS), enterprise asset management (EAM) and HR systems.
Claude reads documents, answers questions from your own files and figures, and drafts messages, and code decides where each draft goes. Supplier invoices become draft bills, equipment manuals answer with the page quoted, and WhatsApp threads become reply drafts in the customer’s language. Every feature is switched on per company, and every workflow still runs by hand with AI off.
The systems themselves, and how we built them, are in How we built our own ERP, CRM, WMS, EAM and HR. Here’s what Claude does in each:
| System | Claude reads | Claude drafts | Claude suggests | Who decides |
|---|---|---|---|---|
| ERP | Supplier invoices, expense receipts, customer orders, supplier emails, bank lines | Bills, claims, sales orders, collection reminders, month-end journals | Bank matches, purchase requests, PO updates | Finance, purchasing and sales |
| CRM | WhatsApp and email threads, transfer screenshots, visit notes | Replies, quotations, visit reports, follow-ups | Deal field updates, the queue for each new message, likely duplicates | The rep or agent who sends |
| WMS | Delivery orders, packing lists, carton and damage photos | Expected receipt lines, supplier and carrier claims, shift handovers | Where to recount, slotting moves | Receiving staff and the supervisor |
| EAM | Manuals, certificates, service reports, nameplate photos | Asset records, maintenance tasks, work order history, contractor reminders | Failure codes, priorities, duplicates | The supervisor and the engineer |
| HR | CVs, the staff handbook, documents staff upload | Screening rubrics, interview kits, candidate messages, offer letters | Evidence per criterion, which fixed rules turn into a band | The hiring manager, the recruiter and HR |
Every row runs on the same five building blocks, each built once:
- Document intake: files and photos become checked drafts.
- Answers that cite the page: answers only from your own documents.
- Questions about your data: figures from defined reports, with the filters shown.
- Message drafts: replies in the customer’s language, sent by a person.
- Scheduled jobs: lists and drafts prepared on a schedule, for someone to act on.
1. Code decides where each draft goes, and a person decides what happens to it
No AI output changes the ledger, the stock, an employee’s record or a customer’s inbox until a person confirms it. Two features are the exception, and both stay off until a company switches them on: the WhatsApp assistant (section 5) and message templates HR has signed off for routine candidate messages.
The checks that route a draft are written in code and don’t depend on the model. A model can be confident and wrong, so each draft is tested against rules a wrong reading would fail. For a supplier invoice in the ERP:
- Arithmetic: the lines add up to the total.
- Tax: the rate is valid for the invoice date.
- Duplicates: the supplier hasn’t sent the same invoice before.
- Order and receipt: the price matches the purchase order and the quantity matches the goods receipt, within the tolerance finance sets.
- Bank account: it matches the one on the supplier record.
When every check passes, the draft bill waits for finance with the checks listed. When one fails, it goes to a review queue with the scan beside it and the failed check named. In the ERP demo, a bill for 400 sheets against a receipt of 380 stops there.
Every draft leaves a record. The system stores the source, the version of the instructions Claude worked from, what it proposed, which checks passed or failed, who decided and when. Claude’s confidence is stored for the reviewer to see, and it never picks the route. When a person edits a draft, the edit is kept too, which shows the fields Claude gets wrong.
Claude works with the permissions of the person who asked. A sales rep gets a customer’s invoices only if the rep could open them on screen. Approval limits stay the same for AI drafts: someone who has just changed a supplier’s bank account can’t sign off that supplier’s next bill, whoever or whatever prepared it.
Each feature is switched on per company and can be switched off at any time. With AI off, invoices are keyed in and replies are typed, and every step works as it did before.
2. Supplier invoices, delivery orders, certificates and CVs are read into drafts
Every document follows one pipeline, whichever system it lands in:
- Intake: documents arrive at an email address, by upload or from a scanner folder.
- Split and classify: a PDF holding an invoice and a delivery order is split in two, and each part is labelled by type.
- Read: Claude reads the fields and line items for that type, and each value is highlighted on the scan.
- Check: code runs the checks for that type.
- Route: the draft waits for confirmation, or goes to the review queue with the failed check.
The documents each system reads:
| Document | System | Becomes | Confirmed by |
|---|---|---|---|
| Supplier invoice | ERP | A draft bill matched to the order and goods receipt | Finance |
| Expense receipt | ERP | A claim draft with vendor, date, amount and tax | The manager |
| Customer purchase order | ERP | A sales order draft with the customer’s item codes mapped | Sales |
| Supplier email | ERP | Proposed PO updates: confirmed dates, price changes, partial shipments | Purchasing |
| Transfer screenshot | CRM | A draft receipt against the open invoice | Finance, against the bank statement |
| Delivery order or packing list | WMS | Expected lines, checked against the purchase order | Receiving staff, by scanning the goods |
| Carton or damage photo | WMS | SKU, batch and expiry, or a damage grade with a supplier claim draft | The operator or the supervisor |
| Certificate or service report | EAM | An entry in the asset’s history with the next due date | The supervisor |
| Nameplate photo | EAM | An asset record draft | The maintenance team |
| CV | HR | A standard candidate profile | The recruiter |
| Document an employee uploads | HR | A proposed change to their record | HR |
A changed bank account always goes to a person. If the account on an invoice differs from the supplier record, the draft stops in the review queue even when every other check passes.
Corrections become hints for each supplier, and no model is retrained. When finance corrects a field, the system stores a hint for that supplier, such as how it writes dates and numbers, and Claude gets the hint with the supplier’s next invoice. “Rp 1.250.000,00” is read as one million two hundred and fifty thousand rupiah, and a format rule confirms it.
At the warehouse dock, the scan still decides. Claude reads the supplier’s delivery order from a photo and pre-fills the expected quantities. Differences from the purchase order are flagged before anything is put away, the goods are still confirmed by scanning, and accepting a difference needs an approver. An expiry date read from a carton photo is always shown to the operator to confirm before a label prints.
In the EAM, a certificate is checked against the asset before it’s filed. Claude reads the report number, serial number, inspection date, result and findings. Code checks that the serial matches the asset, and that the next due date equals the inspection date plus the validity period for that type of inspection, held in a settings table. Once the supervisor confirms, the next due date sets the alert for the next inspection.
A payment screenshot starts a draft receipt, and the bank statement confirms it. Customers send screenshots of bank transfers and QR payments on WhatsApp. The CRM reads the amount, date and reference, matches them to an open invoice and prepares a draft receipt for finance. A screenshot can be edited, so the receipt waits for the statement.
3. Answers come only from your own documents, with the page linked
Claude answers from the company’s own documents and links each answer to the page it came from. Documents are indexed with their access rights, so a question searches only what the person asking may open. When the passages don’t hold the answer, Claude says so and passes the question to a person. The test questions include ones the documents can’t answer, because an assistant that fills gaps with something plausible teaches people to stop checking it.
Where the answers come from in each system:
- EAM: equipment manuals, SOPs and drawings, indexed per asset and per model.
- HR: the current staff handbook, plus each employee’s own record.
- WMS: the warehouse’s own standard operating procedures (SOPs), asked on the handheld in English or Bahasa.
- CRM: the company’s own catalogue, for questions on specs, packages and policies.
- ERP: work instructions for manufacturing.
In the EAM, numbers and safety steps come back word for word. A technician who asks about the radiator hose clamps on the demo genset gets “Tighten hose clamps to 5 N·m. Do not overtighten.” with page 84 to open. Torque values, pressures, clearances, intervals and isolation steps are never reworded or converted by the model; when a unit needs converting, code does it and shows the result beside the quote. Search is scoped to the asset in front of the technician, and a passage from another model’s manual is flagged as one.
The same index drafts preventive maintenance plans. Claude finds the service interval tables in a manual and drafts the tasks and checklists, each linked to its page. A maintenance engineer signs off the plan and adjusts it to how the equipment runs on that site.
In HR, the handbook answers the policy and the record answers the person. Policy questions get the handbook version in effect that day, with the page. “How much leave do I have left?” gets that employee’s own record, through their own permissions. Questions about harassment, whistleblowing or health go to HR or the formal channel without an AI answer.
An answer is only as current as the files behind it, so a revised SOP or handbook has to be uploaded before the answers change.
4. Questions about figures are answered from defined views, with the filters shown
Claude answers questions about figures by querying a defined set of read-only views through tools, with the asker’s permissions applied by role and by company. It never writes free queries against the live database.
Every answer shows the figure, the filters and the period, with links to the records behind it. A manager sees at once whether “last quarter” meant the calendar or the financial quarter. A question the views can’t answer gets “that data isn’t available” instead of a guess.
One question per system:
- CRM: “Which outlets in Tampines haven’t ordered in 30 days?” returns the list, with the filters used and a link to each customer.
- EAM: “Which genset failed most this year?” returns the asset, the count and the work orders.
- WMS: “Which orders could miss today’s carrier cut-off?” returns the orders, with the timing calculated in code.
- ERP: a month-on-month change in profit and loss is broken down by price, volume and mix in code, and Claude writes it up.
- HR: headcount, turnover, leave liability and time to hire by department, as totals only, for people with access. Nothing profiles one employee.
An action that comes out of an answer is a draft. If an answer leads to reminders for a list of customers or a purchase request, Claude prepares the drafts and the person who asked sends or submits them.
The views limit what can be asked. Every figure in an answer has a written definition behind it, so two managers asking the same question get the same number.
5. Message drafts follow the customer’s language and read prices from the ERP
The CRM reads each conversation so the rep doesn’t retype it. For each WhatsApp or email thread, Claude writes a short summary on the deal and proposes field updates. In the demo, a supermarket chain writes “120 cases same as last month, boleh hantar Jumaat?”, and the summary reads as a repeat order of 120 cases for delivery on Friday. The rep accepts each proposed update with a click.
Reply drafts use live data, and prices never come from the model’s memory. Drafts follow the customer’s language and tone: English, Malay, Indonesian or Chinese, and a mix when the customer mixes them. Prices, stock and order status come from the ERP at the moment of drafting. When the data isn’t there, the draft says so to the agent instead of filling the gap. The agent reads, edits and sends.
The same inbox produces more drafts:
- Quotations: what was agreed in the chat, with ERP prices, stock and the credit limit checked. A discount beyond the rep’s limit goes to the sales manager.
- Follow-ups: a quotation with no reply after the days you set gets a follow-up draft for the rep to send.
- Visit reports: typed or dictated notes become the report in your industry’s visit form, with dated tasks for the rep to confirm. Dictation uses the phone’s own speech-to-text.
- Routing: each incoming message is tagged as a new lead, a repeat order, a payment confirmation, a complaint or a price question, and sent to the right person or queue.
The WhatsApp assistant replies by itself, so it stays off until a company switches it on. It answers questions about that company’s own products, stock and orders, on the topics the company allows, in the customer’s language. It says it’s automated and how to reach a person. Complaints and anything it’s unsure of go to a person with the full transcript.
Reminders and candidate messages are drafts too. Collection reminders are drafted from receivables ageing in the customer’s language, and your team sends them. On WhatsApp, a message to a customer who hasn’t written in the last 24 hours goes out as a template Meta has approved, and Meta charges for each one (current rates for Malaysia and Singapore). In HR, invitations, reschedules and respectful rejections are drafted for email or WhatsApp, and HR sends them or signs off the templates.
6. Scheduled jobs prepare lists and drafts, and none of them posts or sends
Code finds what needs attention, Claude writes it up, and the drafts wait in a queue. The scheduled jobs in each system:
- ERP month-end close: receipts without a bill, unposted accruals and unreconciled bank lines, listed as tasks with draft journals for finance to post.
- ERP reorder suggestions: a statistical forecast, lead times and minimum orders produce purchase request drafts, with the reason for each written out.
- CRM pipeline digest: deals with no next step or stuck at a stage, and customers past their usual order cycle, written up weekly for each manager.
- WMS watchlists: stock close to expiry each morning, and backlog, late orders and open counts at the end of each shift for the next supervisor.
- EAM reliability digest: repeat failures, overdue work, preventive maintenance compliance and certificates due soon, calculated in code and written up every week.
- EAM contractor follow-ups: late service reports and missing certificates get reminder drafts for your team to send.
- HR reminders: probation ends and contract renewals, listed each month by rules, with reminder drafts for managers.
The count variance job shows where code stops and Claude starts. When a cycle count finds fewer units than expected, code gathers the bin’s recent movements. Claude reads that evidence and lists the likely causes and the bins to recount first. In the WMS demo, item TP-330 counts 2 short and the recount finds both units in the next bin, so no adjustment is needed. When a recount doesn’t find them, the adjustment still needs a reason and an approver.
Code decides what goes into a digest: which deals count as stuck and which assets fail too often come from the records, by rule. Claude turns the result into a short summary with a link to every record it mentions.
7. Hiring adds a rubric first, evidence per criterion and no rejection by AI
Screening is where an AI mistake can cost a person a job, so it runs in four fixed steps:
- Rubric first: Claude drafts the must-haves and nice-to-haves from the job description, each with what counts as evidence. The hiring manager edits and signs off the rubric before any CV is screened, and every version is stored.
- Evidence per criterion: Claude marks each criterion as met, partly met, no information or not met, with a short quote from the CV. “No information” is kept apart from “not met”, so the recruiter knows what to ask.
- A band by fixed rules: code turns the marks into a band (strong, partial or weak) by rules anyone can read, and the model gives no score of its own.
- People decide: every applicant stays visible, sorted with the reasons shown. HR or the hiring manager makes every decision, rejections included, and Claude never moves or rejects anyone.
Protected details never reach the screening step. Photo, age, religion and marital status are removed from the profile Claude screens.
Every decision is logged with the rubric version and the evidence. A monthly screening review shows where recruiters disagreed with the AI band, so HR can adjust the rubric. Each application form carries consent and a privacy notice that says how AI is used.
The law in each country points the same way. Here’s where it stands, in brief, from the sources linked below as checked on 17 October 2026. It isn’t legal advice, so confirm the details with your own counsel:
- Singapore: Parliament passed the Workplace Fairness Act in two bills, on 8 January and 4 November 2025, and the Ministry of Manpower aims for it to take effect in end-2027 (MOM, 4 November 2025). The Tripartite Guidelines on Fair Employment Practices already ask employers to select on merit, and the PDPA covers candidates’ personal data (TAFEP and PDPC advisory guidelines, 23 May 2024).
- Malaysia: the Personal Data Protection Act 2010, as amended in 2024, has required a data protection officer and breach notification since 1 June 2025 (Act A1727, 17 October 2024 and its commencement order, 24 December 2024). Section 69F of the Employment Act 1955, which covers Peninsular Malaysia, lets the Director General of Labour decide discrimination disputes between employers and employees (Employment Act 1955 as at 1 January 2023).
- Indonesia: the Personal Data Protection Law (UU 27/2022), in force since October 2022 and binding on every organisation since October 2024, lets a person object to a decision based only on automated processing, profiling included, that has legal or significant effects on them (article 10). The Manpower Law (UU 13/2003) gives everyone able to work an equal chance at a job, without discrimination (article 5).
8. Exact numbers, routes and safety steps stay with code and people
Claude writes about numbers, and code produces them. A language model can return a figure that looks right and isn’t, so wherever a number has to be exact, it comes from code or a statistical model, and Claude explains or summarises it:
- Three-way match: code matches the invoice, the purchase order and the goods receipt within the tolerances finance sets.
- Bank reconciliation: rules match most bank lines by amount, date and reference. Claude proposes matches only for the messy ones left over, such as split and partial payments, and finance confirms them.
- Pick routes and slotting: the system sequences each wave into a short walking route and ranks items by pick velocity. Claude writes the shift’s move list with a reason per move, for a supervisor to sign off.
- Forecasts: reorder points, repeat orders and the headcount per warehouse shift come from statistical models, and Claude writes what drives them.
- Depreciation and repair-or-replace figures: book value, cost trends and downtime are worked out in code, and Claude writes the case around them for management.
- Permits to work and isolation: these stay with people. Claude never decides a permit or an isolation step, and it can’t change a maintenance interval without an engineer.
- Tax: Claude can explain what the system did with a tax code, and it gives no tax advice.
9. Claude runs in our cloud, in your own cloud account, or not at all
Claude is a cloud service, so a company that runs our systems on its own servers chooses where Claude runs, or whether it runs at all. The AI features have three modes:
| Mode | Where Claude runs | What it receives |
|---|---|---|
| Our cloud | Anthropic’s API, under Anthropic’s commercial terms | The documents and data each task needs, with details it doesn’t need masked |
| On-premise, AI through your cloud | Your own Amazon Bedrock or Google Cloud Vertex AI account, in a region you choose | The same, sent to your own cloud account only |
| On-premise, AI off | Nowhere | Nothing: every feature runs by hand |
Anthropic’s commercial terms answer the training question plainly: “Anthropic may not train models on Customer Content from Services” (Anthropic Commercial Terms of Service, effective 17 June 2025, checked 17 October 2026). That covers the first mode. In the second, your cloud provider’s terms apply, and not every region offers Claude, so check before you pick one.
Details a task doesn’t need are masked before anything is sent. Identity card numbers (NRIC, MyKad and NIK), bank account numbers and health data are masked wherever Claude doesn’t need them: an invoice check needs the bank account, and a leave question doesn’t.
Each AI feature is measured on the customer’s own documents before it goes live. The plan runs over four weeks, like our AI integration sprint:
- Week 1: we sit with the people who do the work, such as the accounts payable clerk or the recruiter, and collect their real documents or questions. With them, we write down the correct value for every field and the expected answer for every question. That list is the “golden set”.
- Weeks 2–3: the feature runs in “shadow mode”: Claude drafts, people keep working the old way, and we compare the two.
- Week 4: one document type or flow switches over, and you get the evaluation script and admin access.
- Every week after: the corrections your team makes are reviewed, and the next document type follows once the first is stable.
The golden set runs again whenever the instructions or the model change, because a change that fixes one field can break another. Corrections made in daily use add new cases to it.
10. Takeaways
AI sits in the draft, and the decision stays with a person or a rule someone wrote. Every feature in this post ends in a queue, a draft or a list, apart from the WhatsApp assistant and the message templates a company switches on.
Checks in code carry more of the trust than the model does. A bank account that has to match, a serial number that has to match the asset and lines that have to add up let finance confirm a passing draft quickly, and send a failing one to review with its reason.
One pipeline per kind of work keeps the five systems consistent. A delivery order and a supplier invoice go through the same intake, checks and review screen, so a finance clerk and a warehouse admin learn the same habit.
Hiring has the most rules: a rubric signed off before screening, evidence per criterion, a band by fixed rules and no rejection by AI.
New document types and questions join the same way: measured on your own documents, run beside the old process, then switched over one at a time.
Frequently asked questions
Does Claude post entries or send messages by itself?
No. Claude prepares drafts, such as a bill, a sales order or a reply, and a person confirms, edits or rejects each one. The exceptions are the WhatsApp assistant, which answers customers’ questions about your own products, stock and orders, and message templates HR has signed off. Both stay off until you switch them on, and every exchange is recorded.
Does Anthropic train its models on our documents?
Not on our cloud. Documents go to Claude under Anthropic’s commercial terms, which say Anthropic may not train models on customer content from its services. On-premise with AI, Claude runs from your own Amazon Bedrock or Google Cloud Vertex AI account under that provider’s terms. Personal details a task doesn’t need, such as identity card numbers, are masked before anything is sent.
How do you know Claude reads our documents correctly?
We measure it on your own documents before go-live. In week 1 we collect real documents and agree the correct value for each field with your team. In weeks 2 and 3 the feature runs in shadow mode beside the existing process. In week 4 one document type switches over, and the corrections your team makes are reviewed every week after that.
Which languages does it work in?
English, Bahasa Indonesia, Bahasa Melayu and Chinese, including messages that mix them. Reply drafts follow the customer’s language, and a question in Bahasa about an English manual gets the English passage quoted with its page.