# Track expenses and receipts

> Add an expense by hand or scan a receipt with AI, set the type, link a project, attach files, and see where expenses show up in your reports.

- Product: Workspace369
- Documentation version: 2026.3
- Section: Revenue
- Last updated: 2026-10-24
- Canonical source: https://docs.workspace369.com/v/2026.3/finance/track-expenses-and-receipts/

---

To record a cost, open **Expenses** and select **Add Expense**. Choose **Scan invoice/receipt** to have AI read a file and prefill the form, or **Enter manually** to type it in yourself. Review the fields, then save.

Plans: expense tracking and receipt capture start on Specialist, and are included on Commander and Enterprise. Cadet and Voyager don't include them.

## Before you start

- You need the **Expenses** permission. **View** lets you see expenses. **Edit** lets you create and change them. **Full** also lets you delete them.
- To add, rename or delete expense types, you need the **Expense types** permission at the edit level (add and edit) or full level (delete).
- Scanning uses Tokens. See [Tokens and AI billing](/v/2026.3/automation/tokens-and-ai-billing/).
- If your workspace is on Cadet or Voyager, **Add Expense** shows an upgrade message instead of a form. Expenses you already saved can still be opened, edited and deleted.

## Set up expense types

An expense type is the category of a cost, such as travel or software. Add your types first so you can sort and filter later.

1. Open **Settings**, then **Accounting**, then **Expense types**.
2. Select **Add expense type**.
3. Enter a **Name**. Names must be unique.
4. Pick an icon under **Choose an icon** and a **Color**.
5. Select **Save**.

To change a type, open it and select **Save** after your edits, or **Delete**. Deleting asks you to confirm. The warning says expenses that use the type may behave unexpectedly, so check before you delete one that is in use.

You can also add a type while writing an expense. Use the **+** button next to the type field. It appears only if you have permission to add types.

## Add an expense by hand

1. Open **Expenses** and select **Add Expense**, then **Enter manually**.
2. Under **Details**, enter a **Name**. It's required.
3. Add a **Description** if you want one.
4. Enter the **Amount** and the **Date**. Both are required.
5. Choose the **Expense Type**.
6. Optional: open **Line items** to break the expense into rows. Select **Add line item** for each row, and add **Tax** as a flat amount or a percentage. The total becomes the subtotal plus tax. If you type a total that doesn't match the lines, the form shows **Doesn't match line items**.
7. Optional: open **Linked Project** and choose a **Project**.
8. Optional: open **Expense Attachments** and select **Add Attachment** to attach receipts.
9. Select **Add Expense** to save.

On a phone, you can attach a file from your photo library, or choose **Take Photo** to capture a receipt with the camera. On the web, choose **Upload from Computer**. You can also pick files already in your workspace storage.

Attachments are staged until you save. If you leave before saving, they aren't uploaded. While saving, the app shows that it's uploading your receipts.

## Scan a receipt with AI

1. Open **Expenses**, select **Add Expense**, then **Scan invoice/receipt**. The option is marked **Uses AI Tokens**.
2. Choose a file. Scanning accepts PDF, JPG, JPEG, PNG and HEIC. On a phone you can take a photo.
3. Wait while the app reads the file. It shows "Reading your receipt with AI".
4. The expense form opens with the file attached and the fields filled in, under the note "Prefilled by AI". Review every field.
5. Select **Add Expense** to save.

The AI fills in the **Name** (from the vendor), **Amount**, **Date**, **Description**, a suggested type, tax and line items where it can. The amount is saved in your workspace currency with no conversion, so check receipts in another currency. It only picks a type from your own list, or leaves it blank if none fits. If it's unsure, you see "Low confidence" next to the type. Check it.

Limits and what to expect:

- Images over 10 MB: the app offers **Optimize & scan** or **Add manually**.
- PDFs over 30 MB, and other files over 10 MB, can't be scanned. You can still add them as an expense by hand.
- You're charged Tokens only when the AI produces a usable result. If it can't read the file as a receipt or invoice, the form opens empty with the file attached and the message "Couldn't read this as an invoice — fill it in." No Tokens are used for that.
- If your Tokens are used up, the app shows the top-up sheet. Add Tokens, or use **Enter manually**.
- You need at least 30 Tokens in the balance to start a scan. The cost of a scan depends on the file.

## Find and review expenses

On **Expenses**, use the search box (**Search Expense**) to find an expense by name. Switch between **List**, **Grid** and **Table** views.

- **Sort By**: date (newest or oldest first) or amount (highest or lowest first).
- **Expense Type**: show one type only. A **Type Total** appears next to the filter.
- **Clear Filters** resets them.

Expenses are grouped by date in list view. Open a row to see its details, and use **Edit** or **Delete** if you have permission. In an existing expense, the type can't be changed from the view screen.

## Link expenses to a project

Open an expense and use **Linked Project**. You can link many at once:

1. On **Expenses**, select **Select** and tick the expenses.
2. Choose **Link to Project**, pick a **Project**, then select **Apply**.
3. To remove the link instead, tick **Unlink from project** in the same dialog and select **Apply**.

If no projects are listed, open **Projects** once and try again.

Expenses link to a project only. An expense has no client field.

## Billing an expense to a client

Expenses can't be added to an invoice from the **Expenses** screen. You record the cost here and, if you pass it on, add it to the invoice as a normal line item yourself. See [Create, send, and track an invoice](/v/2026.3/finance/create-send-track-invoice/).

There is no approval step for expenses. Anyone with the **Edit** level on **Expenses** can save one. To bill tracked time instead, see [Track time, timers, and timesheets](/v/2026.3/core-workflows/track-time-and-timesheets/).

## Expense Assist

If the workspace owner has turned on Money Watch in AutoPilot and switched on **Expense Assist** in the section shown on an expense, the owner sees a suggested type there. Nobody else sees it. It uses the expense's name and description, not the receipt file, and each suggestion uses Tokens. It doesn't change the expense. If you agree, select **Save preference**, then use **Edit expense** to change it.

## Where expenses show up

- **Expenses** itself lists every expense, with the type total when you filter by type.
- **Home**: the money chart can show expenses next to revenue, if that figure is turned on in the widget's settings.
- **Accounting**: when Accounting is set up, the form's **Accounting** section lets you set the account an expense posts to. On Commander and Enterprise, the Profit and Loss report groups expenses by account.
- **Job Profitability** (Specialist and above): each expense counts toward the costs of the project it's linked to.
- **Export**: **Settings → Data → Import & export → Export data** includes expense records and categories.

## Troubleshooting

- **Add Expense** shows an upgrade message: your plan is Cadet or Voyager. Expenses start on Specialist.
- You see an access message on **Expenses**: ask an admin for the **Expenses** permission. See [Team access and permissions](/v/2026.3/admin/team-access-and-permissions/).
- The scan opens an empty form: the file wasn't read as a receipt or invoice. Fill it in by hand. The file is still attached and no Tokens were used.
- The scan asks you to add Tokens: your balance is low. Top up, or use **Enter manually**.
- "Couldn't scan — try again": check your connection and try again. If it keeps failing, add the expense by hand.
- You can't change the type of an expense: open it with **Edit** rather than **View**.
- **Accounting** isn't in the form: the section appears only after Accounting is turned on and set up.
