Skip to content

Invoicing

Customer and supplier invoices, credit notes, payments and Veri*Factu (Spain)

The Invoicing module is optional and is turned on per organization. It turns receipts, repairs or free-form lines into invoices numbered by series, manages the invoices from your suppliers (with AI-assisted PDF reading) and, in Spain, prepares each document for Veri*Factu. The customer invoice follows the classic flow of an accounting document: you work on a Draft and, once confirmed, it moves to Posted and can no longer be edited.

Availability by country

The invoicing modules (invoices, sales delivery notes, sales quotes and supplier invoices) and the POS are available in part of the supported countries. In the rest, they will be enabled soon.

Available now

Andorra · Australia · Austria · Canada · Cuba · Cyprus · Czechia · Denmark · Equatorial Guinea · Finland · Honduras · Ireland · Luxembourg · Malta · Mauritius · Monaco · Netherlands · New Zealand · Nicaragua · Nigeria · Norway · Puerto Rico · Senegal · South Africa · Spain · Sweden · Switzerland · United Kingdom · United States

Coming soon

Argentina · Belgium · Bolivia · Botswana · Brazil · Cameroon · Chile · Colombia · Costa Rica · Côte d’Ivoire · Dominican Republic · Ecuador · El Salvador · Estonia · France · Germany · Greece · Guatemala · Hungary · Italy · Latvia · Lithuania · Mexico · Panama · Paraguay · Peru · Poland · Portugal · Romania · Uruguay · Venezuela

The repair quote (the one you send to the customer to approve the repair) works in every country: it does not depend on the invoicing module.

POS availability follows the same country list as invoicing.

Enabling the module

On by default, with a dynamic sidebar

In Settings → Invoicing you can turn the module on or off. When you change it, the "Invoicing" section of the sidebar appears or disappears without reloading the page.

Electronic invoicing is separate

Regular invoicing works right out of the box. Electronic invoicing (Veri*Factu in Spain) is a separate switch, off by default because it isn't mandatory in Spain yet (companies from Jan 1, 2027, the self-employed from Jul 1, 2027).

Creating a customer invoice

Manual

From /facturacion → New invoice, with free-form lines or ones pulled from the catalog (parts and services). You pick the customer with the search box, and the tax rate comes from your tax settings.

From a POS receipt

When a customer asks for an invoice for a sale that's already been paid. The receipt's lines and totals are copied over; if the sale was made to "Walk-in customer", you'll need to identify the customer.

From a repair

If the repair has an approved quote, the invoice is generated with its parts and services. A receipt or a repair can't be invoiced twice.

The document: Draft → Posted

1

Editable draft, no number

A draft can be edited as many times as you like and does NOT consume a number from the series. That way, deleting a draft never leaves gaps in the numbering.

2

Confirm = post

When you click Confirm, the invoice gets its sequential number (e.g. FA-2026-000001), its date and its due date, and — in Spain with Veri*Factu enabled — its tax record is chained in.

3

Posted = unchangeable

A posted invoice can no longer be edited or deleted: it's a legal document. To fix a mistake, you issue a credit note.

4

Resetting to draft

Only possible while it has no chained Veri*Factu record and no payment registered. It keeps its number and reuses it when posted again. Once it's been submitted to the tax agency, this is no longer available: only a credit note.

An invoice's lifecycle

Draft→
Posted→
Paid
·Corrected

Lines, due date and currency

Lines editable inline

Product, quantity, price and the tax rate per line. You can add lines by hand or pull them from the catalog. Serial-tracked items show their S/N on the line.

Configurable due date

When you create the invoice you choose the due term: 0 days (same day, the default), 30, 60 or 90. The date is calculated automatically and shown on the document.

Currency based on your country

The currency is taken from the country in your tax settings (EUR, USD, BRL…) and appears on the invoice and in the list.

Preview — Posted invoice

PAID

Customer invoice

FA-2026-000001

Lakeside Ventures LLC

B12345678

Invoice date: 20/05/2026

Due date: 20/05/2026

ProductAmount
iPhone 13 screen$89.00
Labor$30.00
Untaxed amount$119.00
IVA 21%$24.99
Total$143.99
Amount due$0.00

Credit notes

Always its own series

A credit note never edits the original: it's a new document with its own series (e.g. FR-2026-000001) and negative amounts (a full refund). The original moves to "Corrected" status.

Reason required

When issuing a credit note you must state the reason, which is logged on the document and in the history. A credit note can't itself be corrected with another credit note.

Linked both ways

From the credit note you can jump to the original invoice, and from the corrected invoice you can jump to its credit note. In the list, the two live on separate tabs: they're never mixed together.

Payments

Register payment

Marks the invoice as Paid (in full): the amount due drops to 0, the green PAID ribbon and the green badge appear in the list, along with the payment date.

Cancel payment

If you make a mistake, you can cancel the payment and the invoice goes back to "Not paid". Everything is tracked in the history.

Sending and traceability

PDF, email and print

Every posted invoice generates its own PDF (with the tax QR code if Veri*Factu is enabled). You can download it, view it on screen, print it, or send it to the customer by email or WhatsApp.

Activity log

A side column logs everything: creation, draft → posted, corrections, payments and every message sent, with the author and time, grouped by day — just like the History tab in repairs.

Notes and messages

You can log an internal note or send the customer a free-form message by email or WhatsApp right from the invoice, and it's recorded in the history.

The list

Invoices and Credit notes, kept separate

Two tabs: regular invoices and credit notes, which are never mixed. On the credit notes tab, a column links to the invoice it corrects.

Color-coded statuses

Draft (yellow), Posted (green), Paid (emerald) and Corrected (red), using the same colors as the rest of the app. Click a row to open its record.

Overdue invoices in red

If a posted, unpaid invoice goes past its due date, the date turns red and shows in relative terms ("2 months ago") so you can spot it at a glance.

Preview — Invoice list

Invoices
Credit notes
NumberCustomerStatus
FA-2026-000003García SLDraft
FA-2026-000002Móviles RuizPosted
FA-2026-000001TecnoAvanzaPaid

Supplier invoices

Record the invoices your suppliers issue to YOU. Once you record them, they automatically create a stock entry.

AI-assisted reading (photo or PDF)

Upload the supplier's invoice PDF, or take a photo of it, and the assistant reads its contents: it detects the supplier (and offers to register it if it doesn't exist yet, along with its bank accounts) and extracts the lines with references, quantities, serial numbers and a suggested brand and category for each item based on its description, reusing whenever it can the ones you already have in your catalog. Everything is editable before saving; nothing is written until you confirm.

Price, margin and item details per line

Each line has its own EAN, Brand and Category, plus cost, margin (%) and final price. Price with tax is just another field: type it in directly and the price without tax and the margin recalculate themselves (just like on the part's own page), or change the cost/margin and the price with tax is what updates instead. It's just a note for when you register the item; it doesn't move stock or invoice anything by itself.

Automatic matching by reference or EAN

If the reference or EAN you type into a line matches an item you already have in the catalog, it links itself automatically — no button to press, and no risk of creating a duplicate item.

Category suggested automatically

As you type the item's description, if it contains the name of a category you already use in your catalog (for example, "SSD" or "Laptop"), the line fills it in by itself. You can change it or type a new one at any time.

Adding serial numbers by hand

The serial number field only shows up if the linked item requires them or if the assistant already detected some on the invoice. If that's not the case but you want to log them anyway, the "Add serial number" button reveals the field so you can type them in.

Create the item without leaving the invoice

If a line isn't linked to any item in the catalog, the "Create item or part" button opens a form with the name, code, EAN, brand, category, cost and margin already filled in from the line — you just need to review them and confirm. The item isn't created yet: it stays "pending" on the line and gets registered in the catalog when you save the invoice (as a draft or recorded), already linked to it.

Generates stock and serial numbers

When you record the invoice (draft → recorded), each line linked to an item creates a stock entry at its real cost, and serial-tracked items register one unit per serial number.

Add to stock, or normalize it

Each line linked to an item has a toggle to add it to stock when the invoice is recorded. If that item had negative stock, a warning appears with a button to normalize it: it sets the stock to exactly this invoice's quantity, instead of adding it on top of the negative figure.

Fixing a draft

If a piece of data is missing when you click Record (such as the receiving warehouse), the invoice stays as a draft — nothing you already typed is lost. From its record, the "Edit draft" button takes you back to the form, already filled in, so you can fix it and try again.

Draft, Recorded, Paid

A draft can be edited or deleted. Once recorded (with stock generated), it can no longer be edited; you can mark it as paid. The original PDF is kept privately.

Filters and search

Filter the list by payment status (all, paid or unpaid) and search by number, supplier, tax ID, part name or serial number. The invoice number links to its record and the supplier's name links to its supplier record.

Internal notes

Each supplier invoice has its own history: log internal notes and check when it was created, recorded and marked as paid, with the author and time of each event.

Preview — Line linked to the catalog

DEMO-REP-0002

SSD Kingston NV2 500GB NVMe

Add to stock

Linked to item: SSD Kingston NV2 500GB NVMe

8412345678905KingstonSSD
Margin: 60.7%Final price: $45.00
Price with tax$54.45

The invoice's internal notes

Log a note
S

Sarah Mitchell 10:32 AM

Internal note

The supplier confirms the restock for next week.

Settings

Customizable series

You set the prefix for the sales series (FA by default) and for credit notes (FR). Numbering is sequential by series and year, with no gaps, resetting every year.

Footer text

Free text (payment details, bank account, legal notices) that's saved as a copy on each invoice when it's issued and appears in the footer of the document and the PDF.

Veri*Factu (Spain)

In Spain, with electronic invoicing enabled, every invoice and every receipt generates a Veri*Factu tax record that's submitted to the Spanish tax agency (AEAT). Enabling it never blocks payment: if the record submission fails, it stays pending and is retried.

Certificate in an encrypted vault

You upload your certificate (FNMT .p12/.pfx) in Settings → Invoicing. It's stored encrypted and can NEVER be downloaded again: it's only decrypted in the server's memory to sign documents. You'll see the holder's name and the expiry date, with a notification bell alert 30 days beforehand.

Tax QR code and legend

Invoices and receipts carry the AEAT's validation QR code and the "VERI*FACTU" legend, both on the PDF and on the thermal receipt.

Testing or production

You can choose the AEAT environment: testing (pre-production, with no legal effect) to validate things, or production. The testing environment still requires a real certificate: the AEAT doesn't offer a downloadable test one.

Statement of compliance

Sattotal, as an invoicing software system, displays its statement of compliance (system name, code, version) in the settings, as required by the regulation.

The certificate calls the shots: no valid certificate, no submission

Electronic invoicing needs your digital certificate to sign and send every record to the AEAT. That's why the certificate and the switch go together, even though they're managed separately.

A valid certificate to turn it on

To <b>enable</b> electronic invoicing you need a certificate that's in use, active and not expired. If you don't have one, the switch won't let you save the setting (it shows you an info icon explaining why). Turning it off is always possible.

Managed independently of the switch

Uploading, activating and deleting certificates can be done at any time, regardless of whether electronic invoicing is turned on: as soon as you accept the statement of compliance, you can get it ready. Uploading or activating a valid certificate turns electronic invoicing on by itself if it was off.

No valid certificate: Pending submission

If an invoice or receipt is recorded but there's no valid certificate, the document is saved but stays <b>Pending submission</b>: it hasn't been signed or sent to the AEAT. As soon as you upload and activate a valid certificate, it's signed and sent automatically (with retries) and moves to <b>Accepted by the tax agency</b>. Payment is never blocked because of this.

Protected deletion of the certificate in use

You can't delete the certificate in use while electronic invoicing is active (you'd be left active without being able to sign). Turn off electronic invoicing first, or activate another valid certificate, and then you'll be able to delete it.

From "Pending submission" to "Accepted by the tax agency"

Pending submission
You upload and activate a valid certificate
Accepted by the tax agency

Submission is retried automatically; payment never waits on the certificate.

Justifying incidents to the AEAT (Spain)

If sending an invoice or a receipt to the AEAT fails (rejection, error, service outage), Sattotal doesn't forget about it on the next attempt: it keeps a full history so you can justify any delay during an inspection.

Full history of attempts

Every submission attempt is logged with its date, result and the AEAT's actual code/message — even if the document ends up being accepted, the trail of earlier failures isn't lost.

Warning icon in the list

A warning icon appears next to the invoice or receipt in Invoicing and in POS Sales, only when there was an incident. Clicking it opens the full timeline.

Downloadable PDF report

From that same panel you can download a PDF report with the document's details and every submission attempt, ready to keep or show if you're ever asked for it.

Ask the AI assistant

You can also ask the assistant something like "are there any AEAT incidents this month?" and it will answer with the real data for each affected document.

Important: This report is for your own use. Sattotal never submits or files anything with the AEAT on your behalf — there is no channel from the tax agency for doing that. Presenting it during an inspection is always up to you or your tax advisor.

Want to try it yourself?

Try Sattotal free with sample data, no credit card required.