How-to guide
How do I automate invoices and receipts in Malaysia?
By Pali (Wan Muhamad Fadzli), product builder, Penang.
Last updated
To automate invoices and receipts in Malaysia, make one system create an invoice from an approved sale, send it, record payment, issue the receipt, and keep every status linked to the customer. Add MyInvois only where it applies, with failures sent to staff. Direct LHDN integration uses the existing RM 750 add-on; other connections are priced by scope.
What are the steps?
- 01Choose one billing flowStart with one repeated flow, such as issuing an invoice after an approved order and a receipt after confirmed payment.
- 02Define the source recordChoose the approved quotation, order, booking or subscription record that supplies the customer, line items, tax treatment and payment terms.
- 03Set document and approval rulesDefine who may approve, issue, correct or cancel each document, and which cases must stop for staff review.
- 04Connect payment statusUpdate the invoice only from a reliable payment source, then issue the receipt after payment is confirmed rather than from a message or screenshot.
- 05Add MyInvois where requiredUse the Portal, built-in accounting support, middleware or a direct API connection that fits your volume and existing software.
- 06Test exceptions and launchTest duplicates, failed submissions, partial payments, corrections and missing customer data before launching one flow to a controlled group.
Which invoice and receipt flow should I automate first?
Automate one flow with a clear source record, approval point and payment event. A practical first flow starts when staff approve an order, creates and sends the invoice, waits for a confirmed payment, then issues the receipt and closes the record.
- Invoice after an approved quotation or order
- Recurring invoice from an active subscription record
- Receipt after a matched online payment
- Staff alert when a payment cannot be matched
- MyInvois submission and status update where it applies
Do not begin with every document type, branch and exception. One controlled flow makes duplicate documents, missing data and unclear ownership easier to find before they affect more customers.
What information does the workflow need?
The workflow needs one trusted source for commercial details and a separate reliable event for payment. It should never infer approval or payment from an informal message.
| Information | Why it matters | Example source |
|---|---|---|
| Customer and billing details | Puts the document against the correct customer record | Approved customer or order record |
| Line items and tax treatment | Keeps the invoice consistent with the approved sale | Quotation, order or subscription |
| Approval and document status | Prevents drafts or cancelled sales from being issued | Approval action and audit log |
| Payment reference and amount | Matches payment to the right open invoice | Payment gateway or reconciled bank record |
| MyInvois status where applicable | Shows whether submission was accepted or needs attention | Portal, middleware or API response |
Keep a stable identifier from the sale through the invoice, payment, receipt and any MyInvois submission. That link is what makes corrections and audits manageable.
How should the invoice and receipt workflow run?
- Read the approved source record and check that required billing data is complete.
- Create one invoice with a unique reference and save its status before sending it.
- Send the invoice through the agreed channel and record the delivery attempt.
- Listen for a reliable payment event and match it to the open invoice.
- Issue the receipt only after payment is confirmed, then update the customer record.
- Submit the e-invoice through the chosen MyInvois route where it applies and store the result.
- Send missing data, rejection, duplicate and unmatched payment cases to a named staff queue.
Staff should be able to see the current status and retry a failed action without creating a second document. Corrections and cancellations also need an explicit path rather than manual deletion.
Which MyInvois route fits the workflow?
LHDN provides the MyInvois Portal and an API. In practice, the API may be reached through built-in accounting software, a middleware provider or a direct connection from a custom system.
| Route | Suitable starting point | Automation boundary |
|---|---|---|
| MyInvois Portal | Lower volume or no connected system | Staff enter one invoice or upload a spreadsheet batch |
| Built-in support or middleware | Existing software already supported by a provider | The provider handles the connection and returns statuses |
| Direct API integration | A custom system needs submission inside its own workflow | Your system submits, stores the response and surfaces exceptions |
Use built-in support when it already fits. Read the LHDN e-invoice integration guide for current config-backed phase information, exemptions and a fuller comparison of these routes. This is general operational guidance, not tax advice, so confirm your position with LHDN or your tax agent.
How do I test invoice automation before launch?
- Create two attempts from the same approved order and confirm only one invoice is issued.
- Test missing customer data, rejected submission and an unavailable integration.
- Test full, partial, unmatched and reversed payments.
- Confirm a receipt cannot be issued before a reliable payment event.
- Check that staff can correct an error without deleting the audit trail.
- Confirm each role sees only the records and actions it needs.
- Reconcile the document totals and statuses against the source system.
Launch one flow to a controlled group, review every exception and widen it only after staff can explain the status of each document.
How do I start an invoice automation project?
Map the source record, approvals, documents, payment events and exceptions in the project calculator. Then use the Discovery Sprint to confirm the data, MyInvois route, access rules and failure handling. See how AI and business automation projects work.
If invoicing is part of a broader operations system, read the ERP cost guide before deciding whether to connect existing tools or build the workflow into one system.

