If you're a Malaysian business owner trying to figure out e-invoicing, you're in the right place. This guide walks you through two ways to submit an e-Invoice to LHDN's MyInvois system — the free manual portal, or the faster route using EasyInvois.
Under LHDN's e-invoicing mandate, businesses in Malaysia are required to issue e-Invoices through the MyInvois system. Unlike a regular PDF invoice you email to a client, an e-Invoice must be submitted to LHDN first, validated in real time, and only then shared with your buyer — complete with a QR code proving it's legitimate.
There are two main ways to do this:
- Via the MyInvois Portal — LHDN's free web portal at myinvois.hasil.gov.my. Good for occasional invoices, but every field must be filled in manually.
- Via EasyInvois — You fill a simple form or upload a CSV, and EasyInvois handles all the technical work (formatting, digital signing, submission, and status tracking) automatically.
Read both methods below and decide which suits your business.
Method 1: Submit via the MyInvois Portal (Manual)
The MyInvois portal is free and provided directly by LHDN. Here is how to use it step by step.
- 1
Log in to the MyInvois Portal
Go to myinvois.hasil.gov.my and sign in using your MyTax credentials (the same username and password you use for LHDN's MyTax portal). If you don't have a MyTax account yet, register at mytax.hasil.gov.my first.
- 2
Click “Create New e-Invoice”
From the dashboard, look for the option to create a new document. You will be asked to select the document type — for a standard sale, choose Invoice.
- 3
Fill in the supplier details
Enter your business information: your TIN (Tax Identification Number), business registration number, address, and contact details. This section is usually pre-filled once your MyTax profile is complete.
- 4
Fill in the buyer details
For B2B transactions, enter your buyer's TIN and business registration number. Note that individual TINs now use the “IG” prefix (e.g. IG12345678901). For B2C transactions (selling to individual consumers), enter the buyer's IC (MyKad) or passport number. You do not need to obtain a TIN from your buyer for B2C — their IC or passport number is sufficient. For foreign buyers who do not have an IRBM-issued TIN, use the generic TIN EI00000000020. Note: the generic TIN EI00000000010 is reserved for consolidated e-Invoices only (where you batch multiple B2C transactions into one submission) — it cannot be used for individual B2C e-Invoice submissions.
- 5
Enter invoice details and line items
Fill in the Invoice Number, Invoice Date and Time, and Currency Code (e.g., MYR). Then add your line items: Item Description, Quantity, Unit Price, Tax Type (e.g., SST or service tax), Tax Rate, and Tax Amount. The portal will calculate the subtotal and totals for you.
- 6
Review and submit
Double-check all the details. When you click Submit, the portal formats your invoice into the required technical format (UBL 2.1), applies a digital signature on your behalf, and sends it to LHDN.
- 7
Wait for LHDN to validate (generally less than 2 seconds)
LHDN checks your invoice almost instantly. Generally less than 2 seconds, you will get a result — either Validated (success) or Invalid (there is an error that needs fixing). If validated, LHDN assigns an IRBM Unique Identifier Number and embeds a QR code in your invoice.
- 8
Download and share with your buyer
Download the validated invoice (which now includes the QR code) and send it to your buyer. The portal does not automatically notify your buyer — you need to share it yourself via email or WhatsApp.
Method 2: Submit via EasyInvois (Automated)
EasyInvois handles all the technical steps for you — UBL formatting, digital signing, submission to LHDN, and real-time status tracking. Here is how it works:
- 1
Log in to your EasyInvois account
Sign in at EasyInvois. If you are new, you can start with a free plan — no credit card required.
- 2
Create a new invoice or import via CSV
You have two options: fill in the invoice form directly in EasyInvois (similar to filling a normal invoice in your accounting software), or upload a CSV file if you have multiple invoices to submit at once. The form uses plain field names — no technical jargon.
- 3
Fill in buyer and item details
Enter your buyer's name, TIN or IC number, and the items or services you are invoicing for. EasyInvois guides you through every required field and flags anything missing before you submit — so you don't get rejected by LHDN after the fact.
- 4
Click Submit
EasyInvois converts your data into the correct UBL 2.1 XML or JSON format, applies a digital signature, and submits it directly to LHDN — all in the background. You do not need to know anything about XML or digital certificates.
- 5
EasyInvois tracks the status for you
Within seconds, you will see whether your invoice is Validated or if there was an error. If LHDN returns an error code, EasyInvois translates it into plain English so you know exactly what to fix and resubmit.
- 6
Share the validated invoice with your buyer
Once validated, you can download the invoice (with QR code) or share it with your buyer directly from EasyInvois. Your full submission history is stored in your dashboard so you can find any invoice any time.
What Happens After You Submit?
Once your invoice is submitted, LHDN runs a series of checks within generally less than 2 seconds. If everything looks correct, the invoice gets an IRBM Unique Identifier Number and a QR code is embedded into it. The invoice status changes to Validated.
The QR code links directly to LHDN's verification page, where anyone — including your buyer or their auditors — can scan it and confirm the invoice is genuine and has been officially recognised by LHDN. This protects both parties.
After you receive the validated invoice, you are responsible for sharing it with your buyer. LHDN does not send it to them on your behalf.
The 72-Hour Rule — Read This Carefully
- Your buyer can reject the invoice (e.g., wrong details)
- You (the supplier) can cancel it yourself
How to Handle Errors or Corrections
If LHDN rejects your invoice, it will return an error code explaining what went wrong. Common reasons include a missing or invalid TIN, mismatched tax amounts, or a required field left blank. The fix is straightforward: correct the issue and resubmit. LHDN does not penalise you for a failed submission — it simply will not be validated until the data is correct.
If you made a mistake on an invoice that was already validated:
- Within 72 hours: Cancel the invoice through the portal or EasyInvois, then reissue a corrected one.
- After 72 hours: Issue a Credit Note to reverse an overcharge, a Debit Note to charge the difference on an undercharge, or a Refund Note for a refund. All of these are standard e-Invoice document types in MyInvois.
EasyInvois supports all document types — Invoice, Credit Note, Debit Note, and Refund Note — so you can handle corrections from the same dashboard.
Frequently Asked Questions
What if my invoice gets rejected by LHDN?
A rejected submission means LHDN found an error in your invoice data — for example, an invalid TIN, a missing field, or a tax amount that does not match the line items. LHDN will return an error code telling you what is wrong. Simply fix the issue and resubmit. Your invoice is not 'live' until it is validated, so there are no consequences for a failed attempt — just correct and try again.
Do I need to send the invoice to my buyer separately?
Yes. LHDN validates your invoice and stores a record of it, but it does not automatically deliver it to your buyer. After the invoice is validated, you need to share the validated copy (with the QR code) with your buyer yourself — via email, WhatsApp, or any other method. Think of LHDN as the referee that stamps the invoice valid; you are still the one who hands it to your buyer.
Can I cancel an invoice after submission?
Yes, but only within 72 hours of the invoice being validated. After that window closes, you can no longer cancel it directly. Instead, you must issue a Credit Note or other correction document to account for the change. This is why it is important to double-check all details before submitting — or use a tool like EasyInvois that validates your data before it reaches LHDN.
What is the QR code on the invoice for?
The QR code is LHDN's proof of authenticity. When your buyer scans it, it links to LHDN's official verification page, where they can confirm the invoice is real and has been officially validated — not a fake or modified document. It is also useful for your buyers' own audit and record-keeping. You should always share the version of the invoice that includes the QR code.
What happens if I submit a wrong amount?
If you catch the mistake before 72 hours have passed, cancel the invoice and reissue a corrected one. If you only notice the error after 72 hours, you need to issue a Credit Note (if you overcharged) or a Debit Note (if you undercharged). Both are proper e-Invoice document types supported by MyInvois and EasyInvois. The original invoice cannot be edited once validated — LHDN's system is designed this way to maintain an immutable audit trail.
Ready to get compliant?
EasyInvois connects directly to MyInvois. Start in minutes.