Electronic Invoicing Guide

Issuing an invoice to the Italian SDI from a booking: activation, wallet, separate bills, states, credit notes

What it is for, and what it costsThe Italian invoice to the SDI, issued from the booking

Electronic invoicing is the system through which Italian invoices travel as XML to the Sistema di Interscambio, the Italian Revenue Agency's exchange system. Vezpa generates the XML, has it signed and transmitted by the tax intermediary OpenAPI.it, and brings the outcome back to you.

It is an Italy-only feature: the section appears in Configuration when your property's country is Italy. Properties in the other EU countries use generic invoicing, explained in the Invoicing Guide.

Who can use it

Only «Manager» and «Assistant». Housekeeper, observer, revenue, wellness and plain user neither see the section nor can issue: the server refuses the request.

What it costs: the Tax module

Electronic invoices and receipts sit in the «Tax module», which you switch on from «Configuration» → the «Tax & legal compliance» group → the «Electronic invoicing» section → «Tax module». Without the module active, no electronic invoices are transmitted.

  • The fee is € 7.90 a month (VAT included), taken from the wallet on activation and then every month on the same date. If you switch it off and on again before the paid month is over, you don't pay a second fee and the renewal date stays the same.
  • It includes 100 electronic invoices and 500 receipts for each month of the module.
  • Beyond the allowance each invoice costs € 0.19 and each receipt € 0.03, from the prepaid balance.
  • For high volumes the price of extra invoices and receipts is negotiable: write to us and we will agree on it.
  • The allowance belongs to the property: invoices transmitted from the Wellness module use up the same hundred.
  • A credit note and a debit note count as transmissions too: they cost the same as an invoice.
  • An invoice rejected by the SDI is not paid for: the charge is refunded to the wallet and the allowance is not used up.
  • The non-fiscal receipt does not go through the SDI and stays free, even without the module.

Receipts are sent by Vezpa on your behalf, as an intermediary: we don't ask you for credentials. You only need to give a delegation to Vezpa in the Agenzia delle Entrate's «Fatture e Corrispettivi» portal, in the delegations section, for the management of daily takings (corrispettivi); you will find the tax code to delegate in the module. Then tap «Activate receipts». You also need e-invoicing set up and the property's full address (street and number, postcode, municipality and province). Sole traders cannot delegate the sending of daily takings to an intermediary: for them the module includes invoices only. Receipts are issued from the till, from Wellness and when the booking's bill is closed: see the Till Guide and the Booking Card Guide.

Vezpa does not archive your invoices. Certified ten-year archiving is a separate legal obligation (art. 39, Presidential Decree 633/72), and the Revenue Agency offers it free of charge on the «Fatture e Corrispettivi» portal. You turn it on yourself, once: the steps are in the next section.
Vezpa is a management tool, not a tax advisor. Tax regime, VAT codes and special cases are your accountant's business.

Turning the service onFive steps, once and for all

The path is «Configuration» → the «Tax & legal compliance» group → the «Electronic invoicing» section → «Activate electronic invoicing». Once the service is on, the same entry becomes «Electronic invoicing setup» and reopens the procedure so you can correct the details.

Once the service is active the shortest route is from the «Dashboard»: the «Accounting» tile, next to POS, opens the «Electronic invoicing» section directly.

Introduction → Contract acceptance → Tax details → Legal archiving → Initial top-up

The five steps

StepWhat it asks of you
«Introduction»Explains the service and the cost of transmissions beyond the allowance. This guide opens from here too
«Contract acceptance»The tick box authorising OpenAPI.it to sign and transmit on your behalf
«Tax details»VAT number, tax code, «Tax regime», registered address, REA number and office, certified e-mail. These are the supplier details printed on every invoice
«Legal archiving»The instructions for turning it on at the Revenue Agency, and the tick box declaring you have read them
«Initial top-up»Takes you to the wallet. It unlocks only once the other three steps are complete
Reopening the procedure once the service is already on starts you straight at «Tax details», and the last step becomes «Save Changes»: three steps to walk through, not five.

Archiving, on the Revenue Agency portal

  1. Open the «Fatture e Corrispettivi» portal at ivaservizi.agenziaentrate.gov.it (opens in a new tab)
  2. Sign in with SPID, CIE or Entratel/Fisconline credentials
  3. From the menu choose Conservazione and then Aderisci al servizio di conservazione
  4. Fill in the form with your property's details and sign it digitally
  5. Submit: it is free, and from then on invoices sent to the SDI are archived for ten years on the Agency's servers
In the invoice list there is a state called «Archived». It means «the SDI has confirmed delivery», not «archived to legal standard»: ten-year archiving remains the one you switch on at the Agency portal, and Vezpa does not replace it.

The tabs of the sectionIt opens on the latest activity; the wallet is at the end

The «Electronic invoicing» section opens from «Dashboard» with the «Accounting» tile, or from «Configuration» → «Wallet and invoices». It has five tabs, in this order:

  • «Activity», the one it opens on. At the top, the month in numbers: «Invoices sent» and «Receipts issued» with the amount, «Drafts to send» and «Rejected by the SDI». Tapping a tile opens the list already filtered. Below, «Latest activity»: invoices and receipts together, grouped by day, one row per document with its latest state. Tapping a row opens the document.
  • «Invoices»: the full list, with search, filters by state and year, and sorting.
  • «Receipts»: the non-fiscal receipts with the customer's name, filterable by year. The list loads 50 receipts at a time: at the bottom, «Load more».
  • «Billing entities»: the address book of your customers' tax details.
  • «Wallet», the last one. At the top the «Tax module» with fee, next renewal and invoices and receipts used in the period («Manage the module» opens its page), then the balance, «Quick top-up» and «Recent transactions».

On a computer «Activity» puts the month's tiles in a column on the left and the latest activity next to them; «Wallet» also places balance and top-up beside the transactions.

The wallet and top-upsPrepaid balance: the module fee and documents beyond the allowance

The wallet is the last tab of the «Electronic invoicing» section: how to get there and what the other tabs hold is in The tabs of the section.

The balance never expires: you top it up by card through Stripe whenever you need to. The only recurring charge is the «Tax module» fee, if you have switched it on. The tab shows the balance, the top-ups and the spending.

The top-up packs

The amounts are not free-form: you pick one of the packs offered under «Quick top-up», and the two largest credit you with more than you pay.

You payYou are credited
€ 10€ 10
€ 25€ 25
€ 50€ 52 — € 2 bonus
€ 100€ 105 — € 5 bonus

The list that counts is the one you see in the app: packs can be changed, and an amount that does not match an active pack is refused.

When the balance really blocks issuing. Within the hundred included invoices the wallet is not looked at. Beyond the allowance issuing stops if the balance does not cover the € 0.19 of the invoice. If at renewal the balance is not enough for the fee, invoices stop until you top up, while receipts carry on, because they are mandatory: their cost takes the balance below zero and is recovered with the next top-up.

Issuing an invoiceFrom the booking to the SDI

  1. Open the booking, tap the three-dot menu and choose «Billing»: «Bills for this booking» opens
  2. On the «Main bill» tap «Invoice». «Issue electronic invoice» opens with the details already copied from the booking
  3. Check the «Customer type» and the customer's details
  4. Tap «Issue and send to SDI»

The customer's details

TypeWhat is needed
PrivateFirst name, last name, the 16-character Italian tax code, address
CompanyCompany name, VAT number, and the «SDI Recipient Code (7 characters)» or a certified e-mail address

For an Italian company one of the two — code or certified e-mail — is mandatory: without it, issuing does not start. If the customer gives you neither, the conventional value is 0000000 (seven zeros), and the invoice still lands in their tax drawer on the Agency portal.

Foreign customer. An Italian property can invoice EU and non-EU customers too: the invoice still goes through the Italian SDI. The conventional recipient code is XXXXXXX (seven X's), and for an EU company the VAT number is written with the country prefix, for example DE123456789. Vezpa fills in XXXXXXX by itself when the billing entity carries no code and the country is not Italy.
The recipient code field accepts any seven alphanumeric characters: the shape is checked, the meaning is not. A made-up code passes the app's check and is then rejected by the SDI.

Splitting the bill between several payersOne stay, two or more documents

You need this when the same booking has to be invoiced to different people: the private guest pays room and breakfast, the company pays the extras. The «Bills for this booking» page shows the «Main bill» at the top and the separate bills you have created below it. The booking total does not change: whatever you move onto a separate bill is taken off the main one.

  1. On the «Main bill» tap «Split». The first time, instead of an empty list there is a panel explaining the feature, with the «Create separate bill» button
  2. Pick the billing entity, or create one with the «New billing entity» button next to the selector
  3. Type the amounts to move across: «Room», «Board», «Tourist Tax»
  4. Under «Charges to include» tick the charges to carry onto this bill, down to part of a quantity
  5. Save. The bill appears in the list with its own «Invoice» button, and you issue from there just as from the main bill
«Billing entities» are the address book of your customers' tax details: they are reused on invoices and receipts, and their tab sits next to the wallet one. Delete a separate bill and its charges go back onto the main bill.
A bill that has already been invoiced can no longer be edited. Check the amounts before issuing, because afterwards the only route is a credit note.

The states of an invoiceWhat the card says, and who moves it

The state is written on every invoice card under the «Invoices» tab. After transmission it changes on its own: the confirmation comes back from OpenAPI.it, and if that confirmation is lost an automatic check re-reads the state every quarter of an hour.

In «Issued invoices» there is «Search» («Number, customer, ID no. or guest»): it searches the number, the customer's name or company name, the VAT number, the tax code and the booking's guest name. Below it, the state filters — «All», «Drafts», «Transmitted», «Archived», «Rejected» — which replace the old filter menu in the bar; when the invoices span more than one year, the year menu with «All years» (a draft counts in the year it was created). In the bar, «Sort by» offers «Newest first», «Oldest first», «Number: highest first», «Number: lowest first», «Amount: highest first», «Amount: lowest first», «Customer (A–Z)»; the default is «Newest first». Each card shows the customer's name. The list loads 50 invoices at a time: at the bottom, «Load more».

StateWhat it means
«Draft»The document has been prepared but has no XML yet
«Generated»The XML exists and is ready to be transmitted
«Sending»Transmission has started. This is where the number is assigned and, beyond the allowance, the wallet is charged
«Transmitted»The SDI has taken it in
«Archived»The SDI has confirmed delivery. It is the end state of an invoice that went through
«Rejected»The SDI turned it down over a formal error. The reason appears in the detail view
«Accepted»Provided for by the system, but you will not meet it in today's flow: the SDI confirmation goes straight to «Archived»
If the answer to a transmission never arrives or is ambiguous, the invoice stays in a verification state that the app shows as the internal code pending_verify, untranslated. Do not transmit again: the document may already have reached the SDI, and the automatic check reconciles it by itself. The same untranslated code shows in the invoice detail view, where the state is always displayed in its internal form.

If the SDI rejects it

Rejection comes from formal errors: a wrong tax code, incomplete supplier details, a VAT code that does not match your regime. When that happens:

  • the invoice moves to «Rejected» and the reason reported by the SDI appears in the detail view;
  • any charge is refunded to the wallet, and that transmission does not use up the month's allowance;
  • correct the wrong detail and issue again. Even issuing several times, you only pay for the transmissions that are accepted.
How long the SDI and the intermediary take to answer is not up to Vezpa, and no figure written in a guide would make it true. If the state is not moving, keep an eye on it rather than transmitting again: the card refreshes by itself.

Putting it right with a credit noteA transmitted invoice cannot be cancelled

Once the invoice is with the SDI it can no longer be cancelled: it is reversed, fully or in part, with a credit note. You need one when the booking is cancelled after issuing, when the amount was wrong, for a discount agreed afterwards, or for a no-show room.

  1. Open the detail view of the invoice to reverse
  2. Tap «Issue credit note (TD04)»
  3. Adjust quantity and price of the lines to reverse: the amounts turn negative on their own
  4. Confirm: the note is transmitted to the SDI and stays linked to the invoice it came from
RuleWhat it means
From an invoice onlyYou cannot reverse a credit note, and you cannot reverse a non-fiscal receipt
Only once transmission is confirmedThe button appears when the invoice is «Accepted» or «Archived», not before
One only per invoiceA second one is refused: if the first was wrong, the case is settled with your accountant
Never beyond the totalThe note cannot reverse more than the invoice carries
Costs like an invoiceIt uses one of the hundred invoices included in the Tax module, or € 0.19 from the wallet

Non-fiscal receipt and stamp dutyThe other document, for those who do not invoice

Alongside the SDI invoice there is the «Non-fiscal receipt», meant for non-business rentals and for those without a VAT number. It does not go through the SDI: it is not transmitted, it does not use up the monthly allowance and it does not touch the wallet. You issue it from the same bill with «Issue non-fiscal receipt», it has its own numbering and it is voided with a reason; the receipts you have issued sit under the «Receipts» tab.

Which of the two is offered first

You decide that in «Configuration», in the «Taxes» section, with «Default document type»: «SDI electronic invoice» or «Non-fiscal receipt». The choice decides which button is the primary one on the bill; the other stays reachable as a secondary action.

Stamp duty

The same «Taxes» section holds «Stamp Duty». Switched off, nothing happens; switched on, you declare a threshold and an amount, and the duty is applied to documents above the threshold. The proposed values are the ones set for operations outside the scope of VAT, but they stay editable: if you are not sure, ask your accountant.

These two settings live inside the tourist tax module: with that module switched off, the «Taxes» section does not appear at all.

Proforma and courtesy copyTwo sheets to hand the guest, free of charge

Neither of them is a tax document and neither touches the wallet: the real invoice remains the XML transmitted to the SDI.

DocumentWhenWhere you ask for it
ProformaBefore transmittingThe «Proforma» button on the main bill and on every separate bill, or «Print proforma» on the issuing screen
Courtesy copyAfter transmission«Print copy» in the invoice detail view
A proforma does not replace the invoice and is only a preview: handing it to the guest does not excuse you from issuing the real document. It is not in the booking menu: the proforma is printed from the bills or from the issuing screen.

If something does not add upThe symptoms, and the real cause of each

  • There is no «Electronic invoicing» section in Configuration. Your property's country is not Italy, or your role is neither «Manager» nor «Assistant».
  • From a booking the app says electronic invoicing is not active. The activation procedure was never completed: reopen it from «Activate electronic invoicing».
  • Issuing is refused: Tax module not active. Switch it on from «Configuration» → the «Tax & legal compliance» group → the «Electronic invoicing» section → «Tax module»; if the balance was not enough at renewal, top up from the «Wallet» tab and invoices start again.
  • Issuing is refused for insufficient balance. You have used the hundred invoices of the month and the balance does not cover € 0.19. Top up from the «Wallet» tab.
  • I cannot make the invoice: there is already a receipt. The stay is already on a receipt: void it first from «Commercial documents», then issue the invoice.
  • I cannot issue: customer details are missing. The app says which ones and where they are completed: on the lead guest tab of the booking, or in the billing entity of the separate bill.
  • The invoice never reaches the customer. With recipient code 0000000 they find it in their tax drawer on the Agency portal. With a specific code, ask them to check that it is still live.
  • The invoice is wrong and I have already transmitted it. It cannot be cancelled: it is reversed with a credit note, and only once the SDI has confirmed delivery.
  • A separate bill will not let me edit it. It has already been invoiced. The only correction is a credit note on the invoice that came out of it.
  • The state is stuck on an English code. That is the verification state: the outcome of the transmission is not certain. Wait for the automatic check instead of transmitting again, or you risk two invoices at the SDI.

Need help?

Contact us from the app through the support system built into the Configuration section.