---
key: upload-a-receipt
title: Upload a receipt and turn it into an expense
audience: staff
section: bookkeeping
routes: ["/bookkeeping/receipts", "/bookkeeping/receipts/upload"]
permissions: ["bookkeeping.receipts.manage"]
features: ["bookkeeping"]
since: 0.0.1
updated: 0.0.1
status: published
summary: "Drop in a photo or PDF of a receipt, let Nova read the vendor, date, total and tax, then check the numbers and confirm it as an expense."
keywords: [receipt scan, receipt photo, OCR, snap receipt, expense from receipt, read receipt, discard receipt]
related: [record-an-expense, set-up-email-in-receipts, add-a-supplier]
---

In the sidebar, open **Bookkeeping**, then **Receipts**. The page address is `/bookkeeping/receipts`. The upload window opens at `/bookkeeping/receipts/upload`.

## Before you start

- A clear photo or a PDF works. Take the photo flat and in good light so the numbers can be read.
- Your role needs permission to manage receipts to upload, read and confirm them.
- Receipts can also arrive by email; see [[set-up-email-in-receipts]].

## Steps

1. Press **Upload receipt**. The **Upload receipt** window opens.
2. Drag the file onto the box that reads **Drag a receipt here, or choose a file.**, or use the file picker. Nova shows Uploading & reading receipt…, then **Receipt uploaded.**, and the window closes.
3. Watch the row's **Status**. It moves from **Ready to read** to **Queued…** and **Reading…**, then to **Read — review** with a confidence percentage. The list refreshes on its own while this happens.
4. Click the row, or choose **Review & confirm** from its actions menu. The **Review & confirm receipt** window opens with the **Date**, **Total** and **Tax** Nova read.
5. Under **Vendor**, pick the vendor. The name Nova read shows as a hint marked (unlinked) until you pick one; press **+ New vendor** if they are not in your list. If you pick none, the expense has no vendor.
6. Check the **Date**, **Total** and **Tax** against the paper and correct anything that was read wrong.
7. Under **Category**, pick the expense account (blank files it as uncategorized), and tick **Paid** if the receipt is already paid, which is usually the case. **Paid** starts unticked.
8. Press **Confirm as expense**. Nova shows **Receipt confirmed as an expense.** and the receipt's status becomes **Confirmed**. The expense now shows on the Expenses page (see [[record-an-expense]]).

## What you see

- The list shows each receipt's **Status**, **Vendor**, **Date**, **Total** and **Tax**, newest first.
- A **Confirmed** receipt stays in the list for reference, but it no longer opens and cannot be discarded; to undo it, void its expense.
- A discarded receipt is removed from the list.
- The search box finds receipts by vendor. Typing confirmed also finds confirmed receipts.

## If something looks different

- The status stays at **Ready to read**: reading did not start, for example because your plan does not include receipt reading. Open the actions menu and choose **Run OCR**, or open the receipt and type the numbers in yourself.
- The status reads **Couldn’t read**: the picture was too blurry, the file was not a receipt, or reading took more than an hour. Choose **Retry OCR**. A receipt in this state cannot be opened for review, so if it still cannot be read, choose **Discard** and record the expense by hand instead; see [[record-an-expense]].
- **Confirm as expense** is greyed out: the **Total** is blank, or the receipt is in a currency that is no longer your organization's currency and can only be viewed.
- Confirming fails with a message about the reference or the closed period: the same rules as a hand-entered expense apply.
- The receipt is a duplicate or not a business cost: choose **Discard** from its actions menu, then **Discard** in **Discard this receipt?**.
- The upload fails with a message to try again: check the list before retrying, because the receipt may have arrived anyway.

[[route:/bookkeeping/receipts/upload|Upload a receipt]]
