Get in touch
WooCommerce

MyInvois e-Invoice for WooCommerce — LHDN e-invoices from the order in Malaysia

An e-invoice from a WooCommerce order to MyInvois (LHDN): buyer TIN at checkout, validation status, a document link. Version 1.0 documents, no digital signature. Pro adds auto submit, credit notes and consolidation. No real submission yet.

Download Free
Pro · one-year licence Staging copies are included. The more sites, the cheaper each one
Compatibility
WordPress 6.2+ · WooCommerce 7.0+ · PHP 7.4+ · HPOS · classic and block checkout · document version 1.0 · plugin languages: English, Malay
Licence
a site + a staging copy, annual
Trial
7 days, no card, one per site
Updated
November 2026
Or all 393 Pro modules with All Access — 4 990 ₴ / year ≈ €98

What Free has,
and what Pro adds

The free version works with no time limit. Pro adds the rest of the features in the table.

Feature Free Pro
Login with your Client ID and secret, sandbox by default ✔ ✔
A UBL 2.1 JSON version 1.0 document from the order ✔ ✔
Buyer TIN and number at classic and block checkout ✔ ✔
Validation status in the order ✔ ✔
LHDN refusal reasons word for word ✔ ✔
A link to the document in MyInvois ✔ ✔
Connection test ✔ ✔
Numbering with your prefix ✔ ✔
Submit at the Completed status — ✔
A refund note from a refund — ✔
Cancelling a document within 72 hours — ✔
A buyer TIN check at LHDN — ✔
A monthly consolidated invoice for buyers without a TIN — ✔
Non-MYR orders with your rate — ✔
Bulk submit from the orders list — ✔

What it looks like

TIN at block checkout
TIN and number fields.
TIN on a phone
Classic checkout, 390 px.
MyInvois settings

Key points

What the buyer sees

If a buyer needs an invoice for a company, they enter a TIN and registration number at checkout.

What the admin gets

In the settings you pick sandbox or production, enter keys, seller data, MSIC and document defaults.

How much it costs

The base version is free. Pro costs 990 UAH for a one-year licence. A year of updates, technical support and all Pro features.

The trial starts when you ask

A fresh install is the free version, nothing switches on by itself. The “Try Pro for 7 days” button → e-mail → the key right in the window and by e-mail.

One key — a site and a staging copy

Moving the site? Unlink the licence on the old domain and activate it on the new one yourself. A staging copy (staging., dev.) works with the same key and does not take a site slot. For studios — keys for 5 or 25 sites, or unlimited.

Technical requirements

  • WordPress 6.2+, WooCommerce 7.0+, PHP 7.4+.
  • A MyInvois registration: the Client ID and secret of your system.
  • Your company TIN, registration number and MSIC code.

Version history

v1.0.0 Current November 2026

Submit from the order, status, link, buyer TIN.

Frequently bought with MyInvois e-Invoice

All Access Need more? All modules (393) under one licence, new ones are added automatically. 4 990 ₴≈ €98 Learn more →

Full module description

MyInvois e-Invoice submits a WooCommerce order to MyInvois, the system of the Malaysian tax authority LHDN. You press a button in the order, the plugin builds the document, passes it on and shows the validation result. The plugin works only through your own Client ID and secret.

This plugin has never submitted a real document. First submit a few documents in the sandbox with your own data.

Digital signature. The plugin sends documents of version 1.0, without a digital signature. In the FAQ of its SDK, LHDN says version 1.0 may be submitted without digital signature validation until LHDN officially announces its retirement, and strongly recommends version 1.1 with a signature. The plugin has no version 1.1 or signing yet. Before you submit production documents, check this with your tax adviser.

The plugin makes no promise of compliance with Malaysian law and is not accounting or tax advice. Check TIN, classification and taxes with your accountant.

What the buyer sees

If a buyer needs an invoice for a company, they enter a TIN and registration number at checkout. The fields are optional and work at classic and block checkout. Without a TIN an order is not submitted on its own: for such orders Pro has a monthly consolidated invoice.

What the admin gets

In the settings you pick sandbox or production, enter keys, seller data, MSIC and document defaults. The order has a box with the buyer TIN, a submit button and the status. Once a document is accepted, a link to it in MyInvois appears, and once refused, the codes and reason text are shown.

In Pro a document goes by itself on Completed, a refund becomes a refund note, a document can be cancelled, and orders without a TIN gather into a consolidated invoice.

How it works, step by step

  1. In the MyInvois portal you register your system and take the Client ID and secret.
  2. You enter them in the plugin and fill in seller data and MSIC.
  3. You stay on the sandbox first.
  4. You press submit in the order.
  5. LHDN validates the document and the plugin shows the result.
  6. After the sandbox you switch to production.

Under the hood

  • No intermediary: the shop talks to LHDN directly with your keys.
  • The hash is taken over the exact bytes of the document.
  • The token is kept for an hour and renewed after a 401.
  • Documents are not signed: version 1.0.
  • The total is built from rounded lines, so a difference of a sen from the order total is possible.
  • Consolidation skips non-MYR orders and orders with refunds.

How to install

  1. Plugins → Add New → Upload Plugin: pick the zip and activate.
  2. WooCommerce → MyInvois: stay on the sandbox and enter the Client ID and secret.
  3. Fill in seller data, TIN, MSIC, address and phone.
  4. Press the connection test and submit a test order.
  5. For Pro: paste the key or start the 7-day trial.

The module is not on wordpress.org yet: the free version and Pro are one archive from this page. Without a key it works as the free version.

Questions
about the module

Didn't find the answer? Message us on Telegram and we'll reply within a business day.

@catcode_support Setup, compatibility, activation
Has this submitted real documents?

Start with the LHDN sandbox.

Does the plugin sign documents?

No. It submits version 1.0 without a signature. LHDN allows that until it announces the retirement of version 1.0, and recommends version 1.1. Check with your adviser.

Does the plugin replace an accountant?

No. Check TIN, classification and taxes with your accountant.

What about orders without a TIN?

In Pro you can submit them as a monthly consolidated invoice.

What happens after the trial?

Pro switches off, and submitting by the button keeps working.

Not quite what you are looking for?

We build custom modules for WordPress, WooCommerce, OpenCart and Shopify. Tell us about the task and we'll prepare an estimate.

Order a custom module