Tax Rates
Configure tax rates, tax groups, and tax exemptions for your organization.
Overview
The Tax Rates module allows you to:
- Create and manage tax rates (VAT, GST, Sales Tax)
- Combine multiple tax rates into tax groups
- Configure tax exemptions for items and customers
- Set default tax rates
- Generate tax reports
Tax Rates
Adding a Tax Rate
-
Navigate to Tax Rates
- Go to Settings > Tax Rates
- Click "Add Tax Rate"
-
Tax Rate Details
- Tax Name: Descriptive name (e.g., VAT 15%, GST 5%)
- Tax Code: Unique code for identification
- Tax Type: VAT, GST, Sales Tax, or Custom
- Rate Percentage: Tax rate percentage (e.g., 15 for 15%)
- Description: Optional description
- Is Default: Mark as default tax rate
- Is Active: Enable/disable tax rate
-
Save Tax Rate
- Click "Save" to create the tax rate
- Tax rate appears in tax rate list
Tax Rate Fields
Tax Name
- Format: Descriptive name
- Examples: VAT 15%, GST 5%, Sales Tax 8%
- Required: Yes
- Display: Shown in dropdowns and documents
Tax Code
- Format: Unique code
- Examples: VAT15, GST5, ST8
- Required: Yes
- Unique: Yes
- Purpose: Internal identification
Tax Type
- Options: VAT, GST, Sales Tax, Custom
- Purpose: Tax classification
- Required: Yes
- Impact: Affects reporting and calculations
Rate Percentage
- Format: Decimal number (0-100)
- Examples: 15, 5, 8.5
- Required: Yes
- Validation: Must be between 0 and 100
Description
- Format: Text description
- Purpose: Additional information
- Required: No
Is Default
- Type: Boolean
- Purpose: Mark as default tax rate
- Limit: Only one tax rate can be default
- Impact: Applied to items by default
Is Active
- Type: Boolean
- Purpose: Enable/disable tax rate
- Impact: Inactive rates not shown in dropdowns
- Data Preservation: Historical data preserved
Managing Tax Rates
Editing a Tax Rate
- Navigate to tax rate list
- Click on tax rate to edit
- Modify fields as needed
- Click "Save Changes"
- Changes take effect immediately
Deleting a Tax Rate
- Navigate to tax rate list
- Click on tax rate to delete
- Click "Delete"
- Confirm deletion
- Tax rate removed from system
Restrictions:
- Cannot delete default tax rate
- Cannot delete tax rate used in transactions
- Cannot delete tax rate assigned to items
- Set as inactive instead of deleting
Tax Groups
Creating a Tax Group
Tax groups allow you to combine multiple tax rates:
-
Navigate to Tax Groups
- Go to Settings > Tax Rates
- Click "Tax Groups" tab
- Click "Add Tax Group"
-
Tax Group Details
- Group Name: Descriptive name
- Group Code: Unique code
- Description: Optional description
- Tax Rates: Select tax rates to include
- Is Default: Mark as default tax group
- Is Active: Enable/disable tax group
-
Save Tax Group
- Click "Save"
- Tax group appears in list
Tax Group Example
Scenario: A region requires both VAT (15%) and Service Tax (5%)
Tax Group Configuration:
- Group Name: Combined Tax
- Tax Rates: VAT 15%, Service Tax 5%
- Total Rate: 20%
Application:
- Item price: $100
- VAT (15%): $15
- Service Tax (5%): $5
- Total Tax: $20
- Final Price: $120
Managing Tax Groups
Adding Tax Rates to Group
- Navigate to tax group
- Click "Add Tax Rate"
- Select tax rate from list
- Save changes
Removing Tax Rate from Group
- Navigate to tax group
- Click "Remove" next to tax rate
- Confirm removal
- Save changes
Tax Exemptions
Item Tax Exemptions
Configure tax-exempt items:
-
Navigate to Item Tax Exemptions
- Go to Settings > Tax Rates
- Click "Item Exemptions" tab
- Click "Add Exemption"
-
Exemption Details
- Item: Select item or category
- Exemption Type: Full or Partial exemption
- Reason: Exemption reason
- Valid From: Start date
- Valid To: End date (optional)
-
Save Exemption
- Click "Save"
- Item becomes tax-exempt
Customer Tax Exemptions
Configure tax-exempt customers:
-
Navigate to Customer Tax Exemptions
- Go to Settings > Tax Rates
- Click "Customer Exemptions" tab
- Click "Add Exemption"
-
Exemption Details
- Customer: Select customer
- Exemption Type: Full or Partial exemption
- Tax Certificate: Certificate number
- Valid From: Start date
- Valid To: End date (optional)
-
Save Exemption
- Click "Save"
- Customer becomes tax-exempt
Exemption Types
Full Exemption
- No tax applied
- 0% tax rate
- Used for tax-exempt items/customers
Partial Exemption
- Reduced tax rate
- Custom rate applied
- Used for special tax situations
Tax Calculation
Single Tax Rate
Formula:
Tax Amount = Item Price × Tax Rate %
Total Amount = Item Price + Tax Amount
Example:
- Item Price: $100
- Tax Rate: 15%
- Tax Amount: $100 × 0.15 = $15
- Total Amount: $100 + $15 = $115
Tax Group
Formula:
Tax Amount = Item Price × (Sum of Tax Rates in Group)
Total Amount = Item Price + Tax Amount
Example:
- Item Price: $100
- Tax Group: VAT 15% + Service Tax 5%
- Tax Amount: $100 × (0.15 + 0.05) = $20
- Total Amount: $100 + $20 = $120
Tax-Exempt
Formula:
Tax Amount = 0
Total Amount = Item Price
Example:
- Item Price: $100
- Tax Status: Exempt
- Tax Amount: $0
- Total Amount: $100
Tax Reporting
Tax Reports
Generate various tax reports:
- Sales Tax Report: Tax collected on sales
- Purchase Tax Report: Tax paid on purchases
- Tax Summary: Summary of all taxes
- Tax by Rate: Breakdown by tax rate
- Tax Exemption Report: Exempt transactions
Report Configuration
- Date Range: Select reporting period
- Tax Rate: Filter by specific tax rate
- Branch: Filter by branch
- Currency: Report currency selection
- Export: Export to CSV, PDF, or Excel
Tax Compliance
Tax Number Configuration
- Organization Tax Number: Your tax registration number
- Display on Documents: Shown on invoices and receipts
- Required: For tax reporting in many jurisdictions
Tax Invoice Requirements
Ensure invoices include:
- Tax registration number
- Tax rate applied
- Tax amount breakdown
- Total tax amount
- Customer tax number (if applicable)
Tax Periods
Configure tax reporting periods:
- Monthly: Monthly tax reporting
- Quarterly: Quarterly tax reporting
- Annually: Annual tax reporting
- Custom: Custom reporting periods
Best Practices
Tax Rate Management
- Research local tax requirements
- Create all necessary tax rates
- Keep rates updated with changes
- Use descriptive names
- Document tax rate purposes
Tax Group Management
- Group related taxes together
- Use clear group names
- Document group composition
- Regularly review groups
- Update as tax laws change
Tax Exemptions
- Document exemption reasons
- Keep certificates on file
- Set expiration dates
- Regularly review exemptions
- Remove expired exemptions
Tax Reporting
- Generate regular tax reports
- Reconcile with tax authorities
- Keep records for required period
- Backup tax data
- Use for tax filing
Compliance
- Stay updated on tax laws
- Consult tax professionals
- Maintain accurate records
- Implement proper controls
- Regular compliance audits
Troubleshooting
Tax Not Calculating Correctly
- Verify tax rate is correct
- Check if item is tax-exempt
- Verify customer is not tax-exempt
- Check tax group configuration
- Test with sample transaction
Cannot Delete Tax Rate
- Check if tax rate is default
- Verify no transactions use rate
- Check if items use rate
- Set as inactive instead
- Contact support if needed
Tax Exemption Not Working
- Verify exemption is active
- Check exemption date range
- Verify item/customer is correct
- Check exemption type
- Contact support if needed
Tax Report Incorrect
- Verify date range is correct
- Check for unposted transactions
- Verify tax rates are correct
- Reconcile with manual records
- Contact support if issue persists
Tax Group Not Applying
- Verify tax group is active
- Check tax rates in group
- Verify group is assigned
- Check for conflicting settings
- Contact support if needed
Database Schema Reference
Tax Rates Table
CREATE TABLE tax_rates (
id INT PRIMARY KEY AUTO_INCREMENT,
organization_id INT,
name VARCHAR(100) NOT NULL,
code VARCHAR(20) NOT NULL UNIQUE,
type ENUM('VAT', 'GST', 'SALES_TAX', 'CUSTOM') NOT NULL,
rate DECIMAL(5, 2) NOT NULL,
description TEXT,
is_default BOOLEAN DEFAULT 0,
is_active BOOLEAN DEFAULT 1
);
Tax Groups Table
CREATE TABLE tax_groups (
id INT PRIMARY KEY AUTO_INCREMENT,
organization_id INT,
name VARCHAR(100) NOT NULL,
code VARCHAR(20) NOT NULL UNIQUE,
description TEXT,
is_default BOOLEAN DEFAULT 0,
is_active BOOLEAN DEFAULT 1
);
Tax Group Rates Table
CREATE TABLE tax_group_rates (
id INT PRIMARY KEY AUTO_INCREMENT,
tax_group_id INT,
tax_rate_id INT,
FOREIGN KEY (tax_group_id) REFERENCES tax_groups(id),
FOREIGN KEY (tax_rate_id) REFERENCES tax_rates(id)
);