Documentation

Learn how to get the most out of All Expenses Paid!

Getting Started

Creating Your Account

Sign up at allexpensespaid.app to start your 14-day free trial. No credit card is required.

During registration, you'll choose between two account types:

Personal Account

For individuals and freelancers. Single-user account with Basic ($3.99/month) or Pro ($9.99/month) plans.

Business Account

For teams. Includes team member invitations and role-based access. Available on Pro (5 users), Enterprise (10 users), or Enterprise Plus (25 users).

Your Dashboard

After logging in, your dashboard shows a financial snapshot including total debits, credits, and tax amounts. Use the quick action buttons to add expenses, import CSVs, or generate reports.

Default Settings

Visit your Profile page to configure your default currency (CAD, USD, EUR, GBP, and 6 more) and default tax rate. Set your tax rate to 0% if you don't need tax tracking. These defaults are applied automatically when you add new transactions and are used to display your currency on all reports.

Multi-Currency Support

You choose your default currency during signup. You can change it later from your Profile page with a Pro+ subscription. Your default currency is the "home" currency used across your dashboard, reports, and manual entries.

Foreign currencies can appear on your transactions in three ways:

  • Forex detection - If your bank statement description mentions a foreign currency (e.g., "5.66 USD @ 1.395"), the system automatically flags it with a blue Forex badge and shows the original foreign amount in parentheses below. Tax is not auto-applied to foreign currency transactions, as purchases made outside your country are generally not subject to local recoverable taxes. You can manually add tax to these transactions if required.
  • Foreign currency import Business Pro+ - If you have a credit card or bank account denominated in a different currency, create an import template set to that currency. Imported transactions display with a USD currency badge and an estimated conversion to your default currency in parentheses below.
  • Manual entry - When adding an expense manually, you can select any supported currency. The system converts it to your default currency using monthly average exchange rates.

How Amounts Display

All amounts display with the currency symbol only — no currency code prefix. Native transactions show -$7.90. Foreign currency transactions show the same clean format (e.g., -$45.00) with the currency badge identifying the original currency and an estimated conversion in parentheses below (e.g., (~$62.78)).

Mobile Support

All Expenses Paid is fully responsive and works on phones and tablets. Use your mobile browser to scan receipts with your camera for instant expense creation (Pro+), add expenses on the go, snap receipt photos for upload, and review or approve expense reports from anywhere.

Managing Expenses

Adding Transactions

You can add transactions three ways:

  • AI receipt scan Pro+ - Drop or photograph a receipt in the Manual Entry modal. AI extracts the vendor, date, amounts, tax, tip, and currency to pre-fill the form. The receipt auto-attaches to the transaction after saving. Images are automatically cropped to the receipt edges and rotated correctly.
  • Manual entry - Click "Add Manual Entry" on the Expenses page. Fill in the date, description, amount (debit or credit), and optionally a category, tip amount, and notes. Once you start typing, the receipt area switches to "Attach a Receipt" mode — you can still attach a photo without AI extraction.
  • CSV import - Bulk import from your bank's CSV export. See the CSV Import section below.

When scanning a receipt, the system also suggests a category based on your past transaction history for the same vendor. For new vendors, AI categorization uses the receipt details (vendor name, line items, tip presence) to suggest the best match from your existing categories.

Privacy control: Company administrators can disable AI data sharing from Company Settings. When disabled, receipt scan becomes attach-only and auto-categorization uses local pattern matching only — no data is sent to external AI providers. All other features continue working normally.

Quick Category Assignment

You can assign or change a transaction's category directly from the expenses list using the inline category picker - no need to open an edit modal. Click the category badge (or the "Uncategorized" label) on any transaction to get a searchable dropdown of all your categories. This also works in the bulk assign and edit modals for fast batch categorization.

Filtering & Sorting

The Expenses page offers powerful filtering:

  • Date range - Filter by start and end date
  • Amount range - Set minimum and maximum amounts
  • Transaction type - All, debits only, credits only, or uncategorized
  • Categories - Multi-select category filter
  • Accounts - Filter by bank account name

Click any column header to sort. All filter and sort states persist in the URL, so you can bookmark specific views.

Saved Views

Pro+

Save your favorite filter and sort combinations as named views for one-click access. Great for recurring tasks like "This month's uncategorized" or "Business expenses by date".

Tip Tracking

For expenses that include a tip (such as restaurant bills), you can record the tip amount on any transaction via the Edit or Manual Entry forms. Tax is then calculated on the pre-tip amount only, since tips are not taxable.

Categories can be marked as tip-eligible (e.g., Dining Out, Entertainment). Transactions in tip-eligible categories that don't have a tip entered are flagged with an amber "No tip" badge as a reminder.

Split Transactions

Sometimes a single bank transaction covers multiple purposes. A hotel bill might be 3 nights business and 1 night personal. An office supply invoice might include printer paper (Office Expense) and client materials (Cost of Goods Sold). Split Transactions let you divide one imported transaction into two or more child transactions, each with its own category, amount, and notes.

How to Split a Transaction

  1. On the Expenses page, find the transaction you want to split
  2. Click the split icon (a line branching into two) in the actions row beneath the transaction
  3. The modal opens with a default 50/50 split. Adjust amounts, percentages, or add more lines as needed.
  4. For each line, choose a category, enter an amount (or percentage), and optionally add notes
  5. The total of all lines must equal the original transaction amount — a balance indicator shows green when matched
  6. Click Split Expense to save

Amount & Percentage Entry

Each split line has both an amount and a percentage field. Typing in one auto-calculates the other. With exactly two split lines, changing one line automatically adjusts the other to fill the remainder. Use the Even Split button to divide the total equally across all lines.

Editing & Unsplitting

Split transactions appear in the expense grid with a violet left border and a "Split X of Y" badge. Individual split items can be edited for tax, tip, and notes using the dark edit icon — date, description, account, and amounts are locked. For larger changes, use one of these options:

  • Edit Split — Re-open the split modal to change amounts, categories, or the number of lines. This replaces all existing split lines atomically.
  • Unsplit — Reverse the split entirely, restoring the original transaction to its pre-split state. You can then edit it normally or re-split with different values.

Individual child transactions cannot be deleted separately — you must edit the split or unsplit the whole group. This prevents invalid states like a single remaining child. All editing is blocked while a transaction is on an expense report.

Use Cases

  • Personal / Business split — A 4-night hotel stay: 3 nights business ($600) + 1 night personal ($200)
  • Multi-category split — A Staples invoice: $300 printer paper (Office Expense) + $200 client materials (Cost of Goods Sold)
  • Multi-project split — One purchase allocated across different projects with different amounts

How It Works Under the Hood

The original transaction is preserved in the database (for CSV import duplicate detection) but hidden from all grids, reports, and calculations. Only the child transactions participate in your accounting. Each child gets independent tax calculation based on its own category, and can be assigned to projects or included in expense reports individually.

Compatibility

  • CSV re-import — Re-importing the same CSV after splitting still detects duplicates correctly (the original hash is preserved)
  • Expense reports — Children can be added to reports individually. Splitting, unsplitting, and editing splits are all blocked while any child is on an expense report — remove it from the report first.
  • Tax — Each child calculates tax independently using its category’s tax configuration
  • Multi-currency — Foreign currency amounts are proportionally scaled to each child
  • Projects — When you split a transaction that already has project allocations, the children inherit those allocations automatically. Each child can then be re-allocated independently.
  • Receipts — Receipt attachments are shared across all split children. A receipt attached to any child is visible from all siblings, and uploading to any child attaches to the group.
  • AI Categorization — AI auto-categorize is disabled for split children because they share the same description and would receive identical suggestions. Assign categories manually — that’s the whole point of splitting.
  • Sorting — When sorting by date or description, split children are grouped together (1 of 2 above 2 of 2). When sorting by amount or category, they may separate naturally.

Split Transactions are available on all plans, including the free trial.

CSV Import

Import Templates

Every bank exports CSVs differently. Import Templates let you map your bank's column names to the fields All Expenses Paid expects. Create a template once per bank, then reuse it for every import.

Each template configures:

  • Date column and format (e.g., %Y-%m-%d, %m/%d/%Y)
  • Description column (transaction description/memo)
  • Debit and credit columns (or a single amount column)
  • Account column (optional, for multi-account CSVs)
  • Encoding (UTF-8, Latin-1, CP1252, ISO-8859-1)
  • Delimiter (comma, semicolon, tab)

The Import Flow

  1. Navigate to Import and select your template
  2. Upload your CSV file
  3. Preview the parsed transactions - duplicates are automatically detected
  4. Confirm to save all new transactions

Duplicate Detection

Each transaction gets a unique hash based on date, description, amount, and account. If you import the same CSV twice, duplicates are flagged and skipped automatically.

Legitimate Duplicate Overrides

Sometimes real-world transactions look identical — for example, buying two coffees from the same place on the same day for the same price. The system distinguishes between two types of duplicates:

  • Database duplicates — transactions that already exist in your account from a previous import. These are always skipped to prevent true double-counting.
  • Internal duplicates — identical rows that appear multiple times within the same CSV file. These may be legitimate separate purchases.

When internal duplicates are detected, the import preview shows them with a blue badge and a checkbox next to each one. Simply check the box next to any duplicate that is a real, separate transaction and it will be imported alongside the rest. Each overridden duplicate receives its own unique hash so it won't be flagged again on future imports.

Smart Duplicate Detection with Manual Entries

Pro+

If you scanned a receipt to create a manual entry, and the same transaction later appears in your bank CSV import, the system detects the potential duplicate automatically. After import, an amber banner appears on the Expenses page showing how many matches were found.

Click Review to see side-by-side comparisons of each match. For each pair you can:

  • Merge — Your manual entry is kept with all its data (category, tax, tip, notes, receipt, expense claims). The bank account name from the import is applied and the imported record is hidden. This works safely even if the manual entry is on an expense claim.
  • Keep Both — Acknowledges the match but keeps both transactions visible. Useful when they are genuinely different transactions.

You can also click Back to leave matches pending for later review. Matches use a scoring system based on amount (strongest signal), date proximity (credit cards may post 1-5 days after the actual transaction), and vendor name similarity.

Categories & Tax

Hierarchical Categories

Organize your expenses with a tree of categories. Each category has:

  • Group type - Personal, Business, or Other
  • Parent category - Nest sub-categories (e.g., "Office" > "Supplies")
  • Taxable flag - Mark categories where tax applies
  • Default tax rate - Optional per-category tax override
  • Tip-eligible flag - Highlights transactions that may need a tip recorded (e.g., Dining Out)

If you're starting fresh, click "Load Default Categories" to seed a sensible starting set.

Why Track Tax?

Tax tracking is especially valuable for business expenses. In Canada, businesses can claim Input Tax Credits (ITCs) to recover GST/HST paid on eligible purchases. Similarly, businesses in other countries may recover VAT or sales tax. Tracking tax per transaction enables accurate recovery claims at tax time.

For personal expenses, tax tracking is optional - you can set your default tax rate to 0% if you don't need it.

3-Tier Tax Hierarchy

Pro+

Tax rates are resolved with a priority system (highest priority wins):

  1. Category level - A specific tax rate override on the category (e.g., 0% for non-taxable categories)
  2. Company level - Default tax rate set in company settings (Business accounts)
  3. User level - Your personal default tax rate (set in Profile)

Setting any level to 0% explicitly means "no tax" - it will not fall through to the next level. Only leaving a level unconfigured triggers the fallback.

Region Presets

Quickly configure tax settings using region presets for Canadian provinces (HST, GST+PST, etc.), US states, and international regions. Available in both Profile settings and Company settings.

Partial ITC Categories (e.g., Meals & Entertainment)

In Canada, CRA only allows businesses to claim 50% of the GST/HST on meals and entertainment as an Input Tax Credit. You can handle this easily using the per-category tax rate override:

  1. Go to Categories and edit your "Meals & Entertainment" (or "Dining Out") category
  2. Check Taxable and set the Tax Rate Override to half your normal rate (e.g., 6.50% instead of 13% HST)
  3. The system will calculate only the claimable ITC portion on those expenses

Categories with a custom tax rate show an amber badge on the Categories page and in expense claim reports, so approvers can see which items use a special rate. The tax column in your reports will show exactly how much you can claim back.

For more details, see our blog post: Recover Every Dollar: GST/HST Input Tax Credits.

AI Categorization

Pro+

How It Works

All Expenses Paid uses a hybrid categorization system with two layers:

  1. Smart pattern matching - Learns from your historical categorization choices using multi-signal composite scoring. Analyzes description similarity, transaction amounts, debit/credit type, account context, recency, and recurring patterns to make accurate matches. Free and instant.
  2. AI fallback - When patterns don't match with sufficient confidence, the OpenAI API analyzes the transaction description and suggests a category from your existing category list. Only the transaction description is sent - no personal information is ever shared. Pattern analysis context is forwarded to the AI for better accuracy.

The system uses a configurable confidence threshold (default: 70%). Only suggestions above this threshold are applied automatically.

Smart Disambiguation

When the same vendor appears in multiple categories (e.g., Walmart for both Groceries and Electronics), the system uses composite scoring to pick the right one. It considers the transaction amount (a $50 charge is more likely groceries than a $500 charge), whether it's a debit or credit, how recently you used each category for that vendor, and whether the transaction looks like a recurring subscription.

Batch Categorization

Select multiple uncategorized transactions and click "AI Auto-Categorize" to categorize them in bulk. The system processes up to 100 transactions per batch with intelligent retry and backoff.

Exclusions

Some transactions (like transfers between your own accounts) shouldn't be categorized. Add patterns to the Auto-Categorize Exclusions list (found in your profile menu) to skip them automatically.

Reports

Report Types

  • PDF Reports - Professional reports with summary statistics, category breakdowns, and transaction details. Great for sharing with accountants or for tax filing.
  • Excel Reports - Spreadsheet format with the same data, ideal for further analysis or custom calculations.

Report Filters

When generating a report, you can filter by:

  • Date range - Specify start and end dates
  • Category type - Personal, Business, or all

Report Contents

Each report includes:

  • Summary statistics (total debit, credit, tax) - helpful for business tax recovery (e.g., GST/HST ITCs)
  • Category breakdown with hierarchical subtotals
  • Full transaction detail table
  • Date range and filter metadata

Currency in Reports

All amounts are displayed in your default currency (e.g., CAD, USD). Each user's reports reflect their own currency setting, so teams with members in different countries each see amounts in their local currency.

If you have transactions in multiple currencies, reports group them into per-currency sections. Each foreign currency section includes its own subtotals along with an estimated converted total in your default currency, so you can see both the original amounts and an approximate home-currency equivalent at a glance.

Team Management

Business

Company Roles

Business accounts support five roles with different permission levels:

Role Permissions
OwnerFull company control, billing management
AdminUser management, company settings
ManagerExpense approval for their team
FinanceFinancial approval, reimbursement processing
MemberCreate and view own expenses

Inviting Team Members

Company owners and admins can invite new members from the Company Settings page. Enter the user's email address and select their role. They'll receive an email invitation to join your company.

User Limits

  • Pro (Business): Up to 5 team members
  • Enterprise: Up to 25 team members + up to 4 administrators

Expense Reports

Enterprise

The Approval Workflow

Enterprise accounts include a full expense report workflow with configurable approval rules:

Draft Submitted Under Review Approved Paid

Creating a Report

Members create expense reports by selecting business transactions for a specific period. Add a title, date range, and submit for approval. Reports can also be saved as drafts.

Two-Level Approval

Reports go through up to two approval levels:

  1. Manager approval - Managers review and approve reports from their team
  2. Finance approval - Finance role members handle final approval and reimbursement

Approval rules are configurable per company, including amount thresholds and category-based routing.

Project Tracking

Enterprise

Allocate Expenses to Projects

Enterprise accounts can create projects and allocate expenses to them, giving you a clear picture of where your money is being spent across different initiatives, clients, or departments.

Setting Up Projects

Company admins enable project tracking from the company settings page. Once enabled, you can create projects with:

  • Project name and optional project code (e.g., "PRJ-001")
  • Client name for client-facing work
  • Budget to track spending against a target
  • Company-wide flag for shared overhead projects visible to all team members

Allocating Expenses

Allocate expenses to projects directly from the expense grid:

  • Single allocation - Click the folder icon on any expense row to assign it to one or more projects
  • Split allocation - Allocate a single expense across multiple projects with percentage splits (e.g., 60% Project A, 40% Project B)
  • Bulk allocation - Select multiple expenses and assign them all to a project at once

Project Breakdown in Reports

Project allocations appear automatically in your reports:

  • PDF and Excel reports include a Project Breakdown section showing totals per project
  • Excel reports get a dedicated Project Breakdown worksheet tab
  • Expense report claims include project allocation summaries for approvers
  • Each project shows its name, code, client, expense count, and total amount

Security & MFA

Multi-Factor Authentication

Protect your account with multiple MFA options:

  • Email codes - A verification code is sent to your registered email address
  • TOTP (Authenticator app) - Use Google Authenticator, Authy, or any TOTP-compatible app
  • Passkeys / WebAuthn - Use biometric authentication (fingerprint, Face ID) or hardware security keys
  • Backup codes - One-time recovery codes in case you lose access to your primary MFA method

Data Security

  • All connections are encrypted via HTTPS
  • Passwords are hashed using secure one-way hashing
  • Complete data isolation between users - your data is never accessible to other users
  • CSRF protection on all forms
  • Rate limiting on authentication endpoints

Backup & Restore

Exporting Your Data

Navigate to the Backup page from your profile menu. The backup page lets you choose which data types to include in your export using checkboxes: transactions, categories, import templates, saved views, auto-categorize exclusions, and projects (Enterprise plans). Click "Create Backup" to download a .aepbackup file (v1.3 format) containing your selected data. Split transactions are fully preserved, maintaining parent-child relationships.

Restoring Data

The restore process uses a safe two-step flow:

  1. Upload & preview - Upload your backup file and review what it contains (item counts, backup date, source account)
  2. Selective restore - Choose which data types to import using checkboxes. Transactions automatically include categories for proper ID remapping. Projects are available for restore on Enterprise plans.

Cross-User Detection

If you upload a backup that was created by a different account, you'll see a warning and must explicitly confirm before proceeding. This prevents accidental data mixing.

Merge Strategy

Restores use a merge strategy: duplicate items (matching transaction hashes, category names, etc.) are skipped, so restoring the same backup twice is safe.