You've found the right contractor in Jakarta. The statement of work is signed. The first invoice arrives in your inbox. Then MyInvois rejects it. No rejection code. Just a red flag and a 48-hour deadline to resubmit. Three days later, your contractor is still waiting for payment because LHDN (Indonesia's tax authority) is holding the invoice hostage for a field you didn't know existed. This happens to roughly 1 in 3 agencies on their first Indonesian hire. The rejection reasons hide in field placement, NPWP format validation, and withholding percentage rules that no invoicing template captures. The fix is not complicated—but it has to happen before the invoice leaves your system. NPWP Format and Validation Rules An Indonesian Tax Identification Number (NPWP) is 15 digits, and every digit position has meaning. If your contractor gives you a 16-digit string or skips the country code in position 13–15, MyInvois will reject it at validation. The NPWP structure: Digits 1–2: Serial number issued by LHDN (01–99, rarely 00) Digits 3–5: Branch code (usually 000 for single-location businesses) Digits 6–8: Serial sequence within branch Digits 9–12: Registration year and month (YYYYMM) Digits 13–15: Country code (IDN for Indonesia) A valid NPWP looks like this: 12.345.678.9-123.456 (formatted with separators) or 123456789123456 (unformatted). MyInvois accepts both, but your system must validate the unformatted string as exactly 15 numeric digits before submission. Common rejection: contractor supplies 16 digits, or omits leading zeros in positions 1–2. Always ask for the formatted version from their LHDN registration letter and strip all non-numeric characters before validation. Withholding Percentages and Expense Category Codes Indonesia applies withholding tax (pajak penghasilan, or PPh) at different rates depending on the contractor's service type and whether they hold an NPWP. The withholding code and percentage must appear in the invoice line item or as a separate deduction line. Standard withholding rates for contractors (with NPWP): Consulting and professional services (PPh 21): 10–15% (depending on whether contractor registers as CV or solopreneur) Freelance creative services (design, copywriting, video): PPh 21 at 10% IT and software development: PPh 21 at 10–15% (LHDN classifies this as consulting) Temporary labor or hourly work: PPh 21 at 5–10% If your contractor does not hold an NPWP, withholding jumps to 20–30% and MyInvois will flag the invoice as non-compliant with LHDN's registry. Always request the NPWP before drafting the invoice. The withholding code must appear in the MyInvois XML as a separate tax line, not buried in the total. If you use an invoicing platform without native Indonesia tax support, the system will either omit the withholding code entirely (rejection) or apply a generic tax rate that does not match the contractor's service type (audit risk). MyInvois and e-Faktur Field Placement Indonesia's e-invoicing system (MyInvois) replaced the older e-Faktur in 2024. If your contractor or you are still using e-Faktur, invoices will not route correctly to LHDN and payment holds indefinitely. Confirm which system your tax accountant is using. Critical MyInvois field validation: Contractor NPWP field: Must appear in the "Buyer NPWP" or "Supplier NPWP" field (depending on invoice direction), not in a memo or description. Position: XML tag <ByrNPWP> or <SellerNPWP>. Invoice type code: Freelance/contractor invoices use code 01 (Standard Invoice), not 02 (Credit Note) or 08 (Advance Payment). Incorrect code triggers automatic rejection. Service description: Must match the withholding category. "Consulting services" triggers PPh 21 at 15%; "Programming and IT services" triggers PPh 21 at 10%. Vague descriptions like "Services rendered" cause LHDN to flag for manual review (2–3 week delay). Withholding tax line: Appears as a separate line item with tax code PPh21, not netted against the total. Total shown is gross; withholding is shown separately; net payment to contractor is gross minus withholding. Currency: Must be IDR. Multi-currency invoices are not supported in MyInvois; convert to IDR at the exchange rate on invoice date and document the rate in notes. If your invoicing or billing system does not natively support MyInvois, you will be manually copying fields into the MyInvois portal—which introduces typos and field-order errors. Many small agencies and service firms discover this too late, after the first five invoices are rejected. Five Rejection Patterns and How to Prevent Them 1. NPWP format mismatch (30% of rejections) Contractor provides NPWP as written on their certificate (with hyphens and periods). Your system strips the hyphens but leaves a leading zero intact. MyInvois validation fails because the unformatted string does not match the 15-digit registry. Fix: Strip all non-numeric characters, validate as exactly 15 digits, the