Overview
Expenses are tracked with:- Date: When the expense occurred
- Amount: Cost in local currency (decimal precision)
- Category: Organized classification (e.g., Food, Utilities, Supplies)
- Description: Detailed notes about the expense
- Receipt: File upload for documentation
- User: Who recorded the expense
All expenses are tied to the user who created them for audit trail purposes.
Managing Expense Categories
Creating Categories
Before adding expenses, set up your categories:Common Categories
Recommended category structure:- Food & Ingredients: Raw materials for menu items
- Beverages: Alcoholic and non-alcoholic drink supplies
- Utilities: Electricity, water, gas, internet
- Supplies: Napkins, cleaning products, disposables
- Maintenance: Equipment repairs and facility upkeep
- Marketing: Advertising and promotional expenses
- Payroll: Employee wages and benefits (if not using Payroll module)
- Other: Miscellaneous expenses
Recording Expenses
Add a New Expense
Enter Expense Details
Fill in the required fields:
- Date: Select the expense date
- Amount: Enter the cost (supports 2 decimal places)
- Category: Choose from your defined categories
- Description: Add context (vendor name, items purchased, etc.)
Upload Receipt (Optional)
Attach a photo or PDF of the receipt for documentation. Files are stored in
media/receipts/Editing and Deleting
- Edit: Click on an expense to modify details or add a receipt
- Delete: Expenses can be deleted, which also removes associated receipt files
The system automatically tracks which user created each expense for accountability.
Expense Reports
Generate comprehensive expense reports:Report Features
- Total expenses for a given period
- Breakdown by category (top 5 categories)
- Average expense amount
- Detailed list with date, category, description, user, and amount
Generating Reports
Best Practices
Always Upload Receipts
Always Upload Receipts
Attach receipts for expenses over a certain threshold (e.g., $50) for audit compliance and tax purposes.
Use Descriptive Text
Use Descriptive Text
Include vendor names, invoice numbers, and specific items purchased in the description field.
Record Expenses Promptly
Record Expenses Promptly
Enter expenses daily to maintain accurate financial records and avoid forgetting transactions.
Review Monthly
Review Monthly
Generate monthly expense reports to identify spending trends and optimization opportunities.
Categorize Consistently
Categorize Consistently
Use the same categories for similar expenses to ensure accurate reporting and analysis.
Model Reference
The expense system uses two models:ExpenseCategory
| Field | Type | Description |
|---|---|---|
name | CharField(100) | Unique category name |
Expense
| Field | Type | Description |
|---|---|---|
date | DateField | When the expense occurred |
amount | DecimalField(10,2) | Expense cost |
category | ForeignKey | Link to ExpenseCategory (protected) |
description | TextField | Detailed notes |
receipt | FileField | Optional receipt file (stored in receipts/) |
user | ForeignKey | User who recorded the expense |
Integration with Financial Reports
Expense data feeds into the General Report type, which compares:- Total sales vs. total expenses
- Gross profit and margin calculations
- Daily breakdown of revenue and costs
For comprehensive financial analysis, combine expense reports with sales and inventory reports.
Troubleshooting
Cannot Delete Category
Cannot Delete Category
Categories are protected if expenses reference them. Reassign expenses to another category first, or use the “Other” category.
Receipt Upload Fails
Receipt Upload Fails
Check file size (max 10MB) and format (JPG, PNG, PDF recommended). Ensure
MEDIA_ROOT is writable.Expense Not in Report
Expense Not in Report
Verify the expense date falls within the report’s date range and that the report has been regenerated after adding new expenses.
Next Steps: Learn about Payroll Management to track employee compensation.
