Skip to main content
The expense tracking module helps you manage all restaurant operational costs, from ingredients to utilities, with full categorization and receipt attachment capabilities.

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:
1

Access Categories

Navigate to Expenses > Categories in the admin panel
2

Add New Category

Click Add Expense Category and enter a unique name
3

Save

Categories are available immediately for expense tracking

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
Categories use PROTECT deletion behavior. You cannot delete a category if expenses are assigned to it.

Recording Expenses

Add a New Expense

1

Navigate to Expenses

Go to Expenses > Add Expense
2

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.)
3

Upload Receipt (Optional)

Attach a photo or PDF of the receipt for documentation. Files are stored in media/receipts/
4

Save

The expense is recorded with your user account for tracking

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

1

Go to Reports Module

Navigate to Reports > Create Report
2

Select Expense Report

Choose Type: Gastos (Expenses)
3

Set Date Range

Define the period: Daily, Weekly, Monthly, or Custom
4

Choose Format

Select PDF, Excel, or CSV based on your needs
5

Generate and Export

Click Generate Report to process data, then export in your chosen format

Best Practices

Attach receipts for expenses over a certain threshold (e.g., $50) for audit compliance and tax purposes.
Include vendor names, invoice numbers, and specific items purchased in the description field.
Enter expenses daily to maintain accurate financial records and avoid forgetting transactions.
Generate monthly expense reports to identify spending trends and optimization opportunities.
Use the same categories for similar expenses to ensure accurate reporting and analysis.

Model Reference

The expense system uses two models:

ExpenseCategory

FieldTypeDescription
nameCharField(100)Unique category name

Expense

FieldTypeDescription
dateDateFieldWhen the expense occurred
amountDecimalField(10,2)Expense cost
categoryForeignKeyLink to ExpenseCategory (protected)
descriptionTextFieldDetailed notes
receiptFileFieldOptional receipt file (stored in receipts/)
userForeignKeyUser 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

Categories are protected if expenses reference them. Reassign expenses to another category first, or use the “Other” category.
Check file size (max 10MB) and format (JPG, PNG, PDF recommended). Ensure MEDIA_ROOT is writable.
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.

Build docs developers (and LLMs) love