Disallowed Expenses in Odoo 18 Accounting
By Braincuber Team
Published on January 5, 2026
Tax season arrives and your accountant discovers a problem: the company claimed $45,000 in entertainment expenses, $12,000 in regulatory fines, and $8,000 in personal travel costs as business deductions—but tax regulations prohibit deducting these from taxable income. Now the finance team scrambles through 12 months of transactions, manually identifying which expenses are disallowed, recalculating tax liability, and preparing amended filings. This compliance nightmare costs weeks of effort and potential penalties because the system never flagged these expenses during the year.
Odoo 18 Accounting provides Disallowed Expenses management that automatically tracks which business costs cannot be deducted for tax purposes. Configure disallowed expense categories (entertainment, fines, donations, personal expenses), set percentage rates for partial disallowance, link categories to expense accounts in the Chart of Accounts—and the system automatically calculates disallowed amounts whenever transactions hit those accounts. At year-end, generate compliance reports showing exactly which expenses were disallowed and by how much, eliminating manual review and ensuring accurate tax calculations from day one.
Core Benefit: Configure categories + rates + account links once → system automatically calculates disallowed portion for every matching transaction → year-end reports show exact non-deductible amounts. No manual review, no surprises at tax time.
Understanding Disallowed Expenses
What Are Disallowed Expenses?
Business costs that cannot be deducted from taxable income per tax regulations. Common examples include entertainment expenses, regulatory fines and penalties, charitable donations (limited), and personal expenses claimed as business.
Disallowance Rates
Some expenses are partially disallowed. Meals might be 50% non-deductible, entertainment 100% non-deductible, company cars 25% non-deductible for personal use portion. Rates vary by jurisdiction and expense type.
Account Linking
Expense accounts in Chart of Accounts are linked to disallowed categories. When transactions post to linked accounts, system automatically applies the category's disallowance rate and tracks non-deductible amounts.
Compliance Reporting
Generate detailed reports showing all disallowed expenses with journal items, dates, partners, amounts, and disallowed portions. Export for auditors or tax preparers. Full audit trail for every non-deductible cost.
Common Disallowed Expense Categories
FULLY DISALLOWED (100% Non-Deductible) ═══════════════════════════════════════════════════════════ Entertainment Expenses • Client entertainment (concerts, sporting events) • Company parties and celebrations • Country club memberships • Recreational activities Fines and Penalties • Government regulatory fines • Traffic violations by company vehicles • Late payment penalties to tax authorities • Environmental violation penalties Political Contributions • Donations to political parties • Political campaign contributions • Political advocacy expenses PARTIALLY DISALLOWED (Percentage Non-Deductible) ═══════════════════════════════════════════════════════════ Business Meals (50% Disallowed) • Client lunches and dinners • Team meals during business hours • Food at business meetings • Snacks and refreshments Company Vehicles (25-30% Disallowed) • Personal use portion of company cars • Commuting expenses • Non-business mileage Home Office (% based on personal use) • Mixed-use space adjustments • Personal utilities portion
Step 1: Create Disallowed Expense Categories
Categories define types of non-deductible expenses with their applicable rates. Navigate to Accounting → Configuration → Disallowed Expenses Categories.
Access Disallowed Categories
From Accounting module, go to Configuration menu:
- Click Configuration → Disallowed Expenses Categories
- Existing categories display with Code, Name, Related Accounts, and Current Rate
- Click New to create a new category
Configure Category Details
Enter the category information:
- Code: Short identifier (e.g., "ENT" for entertainment)
- Name: Descriptive name (e.g., "Business Entertainment Expenses")
- Related Account: The expense account(s) linked to this category
- Current Rate: Displays the active disallowance percentage
Set Disallowance Rates
Click Set Rates to configure percentage:
- Start Date: When this rate becomes effective
- Disallowed %: Percentage of expense that cannot be deducted (0-100%)
- Company: Which company this applies to (for multi-company setups)
- Multiple rates can exist with different start dates for rate changes over time
Category Configuration Examples:
CATEGORY 1: Business Entertainment
═══════════════════════════════════════════════════════════
Code: ENT
Name: Business Entertainment
Related Account: 620100 - Entertainment Expenses
Rate Configuration:
Start Date: January 1, 2024
Disallowed %: 100%
Company: TechCorp Industries
Impact: All entertainment expenses posted to account 620100
are 100% non-deductible for tax purposes.
───────────────────────────────────────────────────────────
CATEGORY 2: Business Meals
═══════════════════════════════════════════════════════════
Code: MEAL
Name: Business Meals and Dining
Related Account: 620200 - Meals and Entertainment
Rate Configuration:
Start Date: January 1, 2024
Disallowed %: 50%
Company: TechCorp Industries
Impact: 50% of meals expense is non-deductible.
$500 meal expense → $250 disallowed, $250 deductible
───────────────────────────────────────────────────────────
CATEGORY 3: Fines and Penalties
═══════════════════════════════════════════════════════════
Code: FINE
Name: Regulatory Fines and Penalties
Related Account: 680100 - Fines and Penalties
Rate Configuration:
Start Date: January 1, 2024
Disallowed %: 100%
Company: TechCorp Industries
Impact: All fines and penalties are fully non-deductible.
$5,000 parking fine → $5,000 disallowed, $0 deductible
───────────────────────────────────────────────────────────
CATEGORY 4: Company Vehicle Personal Use
═══════════════════════════════════════════════════════════
Code: VEHP
Name: Vehicle Expenses - Personal Use Portion
Related Account: 620500 - Company Vehicle Expenses
Rate Configuration:
Start Date: January 1, 2024
Disallowed %: 25%
Company: TechCorp Industries
Impact: 25% of vehicle expenses are non-deductible (personal use).
$2,000 vehicle expense → $500 disallowed, $1,500 deductible
Step 2: Link Categories to Chart of Accounts
Connect disallowed expense categories to specific expense accounts so the system automatically applies rates to transactions.
Access Chart of Accounts
Navigate to account configuration:
- Go to Accounting → Configuration → Chart of Accounts
- Find or create the expense account to link
- Click on the account to open its configuration
Set Disallowed Expense Category
Link the account to a disallowed category:
- In account settings, find Disallowed Expenses field
- Select the appropriate category from dropdown
- Save the account configuration
- All future transactions to this account will have disallowed amounts calculated
Account Linking Examples:
EXPENSE ACCOUNT CONFIGURATION ═══════════════════════════════════════════════════════════ Account: 620100 - Entertainment Expenses Type: Expenses Disallowed Expenses Category: Business Entertainment (100%) Reconciliation: No Account: 620200 - Meals and Entertainment Type: Expenses Disallowed Expenses Category: Business Meals (50%) Reconciliation: No Account: 680100 - Fines and Penalties Type: Expenses Disallowed Expenses Category: Fines and Penalties (100%) Reconciliation: No ═══════════════════════════════════════════════════════════ WHAT HAPPENS WHEN TRANSACTIONS HIT THESE ACCOUNTS ═══════════════════════════════════════════════════════════ Example 1: Entertainment Expense Transaction: $2,500 posted to 620100 (Entertainment Expenses) Category Rate: 100% disallowed Result: Disallowed Amount = $2,500 (fully non-deductible) Example 2: Client Dinner Transaction: $450 posted to 620200 (Meals and Entertainment) Category Rate: 50% disallowed Result: Disallowed Amount = $225 (50% non-deductible) Example 3: Regulatory Fine Transaction: $8,000 posted to 680100 (Fines and Penalties) Category Rate: 100% disallowed Result: Disallowed Amount = $8,000 (fully non-deductible)
Step 3: Managing Disallowed Expenses in Transactions
Once configuration is complete, disallowed expense tracking happens automatically through regular business transactions.
Purchase Orders
When creating purchase orders for disallowed expenses:
- Create purchase order specifying the product/service
- Product should be linked to expense account with disallowed category
- Confirm purchase order and receive goods/services
- System tracks the expense account association
Vendor Bills
When recording vendor bills:
- Create bill from purchase order or manually
- Verify expense account linked to disallowed category is applied
- On bill validation, system calculates disallowed amount
- Journal entry includes disallowed expense tracking
Transaction Flow Example:
SCENARIO: Client Entertainment Event ═══════════════════════════════════════════════════════════ Step 1: Purchase Order ─────────────────────────────────────────────────────────── Vendor: Bay City Events Product: Corporate Entertainment Package - Category: Services - Expense Account: 620100 - Entertainment Expenses Quantity: 1 Unit Price: $3,500.00 Total: $3,500.00 Step 2: Confirm PO and Receive Services ─────────────────────────────────────────────────────────── PO Status: Confirmed Receipt Status: Done Services Delivered: Yes Step 3: Create Vendor Bill ─────────────────────────────────────────────────────────── Bill Reference: BILL/2026/00147 Vendor: Bay City Events Invoice Date: January 15, 2026 Due Date: February 14, 2026 Bill Lines: Product: Corporate Entertainment Package Account: 620100 - Entertainment Expenses Amount: $3,500.00 Step 4: Disallowed Expense Calculation ─────────────────────────────────────────────────────────── Expense Account: 620100 - Entertainment Expenses Disallowed Category: Business Entertainment Disallowed Rate: 100% Calculation: Total Expense: $3,500.00 Disallowed %: 100% Disallowed Amount: $3,500.00 Deductible Amount: $0.00 Result: Full $3,500 recorded as non-deductible for tax purposes
Step 4: Reporting Disallowed Expenses
Odoo 18 provides comprehensive reporting to track, analyze, and export disallowed expense data for tax compliance.
Access Disallowed Expenses Report
Navigate to the report:
- Go to Accounting → Reporting → Disallowed Expenses Report
- Report displays all transactions with disallowed amounts
- Filter by date range, category, account, or company
Export and Analysis Options
Additional report features:
- PDF Export: Generate printable report for auditors
- XLSX Export: Download to Excel for further analysis
- General Ledger: Drill down to account-level details
- Annotate: Add notes or footnotes for clarity
Sample Report Output:
DISALLOWED EXPENSES REPORT Company: TechCorp Industries Period: January 1, 2026 - March 31, 2026 ═══════════════════════════════════════════════════════════ ENTERTAINMENT EXPENSES (100% Disallowed) ─────────────────────────────────────────────────────────── Date | Partner | Debit | Disallowed Jan 15 | Bay City Events | $3,500 | $3,500 Jan 28 | Sports Arena Inc | $2,200 | $2,200 Feb 10 | Concert Tickets Ltd | $1,800 | $1,800 Mar 05 | Golf Club Outing | $950 | $950 ─────────────────────────────────────────────────────────── SUBTOTAL: | $8,450 | $8,450 MEALS AND ENTERTAINMENT (50% Disallowed) ─────────────────────────────────────────────────────────── Date | Partner | Debit | Disallowed Jan 08 | Downtown Steakhouse | $450 | $225 Jan 22 | Business Lunch | $125 | $62.50 Feb 03 | Client Dinner | $380 | $190 ─────────────────────────────────────────────────────────── SUBTOTAL: | $955 | $477.50 FINES AND PENALTIES (100% Disallowed) ─────────────────────────────────────────────────────────── Date | Partner | Debit | Disallowed Feb 28 | City Parking Auth | $350 | $350 Mar 15 | EPA Fine | $5,000 | $5,000 ─────────────────────────────────────────────────────────── SUBTOTAL: | $5,350 | $5,350 ═══════════════════════════════════════════════════════════ GRAND TOTAL ═══════════════════════════════════════════════════════════ Total Expenses in Report: $14,755.00 Total Disallowed Amount: $14,277.50 Total Deductible Amount: $477.50 TAX IMPACT SUMMARY ───────────────── Taxable Income Adjustment: Add back $14,277.50 At 25% tax rate = Additional tax liability of ~$3,569.38
Best Practices
✅ Follow These Guidelines:
- Consult tax professionals: Disallowance rates vary by jurisdiction—work with accountants to determine correct rates
- Use specific accounts: Create dedicated expense accounts for disallowed categories for cleaner tracking
- Set effective dates: Tax rules change—use rate effective dates to apply correct percentages for each tax year
- Review quarterly: Generate disallowed expense reports quarterly to catch issues early
- Train expense submitters: Ensure employees understand which expense categories trigger disallowance
- Archive reports: Export and save disallowed expense reports for each tax year for audit documentation
Common Mistakes to Avoid
🚨 Mistake #1: Using Wrong Disallowance Rate
Setting 50% when regulations require 100% = incorrect tax calculations. Solution: Verify rates with tax professional before configuration.
🚨 Mistake #2: Not Linking All Relevant Accounts
Entertainment expenses posted to unlinked account = disallowance not tracked. Solution: Ensure all expense accounts for non-deductible items are linked to appropriate categories.
🚨 Mistake #3: Forgetting Rate Changes
Tax law changes but rate not updated = incorrect calculations. Solution: Review and update rates whenever tax regulations change.
Conclusion
Managing disallowed expenses in Odoo 18 Accounting transforms tax compliance from a year-end scramble into an automated, real-time process. Configure disallowed expense categories with appropriate rates (entertainment at 100%, meals at 50%, vehicle personal use at 25%), link categories to expense accounts in the Chart of Accounts, and let the system automatically calculate non-deductible portions for every matching transaction. Generate comprehensive reports showing exactly which expenses are disallowed, export data for tax preparers and auditors, and maintain complete audit trails of all non-deductible costs.
🎯 Key Takeaway: Category + Rate + Account Link = automatic disallowed expense tracking. Configure once, track every transaction automatically, report at year-end with one click. No more spreadsheet reviews, no more missed non-deductible expenses, no more tax filing surprises.
