Skip to main content

Track expenses and receipts

Record spending, receipts, vendors, payment status, and client reimbursement context.

Written by Geoff Mina

Track expenses to understand spending, connect costs to clients and projects, preserve receipts, log business mileage, and identify costs that should be reimbursed or invoiced.

Create an expense

  1. Select New expense → One-time expense. Expense is selected under Type; choose Mileage instead to log a trip (see Track mileage).

  2. Enter the amount, currency, and description. Use a negative amount when you need to reverse an earlier expense; Moxie does not have a separate refund workflow for expense records.

  3. Enter tax as either a rate or an amount, and Moxie works out the other. Turn on Included when the amount already contains the tax. A tax amount you type stays exact as you change the amount or Included, until you type a rate instead.

  4. Choose a category and vendor when applicable.

  5. Set the payment status and date.

  6. Connect the client and project when the cost belongs to client work.

  7. Add notes and select receipt files. The first photo or PDF receipt you add to a new expense is read automatically to fill in the form.

  8. Save. Files selected on a new expense upload after the expense record is created.

Scan a receipt

Let Moxie read a receipt and fill in the expense for you:

  1. Select New expense → Scan a receipt and choose a photo or PDF of the receipt (JPEG, PNG, WebP, GIF, or PDF).

  2. Moxie opens a new expense with the receipt attached and reads it. You can keep typing while it works.

  3. Review the message at the top of the editor, which lists the fields filled from the receipt, and correct anything that's wrong.

  4. If the merchant doesn't match one of your vendors, select Add “merchant” as a vendor to create it with the receipt's details.

  5. Select Save. Scanning only fills in the form; nothing is recorded until you save.

Scanning can fill the amount, date, vendor, currency, tax, category, description, and notes. It only fills fields you haven't changed yet, so anything you've already typed stays. The amount is the receipt total with tax Included. The same scan runs when you add the first photo or PDF receipt to any new expense, so you can also start with One-time expense and attach the receipt. Receipts added to an existing expense or a mileage entry are attached without scanning.

Receipt scanning is a Moxie Assistant feature. In a paid workspace, you need an assigned Moxie Assistant license; during a trial, each scan uses one of the workspace's trial credits. Without access, the editor shows Receipt scanning needs Moxie Assistant, the receipt is still attached, and you enter the details yourself. To assign a license, see Manage Assistant licenses and access.

A new expense filled in from a scanned receipt, with a message listing the fields filled from the receipt, the attached receipt, amount, tax, description, category, and vendor

Check the fields filled from the receipt before saving; everything stays editable.

Track mileage

Log business driving as a mileage expense, and Moxie works out what it's worth:

  1. Select New expense → One-time expense and choose Mileage under Type.

  2. Set the Trip date.

  3. Enter the From and To addresses and pick each one from the suggestions. Moxie calculates the one-way driving distance once both ends are chosen. You can also select Calculate, or type the distance yourself.

  4. Turn on Return to the start for a round trip; the distance counts twice.

  5. Check the Rate. In US workspaces it follows the IRS standard business mileage rate for the trip date. Type your own rate to override it, and select Use IRS rate to go back. Outside the US, enter the rate you use.

  6. Describe the business Purpose, such as a client meeting or site visit. The category defaults to Mileage.

  7. Connect the client and project, and turn on Bill this to the client when the trip should be reimbursed.

  8. Save.

The amount is the distance times the rate, doubled for a round trip, in your workspace currency. Mileage expenses have no tax or vendor and are recorded as paid on the trip date. Each saved trip keeps its own rate, so later rate changes never alter it. Distances use miles in US and UK workspaces and kilometers elsewhere. If the IRS hasn't published the rate for a trip date yet, Moxie uses the latest published rate and says so under the field. The type can't be changed after saving; to switch between an expense and mileage, delete the entry and create it again.

A new mileage expense with trip date, from and to addresses, round trip switch, calculated distance, IRS standard rate, and the calculated amount

Pick both addresses from the suggestions and Moxie fills in the distance and the amount.

Categorize imported bank transactions

When you connect a bank through Plaid, Moxie imports its transactions as expenses and fills in what it can:

  • Categories from the bank. Moxie maps the bank's own category for each transaction to the closest Moxie category, such as software, travel, or meals. When the bank isn't confident, or the transaction isn't a business expense, the category stays blank for you to choose rather than guessing.

  • Only real spending. Credit card payments and transfers to savings or investment accounts are skipped, because the card purchases themselves are already imported. The import status says how many were skipped. Other transfers, withdrawals, and loan payments still import, since they can pay contractors or include deductible interest.

Moxie remembers your corrections

When you change the category or vendor of an imported expense, Moxie remembers it for that merchant. Future transactions from the same merchant arrive with your category and vendor already filled in. Moxie recognizes a merchant even when the bank adds store numbers or dates to its name. Payments that carry no merchant details, such as Zelle, ACH, and checks, are recognized by the name the bank shows.

  • Category and vendor are remembered separately, so correcting only the category doesn't change the vendor Moxie assigns.

  • Clearing a category or vendor on an imported expense makes Moxie forget it for that merchant.

  • Corrections made in bulk count too, so fixing a batch of transactions teaches Moxie all of them at once.

  • Only bank-imported expenses teach Moxie. Expenses you enter by hand never change what it remembers.

  • Already-imported expenses aren't changed; what Moxie remembers applies to transactions imported afterward.

To connect or manage a bank, see Connect bank and accounting data.

Understand the expense overview

  • Total spending is the expense value in the selected period.

  • Unpaid identifies recorded expenses that have not been paid.

  • To reimburse shows client-related expenses still awaiting reimbursement or invoicing.

  • Tax summarizes tax captured in the current view.

The Expenses page with date controls, KPIs, spending chart, filters, and an expense table that includes a Receipt column

The chart separates paid and unpaid spending while the table explains the vendor, client, project, status, and reimbursement state.

Find and group expenses

The Receipt column shows a receipt icon when an expense has attached files and a dash when it doesn't. Sort by the column to bring expenses missing receipts together. Select the icon to preview the receipt without opening the expense; when an expense has several files, use the previous and next controls and the position counter, such as 2 / 3, to move between them.

Mileage expenses show a car icon and their distance, such as 24.6 mi round trip. Use the Type filter to show only expenses or only mileage.

Search by description, category, vendor, or client. Use filters for relevant expense attributes and group by vendor, category, client, payment status, or date. For a custom date range, enter both dates and select Apply. Select a row to edit the expense in place.

Edit several expenses at once

Select the checkbox on each expense you want to change, or the checkbox in the header to select every expense in the view. A bulk edit bar shows how many are selected and their total. Use Category or Vendor to set either one on every selected expense, Move to assign a client or project, Reimbursable to bill them to the client or stop billing them, Status to mark them paid or unpaid, or Delete. Actions that don't apply to every selected expense, such as billing an expense with no client, explain why. Vendor and Status skip mileage expenses, which never have a vendor and are always paid.

The Expenses table with two expenses selected and the bulk edit bar showing Category, Vendor, Move, Reimbursable, Status, and Delete

The bulk edit bar appears as soon as one expense is selected.

Open the saved-view selector at the beginning of the toolbar to save the current date range, filters, grouping, sorting, and collapsed groups for reuse. Saved views are personal to you, and search text stays temporary.

Current-year expense dates stay compact. Historical or future-year dates include the year; custom ranges show years on both endpoints when either endpoint is outside the current year.

Pay an expense after billing the client

Adding an expense to a client invoice locks its amount, tax, currency, and client-billing details so the issued charge stays consistent. It does not mean the vendor has been paid. Reopen the expense later to change its payment status and paid date when you actually pay the vendor.

Expenses managed by an accounting connection or matched bank transaction can remain locked by that source.

Create repeating spending

Choose New expense → Recurring expense when the expense should be generated on a schedule. Enter the tax rate and use Included to say whether tax is already part of the amount. Each generated expense keeps that tax treatment. Moxie opens the shared recurring schedules workflow so the schedule can be monitored with recurring invoices and income.


Continue exploring Money

Did this answer your question?