What runs for you, and what never will — transcript
Play this as a presentation — one slide per step, with the same narration. Every word of every step is on this page.
This lesson is for you if you run the books at GadgetSphere and want to know how much of self-billing you are doing by hand for no reason. Quite a lot, as it turns out. But the second half matters more: there are three places in this pipeline where nothing runs, nothing retries and nothing warns you, and four company settings that look like controls and are not. About thirteen minutes, and no screens to fix.
Step 1 — Stop keying self-billed documents anywhere else
After this step you know where the manual work actually ends. Once a supplier is flagged and their E-Invoice tab is complete, finalising the purchase document is the last thing a person does. Nobody opens the MyInvois portal. Nobody re-types the purchase into a second system. Nobody presses a self-billed button, because the supplier record already decided that. From the moment you press Final, a trigger fires, and it proceeds only if four things hold: the company is enabled for e-invoicing, the document type is one that can carry a self-billed e-invoice, the skip flag is off, and no active queue row already exists for the same document number.
Reference: My E-Invoice Admin Applet — 1. Entry gate (trigger processor, at FINAL)
Step 2 — Let the pipeline build and send the document
After this step you can describe the whole chain to a colleague without naming a screen. A scheduled processor assembles the e-invoice from the purchase document, your company and the supplier record, runs the mandatory-field check, and either queues the document or pools it. A submission processor then drains that queue and sends the payload to LHDN, writing a history row when LHDN accepts it. A third processor polls LHDN for the verdict and writes it back onto the record — submitted, then valid or invalid, with the LHDN identifier and the exact validation time. And underneath all of it, a token processor renews the authorisation about every twenty minutes, without which none of the others can reach LHDN at all.
Reference: My E-Invoice Admin Applet — 4. Submission, validation and e-mail (cron)
Step 3 — Let it find a missing tax number for you
After this step you will stop chasing registration numbers you do not need to chase. There is one piece of master-data repair that happens by itself, and it is worth knowing about because it is invisible. When a document is worth ten thousand or more, the party’s identity type is a business registration number, and the tax number is blank, the processor searches LHDN for that tax number before it decides anything. If it finds one, it writes it back in three places: onto the entity record, onto the document, and onto the e-invoice header. So a supplier who was incomplete this morning can be complete this afternoon without anyone editing anything. It only covers that one shape.
Step 4 — Let the failures come to you instead
After this step you can stop opening the admin applet to find out whether anything went wrong. Three things arrive without anyone looking at a screen, and you should find out from your BigLedger contact which of them are switched on for your tenant and where they are addressed. A processor e-mails a spreadsheet of the failed individual-pool transactions for each company. A standing sweep looks for finalised documents that never entered the pipeline at all and e-mails a digest when it confirms one — which matters here, because a skipped self-billed purchase appears on no e-invoice screen anywhere. And last month’s discrepancy report can be generated and e-mailed automatically for every company with e-invoicing on.
Reference: My E-Invoice Admin Applet — 4. Submission, validation and e-mail (cron)
Step 5 — Read the verdict off the screen that is current
After this step you will not be reassured by a stale one. When you do want to look, look at To IRB E-Invoice, which carries the live status one row per e-invoice, and use its Export tab if you would rather work in a spreadsheet. Do not build your picture from Submission History. That screen records what each submission looked like at the moment it was sent, so it reads Submitted forever, including for a self-billed document that LHDN rejected an hour later. A list built there is short, clean and wrong, and the rejections it hides stay hidden until somebody reconciles months afterwards.
Reference: The Month-End E-Invoice Cycle (1st to 7th) — Step 4: Pull the export that shows live status
Step 6 — Know the three places where nothing runs
After this step you know what your own standing habits have to cover. First, a pooled self-billed document waits for a person indefinitely; nothing ages it and nothing warns you it has been there since March. Five processors exist that could move pool rows, and measured across ninety tenant databases they were configured on exactly one, so assume manual unless support tells you otherwise. Second, nothing re-drives a queued row: the retries-remaining figure is written once and never counted down, and the one processor that revisits failed rows takes the newest first, so an old one can wait forever. Third, the ghost digest has no screen — the e-mail is the only notice.
Reference: My E-Invoice Admin Applet — 3. Pools — what the buttons do
Step 7 — Stop trusting four switches that control nothing
After this step you will not spend an afternoon on four settings that do not do what their names say. Each company’s E-Invoice tab carries four of them: Disable Consolidated Self Billed Submission, Disable Consolidated Submission, Disable Single General Submission, and Enable High Sales Value Validation — the one whose name sounds least like the others and controls just as little. None of the four stops anything. Nothing in the backend reads them. They are read only by the document applets, where they remove values from the Submission Type drop-down for that company. So they explain a submission type missing from a list; they do not stop a processor, and they do not change routing already decided. Send Email To Buyer, on the same tab, is the one the backend genuinely reads.
Reference: Organization — Company E-Invoice tab
How the steps fit together
flowchart TD
s1["Step 1 — Stop keying self-billed documents anywhere else"]
s2["Step 2 — Let the pipeline build and send the document"]
s3["Step 3 — Let it find a missing tax number for you"]
s4["Step 4 — Let the failures come to you instead"]
s5["Step 5 — Read the verdict off the screen that is current"]
s6["Step 6 — Know the three places where nothing runs"]
s7["Step 7 — Stop trusting four switches that control nothing"]
s1 --> s2
s2 --> s3
s3 --> s4
s4 --> s5
s5 --> s6
s6 --> s7
Check yourself
Three to five questions on what you just heard. Every correct answer links to the page that makes it correct, so you can check the source, not just the mark.
Answer key
- A submission processor drains the queue and sends it; another polls LHDN for the verdict — My E-Invoice Admin Applet — 4. Submission, validation and e-mail (cron)
- The processor searches LHDN for the tax number and writes it back onto the supplier — My E-Invoice Admin Applet — 2 posting queue to irb or a pool cron e_invoice_generic_document_to_irb_processor
- Nothing — the pool waits indefinitely, which is why you look at it on a schedule — My E-Invoice Admin Applet — 3. Pools — what the buttons do
- Nothing at all — the switch only removes a value from the Submission Type drop-down — Organization — Company E-Invoice tab
- Nothing dependable — the figure is never counted down, and old failed rows can be starved by newer ones — My E-Invoice Admin Applet — Troubleshooting
Next: The traps, and proving the month · Back to the series · Play this as a presentation