Skip to content

Use Cases

The running example is GadgetSphere Sdn Bhd: 22 retail branches, a separate online company and a distribution company, SST-registered, some purchasing from regional distributors abroad.

1. Invoicing a business customer

The shape. The distribution company bills corporate customers who have tax numbers and want a validated e-invoice.

The flow. The sales invoice reaches FINAL — that is the trigger, and there is no approval step before it. BigLedger builds the payload, signs it as your intermediary, queues it, sends it, and polls for the verdict. The customer sees the validated document, with its QR code, through the MY E-Invoice Portal, and can raise a rejection request there within 72 hours.

Where it goes wrong. Nearly always the buyer’s master data: a missing identity type, an address with no state code, a tax number typed wrong. The first two park the document in a pool; the third passes every screen and fails at submission. Fix the customer record, then release.

2. Consolidating a month of retail receipts

The shape. Twenty-two branches selling to walk-in shoppers who have no tax number and no interest in giving you one.

The flow. Each cash bill finalises normally — the sale, the stock and the accounting are all correct. Because the buyer has no identity, the e-invoice is parked in a pool. After the month closes, the pooled receipts are gathered into consolidated e-invoices and submitted.

The two hard edges.

  • A receipt of RM 10,000 or more cannot be consolidated. It needs an individual e-invoice with a real buyer identity — which means capturing it at the counter, not discovering it at month end.
  • The 200-line ceiling is the by-branch shape only. If your company consolidates by branch, each line is a consecutive document-number range and the run stops at 200 lines, so volume is handled by producing more consolidated documents rather than bigger ones. If it consolidates by document, each line is one receipt and there is no line cap at all; what bounds that run is how many batch-pool rows it takes per pass. Find out which one you are on before you plan around a number.

The thing to plan around. Submission is serial — one document per LHDN call, roughly 600 to 3,000 an hour. A month of receipts consolidates into a manageable number of documents, but the run is measured in hours and the deadline is the 7th of the following month. Starting on the 6th is not a plan.

3. Self-billing a supplier who cannot invoice you

The shape. GadgetSphere pays local freelance agents who are not required to e-invoice, and buys software subscriptions from foreign vendors who have never heard of MyInvois. In both cases the law puts the reporting obligation on you.

The flow. The purchase document is flagged self-billed and enters the standard pipeline from the My E-Invoice Admin side. It is not a different applet and not a buyer-portal function.

Self-billed expense lines usually have no item master behind them, so the LHDN classification code cannot be inherited — it has to come from your GL or expense mapping and, in practice, be set by hand. Budget for that. A three-arrow diagram of this flow is hiding the only part that takes time.

4. Exchanging documents over PEPPOL

The shape. A partner who wants documents delivered to their access point rather than e-mailed.

The flow. The same finalised document feeds the PEPPOL pipeline in parallel with the LHDN one. Neither waits for the other. A failed transmission sits in the queue and is resent row by row.

The thing to plan around. Participant registration for a Sabah or Sarawak registration number is checked manually and takes 2 to 10 working days.