This post is also available in: Bahasa Melayu
In May 2023, LHDN announced that e-Invoicing will be implemented in Malaysia from 2024.
Implementation of e-Invoicing is MANDATORY for anyone who conducts commercial activities in Malaysia.
This means ALL businesses must implement and comply with e-Invoicing requirements.
What does e-Invoicing mean?
e-Invoicing requires businesses to submit invoices to LHDN for validation before sending to customer.
The important point to note here is that all invoices MUST be submitted to LHDN for validation before you send it to your customer.
Failure to submit invoices to LHDN could incur penalties.
What is an e-Invoice?
The “e” in e-Invoicing means that the invoice details need to be submitted electronically, in plain text format and will contain all the relevant information in a pre-defined structure.
The file format used for submitting invoices will be either XML or JSON.
What is NOT an e-invoice?
It is not an image, PDF or Word file.
This also includes Excel files, however, for manual submission of multiple invoices on MyInvois portal, the template that LHDN provides could be an Excel csv or tab delimited file.
The submission and validation process
Submission
You can submit your invoices in one of two ways:
Manually
You can submit the invoices manually through LHDN’s MyInvois portal either individually or in bulk using a template that will be provided.
This method is suitable if you only issue a few invoices in a month or year.
Keep in mind that there would be 51 required and 12 optional fields to provide when submitting through the portal.
Through an application
You can also submit your invoice through an accounting application such as ABSS Accounting, ABSS Premier or Financio Accounting.
This method is seamless as the accounting application will create the necessary XML or JSON format with the required details and submit it to LHDN using the Application Programming Interface (API) provided.
An internet connection will be required to complete this process.
Validation
After submission and successful validation, LHDN will provide a Unique Identification Number (UIN) for each invoice.
This UIN will need to be embedded on the invoice as a QR code before you send it to your customer.
If you are submitting manually through the MyInvois portal, LHDN has stated that it will provide the invoice in PDF format with the QR code embedded, which you can then forward to your customer.
What is XML and JSON?
Both XML and JSON are plain text files that follow a specific structure which can be read by humans, as well as understood by computer systems.
More importantly, XML and JSON formats are widely used for exchanging information between applications.
Both these formats enable sending of information through the internet from one application, such as your accounting system, to another application, which in this case would be LHDN’s e-Invoice portal.
What is a plain text file?
We may already be familiar with plain text files that are used with spreadsheets and other applications.
Comma-Separated Values or CSV files are used with spreadsheets and databases to store and exchange information.
In ABSS Accounting and ABSS Premier, we use either CSV or Tab delimited files to export and import data.
What is XML?
XML, or eXtensible Markup Language, is a file that contains structured information which can be read and understood by both humans and computers.
An example of an XML file would look like this:
XML format
<?xml version="1.0" encoding="UTF-8"?>
<invoice>
<header>
<invoice_number>INV1234</invoice_number>
<issue_date>2023-01-15</issue_date>
<due_date>2023-02-15</due_date>
</header>
<customer>
<name>Air Jernih Sdn Bhd</name>
<address>
<street>123 Jalan Sehala</street>
<city>Bandar Baru</city>
</address>
</customer>
<items>
<item>
<product_id>1001</product_id>
<description>Acme water dispenser</description>
<quantity>2</quantity>
<unit_price>800.00</unit_price>
<total>1600.00</total>
</item>
</items>
<total>1600.00</total>
</invoice>
What is JSON?
Similar to XML, JSON is also a structured format that can be read both by humans as well as computers.
However, it differs in the formatting.
A JSON file would look like this:
JSON format
{
"invoice_number": "INV-1234",
"issue_date": "2023-01-15",
"due_date": "2023-02-15",
"customer": {
"name": "Air Jernih Sdn Bhd",
"address": "123 Main St",
"city": "Bandar Baru",
},
"items": [
{
"product_id": "1001",
"description": "Acme water dispenser",
"quantity": 2,
"unit_price": 800.00,
"total": 1600.00
},
],
}
It is possible to manually create these files, but it is not advisable as it may potentially have errors which could lead to LHDN rejecting it during validation.
In any case, XML or JSON formats can only be submitted to LHDN using the API, and that is done using an application such as ABSS Accounting, ABSS Premier or Financio Accounting.
ABSS Connect
e-Invoice compliant accounting solutions
Need more information?
This post is also available in: Bahasa Melayu