---
title: "Scan an expense receipt and create the expense"
method: POST
path: "/expenses/scan-and-create"
tags: ["Expenses"]
---

# Scan an expense receipt and create the expense

`POST /expenses/scan-and-create`

Scans the uploaded receipt or invoice file, extracts expense fields, and creates an expense record for the authenticated user. The scan language is inferred from the user's account settings locale (fallback: `en`), and existing expense categories and payment methods from the user's account are used as suggestions during extraction.

## Response `201`

Expense scanned and created

## Other responses

- `400` — Invalid multipart request or missing file
- `401` — Unauthorized
- `500` — Internal Server Error
- `502` — Expense scan failed
- `503` — Expense scan temporarily unavailable

---

[API](https://skmtc.dev/vocal/apis/magic-heidi-invoicing-software-api.md) · [All operations](https://skmtc.dev/vocal/apis/magic-heidi-invoicing-software-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vocal/magic-heidi-invoicing-software-api/revisions/591ae048f0a0/schema)
