Author: @skills-il
Parse and organize Hebrew invoices for Israeli bookkeeping: VAT 1/6 extraction, Tax Authority expense categories, Osek Murshe/Patur recognition, and accountant-ready export. Use when user asks about organizing invoices, expense categorization, VAT extraction, or preparing documents for their accountant. Do NOT use for invoice generation (use israeli-e-invoice instead) or for VAT report filing (use israeli-vat-reporting instead).
npx skills-il add skills-il/tax-and-finance --skill il-invoice-organizerDetermine what documents the user has:
| Document Type | Hebrew | VAT Reclaimable | Categorization |
|---|---|---|---|
| Tax Invoice (300) | חשבונית מס | Yes - extract VAT | Full categorization |
| Tax Invoice/Receipt (305) | חשבונית מס/קבלה | Yes - extract VAT | Full categorization |
| Receipt only (320) | קבלה | No VAT to reclaim | Payment record only |
| Credit Invoice (310) | חשבונית זיכוי | Yes - negative VAT | Reverse original category |
| Proforma (330) | חשבונית פרופורמה | No - not a tax document | For reference only |
Key: Only tax invoices (300, 305) allow VAT input deduction (nikui mas tsumos).
Parse the following fields from each invoice:
| Field | Hebrew | Where to Find | Validation |
|---|---|---|---|
| Supplier name | שם הספק | Header | Must match TIN |
| Supplier TIN | מספר עוסק | Header | 9 digits with check digit |
| Invoice number | מספר חשבונית | Header | Sequential |
| Date | תאריך | Header | DD/MM/YYYY format |
| Net amount | סכום לפני מע"מ | Line items sum | Before VAT |
| VAT amount | סכום מע"מ | VAT line | = Net * 0.18 |
| Total amount | סכום כולל | Bottom | = Net + VAT |
| Allocation number | מספר הקצאה | If above threshold | SHAAM allocated |
For Israeli invoices where only the total (gross) amount is visible:
# VAT extraction from gross amount (כלל השישית)
vat_rate = 0.18 # 18% standard rate
gross_amount = 1180 # סכום כולל מע"מ
# Method: VAT = gross * (rate / (1 + rate)) = gross * (18/118)
vat_amount = gross_amount * (vat_rate / (1 + vat_rate))
# = 1170 * (0.18 / 1.18) = 1180 * 0.1525 = 180
net_amount = gross_amount - vat_amount
# = 1180 - 180 = 1000Shortcut: VAT = Total / 6.556 (approximately 1/6 of the gross, hence "klal hashishit")
Assign each expense to a Tax Authority category:
| Category | Hebrew | Expense Code | Common Examples |
|---|---|---|---|
| Salary & wages | שכר עבודה | 10 | Employee salaries, bonuses |
| Subcontractors | קבלני משנה | 20 | Freelancer invoices |
| Rent | שכירות | 30 | Office, warehouse rent |
| Office supplies | חומרי משרד | 40 | Paper, toner, supplies |
| Communications | תקשורת | 50 | Phone, internet, hosting |
| Professional services | שירותים מקצועיים | 60 | Legal, accounting, consulting |
| Vehicle expenses | רכב | 70 | Fuel, maintenance, insurance |
| Travel | נסיעות | 80 | Flights, hotels, per diem |
| Marketing | שיווק ופרסום | 90 | Advertising, events |
| Insurance | ביטוח | 100 | Business insurance |
| Depreciation | פחת | 110 | Equipment, computers |
| Other | אחר | 999 | Miscellaneous |
Use scripts/categorize_invoices.py for automatic categorization.
Determine supplier and customer business status:
| Status | Hebrew | VAT Treatment | Invoice Type |
|---|---|---|---|
| Osek Murshe | עוסק מורשה | Charges VAT, can deduct input VAT | Tax Invoice (300/305) |
| Osek Patur | עוסק פטור | No VAT charged (under threshold) | Receipt only (320) |
| Amuta (Non-profit) | עמותה | Usually no VAT | Receipt |
| Malkar (Non-profit) | מלכ"ר | No VAT | Receipt |
Important: You can only deduct input VAT (mas tsumos) from tax invoices issued by Osek Murshe suppliers. Receipts from Osek Patur do not have VAT to deduct.
Organize the data for the accountant (ro'eh cheshbon):
Output format (CSV/Excel):
Date, Supplier, TIN, Invoice#, Category, Net, VAT, Total, Notes
15/01/2025, חברת אלפא, 515000000, 1234, קבלני משנה, 10000, 1700, 11700, שירותי פיתוחInclude summary:
User says: "I have 30 invoices from this month. Help me organize them for my accountant" Actions:
python scripts/categorize_invoices.py --input invoices.csvUser says: "I paid 5,850 NIS total for cloud services. What is the VAT portion?" Actions:
User says: "I got an invoice from a freelance designer, but there is no VAT line" Actions:
scripts/categorize_invoices.py -- Categorizes Israeli invoices by Tax Authority expense codes, extracts VAT, and generates accountant-ready reports. Run: python scripts/categorize_invoices.py --helpreferences/expense-categories.md -- Complete list of Tax Authority expense categories with codes, common examples, and special rules for deductibility (vehicle 2/3 rule, entertainment limits). Consult when categorizing unusual expenses.Cause: Rounding differences between line-item VAT and total VAT Solution: Israeli invoices may have rounding differences of up to 1 NIS. Use the VAT amount printed on the invoice (not recalculated). If no VAT line exists, use the 1/6 rule from Step 3.
Cause: Invoice does not clearly state Osek Murshe or Osek Patur Solution: Look for "עוסק מורשה" on the invoice. Check TIN on Tax Authority website. If unclear, treat as Osek Patur (no VAT deduction) and flag for accountant review.
Cause: Invoice description is vague or multi-category Solution: Use the primary purpose of the expense. When in doubt, assign to "Other" (code 999) and let the accountant reclassify. Common confusion: software subscriptions (Communications 50, not Office supplies 40).
Supported Agents
Trust Score
Navigate and analyze Israeli corporate annual reports, financial filings, and regulatory disclosures
Analyze Tel Aviv Stock Exchange securities, indices, and corporate disclosures
Navigate the Israeli pension and savings system including pension funds (keren pensia), manager's insurance (bituach menahalim), training funds (keren hishtalmut), and retirement planning. Use when user asks about Israeli pension, "pensia", "keren hishtalmut", retirement savings, "bituach menahalim", pension contributions, or tax benefits from savings. Covers mandatory pension, voluntary savings, and withdrawal rules. Do NOT provide specific investment recommendations or fund performance comparisons.
Want to build your own skill? Try the Skill Creator · Submit a Skill