How LHDN Validates Your e‑Invoice: Understanding the Process

Introduction

Starting from 2024, Lembaga Hasil Dalam Negeri (LHDN) has begun rolling out the e-Invoice system as part of Malaysia’s effort to digitize tax reporting.

Eventually, all businesses — from large enterprises to small traders — will need to issue and submit e-Invoices for every taxable transaction.

But here’s the thing: not every invoice you submit is automatically accepted by LHDN. Each e-Invoice must go through a validation process first. If the invoice is rejected, it’s considered non-compliant — and that can lead to delays, errors in tax reporting, or worse, potential penalties.

That’s why it’s crucial for business owners to understand:
➡️ What happens behind the scenes after you click “Submit”
➡️ How to reduce the risk of rejection from the start

Whether you’re a growing business or a micro-entrepreneur, using a trusted e-Invoice-ready system like Niagawan can help you manage this process smoothly — with built-in validations, automatic formatting, and real-time tracking.

In this blog post, let’s explore exactly how LHDN validates your e-Invoice, what to watch out for, and how to make sure your submissions get accepted the first time.

What is e-Invoicing and Why Validation Matters?

Under Malaysia’s MyInvois system, e-Invoicing refers to the process of issuing, submitting, and storing invoices digitally and in real-time with LHDN (Lembaga Hasil Dalam Negeri).

Unlike traditional invoices (PDFs, hardcopy, or Excel formats), an e-Invoice must follow a structured format and go through an automated validation process by LHDN before it becomes official.

What Is an e-Invoice?

An e-Invoice (electronic invoice) is a structured digital document that represents a commercial transaction — such as a sale, purchase, or service rendered — and is submitted to LHDN through the MyInvois system.

Unlike traditional invoices (PDF, Word, or paper), e-Invoices must:

• Contain specific fields required by LHDN (e.g., TIN, invoice type, product details, total amount)
• Be in a machine-readable format (typically JSON)
• Go through a real-time validation process by LHDN before it is considered valid

Important: A traditional invoice is not the same as an e-Invoice under the MyInvois model — even if it's digital.

Why Must Every e-Invoice Be Validated by LHDN?

MyInvois is the official e-Invoice platform developed by LHDN (hosted on the MyTax portal). It is where all e-Invoice submissions are sent for validation, and where validated invoices are stored for compliance and audit purposes.

There are two ways to submit to MyInvois:
Manually: Uploading each invoice one-by-one on the portal
Automatically: Using a system like NiagaPlus or NiagaPos, which acts as a registered intermediary that submits directly to LHDN for you

1. Manually: Uploading each invoice one-by-one on the portal
2. Automatically: Using a system like NiagaPlus or NiagaPos, which acts as a registered intermediary that submits directly to LHDN for you

Why Must Every e-Invoice Be Validated by LHDN?

Before an e-Invoice can be legally used (e.g., shared with customers or declared in your tax filings), it must be validated by LHDN.

During validation, LHDN checks:
• The format and structure of your invoice
• Whether the Taxpayer Identification Numbers (TINs) are correct
• That your invoice type (B2B, B2C, Self-Billed) matches the recipient info
• That there are no missing or conflicting data fields

Only once the invoice passes all checks, LHDN:
• Returns a UUID (Unique Invoice ID) and QR code
• Marks the invoice as validated
• Stores the invoice in the national e-Invoice system

Without validation, your invoice has no legal weight — and can’t be used for tax filing, issuing credit notes, or audit compliance.

💡 Real-World Analogy:

Think of e-Invoice validation like renewing your road tax.

You have your vehicle details and payment ready — but until JPJ processes your application, verifies your insurance, and approves the documents, you’re not legally allowed to drive.

Same with e-Invoices:
You might prepare and issue it from your side, but it’s not legally valid until LHDN reviews and approves it.

Term Meaning

e-Invoice

A structured digital invoice submitted to LHDN

MyInvois

The official e-Invoice platform from LHDN

TIN (Tax Identification Number)

A unique number given to every taxpayer or business entity

Validation

The automated process where LHDN checks your e-Invoice for accuracy and compliance

UUID

Unique identifier issued by LHDN for each validated e-Invoice

Intermediary

A system (like Niagawan) that submits and receives e-Invoice data on your behalf

Why Validation Matters to You as a Business Owner

❌ Without validation, your invoice can’t be used for tax filing or claims.
❌ You can’t issue credit notes or make changes if the invoice wasn’t validated.
Validated e-Invoices reduce the risk of audits and ensure full tax compliance.

That’s why many businesses — especially those with high transaction volume — are switching to systems like NiagaPlus and NiagaPos, which come with:

Auto-formatting & field checks
Real-time LHDN status updates
Consolidated e-Invoice features to simplify bulk submissions

Step-by-Step: LHDN’s Validation Process

Step 1: Submit Your e-Invoice

Option A – Manual Upload via MyInvois Portal (MyTax)

You can log in to the MyInvois Portal and fill out the invoice manually. This method suits small businesses with low invoice volume, but it can be time-consuming.

📌 Important Note:
According to LHDN’s official e-Invoice FAQ, if you use the MyInvois Portal, you are fully responsible for providing complete seller and buyer information.

This includes:
• Name of buyer/seller
TIN (Tax Identification Number)
• Address and other required fields

📖 Source: LHDN e-Invois FAQ – Soalan 3.17 & 3.21
Without complete or correct information, your invoice may be rejected.

-------------------------------------------------

Option B – Automatic Submission via Intermediary (e.g., Niagawan)
If you use NiagaPlus or NiagaPos, the system handles this for you:

Buyer/seller data is pre-filled from your records
Invoice structure and format is auto-generated to match LHDN requirements
• You avoid manual typing errors and formatting issues

Bonus: Using a system like Niagawan automates this step — just click “Submit” inside the system and it goes straight to LHDN. Niagawan also stores your submission history — so you don’t risk duplicate uploads or missed validations.

Step 2: Validation by LHDN

LHDN’s system will automatically check your e-Invoice for:

• Validity of Taxpayer Identification Numbers (TINs)
• Accuracy of invoice type (e.g., B2B, B2C, self-billed)
• Correct totals and currency formats
• Required fields such as invoice date, description, buyer info, etc.

If there’s any mistake (e.g. missing TIN, wrong invoice type), the invoice will be rejected, and you’ll be required to correct and resubmit.

Step 3: Receive a Real-Time Response

You’ll get one of two status updates almost instantly:

• ✅ Accepted – the invoice is validated and now legally recognized
• ❌ Rejectederror details are provided so you can fix the issue

Niagawan shows these status updates directly inside your dashboard — no need to log in to MyInvois manually.

Step 4: Invoice Gets UUID and QR Code

Once validated, LHDN assigns your invoice:

• A UUID (Unique Identifier) – this makes each invoice traceable and verifiable.
• A QR Code – to allow easy verification by your customer or auditor.

These two components prove that the invoice is official and LHDN-validated.

Step 5: Deliver the Invoice to the Buyer

After validation, you can now:

• Share the invoice PDF (with QR code) to your customer
• Allow them to scan and verify the invoice’s authenticity via MyInvois
• Keep a compliant record for accounting or audit purposes

From submission to validation — here’s how your e-Invoice becomes officially recognized by LHDN.

Common Reasons e-Invoices Get Rejected

Even with the right intention, it’s easy to make small mistakes that lead to LHDN rejecting your e-Invoice.

Let’s look at the most common reasons for rejection — with realistic examples you might face in your day-to-day business:

❌ 1. Invalid or Missing TIN

TIN (Tax Identification Number) is mandatory for most invoice types, especially B2B transactions. If the buyer’s TIN is missing, incorrect, or mistyped, LHDN will reject the invoice.

If you’re issuing a B2B invoice, both parties must have a valid TIN.
For foreign customers or B2C cases, there are specific alternatives like using a generic “unknown individual” flow.

Example:
You’re issuing a B2B invoice to a customer named "Zara Enterprise" — but you forgot to ask for their TIN and left it blank. Or worse, you entered “12345678” without verifying if it's a valid TIN from LHDN. Result? ❌ Rejected by the system.

Reminder:
If you're submitting your e-Invoice manually through the MyInvois Portal, you are fully responsible for ensuring that the buyer's TIN is filled in correctly.
LHDN does not validate or auto-complete this for you.

❌ 2. Wrong Invoice Type Selected

In the MyInvois manual submission process, you must manually select the correct invoice type (e.g. B2B, B2C, Self-Billed), and that selection must match the type of customer you're invoicing.

Each invoice type has different data requirements. If you select the wrong type, and the fields you provide don’t match LHDN’s expectations, your invoice will be rejected.

Real Examples:
• You choose B2B, but your customer doesn’t have a TIN. ❌ LHDN expects both buyer and seller to have valid TINs for B2B invoices. This should’ve been a B2C or Self-Billed invoice instead.

• You issue a Self-Billed invoice to a freelance designer, but forget to enter your own company details as both buyer and seller. ❌ Rejected — because the seller data is incomplete.

Reminder for MyInvois Portal Users:
When submitting manually via the portal, you must select the correct invoice type yourself. The system will not auto-suggest based on your entries.

Choosing the wrong type (e.g. selecting B2B for a walk-in customer) will cause validation to fail.

❌ 3. Errors in Monetary Values or Formatting

When it comes to e-Invoicing, LHDN is very strict about how numbers and currency are entered. The validation system checks for:

Correct decimal placements — all amounts must be in two decimal places (e.g., 1000.00, not 1000.0 or 1000)

Proper currency code — the default is MYR. Do not type “RM” or include currency symbols in numeric fields

No negative values — unless you are submitting a credit note, any line item or total with a negative amount will be rejected

Total amounts must match — the invoice total must equal the sum of your itemized line amounts (including taxes/discounts if applicable)

Real Examples of Mistakes:
▶️ You enter RM1,200 as the unit price in the price field — ❌ rejected because the system expects a numeric-only format (should be 1200.00)

▶️ Your line items total RM3,500.00, but the invoice total shows RM3,499.99 due to a rounding error or manual typing — ❌ mismatch causes rejection

▶️ You input -500.00 for a refund line item inside a standard invoice (instead of using a credit note) — ❌ negative values not allowed in normal invoices

▶️ You enter prices with one decimal place, like 250.5 — ❌ invalid formatting, LHDN expects two decimal places: 250.50

❌ 4. Duplicate Submission

Each e-Invoice must be unique. Submitting the same invoice ID, invoice number, or transaction twice will immediately trigger a rejection from LHDN's validation system.

This mistake is more common than most people think — especially when you're unsure whether the first submission was successful, or you're handling e-Invoicing manually without system tracking.

Real Examples of Duplicate Submission Errors:

• You submit invoice INV-1005 today, then realize you didn’t save the QR code. So, you go back to MyInvois and re-submit the same invoice ID again thinking it will re-generate — ❌ LHDN flags it as a duplicate.

• Your internet connection drops during submission. You try again — but the same data gets sent twice. Without a system to track UUID status, you have no idea the first one already went through.

• You edit and reissue an invoice, but forget to change the invoice number — ❌ same invoice ID = duplicate error.

The MyInvois portal doesn’t warn you if you're reusing the same invoice number. You’re expected to track your invoice IDs manually.

That means it's easy to accidentally submit the same invoice twice, especially if you’re dealing with high volume or backdated entries.

What Happens After an Invoice is Validated?

Once your e-Invoice passes LHDN’s validation checks, it becomes an official tax document. This step marks the transition from “invoice prepared by seller” to “recognized by the government”.

But the process doesn’t end there. There are important next steps that ensure your records are complete, your customers are informed, and your business stays compliant.

1. Retrieving the Validated e-Invoice

After successful validation, LHDN sends back:

• A UUID (Unique Universal Identifier)
• A QR code for easy verification
• A timestamp of when the invoice was validated

If you’re using the MyInvois Portal, you’ll need to:

• Manually check the invoice status
• Download the validated invoice (PDF)
• Save and send it to your customer manually

This process can be tedious if you’re managing dozens or hundreds of invoices per month.

With an intermediary, the process runs quietly in the background — invoices are auto-generated from your existing business system and sent to LHDN with minimal user input.

2. What’s the Purpose of the UUID and QR Code?

▶️ UUID (Unique Invoice ID)
Think of this as the IC number of the invoice — a unique code that LHDN uses to identify and trace each e-Invoice.

It proves the invoice exists in LHDN’s system and has been officially validated.

▶️ QR Code
This can be scanned by:
• Your customer (to confirm authenticity)
Auditors or LHDN officers (during tax reviews)
• Your own team (to retrieve invoice info from MyInvois)

💡 Pro tip: If you’re ever audited, having that QR code and UUID attached to each invoice can significantly reduce your documentation burden.

3. Reporting and Audit Readiness

All validated e-Invoices are automatically recorded in LHDN’s MyInvois system. This is because your invoice is now legally accepted — meaning it becomes part of a compliance trail.

Here’s how this helps you:

Automatic e-Invoice record-keeping: Every validated invoice is stored on MyInvois for up to 7 years

Fewer disputes with customers: Since both parties see the same validated data, it’s harder to argue over totals or terms

Simpler audits: Your invoice list with UUIDs and timestamps is proof of proper documentation

Bank and accounting reconciliation: You can match validated invoice totals against your sales and bank entries easily

How Niagawan Simplifies the Validation Process

Let’s be honest — using the MyInvois portal manually isn’t easy, especially if you’re handling it on top of everything else in your business.

You’re expected to fill in every single field yourself: buyer and seller info, invoice type, TIN, amounts, and totals — with no suggestions or error alerts. If you accidentally choose the wrong invoice type or enter an invalid TIN format, your invoice gets rejected — and you’ll have to correct and resubmit it manually.

There’s also no live tracking — you won’t know if your invoice is “In Progress,” “Rejected,” or “Accepted” unless you check manually. Multiply that across 20 or 100 invoices per month, and the stress starts to pile up.

That’s exactly why Niagawan built NiagaPlus and NiagaPos — to make e-Invoicing work for you, not against you.

The system guides you step-by-step, fills in known info automatically, flags errors before submission, and keeps everything organised — so you can stay compliant without the anxiety.

1. Guided Invoice Entry That Helps You Avoid Mistakes

While Niagawan doesn’t run a full automated pre-validation check like LHDN, the system is designed to guide you through proper invoice entry — reducing the chances of rejection.

You don’t have to remember what fields are required, how to structure decimals, or which invoice type to choose. The system ensures:

Customer details are matched with the appropriate invoice type (B2B, B2C, Self-Billed)

Amounts are structured with the correct decimal format

✅ All mandatory fields (like date, item description, and tax category) are clearly laid out

This built-in guidance helps users avoid the most common e-Invoice errors — even without a separate validation engine.

2. Real-Time Submission Feedback, Instantly

Once submitted, you don’t need to refresh MyInvois or guess what’s happening behind the scenes.

Niagawan shows you real-time status updates like:

"In Progress"
"Accepted by LHDN"
"Rejected" (with the reason clearly stated)

No more second-guessing or chasing your own paperwork. You always know where things stand with your e-Invoice submission.

3. Consolidated e-Invoices for High Volume Transactions

If you’re handling lots of daily sales — like running a kedai runcit, food stall, or doing cash-based business — submitting hundreds of individual e-Invoices sounds exhausting.

With Niagawan, you can combine your sales into a single LHDN-approved consolidated e-Invoice.

This makes compliance manageable, even for high-frequency sellers.

4. Simple Self-Billed Invoicing for Non-TIN Customers

Working with freelancers, influencers, or contractors who can’t issue invoices?

Instead of navigating self-billed e-Invoice rules manually on the MyInvois portal, Niagawan makes it easy:

• Select “Self-Billed”
• Enter their name and IC/passport number
• Submit directly to LHDN — all handled in the system

Whether they’re local or foreign, Niagawan simplifies the entire process.

5. All Your Invoices in One Dashboard

No more spreadsheets or scattered PDFs. With Niagawan, every e-Invoice you’ve submitted is:

Searchable and filterable by date, status, or customer
Downloadable with UUID and QR code included
Re-submittable (with auto-filled fields) in case of rejection

Your entire compliance trail is organised, safe, and accessible — anytime you nee

Final Tips for Smooth e-Invoice Validation

While e-Invoicing may seem technical at first, staying compliant and avoiding rejections is entirely possible — especially if you follow a few important best practices.

1. Always Collect Complete Customer Information

Whether you’re issuing a B2B or B2C invoice, make it a habit to collect essential information upfront. For B2B customers, that includes a valid Tax Identification Number (TIN), full business name, and registration details.

For individuals or foreign customers, be sure to gather their IC or passport number if you’re planning to issue a self-billed invoice.

Missing or inaccurate customer info is one of the most common reasons invoices get rejected — so having a checklist or simple form for customers can save you time and frustration later.

2. Keep Your Business Profile and Tax Info Up to Date

Your LHDN-registered profile must reflect your current business name, address, and registration number. Even small inconsistencies — like outdated business names or unregistered SST status — can cause delays or validation failures.

Make it a monthly routine to review your business profile — whether on MyInvois or through your e-Invoicing software system — and update any changes promptly.

This ensures each invoice submission goes smoothly without raising compliance flags.

3. Use Trusted Software That Aligns with LHDN Requirements

Manual submission via MyInvois is possible, but as you’ve seen throughout this guide, it comes with a higher risk of errors and more admin work.

Using a system that’s purpose-built for e-Invoicing, like NiagaPlus or NiagaPos, helps you:

Structure your invoices correctly
Reduce common errors like formatting issues or mismatched totals
Stay organized with tracking, invoice history, and auto-stored QR codes

Even if you only issue a few invoices each week, a trusted e-Invoicing system takes the mental load off your shoulders — so you can focus on growing your business, not troubleshooting technical errors.

If your business deals with high transaction volumes, look into using the Consolidated e-Invoice feature in Niagawan — it’s a lifesaver for B2C sellers, cash-based businesses, or any merchant juggling multiple daily sales.

Conclusion: Stay Compliant, Stay Confident

Whether you're just starting or already handling dozens of invoices weekly, NiagaPlus and NiagaPos can help you stay compliant with LHDN’s e-Invoice requirements — without the stress.

✅ Guided invoice creation
✅ Real-time submission tracking
✅ Consolidated e-Invoice features for busy sellers
✅ Simple self-billed invoicing
✅ invoices dashboard

📌 Fill in the form below and our team will get in touch to help you choose the right plan for your business.

👉 It’s fast, obligation-free, and designed to support Malaysian entrepreneurs like you.

Niagawan Plus Sdn Bhd
110-2-21, Summerton Avenue, Persiaran Bayan Indah, 11900 Bayan Lepas, Penang, Malaysia.
SSMI: 1241159-P
SST No: P11-2201-32000010
Disclaimer: The information contained within this website is provided for the informational purposes only and is not intended to substitute for obtaining accounting, tax, or financial advice from a professional accountant. Presentation of the information via the Internet is not intended to create, and receipt does not constitute, an accountant-client relationship. Internet subscribers, users and online readers are advised not to act upon this information without seeking the service of a professional accountant. While we use reasonable efforts to furnish accurate and up-to-date information, we do not warrant that any information contained in or made available through this website is accurate, complete, reliable, current or error-free. We assume no liability or responsibility for any errors or omissions in the content of this website or such other materials or communications.
Designed by Radiant Themes