E-Invoice Malaysia: Common Mistakes Businesses Make During Setup

E-invoicing in Malaysia is no longer optional. LHDN has made that clear. But "mandatory" and "easy to set up" are two very different things, and a lot of businesses are finding that out the hard way.

We have helped dozens of companies get their e-invoice systems running over the past year, and the same mistakes keep showing up. Some are minor annoyances that delay your go-live by a few days. Others are the kind that cause rejected invoices, compliance flags, or payment disruptions that take weeks to sort out.

This article covers the mistakes we see most often. If you are in the middle of setting up e-invoicing, or if your system is live but you keep running into errors, chances are one of these is the reason.

Mistake 1: TIN and SSM Details That Do Not Match

This is the number one cause of rejected e-invoices, and it is entirely preventable. The MyInvois system validates your Tax Identification Number (TIN) and company registration details against LHDN's records every time you submit an invoice. If there is any mismatch between what your system sends and what LHDN has on file, the invoice gets rejected.

The mismatches are usually small. A company name registered with SSM as "ABC Trading Sdn Bhd" but entered in your system as "ABC Trading Sdn. Bhd." (with the dots). An old TIN that was updated when you changed from sole proprietorship to Sdn Bhd. A branch address that does not match LHDN's records because nobody updated them after you moved offices three years ago.

Before you go live, pull your records from LHDN and SSM and compare them character by character against what your invoicing system has. It is tedious work, but it saves you from a stream of rejection notices on day one.

Mistake 2: Forgetting About Self-Billed Invoices

Most businesses focus their e-invoice setup on outgoing invoices to customers. That makes sense because it is the most visible part. But LHDN's e-invoice requirements also cover self-billed invoices, and this is where a lot of businesses get caught off guard.

Self-billed invoices apply when your company is the one issuing the invoice on behalf of the supplier. Common scenarios include payments to foreign suppliers and vendors without a local presence, agent commissions, payments to individuals who are not registered for e-invoicing, and certain types of rental or royalty payments.

If your setup only handles standard outgoing invoices and ignores self-billing, you will be non-compliant on those transactions. Make sure your software and your accounts team know which transactions require self-billing and that the system is configured to handle them.

Mistake 3: Treating E-Invoice as "Just Another Report"

Some businesses approach e-invoicing as if it were another compliance report. They process invoices normally throughout the month and then batch-submit them to MyInvois at month-end or whenever someone remembers to do it.

That is not how it works. LHDN expects e-invoices to be submitted and validated in near-real-time. The system is designed for continuous submission, not batch processing. When you issue an invoice, it should go to MyInvois within the same day or as close to the transaction time as possible. Batch-submitting a month's worth of invoices at once can trigger validation errors, processing delays, and attention from LHDN that you do not want.

If your current software does not support automated, real-time submission, that is a problem you need to solve before it becomes a compliance issue. Platforms like SAP Business One handle this natively, submitting each invoice to MyInvois as part of the normal invoicing workflow without any extra steps from your team.

Mistake 4: Not Testing With the Sandbox First

LHDN provides a sandbox (testing) environment for MyInvois. It exists so that you can test your integration, submit sample invoices, and confirm everything validates correctly before you go live with real transactions. A surprising number of businesses skip this step entirely. They configure their system, flip the switch, and start submitting real invoices on day one.

When something goes wrong in the sandbox, it is a learning experience. When something goes wrong with real invoices, it is a compliance problem. Use the sandbox. Run at least 20 to 30 test transactions covering your different invoice types (standard invoices, credit notes, debit notes, self-billed invoices). Confirm the UIN returns correctly. Verify the QR codes work. Then go live.

Mistake 5: Ignoring Credit Notes and Debit Notes

Your e-invoice setup is not complete just because your standard invoices are submitting correctly. Credit notes and debit notes also need to go through MyInvois, and they have their own validation requirements. A credit note must reference the original invoice's UIN. If you issue a credit note against an invoice that was not properly e-invoiced, the credit note will get rejected.

We have seen this create a mess for businesses that started issuing regular invoices through MyInvois but continued processing credit notes through their old system. The two sides stop matching, reconciliation becomes a nightmare, and your LHDN records do not reflect your actual transactions.

When you set up e-invoicing, make sure every document type that affects your tax position goes through the same system. If you have already written about common e-invoice pitfalls, our earlier article on e-invoice mistakes covers additional ground worth reading.

Mistake 6: No Archiving Strategy

LHDN requires businesses to retain e-invoice records for seven years. That includes the original e-invoice XML, the UIN, the validation response, and any associated credit or debit notes. Many businesses set up the submission part and completely forget about archiving.

If your system does not automatically store validated e-invoices in a format you can retrieve years later, you are building a compliance gap that will only surface when you least want it to. During an audit, LHDN can request any e-invoice from the past seven years, and "we cannot find it" is not an acceptable answer.

Check whether your e-invoice solution includes built-in archiving. If it does not, you need a separate process to export and store your e-invoice records securely. Cloud-based ERP systems generally handle this automatically, which is one less thing to worry about.

Mistake 7: Assuming Your Accounting Software Handles Everything

This is a big one. A lot of business owners assume that because their accounting software says "e-invoice supported," the setup is done. In reality, "supported" can mean very different things depending on the vendor.

For some platforms, it means native API integration that submits invoices automatically as part of your normal workflow. For others, it means there is an add-on you need to purchase separately, install, configure, and maintain. And for a few, it means the software can export invoices in a format that you then manually upload to MyInvois through the web portal.

These are not the same thing. A manual upload process might technically be "supported," but it does not scale when you are issuing 500 invoices a month. Ask your vendor specifically how the e-invoice submission works, whether it is real-time or batch, and whether credit notes, debit notes, and self-billed invoices are all covered.

For a full guide on how e-invoicing works in Malaysia, our beginner's guide to e-invoicing covers the fundamentals, and our complete e-invoice overview goes deeper into the technical requirements.

Mistake 8: Not Training Your Team

You can have the best e-invoice integration in the world, but if your accounts team does not understand what changed, they will find ways to break it. Common issues include staff creating invoices outside the system (in Word or Excel) and then trying to submit them manually, editing invoices after they have been validated without issuing a proper credit note, and not understanding that voided invoices also need to be cancelled in MyInvois.

Spend time training your finance and accounts team on the new workflow. Make sure they understand that every invoice, credit note, and cancellation must go through the system. Old habits from the pre-e-invoice era will cause problems if they carry over.

How to Avoid All of This

Most of these mistakes come down to one thing: treating e-invoice setup as a last-minute checkbox instead of a proper implementation project. If you approach it with the same seriousness as any other system change (plan, test, train, go live), the actual process is manageable.

Businesses running SAP Business One or SAP S/4HANA Cloud through Aspert Innovations get e-invoice setup as part of the implementation. The MyInvois integration is configured during the project, tested in the sandbox environment, and goes live alongside the rest of the system. Archiving, self-billing, credit notes, and all document types are covered from day one.

For businesses already running a different e-invoicing solution that is not working as expected, we can also assess your current setup and recommend whether to fix what you have or move to something more reliable.

Running into e-invoice errors or still setting up? We can review your current configuration, identify what is causing rejections, and get you to a clean, compliant setup. No charge for the initial assessment.

Get E-Invoice Help