> ## Documentation Index
> Fetch the complete documentation index at: https://docs.melso.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Melso MCP: https://mcp.melso.ai/mcp (OAuth; one company per connection). Documentation-search MCP: https://docs.melso.ai/mcp; it does not act on customer accounts.
>
> Use the live tool list and respect company membership. Ask the person to approve the exact invoice or tax return version in the signed-in app. Melso's professionals prepare and file included returns after approval; an AI assistant does not file. A prepared file or an approval is not evidence of filing: only the AEAT's reference and receipt are. Keep credentials out of chat and logs.

# Expenses and income

> Upload invoices and receipts, see how Melso reads them, review the saved record, and learn what you can edit or delete once a return uses it.

**Ingresos y gastos** (Income and expenses) holds two kinds of record:

* **Expenses**: invoices and receipts you received.
* **Income**: invoices you issued outside Melso, with another program, on a
  platform or before you joined. Invoices you issue with Melso live in
  [Invoicing](/essentials/invoicing) and already count for your taxes.

Both feed your [tax returns](/essentials/taxes).

## Upload a document

Choose **Subir** (Upload), or drag files anywhere onto the page. You can also
upload from Home.

* Accepted files: PDF, JPEG, PNG and WebP.
* Maximum size: 15 MB per file.
* You can add several files at once. Melso reads up to ten at a time and
  queues the rest.
* A scanned PDF with no text is refused with **Este PDF es un escaneo. Súbelo
  como foto.** (This PDF is a scan. Upload it as a photo.)

You can also send a photo or a PDF on [WhatsApp](/essentials/whatsapp), or let
a [connected AI assistant](/mcp/use-cases#record-a-receipt-or-a-supplier-invoice)
upload it.

## How Melso reads a document

While a file is being read, the **Documentos subidos** (Uploaded documents)
panel shows **En cola para leer…** (Queued) and then **Leyendo el documento…**
(Reading the document).

Melso decides from the tax IDs whether you received the document (an expense)
or issued it (an income). A till receipt is an expense. When it is done, a
notice says **Gasto de…** (Expense from) or **Ingreso de…** (Income from) with
a **Ver** (View) link.

Sometimes Melso needs you:

| What you see | What to do |
| - | - |
| **¿Esta factura la emitiste tú o la recibiste?** (Did you issue or receive this invoice?) | Choose **La emití yo (ingreso)** (I issued it, income) or **La recibí (gasto)** (I received it, expense). |
| **No se ha identificado el país. Confírmalo antes de registrar la factura.** (The country was not identified. Confirm it before recording the invoice.) | Confirm the supplier's or customer's country with **Confirmar país** (Confirm country). |
| **No parece una factura ni un ticket.** (This does not look like an invoice or a receipt.) | The file is not an invoice or a receipt. Nothing is recorded. |
| **Esta factura la emitiste con Melso: ya cuenta para tus impuestos.** (You issued this invoice with Melso: it already counts for your taxes.) | You issued this invoice with Melso. It is already counted, so it is not recorded twice. |
| **…ya estaba registrado** | The document was already recorded. Melso shows you the existing record. |

A document in another currency is converted to euros at the European Central
Bank rate for its date.

<Note>
  Reading a document uses part of your plan's included usage. Check
  [Plans and service scope](/essentials/plans) if a read is refused for your plan.
</Note>

## Add a record by hand

Use **Añadir gasto** (Add expense) or **Añadir ingreso** (Add income) when you
have no document to upload.

## Check the saved expense

Open the record and compare it with the document beside it.

| Field | Notes |
| - | - |
| **Proveedor** (Supplier), **ID fiscal del proveedor** (Supplier tax ID), **País del proveedor** (Supplier country) | Who issued it. |
| **Número original del documento** (Original document number), **Fecha** (Date) | The supplier's own number and the date. |
| **Base imponible** (Taxable base), **IVA** (VAT), **Tipo de IVA** (VAT rate), **Total** | The total must equal the base plus the VAT. |
| **Tratamiento de IVA** (VAT treatment) | **Gravado** (taxable), **Exento** (exempt), **Inversión del sujeto pasivo** (reverse charge) or **No sujeto** (not subject). |
| **Tipo de IRPF** (IRPF rate), **IRPF retenido** (IRPF withheld) | Withholding on the invoice you received. |
| **Categoría** (Category) | The AEAT expense concept, or **Sin categoría** (No category). |
| **Deducibilidad** (Deductibility) | **Por revisar** (To review), **Deducible** (Deductible) or **No deducible** (Not deductible). |

The document stays with its record under **Documentos relacionados** (Related
documents), so you can always check the source of a figure.

## Check the saved income

An income record has the **Cliente** (customer), the customer's tax ID and
country, the invoice number, the date, the description, the VAT treatment, the
base, rate and VAT, and any IRPF the customer withheld.

An income number is unique in your company. When a document has several VAT
rates, they show as **IVA por tipo** (VAT by rate).

## Review notes

Melso marks a record when something needs a look. An income with notes shows
**Por revisar** (To review), and its save button reads **Confirmar** (Confirm).

| Note | Meaning |
| - | - |
| **Los importes no cuadran** | The amounts do not add up. Compare them with the document. |
| **El IVA no corresponde al tipo indicado** | The VAT does not match the stated rate. |
| **Falta el número de factura** | The invoice number is missing. |
| **Falta el ID fiscal** | The tax ID is missing. |
| **Pasado a euros al cambio del BCE** | Converted to euros at the European Central Bank rate. |
| **Es un ticket** | A receipt's VAT is not deducted. The whole amount counts as an expense. Ask for an invoice with your NIF to deduct the VAT. |
| **Proveedor extranjero sin IVA** | A foreign supplier charged no VAT. It is declared by reverse charge. |
| **Clasificado por el nombre** | Classified by name only. Check that the direction is right. |
| **Hay otro registro de la misma empresa y el mismo importe ese mes** | A possible duplicate. Check it is not repeated or void. |

Saving a record clears its review notes.

## Classification is not professional review

Keep three things apart:

1. **Melso's proposal.** When Melso reads a document it can propose a category.
   The record shows **Categoría propuesta** (Proposed category). Saving the
   category, even unchanged, confirms it.
2. **Your classification.** **Deducibilidad** is the value you declare:
   deductible, not deductible or to review. Your returns count what you
   declared. Melso's own estimate of deductibility is a hint, not a decision.
3. **Professional review.** Melso's professionals review your return before
   they file it. A **Deducible** label on an expense does not record a
   professional's decision.

A return that includes expenses still marked to review says so before you
authorize it. See [Taxes and the fiscal calendar](/essentials/taxes#review-a-return).

## Edit a record

Change the fields and save. Three things can stop a save:

* **Someone or something changed the record first.** Each record has a saved
  version. A save against an older version is refused with **No se ha podido
  guardar. Actualiza antes de reintentar.** (It could not be saved. Refresh
  before retrying.) Refresh and try again.
* **The document identity is fixed.** For an expense read from a document, the
  supplier's tax ID, the document number and the date cannot be changed.
* **Your plan is not active.** You can see and download your data, but not add
  or change anything.

Editing an expense resets its review, and changing its deductibility clears the
reason Melso gave.

## Delete a record

Delete a record you added by mistake, such as a duplicate. The app asks
**¿Eliminar este gasto? El archivo se queda en Documentos.** The file stays in
your documents.

## Records used by an approved or filed return

A return you authorized, or one that was filed, was calculated from your
records. Removing one of those records would leave that return without its
evidence.

* **Through an AI assistant or WhatsApp**, deleting an expense or an income is
  refused when a return that covers its date was already approved or filed. The
  assistant tells you which return.
* **In the web app**, make the correction there. If your figures change after a
  filing, the return shows **Tus datos han cambiado desde la presentación** with
  the amount it would be now, and Melso reviews whether a supplementary or a
  corrected return is needed.

If you are not sure how to correct a record that a filed return used, ask
Melso. See [FAQ and troubleshooting](/essentials/faq#an-edit-or-a-delete-is-refused).

## Bring documents from your email or Drive

**Conectores** (Connectors) lets you connect an email account or a Google
account. Your Melso agent can then work with the documents you point it to.

Connecting an account does not collect your invoices by itself. Ask for the
work you need, for example on WhatsApp, and check the records it saves.

## With an AI assistant

The [`expenses`](/mcp/tools/expenses) and [`income`](/mcp/tools/income) tools
read and record the same data, with your company's permissions.
[Use cases](/mcp/use-cases) shows the calls.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.