guide hub·① access·② configure·③ submit·④ check·⑤ self-billed·invoice maker
e-Invois · LHDN Malaysia · journey ③ · every invoice

Submit an e-invoice

From your own PDF or plain details in chat to a validated LHDN document with a share link and QR.

This journey0 / 2 completed

FastPath- Prompt this to Claude

Works in Claude Code (myinvois skill) or any MCP client running mcp-myinvois. Copy, paste, done or do it manually with the steps below.

Use the my-einvois-submit-skill. Here's my invoice PDF turn it into a MyInvois e-invoice: extract the buyer and line items, validate the buyer TIN, show me a summary for approval BEFORE submitting, then give me the validation link and a QR image.
10submit

Send your first e-invoice

Easiest path: open Claude Code anywhere and drop an invoice PDF with the words “submit this to MyInvois”. The myinvois skill extracts the buyer and line items, merges your profile, shows you a summary to approve, submits, and returns the LHDN validation link.

Manual path:

# 1. copy the template & fill the ALL_CAPS placeholders cp skills/myinvois/templates/invoice-v1.0.json my-invoice.json # 2. submit (--stamp refreshes the issue time LHDN rejects stale ones) node skills/myinvois/scripts/myinvois.mjs submit my-invoice.json --stamp # 3. poll until Valid, grab the share link node skills/myinvois/scripts/myinvois.mjs submission <submissionUid>
Going live later = repeat steps 02–06 once on the real portals (mytax.hasil.gov.my) and flip MYINVOIS_ENV=prod. Nothing else changes.
11your pdf

Use your own invoice PDF

Already generate invoices elsewhere? Drop the PDF on Claude and it becomes the e-invoice source. For that to work without back-and-forth, the PDF must contain:

  • required Invoice number unique, never reused
  • required Line items description, quantity, unit price
  • required Buyer name plus TIN or BRN for business buyers (or keep them in your client book, step 09)
  • required Totals and the SST amount/rate if you charge tax
  • optional Buyer address, email, phone enriches the record
  • optional Issue date submission is stamped at send time anyway

Your seller details never need to be in the PDF they come from the profile (step 08). Anything missing, Claude asks instead of guessing.

Prompt builder state your goal

Generates a paste-ready instruction for Claude Code (skill) or any MCP client. Attach your PDF along with it.

After validation you get the LHDN link send your client your PDF plus that link or its QR. Make the QR image locally with: npx qrcode "<validation link>" -o invoice-qr.png