The problem
LHDN's MyInvois mandate has moved down the revenue bands until it reaches businesses that never had a tax IT project before. The obligation is not simply to produce a nicer PDF. Every invoice, credit note, debit note, refund note and self-billed document has to be transmitted to the MyInvois system in a prescribed structure, digitally signed, validated, and returned with a UUID and a validation link that must appear as a QR code on the document you give the buyer. A rejected submission is not a filing problem you fix at year end; it is a document your customer will not accept.
Zoho Books gives you a clean ledger, tax codes and a document numbering series. What it does not give you, out of the box for every Malaysian org, is the field-level discipline MyInvois demands: a validated buyer TIN, the buyer's BRN or NRIC or passport identifier, MSIC codes, classification codes on every line, the correct unit-of-measure code, and country and state codes from the LHDN code lists rather than free text. Businesses discover these gaps one rejection at a time, usually on a live invoice a customer is waiting for.
What ECOSIRE builds
ECOSIRE builds a submission bridge that lives inside your own Zoho org. It is written as Deluge custom functions and scheduled functions on Zoho Books, with a Zoho Creator app for the code lists and exception queue and a Sigma widget so finance staff work inside Books rather than in a separate portal. It calls the MyInvois API directly using your own taxpayer credentials, and it calls the Zoho Books REST API to write results back.
Pre-submission validation
The bridge refuses to send a document that will be rejected. Before any call to LHDN, a Deluge validator checks the full required field set: supplier and buyer TIN format, registration identifier type and value, MSIC code and business activity description, classification code on every line item, unit-of-measure code, currency and exchange rate where the invoice is not in MYR, and tax type and rate per line. Failures are shown in the Books record with the exact field at fault, so an accounts clerk can fix the customer master once instead of retrying blindly.
Document construction and signing
Validated documents are assembled into the MyInvois document structure with the correct document type code for invoice, credit note, debit note, refund note or self-billed variant. The document is digitally signed using the certificate you hold, then submitted. The bridge handles the asynchronous nature of the process properly: a submission returns an identifier, and a scheduled function polls for the outcome rather than assuming success.
Write-back and the buyer-facing document
On validation, the LHDN UUID, the long identifier, the validation date and time, and the validation link are written to custom fields on the Zoho Books record. The QR code encoding that link is generated and placed on the invoice template so the printed or emailed PDF your buyer receives is compliant. Rejections write the LHDN error codes and messages onto the record and move it to an exception queue.
Cancellation, rejection and consolidation
The cancellation window is enforced in the bridge rather than left to memory: a validated document can be cancelled within the permitted period with a stated reason, and the bridge blocks attempts after the window closes and tells the user what to do instead, which is normally a credit note. Buyer-initiated rejections are polled and surfaced to your finance team. For businesses that issue consolidated e-invoices for end consumers who did not request one, the bridge aggregates qualifying receipts for the period and submits the consolidated document on schedule.
Self-billed documents
Where you are required to self-bill, typically for foreign suppliers, certain agent and dealer arrangements, or payouts, the bridge builds the self-billed document from the corresponding Zoho Books bill or expense and submits it under the correct document type with your own details in the supplier role reversed appropriately.
Audit and archive
Every request and response is stored with a timestamp against the source document so you can demonstrate, document by document, what was sent and what LHDN returned. A period report reconciles Books documents against submitted, validated, rejected and cancelled counts so nothing sits unsubmitted at month end.
Who this is for
Malaysian businesses running Zoho Books, from companies entering a later mandate phase to established users who have outgrown manual portal entry. It suits organisations with more than a handful of documents a day, self-billing obligations, foreign-currency sales, or multiple Books organizations for related entities.
How delivery works
This is built to order. There is no ready-made plugin to download and no trial, because compliance depends on your registration details, your classification code decisions and your Books configuration.
1. Scoping call. We review your Zoho Books organization, your TIN and registration details, your document types in use, your item catalogue against classification codes, your self-billing scenarios, and your mandate phase and start date. 2. Fixed quote. A written scope covering document types, validation rules, template changes and the go-live plan, at a fixed price. 3. Build. Typically two to four weeks, depending on how much master-data remediation your customer and item records need. Master-data cleanup is scoped explicitly rather than assumed. 4. Test environment. We install into a test Books organization and submit against the MyInvois sandbox, exercising validation, rejection, cancellation and consolidation paths. 5. Production go-live. Credentials and certificate are installed in production, we submit a controlled first batch with you watching, and confirm UUID write-back and QR rendering on real documents. 6. Support. A support window from go-live covering defects and changes LHDN makes to the API or code lists during that period.
ECOSIRE builds and delivers the integration. Your tax positions, classification code choices and filing obligations remain yours and your tax adviser's; we make the submission mechanism reliable and auditable.