Your AR team just processed 47 invoices yesterday. This morning, LHDN rejected 3 of them—not for amount, not for dates, but for tax ID mismatches. The customer's registered UIN doesn't match what's on file. Processing delay: 8 days. Cost per rejected invoice: ₹500 to ₹2,000 in reissue labour, portal delays, and compliance risk. This is not uncommon. Batch tax ID validation catches these after invoice generation. Real-time API audit catches them before the invoice number locks. Why manual tax ID entry fails Tax identification numbers are not simple strings. They carry legal weight, they're linked to government registries, and they change. A Malaysian UIN (Unique Identification Number) has a specific structure; a Singapore UEN (Unique Entity Number) has another; Indonesia's NPWP (Nomor Pokok Wajib Pajak) a third. Each registry moves at different speeds. Registrations expire, businesses merge, entities dissolve. A name mismatch between your invoice and the registry is not a typo—it's a compliance breach. Here's what slips through today: Fake or inactive registrations. A customer provides a UIN that looks structurally valid but doesn't exist in LHDN's registry. Batch validation catches this days later. Real-time validation stops it at checkout. Name divergence. Invoice says "PT Maju Jaya Sentosa"; registry says "PT MAJU JAYA SENTOSA INDONESIA". Case, spacing, and full legal names matter. A misalignment that looks minor to your AR team is a rejection code to LHDN. Expired or suspended registrations. A company's BRN is valid but their GST registration lapsed last month. The tax ID itself is real, but the entity cannot be invoiced at the current tax rate. Cross-border routing errors. A contractor in Singapore is invoiced with a Malaysian UIN because they formerly worked from KL. The number is real but points to the wrong jurisdiction—invoice fails at point of submission. The cost of a bad tax ID on your books A single rejected invoice does not cost ₹500. That's only the reissue labour. The actual cost spreads across your AR, finance, and customer success teams: Reissue labour: ₹200–300. Your AR team logs the rejection, corrects the tax ID, regenerates the invoice, updates the payment portal. Payment delay: 8–14 days average. Customer receives the corrected invoice, and your settlement is pushed into the next period. At ₹50L MRR, this is a ₹30–50K working capital impact. Compliance exposure: ₹500+ penalty per rejected invoice in Malaysia if you're a high-volume issuer. Regulators track reject rates. Three rejections in a month on the same customer draws audit flags. Customer friction: The customer sees the rejection in their portal. Trust erosion. Refund inquiries spike. Your support team burns cycles explaining "it's a tax ID thing." GL reconciliation debt: The bad invoice sits in your AR aging until it clears. If the reissue flows into a different period, you have two GL entries for one transaction—your bookkeeper now audits this manually. Scale this: 3% of your invoices carry a tax ID defect. At 500 invoices per month, that's 15 rejections. 15 × ₹2,000 per rejection = ₹30,000 per month in hidden cost. And that does not include the compounded GL risk. Real-time API audit: How it works A real-time tax ID validator sits between your invoice form and your invoice generation. The moment a customer enters their tax ID, the system does three checks: Registry lookup. Query LHDN (Malaysia), ACRA (Singapore), DJP (Indonesia), or equivalent. Does this tax ID exist? Is it active? Name match. Pull the registered legal name from the registry. Compare it character-by-character against what the customer provided. Flag case mismatches, spacing divergence, or abbreviations that don't align. Jurisdiction routing. Confirm the tax ID belongs to the jurisdiction where this invoice will be submitted. A Singapore UEN should not route to an invoice filed as Malaysia GST. If all three pass, the invoice generation proceeds. If any fail, the customer sees a clear error message: "Tax ID not found in registry" or "Registered name mismatch—please correct to 'XYZ Company Pte Ltd' and resubmit." No invoice number is assigned. No GL entry is created. Real-time validation moves the friction point from after invoice generation to before. The customer corrects the tax ID in the same session. Your AR team never sees the bad invoice. Mapping the registry APIs by region Malaysia (LHDN MyInvois API) : LHDN publishes a tax ID validation endpoint as part of the MyInvois framework. It returns active/inactive status and registered business name. Integration takes 2–4 hours. Cost: free (government API). Singapore (ACRA UEN lookup) : ACRA offers a public UEN search and a paid API for real-time batch validation. The API costs SGD 5–50 per month depending on query volume. Response time: <100ms. Returns business name, registration date, and status (active/dissolved/struck off). Indonesia (DJP NPWP validation) : DJP operates a closed NPWP registry, but third-