Files
InvoiceShelf/lang/it.json
lnx1-1 3455ceb594 feat(invoices): native credit notes (#689)
* feat(invoices): add credit note (Stornorechnung) backend

Implement native credit notes as invoices with type=CREDIT_NOTE that
reference the original invoice they reverse. All monetary fields are
negated as integer cents (no float arithmetic).

- Migration: add invoices.type + related_invoice_id (unsignedInteger,
  matching invoices.id which is INT UNSIGNED via increments() rather than
  bigIncrements() -- required for the self-referencing foreign key to
  form correctly on MySQL/MariaDB) + widen invoice_items.price/base_price
  to signed (idempotent guards)
- Invoice model: TYPE_* constants, relatedInvoice/creditNotes relations,
  isCreditNote() helper
- InvoiceService::createCreditNote() copies + negates the source invoice,
  sets creator_id from the authenticated user
- POST /invoices/{invoice}/credit-note endpoint (201) with CreditNotePolicy
  authorization; 422 when the source is already a credit note, 403 across
  companies
- CreditNoteResource exposing type + related_invoice reference
- Dedicated credit-note PDF template (Stornorechnung header + reference line)
- SendCreditNoteRequest + SendCreditNoteMail + send endpoint/email template
- en/de translations for the credit-note PDF labels
- Feature tests: create, item negation, relation, 422, 403, PDF, email

Fresh implementation addressing all review feedback from PR #536.
Refs #317

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* feat(invoices): add credit note UI (button, badge, back-link)

- 'Create Credit Note' action in the invoice dropdown (hidden on rows that
  are already credit notes)
- Credit-note badge in the invoice list
- Credit-note banner with a link back to the reversed invoice on the detail
  view; show() returns CreditNoteResource for credit notes so the original
  invoice reference is available
- Expose type + related_invoice_id on InvoiceResource
- invoiceService.createCreditNote + store action
- Invoice domain type: InvoiceType, RelatedInvoice, type/related fields
- en/de translations for the credit-note UI strings

Refs #317

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* Settle balances on credit note creation and surface cancellation in UI

Creating a credit note (full reversal) now settles both documents, the
mechanism @gdarko praised in PR #536 ("Invoice due amount adjustment
logic for create/update/delete is well thought out"), adapted to the
invoice-row-with-type architecture:

- The original invoice's due_amount/base_due_amount drop to 0 and its
  status/paid_status are recalculated through the existing
  changeInvoiceStatus() path (COMPLETED/PAID), so it falls out of every
  awaiting-payment view. The UI shows a distinct "Cancelled" badge and a
  "Cancelled via credit note: ST-XXXX" banner instead of the generic
  Paid badge, avoiding Xero's documented paid-vs-credited ambiguity.
- The credit note itself is created settled (due 0, PAID): nothing is
  ever owed on it, so it never surfaces as an open negative balance.
- Deleting a credit note restores the original invoice's balance,
  recomputed from recorded payments (integer cents), covering unpaid
  and partially-paid invoices; skipped when both documents are deleted
  in one batch.
- One credit note per invoice: a second full reversal would
  double-negate the books (422 + hidden dropdown action).
- InvoiceResource exposes minimal credit_notes refs, mirroring the
  existing related_invoice back-link, for the banner/badge in
  InvoiceDetailView and InvoiceIndexView.

8 new feature tests cover settlement, resource exposure, the
one-per-invoice guard, and delete-side restoration.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* Render credit notes through the invoice's own template, add cancellation banner to PDFs

Fixes two bugs found via screenshot: the actual generated PDF (not just the
Vue preview) is what customers download/print/email, and it was broken in
both directions.

1. Credit notes always rendered through one hardcoded standalone layout
   (app/pdf/credit-note/credit-note.blade.php) regardless of which of the
   3 invoice templates the company actually uses. A company on invoice2/3
   branding got a credit note PDF that looked nothing like their real
   invoices. Fixed by making invoice1/2/3.blade.php credit-note-aware
   (swap number/date labels, add the red "CREDIT NOTE" banner + reference
   line, scaled to each template's own visual language) and removing the
   isCreditNote() special case in InvoiceService::getPdfData() so credit
   notes now go through the same PdfTemplateUtils resolution as regular
   invoices. The standalone template is deleted.

2. The original (now-cancelled) invoice's PDF showed zero indication it
   had been reversed by a credit note — only the Vue UI banner existed.
   Added an equivalent amber "Cancelled" banner + reference line to all
   three templates, conditional on $invoice->creditNotes->isNotEmpty().
   getPdfData() now eager-loads both relatedInvoice and creditNotes
   unconditionally (cheap either way) so every template has what it needs.

Covers all 3 templates x both document types (6 combinations), verified
by generating real PDFs (not just Vue previews) for each. 4 new feature
tests hit the actual /invoices/pdf/{hash}?preview=1 endpoint under
non-default templates (invoice2, invoice3) and assert on
template-specific structural markers plus the new banner text, so this
class of bug (works on the default template, breaks on the others)
cannot regress silently.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* Create credit notes as COMPLETED and hide Record Payment on settled documents

The credit note is born fully settled (due_amount 0, paid_status PAID), but
its own status was hardcoded to SENT at creation and never advanced. It
therefore showed a stale "Sent" badge forever and the detail view kept
offering "Record Payment" on a document with nothing owed.

- InvoiceService::createCreditNote() now creates the credit note with
  STATUS_COMPLETED, matching the end-state the original invoice reaches
  through the settlement path.
- The "Record Payment" button (detail view) and dropdown item now also
  require due_amount > 0, so no already-settled document ever offers to
  record a payment, regardless of its status string.
- CreditNoteTest: assert the credit note is created with STATUS_COMPLETED.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* Refresh invoice sidebar list after creating a credit note from detail view

Creating a credit note from the split-pane invoice detail view
(/admin/invoices/{id}/view) left the left-hand invoice list stale until a
manual page reload: the new credit note never appeared, and the original
invoice's row kept showing its pre-cancellation status.

InvoiceDropdown's createCreditNote() now calls the loadData/table refresh
callbacks after success, matching the pattern already used by
removeInvoice(). InvoiceDetailView wires loadData to a new
refreshInvoiceList() that resets invoiceList before refetching (loadInvoices()
is append-only, built for infinite scroll, so calling it without a reset
would duplicate every already-loaded row) — mirroring the existing
onSearched() reset-and-refetch pattern.

Also add the "Cancelled" badge to the sidebar's list-item template; it
previously only existed in InvoiceIndexView.vue, so the split-pane sidebar
never reflected an invoice's cancelled-by-credit-note state even after a
full reload.

* fix(migrations): drop the credit-note foreign key constraint

related_invoice_id kept a DB-level foreign key with nullOnDelete(). That is
against the codebase-wide convention established after the FK breakage in
PRs #618 / #683: reference columns are plain unsignedInteger plus an index,
with the relation declared on the model and cascades handled in app code.
Replace the constraint with an index, and swap the dropForeign() in down()
for a dropIndex() that runs before the column drop (MySQL and PostgreSQL
would drop the index with the column, SQLite leaves it behind and then fails
with "no such column").

Documents why the type default is load-bearing while here: it backfills
existing rows with INVOICE, and the type-scoped serial-number queries would
otherwise restart numbering on an existing install.

* feat(invoices): give credit notes their own number sequence

Credit notes were numbered out of the invoice sequence, so cancelling an
invoice consumed an invoice number and the two document series interleaved
(INV-000001, INV-000002 for a credit note, INV-000003 for the next invoice).
Credit notes are Invoice rows with type = CREDIT_NOTE, and SerialNumberService
derived both the format setting and the sequence lookup from the model class
alone, which cannot distinguish them.

SerialNumberService gains two optional, fluent hooks that leave the default
behaviour untouched:

- setSettingKey() overrides the company setting the format is read from, so a
  document type sharing a table can have its own format.
- setSequenceScope() takes column => value constraints applied on top of the
  company (and customer) filters in both setNextSequenceNumber() and
  setNextCustomerSequenceNumber(), so each type counts on its own.

createCreditNote() uses both: credit_note_number_format (default
{{SERIES:CN}}{{DELIMITER:-}}{{SEQUENCE:6}}) and a CREDIT_NOTE scope. Every
call site that numbers a real invoice is scoped to TYPE_INVOICE so the credit
notes now sharing the table do not inflate the invoice sequence: create,
update, clone, the recurring-invoice generator, estimate conversion, and the
factory. The update() scope is not redundant: a customer change there triggers
a customer-sequence recompute through setModelObject(), which would otherwise
count credit notes. Estimate and payment numbering is unaffected.

The format is configurable in Settings alongside invoice numbering (a second
NumberCustomizer on the Invoices tab, no component changes needed) and is
seeded for new companies by CompanyService. A data migration backfills it for
existing companies: without a row, CompanySetting::getSetting() returns null
and the generated serial is silently empty.

The next-number endpoint answers key=credit_note with the CN format, so the
settings preview and any future create form read the right sequence.

* feat(pdf): show credit-note and cancellation banners on invoice PDFs

The generated PDF is what the customer downloads, prints and receives by
mail, and it was silent in both directions: a credit note rendered as an
ordinary invoice, and the invoice it reversed carried no sign that it had
been cancelled. Only the Vue UI said anything.

The banner lives in one partial, resources/views/app/pdf/partials/
credit-note-banner.blade.php, rather than being copied into the three stock
templates. It reads the shared $invoice, renders a red CREDIT NOTE box with
a reference to the original when the document is a credit note, an amber
CANCELLED box naming the credit note when the document has been reversed,
and nothing at all otherwise -- pdf:compare reports byte-identical ink
boxes for all seven stock templates, so regular documents are untouched.

Every rule is inline on the elements. A partial included in the body cannot
add anything to <head>, and inline styles are the one thing dompdf and
Chromium honour identically; line-height is stated explicitly for the same
reason. The box is a plain block with clear: both, so it cannot disturb the
float layouts the templates are built on.

Custom templates published into the pdf_templates namespace keep rendering
exactly as they do today and opt in by including the partial.

Alongside it, the cheap label swaps the same document type needs: the
<title>, invoice1's and invoice3's number/date labels, invoice2's header
heading, and the PDF's own Title/Subject metadata now say Credit Note, and
the due-date row is dropped from a credit note, which has none.

* feat(invoices): give credit notes the normal lifecycle and guard the unsafe paths

A credit note had a parallel universe of its own: a dedicated send endpoint,
its own request class, its own two gates and policy methods, all of which
duplicated the invoice send path verbatim except for which mailable was
constructed. It was also born COMPLETED, which is the one status that hides
every Send affordance in the UI, so the endpoint that existed for it could
not be reached from the app at all.

Both halves are now the invoice's. InvoiceService::send() picks the mailable
by document type and sendPreview() picks the matching template, so a credit
note goes out through POST /invoices/{invoice}/send under the existing
'send invoice' authorization. The credit-note send route, controller action,
service method, SendCreditNoteRequest, and the 'send credit note' /
'view credit note' gates are gone; CreditNotePolicy keeps only create(),
which is the one ability that is genuinely different (it is gated on the
*source* invoice's company). SendCreditNoteMail and its Blade template stay
exactly as they were.

The credit note is now created DRAFT with due_date null, still settled
(paid_status PAID, both due amounts 0). DRAFT gives it the ordinary
create-review-send lifecycle: the Send button appears on the detail page and
send() promotes it to SENT. Nothing is owed on it in any status, so Record
Payment stays hidden either way.

The guards are the other half. A credit note is now immutable (InvoicePolicy
::update returns false: saving it back through the invoice form would
recompute its totals positive), cannot be cloned or converted to an estimate
(both copy the amounts unnegated), and can never be minted through the create
endpoint -- getInvoicePayload() hard-sets type and related_invoice_id, which
were previously forwarded straight from the request into Invoice::create.
Reversing an invoice that already took a payment, or one that was never
issued at all, is refused with a 422 alongside the two existing domain rules.
CheckInvoiceStatus only considers real invoices, so a credit note can never
be flagged overdue, and the invoice next-number preview is scoped by type
like every invoice create path already is, so it can never count credit
notes.

Test changes follow the behaviour changes: invoices being credited are
created SENT rather than relying on the factory's DRAFT default, the
"created settled" test now expects DRAFT plus a null due date, the send test
goes through the invoice endpoint and asserts the promotion to SENT, and the
partially-paid delete-restore test mints its credit note through the service
because the API now refuses that invoice. Nine tests cover the new guards.

* fix(invoices): stop credit notes distorting counts, queries and deletes

Three follow-ups to the credit-note feature, all of them cases where a
reversal row was treated as if it were another invoice.

Counts. A credit note is not an issued document, so "invoices: 12" must not
become 13 the moment one is cancelled. The company dashboard, the customer
portal dashboard and its invoice list, and both AI stat tools now count
type = INVOICE only. Every sum is deliberately left alone: the negated total
is exactly what nets a reversed sale back out of the figure, which is the
whole point of storing it that way. The admin index meta count is also left
alone, because that list shows credit notes and the count has to match it.

Queries. InvoiceResource probed creditNotes twice per row -- an exists()
then a fetch -- on a resource that is serialized for every row of a
paginated list, and CreditNoteResource did the same for relatedInvoice.
Both now read the loaded relation and emit nothing when it was not loaded,
and the two places whose UI consumes the field (the index list badge, which
also feeds the detail-page sidebar, and the detail page banner) eager-load
it with the two columns they need.

Deletes. related_invoice_id has no DB foreign key by convention, so both
sides of the cascade have to be written out. Deleting an invoice whose
credit note is not in the same batch is now a validation failure --
RelationNotExist cannot express "unless it is also going", so the rule takes
the whole ids list. And InvoiceService::delete() nulls out any surviving
pointer into the deleted batch, so even a caller that bypasses the request
layer cannot leave a credit note referencing a row that is gone.

Also: creating a credit note from the dropdown swallowed server errors, so a
refused reversal (paid invoice, draft, already credited) looked like it had
worked. It now surfaces the message the way the sibling actions in the app
do.

* fix(i18n): translate credit-note guard errors and complete locale coverage

The create/clone/convert guards throw ValidationException with bare
snake_case keys, and none of them were in ERROR_TRANSLATION_MAP, so the
toast rendered the raw key instead of a sentence.

- map the six guard keys to new errors.* translations
- give clone and convert-to-estimate a catch so their guards surface at
  all, and factor the toast into showApiErrorNotification()
- add every credit-note string to fr, it and mk (avoir / nota di credito
  / книжно одобрение) so the branch ships in all five maintained locales
- proofread the German: "durch" instead of "via", reword
  errors.credit_note_attached

* refactor(db): consolidate credit-note migrations into one

Nothing in PR #689 has shipped, so the branch's two separate migrations are
squashed into a single 2026_08_02_120000_add_credit_note_support. Installs
upgrading to 3.0.0 apply one migration instead of three, and the columns the
next phases need land in the same file rather than as follow-ups.

Carried over unchanged from the deleted files: the INVOICE default on
invoices.type (it backfills existing rows so they stay inside the type-scoped
serial-number queries), the no-FK unsignedInteger convention for
related_invoice_id per PRs #618 / #683, the SQLite requirement to dropIndex
before dropColumn in down(), and the company_settings backfill of
credit_note_number_format for installs predating independent credit-note
numbering.

New in this migration, for partial credit notes:

- invoices.credit_reason (nullable text)
- invoice_items.source_invoice_item_id (nullable unsignedInteger + index),
  recording which line of the original invoice a credit-note line credits
- taxes.base_amount widened to a signed bigInteger

The base_amount change fixes a pre-existing bug, not just a credit-note need.
taxes.amount was made signed in 2024_02_08_181804_taxes_amount_as_signed but
base_amount, added as unsignedBigInteger in 2021_07_16_075100, was left behind,
so any negative tax row on a company with an exchange rate is rejected outright
under strict-mode MySQL.

CreditNoteSchemaTest covers the new columns and their nullability, the INVOICE
default, a Tax row with a negative base_amount, a negative-price invoice item
linked to its source line, and the seeded credit_note_number_format setting.
Round-tripped up and down on both SQLite and MySQL 8.0.

* feat(credit-notes): add the pure telescoping credit-note calculator

CreditNoteAmounts computes partial and full credit notes from a plain-array
snapshot of the original invoice, with no Eloquent involved. Every credit is
the difference between two cumulative credits derived from the original's
stored integers, so crediting a line in chunks sums back to the invoice to the
cent and the order of the chunks does not matter.

Quantities are carried as integer hundredths, money stays in integer minor
units, and rounding is the same half-away-from-zero rule DocumentTotals uses.
Fixed-amount tax rows are pro-rated like percentage ones (otherwise a flat tax
is credited once per chunk and exceeds what was invoiced), and percentage rows
are pro-rated from the stored amount rather than re-derived, so a full credit
reproduces the invoice instead of re-making a rounding decision.

* feat(credit-notes): credit an invoice line by line, not all at once

A credit note is no longer a whole-invoice reversal. CreditNoteService takes
the lines and quantities to credit (an empty list still means everything that
is left) and drives CreditNoteAmounts, so an invoice can be credited in as
many pieces as needed.

The model is telescoping, not incremental: each credit note is the difference
between the cumulative credit at the quantities credited after it and the one
before it, both derived from the original invoice's stored integers and never
from earlier credit notes. Chunks therefore sum back to the invoice to the
cent in every field, in any order, and a fully credited invoice nets to zero.
Because those integers are already exact, the line items are written with
recompute disabled: re-deriving a total from price times quantity, or a base_*
column through the exchange rate, would round a second time and break the
identity by a cent.

How much of each line is already credited is read off the surviving credit
notes through source_invoice_item_id, so deleting one gives its quantities
back with no separate bookkeeping. The invariants live in the service, under a
row lock, because each is a read-then-write on the invoice: nothing may be
credited twice, no line beyond what was invoiced, and no more in total than
the invoice's unpaid balance. The one-credit-note-per-invoice and no-payments
guards in the controller are gone, replaced by those.

Paid status and balance are kept apart. A credit is not a payment: an invoice
credited in part is still UNPAID, just for less, and only the payments decide
whether it reads PARTIALLY_PAID. recalculateBalance() owns that rule and runs
only when a credit note is created or deleted, which is why it does not live
in getInvoiceStatusByAmount(): PaymentService::create() adjusts the invoice
before the Payment row exists, so a payments-derived rule there would read a
stale sum. PaymentService::delete() now derives the status from the payments
that remain rather than from due == total, which is the same answer on an
uncredited invoice and the correct one on a credited one.

A credited invoice is frozen (its item ids anchor the credit-note lines), the
reason for a credit is stored and cannot be written through the invoice form,
and the invoice resource reports how much has been credited, whether that is
partial or full, and how much of each line.

* feat(credit-notes): choose the lines and quantities to credit in the UI

Creating a credit note was a yes/no dialog that reversed the whole
invoice, which is all the API could do. The API now credits any subset
of the lines, so the front end has to ask which ones.

The dropdown action opens a form instead of a confirmation: one row per
invoice line showing what was invoiced, what is already credited and
what is left, with the remaining quantity pre-filled and editable.
Quantities are compared in integer hundredths so the last unit of a
line is never blocked by float drift, and selecting every line at its
full remaining quantity on an untouched invoice is sent as the
no-items full reversal the server already implements.

Only the line subtotals are shown: discounts and taxes are apportioned
by the server's calculator, so re-deriving them here would disagree
with the document that gets written. The note under the table says so.

The "Cancelled" badge and banner now key on credited_status rather than
on the presence of any credit note, so a partly credited invoice reads
as partly credited and keeps its real paid status alongside.

* feat(credit-notes): show partial credits on the document and in every locale

The PDF said one of two things about a credited invoice: nothing, or
"Cancelled". Partial credits made both wrong. An invoice credited by half now
carries a Partially Credited banner naming the amount and the credit notes it
came from, a fully credited one lists every credit note rather than the first,
and the credit note itself prints the reason it was issued.

The totals block was the more dangerous half. It was gated on paid_status, so
an invoice settled by a credit note announced "Amount Paid" for money nobody
sent. It now splits the two: Amount Credited comes off the credit notes, Amount
Paid is whatever the balance dropped by beyond them. For a document with no
credit notes the arithmetic collapses to the old expression and the rendering
is unchanged word for word and position for position, checked against dompdf
output and against pdf:compare across all seven stock templates.

The reason is operator-written free text, so it is echoed escaped rather than
through @lang, which does not escape.

Locale-side, the phase-4 English-only strings are translated into the four
maintained catalogues, and the two guards partial crediting retired (one credit
note per invoice, and no crediting an invoice with payments) are deleted
everywhere so no translated install can still show them. A test walks all five
catalogues and fails on either a missing key or a surviving one.

The dashboard's recent-due list eager-loads the credit notes so its rows can
tell a credited invoice from a paid one.

* fix(payments): stop an overpayment from silently vanishing

A payment carried no maximum, so any amount larger than the invoice's
outstanding balance was accepted. PaymentService then handed it to
Invoice::subtractInvoicePayment(), which drove the balance negative, and
Invoice::getInvoiceStatusByAmount() returns an empty array for a negative
amount, so the status change was never applied. The money was recorded
against an invoice whose balance and paid status no longer described it.

The bug predates credit notes, but partial credit notes shrink an
invoice's balance without shrinking its total, which makes it easy to
walk into.

PaymentRequest now caps the amount at the invoice's due amount. On an
edit of a payment that already belongs to that same invoice its own
amount returns to the pool, matching what PaymentService::update() does;
a payment with no invoice stays uncapped. The message string is the
translation key, as elsewhere in the app, and is mapped and localized in
all five shipped locales.

The 'update payment' fixture stacked two randomly sized payments on a
randomly sized invoice, which the cap turns into an intermittent failure,
so its amounts are pinned.

* fix(payments): show the rejected-save message on the payment form

The create-payment view swallowed every API failure in a bare catch, so a
validation rejection, including the new remaining-balance cap, looked like
a save that silently stalled. The catch now routes the error through the
shared toast path the other forms use.

* fix(dashboard): stop the recent-due list crashing on partial credits

The recent-due invoices are serialized as raw models, so every loaded
relation runs the full $appends set. The column-limited creditNotes eager
load left its children without company_id, the company date-format lookup
returned null, and formattedCreatedAt took the endpoint down with a 500.

The relation is not needed there at all: credited_status is a resource
field the raw payload never carried, and a fully credited invoice has no
due amount so it never appears in this list. Drop the eager load and pin
the scenario (a partially credited invoice among the recent due) with a
test that fails 500 on the old code.

---------

Co-authored-by: Linus <lkurz@posteo.de>
Co-authored-by: Darko Gjorgjijoski <dg@darkog.com>
2026-08-01 22:15:00 +02:00

1721 lines
80 KiB
JSON

{
"navigation": {
"dashboard": "Dashboard",
"customers": "Clienti",
"items": "Commesse",
"invoices": "Fatture",
"recurring-invoices": "Fatture ricorrenti",
"expenses": "Spese",
"estimates": "Preventivi",
"payments": "Pagamenti",
"reports": "Rapporti",
"settings": "Configurazione",
"logout": "Disconnessione",
"users": "Utenti",
"modules": "Moduli"
},
"general": {
"add_company": "Aggiungi azienda",
"view_pdf": "Vedi PDF",
"copy_pdf_url": "Copia URL PDF",
"download_pdf": "Scarica PDF",
"save": "Salva",
"create": "Crea",
"cancel": "Elimina",
"update": "Aggiorna",
"deselect": "Deseleziona",
"download": "Scarica",
"from_date": "Dalla Data",
"to_date": "Alla Data",
"from": "Da",
"to": "A",
"cc": "CC",
"bcc": "BCC",
"ok": "Ok",
"yes": "Sì",
"no": "No",
"sort_by": "Ordina per",
"ascending": "Crescente",
"descending": "Decrescente",
"subject": "Oggetto",
"body": "Corpo",
"message": "Messaggio",
"send": "Invia",
"preview": "Anteprima",
"go_back": "Torna indietro",
"back_to_login": "Torna al Login?",
"home": "Pagina iniziale",
"filter": "Filtro",
"delete": "Elimina",
"edit": "Modifica",
"view": "Visualizza",
"add_new_item": "Aggiungi nuova Commessa",
"clear_all": "Pulisci tutto",
"showing": "Visualizzo",
"of": "di",
"actions": "Azioni",
"subtotal": "SUBTOTALE",
"discount": "SCONTO",
"fixed": "Fissato",
"percentage": "Percentuale",
"tax": "TASSA",
"total_amount": "AMMONTARE TOTALE",
"bill_to": "Fattura a",
"ship_to": "Invia a",
"due": "Dovuto",
"draft": "Bozza",
"sent": "Inviata",
"all": "Tutte",
"select_all": "Seleziona tutto",
"select_template": "Scegli un modello",
"choose_file": "Clicca per selezionare un file",
"choose_template": "Scegli un modello",
"choose": "Scegli",
"remove": "Rimuovi",
"select_a_status": "Seleziona uno Stato",
"select_a_tax": "Seleziona imposta",
"search": "Cerca",
"are_you_sure": "Sei sicuro/a?",
"list_is_empty": "La lista è vuota.",
"no_tax_found": "Nessuna imposta trovata!",
"four_zero_four": "404",
"you_got_lost": "Qualcosa è andato storto! Ti sei perso",
"go_home": "Vai alla pagina principale",
"test_mail_conf": "Configurazione della mail di test",
"send_mail_successfully": "Mail inviata con successo",
"setting_updated": "Configurazioni aggiornate con successo",
"select_state": "Seleziona lo Stato",
"select_country": "Seleziona Paese",
"select_city": "Seleziona Città",
"street_1": "Indirizzo 1",
"street_2": "Indirizzo 2",
"action_failed": "Errore",
"retry": "Riprova",
"choose_note": "Scegli Nota",
"no_note_found": "Nessuna Nota Trovata",
"insert_note": "Inserisci Nota",
"copied_pdf_url_clipboard": "URL PDF copiato negli appunti!",
"copied_url_clipboard": "URL copiato negli appunti",
"docs": "Documenti",
"do_you_wish_to_continue": "Vuoi continuare?",
"note": "Nota",
"pay_invoice": "Paga Fattura",
"login_successfully": "Accesso effettuato con successo!",
"logged_out_successfully": "Disconnessione riuscita",
"mark_as_default": "Contrassegna come predefinito",
"no_data_found": "Nessun dato esistente",
"pagination": {
"previous": "Precedenti",
"next": "Successivo",
"showing": "Visualizzazione",
"to": "A",
"of": "da",
"results": "Risultati"
},
"file_upload": {
"drag_a_file": "Trascina un file qui o",
"browse": "Sfoglia",
"to_choose": "Scegliere un file"
},
"multiselect": {
"the_list_is_empty": "La lista è vuota",
"no_results_found": "Nessun risultato trovato"
},
"copy_to_clipboard": "Copia negli appunti"
},
"dashboard": {
"select_year": "Seleziona anno",
"cards": {
"due_amount": "Somma dovuta",
"customers": "Clienti",
"invoices": "Fatture",
"estimates": "Preventivi",
"payments": "Pagamenti"
},
"chart_info": {
"total_sales": "Vendite",
"total_receipts": "Ricevute",
"total_expense": "Uscite",
"net_income": "Guadagno netto",
"year": "Seleziona anno"
},
"monthly_chart": {
"title": "Entrate & Uscite"
},
"recent_invoices_card": {
"title": "Fatture insolute",
"due_on": "Data di scadenza",
"customer": "Cliente",
"amount_due": "Ammontare dovuto",
"actions": "Azioni",
"view_all": "Vedi tutto"
},
"recent_estimate_card": {
"title": "Preventivi recenti",
"date": "Data",
"customer": "Cliente",
"amount_due": "Ammontare dovuto",
"actions": "Azioni",
"view_all": "Vedi tutto"
}
},
"tax_types": {
"name": "Nome",
"description": "Descrizione",
"percent": "Percento",
"compound_tax": "Imposta composta",
"percentage": "Percentuale",
"fixed_amount": "Importo fisso",
"tax_type": "Tipo d'imposta"
},
"global_search": {
"search": "Cerca...",
"customers": "Clienti",
"users": "Utenti",
"no_results_found": "Nessun Risultato Trovato"
},
"company_switcher": {
"label": "CAMBIA AZIENDA",
"no_results_found": "Nessun Risultato Trovato",
"add_new_company": "Aggiungi una nuova azienda",
"new_company": "Nuova Azienda",
"created_message": "Azienda creata con successo"
},
"dateRange": {
"today": "Oggi",
"this_week": "Questa Settimana",
"this_month": "Questo mese",
"this_quarter": "Questo Trimestre",
"this_year": "Anno corrente",
"previous_week": "Settimana precedente",
"previous_month": "Mese precedente",
"previous_quarter": "Trimestre Precedente",
"previous_year": "Anno Precedente",
"custom": "Personalizzato"
},
"customers": {
"title": "Clienti",
"prefix": "Prefisso",
"tax_id": "Partita IVA",
"add_customer": "Aggiungi cliente",
"contacts_list": "Lista clienti",
"name": "Nome",
"mail": "Mail",
"statement": "Dichiarazione",
"display_name": "Nome Visibile",
"primary_contact_name": "Riferimento",
"contact_name": "Nome Contatto",
"amount_due": "Ammontare dovuto",
"email": "Nazione",
"address": "Indirizzo",
"phone": "Telefono",
"website": "Sito web",
"overview": "Panoramica",
"invoice_prefix": "Prefisso Fattura",
"estimate_prefix": "Prefisso Preventivi",
"payment_prefix": "Prefisso Pagamento",
"enable_portal": "Abilita Portale",
"country": "Paese",
"state": "Provincia",
"city": "Città",
"zip_code": "Codice Postale",
"added_on": "Aggiunto il",
"action": "Azione",
"password": "Password",
"confirm_password": "Conferma Password",
"street_number": "Numero Civico",
"primary_currency": "Valuta Principale",
"description": "Descrizione",
"add_new_customer": "Aggiungi nuovo Cliente",
"save_customer": "Salva Cliente",
"update_customer": "Aggiorna Cliente",
"customer": "Cliente | Clienti",
"new_customer": "Nuovo cliente",
"edit_customer": "Modifica Cliente",
"basic_info": "Informazioni",
"portal_access": "Accesso al Portale",
"portal_access_text": "Vuoi consentire a questo cliente di accedere al Portale Clienti?",
"portal_access_url": "URL Login Portale Cliente",
"portal_access_url_help": "Copia e inoltra l'URL sopra indicato al tuo cliente per fornire l'accesso.",
"billing_address": "Indirizzo di Fatturazione",
"shipping_address": "Indirizzo di Spedizione",
"copy_billing_address": "Copia da Fatturazione",
"no_customers": "Ancora nessun Cliente!",
"no_customers_found": "Nessun cliente trovato!",
"no_contact": "Nessun contatto",
"no_contact_name": "Nessun nome del contatto",
"list_of_customers": "Questa sezione conterrà l'elenco degli utenti.",
"primary_display_name": "Mostra il Nome Principale",
"select_currency": "Seleziona valuta",
"select_a_customer": "Seleziona Cliente",
"type_or_click": "Scrivi o clicca per selezionare",
"new_transaction": "Nuova transazione",
"no_matching_customers": "Non ci sono clienti corrispondenti!",
"phone_number": "Numero di telefono",
"create_date": "Crea data",
"confirm_delete": "Non sarai in grado di recuperare questo cliente e tutte le relative fatture, stime e pagamenti. | Non sarai in grado di recuperare questi clienti e tutte le relative fatture, stime e pagamenti.",
"created_message": "Cliente creato con successo",
"updated_message": "Cliente aggiornato con successo",
"address_updated_message": "Indirizzo aggiornato con successo",
"deleted_message": "Cliente cancellato con successo | Clienti cancellati con successo",
"edit_currency_not_allowed": "Impossibile cambiare valuta, dopo aver creato transazioni."
},
"items": {
"title": "Commesse",
"items_list": "Lista Commesse",
"name": "Nome",
"unit": "Unità/Tipo",
"description": "Descrizione",
"added_on": "Aggiunto il",
"price": "Prezzo",
"date_of_creation": "Data di creazione",
"not_selected": "Nessun elemento selezionato",
"action": "Azione",
"add_item": "Aggiungi Commessa",
"save_item": "Salva",
"update_item": "Aggiorna",
"item": "Commessa | Commesse",
"add_new_item": "Aggiungi nuova Commessa",
"new_item": "Nuova Commessa",
"edit_item": "Modifica Commessa",
"no_items": "Ancora nessuna commessa!",
"list_of_items": "Qui ci sarà la lista delle commesse.",
"select_a_unit": "Seleziona unità",
"taxes": "Imposte",
"item_attached_message": "Non puoi eliminare una Commessa che è già attiva",
"confirm_delete": "Non potrai ripristinare la Commessa | Non potrai ripristinare le Commesse",
"created_message": "Commessa creata con successo",
"updated_message": "Commessa aggiornata con successo",
"deleted_message": "Commessa eliminata con successo | Commesse eliminate con successo"
},
"estimates": {
"title": "Preventivi",
"accept_estimate": "Accetta Preventivo",
"reject_estimate": "Rifiuta Preventivo",
"estimate": "Preventivo | Preventivi",
"estimates_list": "Lista Preventivi",
"days": "{days} Giorni",
"months": "{months} Mese",
"years": "{years} Anno",
"all": "Tutti",
"paid": "Pagato",
"unpaid": "Non pagato",
"customer": "CLIENTE",
"ref_no": "RIF N.",
"number": "NUMERO",
"amount_due": "AMMONTARE DOVUTO",
"partially_paid": "Pagamento Parziale",
"total": "Totale",
"discount": "Sconto",
"sub_total": "Sub Totale",
"net_total": "Imponibile",
"estimate_number": "Preventivo Numero",
"ref_number": "Numero di Riferimento",
"contact": "Contatto",
"add_item": "Aggiungi un item",
"date": "Data",
"due_date": "Data di pagamento",
"expiry_date": "Data di scadenza",
"status": "Stato",
"add_tax": "Aggiungi Imposta",
"amount": "Ammontare",
"action": "Azione",
"notes": "Note",
"tax": "Imposta",
"estimate_template": "Modello",
"convert_to_invoice": "Converti in Fattura",
"mark_as_sent": "Segna come Inviata",
"send_estimate": "Invia preventivo",
"resend_estimate": "Invia di nuovo il preventivo",
"record_payment": "Registra Pagamento",
"add_estimate": "Aggiungi Preventivo",
"save_estimate": "Salva Preventivo",
"cloned_successfully": "Preventivo clonato con successo",
"clone_estimate": "Clona Preventivo",
"confirm_clone": "Questo preventivo sarà clonato in un nuovo preventivo",
"confirm_conversion": "Questo preventivo verrà usato per generare una nuova fattura.",
"conversion_message": "Fattura creata",
"confirm_send_estimate": "Questo preventivo verrà inviato al cliente via mail",
"confirm_mark_as_sent": "Questo preventivo verrà contrassegnato come inviato",
"confirm_mark_as_accepted": "Questo preventivo verrà contrassegnato come Accettato",
"confirm_mark_as_rejected": "Questo preventivo verrà contrassegnato come Rifiutato",
"no_matching_estimates": "Nessun preventivo trovato!",
"mark_as_sent_successfully": "Preventivo contrassegnato come inviato con successo",
"send_estimate_successfully": "Preventivo inviato con successo",
"errors": {
"required": "Campo obbligatorio"
},
"accepted": "Accettato",
"rejected": "Rifiutato",
"expired": "Scaduto",
"sent": "Inviato",
"draft": "Bozza",
"viewed": "Visualizzato",
"declined": "Rifiutato",
"new_estimate": "Nuovo Preventivo",
"add_new_estimate": "Crea Nuovo Preventivo",
"update_Estimate": "Aggiorna preventivo",
"edit_estimate": "Modifica Preventivo",
"items": "Commesse",
"Estimate": "Preventivo | Preventivi",
"add_new_tax": "Aggiungi una nuova tassa/imposta",
"no_estimates": "Ancora nessun preventivo!",
"list_of_estimates": "Questa sezione conterrà la lista dei preventivi.",
"mark_as_rejected": "Segna come Rifiutato",
"mark_as_accepted": "Segna come Accettato",
"marked_as_accepted_message": "Preventivo contrassegnato come accettato",
"marked_as_rejected_message": "Preventivo contrassegnato come rifiutato",
"confirm_delete": "Non potrai più recuperare questo preventivo | Non potrai più recuperare questi preventivi",
"created_message": "Preventivo creato con successo",
"updated_message": "Preventivo modificato con successo",
"deleted_message": "Preventivo eliminato con successo | Preventivi eliminati con successo",
"something_went_wrong": "Qualcosa è andato storto",
"item": {
"title": "Titolo Commessa",
"description": "Descrizione",
"quantity": "Quantità",
"price": "Prezzo",
"discount": "Sconto",
"total": "Totale",
"total_discount": "Sconto Totale",
"sub_total": "Sub Totale",
"tax": "Tasse",
"amount": "Ammontare",
"select_an_item": "Scrivi o clicca per selezionare un item",
"type_item_description": "Scrivi una Descrizione (opzionale)"
},
"mark_as_default_estimate_template_description": "Se abilitato, il modello selezionato verrà selezionato automaticamente per i nuovi preventivi."
},
"invoices": {
"title": "Fatture",
"download": "Scarica",
"pay_invoice": "Paga Fattura",
"invoices_list": "Lista Fatture",
"invoice_information": "Informazioni Fattura",
"days": "{days} Giorni",
"months": "{months} Mese",
"years": "{years} Anno",
"all": "Tutti",
"paid": "Pagato",
"unpaid": "Insoluta",
"viewed": "Visualizzato",
"overdue": "Scaduta",
"completed": "Completata",
"customer": "CLIENTE",
"paid_status": "STATO DI PAGAMENTO",
"ref_no": "RIF N.",
"number": "NUMERO",
"amount_due": "AMMONTARE DOVUTO",
"partially_paid": "Parzialmente Pagata",
"total": "Totale",
"discount": "Sconto",
"sub_total": "Sub Totale",
"invoice": "Fattura | Fatture",
"invoice_number": "Numero Fattura",
"ref_number": "Numero di riferimento",
"contact": "Contatto",
"add_item": "Aggiungi Commessa/Item",
"date": "Data",
"due_date": "Data di pagamento",
"status": "Stato",
"add_tax": "Aggiungi Imposta",
"amount": "Ammontare",
"action": "Azione",
"notes": "Note",
"view": "Vedi",
"send_invoice": "Invia Fattura",
"resend_invoice": "Invia di nuovo la fattura",
"invoice_template": "Modello Fattura",
"conversion_message": "Fattura duplicata con successo",
"template": "Modello",
"mark_as_sent": "Segna come inviata",
"confirm_send_invoice": "Questa fattura sarà inviata via Mail al Cliente",
"invoice_mark_as_sent": "Questa fattura sarà contrassegnata come inviata",
"confirm_mark_as_accepted": "Questa fattura verrà contrassegnata come Accettata",
"confirm_mark_as_rejected": "Questa fattura sarà contrassegnata come Rifiutata",
"confirm_send": "Questa fattura sarà inviata via Mail al Cliente",
"invoice_date": "Data fattura",
"record_payment": "Registra Pagamento",
"add_new_invoice": "Aggiungi nuova Fattura",
"update_expense": "Aggiorna Costo",
"edit_invoice": "Modifica Fattura",
"new_invoice": "Nuova Fattura",
"save_invoice": "Salva fattura",
"update_invoice": "Aggiorna Fattura",
"add_new_tax": "Aggiungi tassa/imposta",
"no_invoices": "Ancora nessuna fattura!",
"mark_as_rejected": "Segna come rifiutata",
"mark_as_accepted": "Segna come accettata",
"list_of_invoices": "Questa sezione conterrà la lista delle Fatture.",
"select_invoice": "Seleziona Fattura",
"no_matching_invoices": "Nessuna fattura trovata!",
"mark_as_sent_successfully": "Fattura inviata con successo",
"invoice_sent_successfully": "Fattura inviata correttamente",
"cloned_successfully": "Fattura copiata con successo",
"clone_invoice": "Clona Fattura",
"confirm_clone": "Questa fattura verrà clonata in una nuova fattura",
"create_credit_note": "Crea Nota di Credito",
"credit_note_created": "Nota di credito creata con successo",
"credit_note": "Nota di Credito",
"credit_note_items": "Righe da accreditare",
"credit_note_quantity_to_credit": "Qtà da accreditare",
"credit_note_original_quantity": "Fatturato",
"credit_note_already_credited": "Accreditato",
"credit_note_remaining_quantity": "Rimanente",
"credit_note_amount": "Importo",
"credit_note_credited_subtotal": "Subtotale accreditato",
"credit_note_reason": "Motivo",
"credit_note_reason_placeholder": "Facoltativo: perché questa fattura viene accreditata",
"credit_note_proportional_note": "Sconti e imposte vengono accreditati in proporzione alle righe e alle quantità selezionate sopra.",
"credit_note_select_at_least_one_item": "Seleziona almeno una riga da accreditare.",
"credit_note_quantity_exceeds_remaining": "La quantità supera la quantità rimanente di questa riga.",
"credit_note_fully_credited_line": "Completamente accreditata",
"credited_amount": "Importo accreditato",
"partially_credited": "Parzialmente accreditata",
"partially_credited_via_credit_notes": "Parzialmente accreditata tramite nota di credito",
"original_invoice": "Fattura originale",
"cancelled": "Annullata",
"cancelled_via_credit_note": "Annullata tramite nota di credito",
"item": {
"title": "Titolo Commessa",
"description": "Descrizione",
"quantity": "Quantità",
"price": "Prezzo",
"discount": "Sconto",
"total": "Totale",
"total_discount": "Sconto Totale",
"sub_total": "Sub Totale",
"tax": "Tassa",
"amount": "Ammontare",
"select_an_item": "Scrivi o clicca per selezionare un item",
"type_item_description": "Scrivi una descrizione (opzionale)"
},
"payment_attached_message": "Una delle fatture selezionate ha già associato un pagamento. Assicurati di eliminare il pagamento associato prima di procedere con la rimozione",
"confirm_delete": "Non potrai recuperare la Fattura cancellata | Non potrai recuperare le Fatture cancellate",
"created_message": "Fattura creata con successo",
"updated_message": "Fattura aggiornata con successo",
"deleted_message": "Fattura cancellata con successo | Fatture cancellate con successo",
"marked_as_sent_message": "Fattura contrassegnata come inviata con successo",
"something_went_wrong": "Qualcosa è andato storto",
"invalid_due_amount_message": "L'ammontare totale della fattura non può essere inferiore all'ammontare totale pagato per questa fattura. Modifica la fattura o cancella i pagamenti associati per continuare.",
"mark_as_default_invoice_template_description": "Se abilitata, il modello selezionato verrà selezionato automaticamente per le nuove fatture."
},
"recurring_invoices": {
"title": "Fatture ricorrenti",
"invoices_list": "Elenco Fatture ricorrenti",
"days": "{days} Giorni",
"months": "{months} Mese",
"years": "{years} Anno",
"all": "Tutte",
"paid": "Pagata",
"unpaid": "Non Pagata",
"viewed": "Vista",
"overdue": "In ritardo",
"active": "Attiva",
"completed": "Completata",
"customer": "CLIENTE",
"paid_status": "STATO DI PAGAMENTO",
"ref_no": "Riferimento n.",
"number": "NUMERO",
"amount_due": "AMMONTARE DOVUTO",
"partially_paid": "Parzialmente Pagata",
"total": "Totale",
"discount": "Sconto",
"sub_total": "Totale Parziale",
"invoice": "Fattura Ricorrente | Fatture Ricorrenti",
"invoice_number": "Numero Della Fattura Ricorrente",
"next_invoice_date": "Data Prossima Fattura",
"ref_number": "Numero di Riferimento",
"contact": "Contatto",
"add_item": "Aggiungi un elemento",
"date": "Data",
"limit_by": "Limita per",
"limit_date": "Data limite",
"limit_count": "Conteggio Limite",
"count": "Conteggio",
"status": "Stato",
"select_a_status": "Seleziona uno Stato",
"working": "Elaborando",
"on_hold": "In sospeso",
"complete": "Completate",
"add_tax": "Aggiungi imposta",
"amount": "Quantità",
"action": "Azione",
"notes": "Note",
"view": "Visualizza",
"basic_info": "Info Di Base",
"send_invoice": "Invia Fattura Ricorrente",
"auto_send": "Invio automatico",
"resend_invoice": "Invia di nuovo Fattura Ricorrente",
"invoice_template": "Modello di Fattura Ricorrente",
"conversion_message": "Fattura duplicata con successo",
"template": "Modello",
"mark_as_sent": "Segna come inviata",
"confirm_send_invoice": "Questa fattura ricorrente verrà inviata via email al cliente",
"invoice_mark_as_sent": "Questa fattura sarà contrassegnata come inviata",
"confirm_send": "Questa fattura ricorrente verrà inviata via e-mail al cliente",
"starts_at": "Data Inizio",
"due_date": "Data di scadenza fattura",
"record_payment": "Registra Pagamento",
"add_new_invoice": "Nuova Fattura ricorrente",
"update_expense": "Aggiorna Spesa",
"edit_invoice": "Modifica Fattura Ricorrente",
"new_invoice": "Nuova Fattura Ricorrente",
"send_automatically": "Invia automaticamente",
"send_automatically_desc": "Abilitare questa opzione, se si desidera inviare automaticamente la fattura al cliente quando viene creata.",
"save_invoice": "Salva Fattura Ricorrente",
"update_invoice": "Aggiorna Fattura Ricorrente",
"add_new_tax": "Aggiungi una nuova tassa/imposta",
"no_invoices": "Ancora nessuna Fattura Ricorrente!",
"mark_as_rejected": "Segna come rifiutata",
"mark_as_accepted": "Segna come accettata",
"list_of_invoices": "Questa sezione conterrà l'elenco delle fatture ricorrenti.",
"select_invoice": "Seleziona Fattura",
"no_matching_invoices": "Nessuna fattura trovata!",
"mark_as_sent_successfully": "Fattura Ricorrente contrassegnata come inviata con successo",
"invoice_sent_successfully": "Fattura inviata con successo",
"cloned_successfully": "Fattura copiata con successo",
"clone_invoice": "Duplica Fattura Ricorrente",
"confirm_clone": "Questa fattura ricorrente verrà clonata in una nuova fattura ricorrente",
"add_customer_email": "Inserisci una E-Mail per inviare automaticamente fatture al cliente.",
"item": {
"title": "Titolo Articolo",
"description": "Descrizione",
"quantity": "Quantità",
"price": "Prezzo",
"discount": "Sconto",
"total": "Totale",
"total_discount": "Sconto Totale",
"sub_total": "Totale Parziale",
"tax": "Tassa",
"amount": "Importo",
"select_an_item": "Digita o clicca per selezionare un elemento",
"type_item_description": "Tipo Descrizione Articolo (Opzionale)"
},
"frequency": {
"title": "Frequenza (utilizzando il formato CRON)",
"select_frequency": "Seleziona Frequenza",
"minute": "Minuto",
"hour": "Ora",
"day_month": "Giorno del mese",
"month": "Mese",
"day_week": "Giorno della settimana",
"every_minute": "Ogni minuto",
"every_30_minute": "Ogni 30 minuti",
"every_hour": "Ogni ora",
"every_2_hour": "Ogni 2 ore",
"every_day_at_midnight": "Ogni giorno a mezzanotte",
"every_week": "Ogni Settimana",
"every_15_days_at_midnight": "Ogni 15 giorni a mezzanotte",
"on_the_first_day_of_every_month_at_midnight": "Il primo giorno di ogni mese alle 00:00",
"every_6_month": "Ogni 6 mesi",
"every_year_on_the_first_day_of_january_at_midnight": "Ogni anno il primo giorno di gennaio alle 00:00",
"custom": "Personalizzato"
},
"confirm_delete": "Non sarai in grado di recuperare questa fattura | Non sarai in grado di recuperare queste fatture",
"created_message": "Fattura ricorrente creata con successo",
"updated_message": "Fattura ricorrente aggiornata correttamente",
"deleted_message": "Fattura ricorrente eliminata con successo | Fatture ricorrenti eliminate con successo",
"marked_as_sent_message": "Fattura ricorrente contrassegnata come inviata correttamente",
"user_email_does_not_exist": "L'e-mail dell'utente non esiste",
"something_went_wrong": "qualcosa è andato storto",
"invalid_due_amount_message": "L'importo totale delle fatture ricorrenti non può essere inferiore all'importo totale pagato per questa fattura ricorrente. Si prega di aggiornare la fattura o eliminare i pagamenti associati per continuare.",
"limit": {
"none": "Nessuno",
"date": "Data",
"count": "Quantità"
}
},
"payments": {
"title": "Pagamenti",
"payments_list": "Lista Pagamenti",
"record_payment": "Registra Pagamento",
"customer": "Cliente",
"date": "Data",
"amount": "Ammontare",
"action": "Azione",
"payment_number": "Numero di pagamento",
"payment_mode": "Modalità di Pagamento",
"invoice": "Fattura",
"note": "Nota",
"add_payment": "Aggiungi Pagamento",
"new_payment": "Nuovo Pagamento",
"edit_payment": "Modifica Pagamento",
"view_payment": "Vedi Pagamento",
"add_new_payment": "Aggiungi nuovo pagamento",
"send_payment_receipt": "Invia ricevuta di pagamento",
"send_payment": "Inviare il pagamento",
"save_payment": "Salva pagamento",
"update_payment": "Aggiorna pagamento",
"payment": "Pagamento | Pagamenti",
"no_payments": "Ancora nessun pagamento!",
"not_selected": "Non Selezionato",
"no_invoice": "Nessuna fattura",
"no_matching_payments": "Non ci sono pagamenti!",
"list_of_payments": "Questa sezione conterrà la lista dei pagamenti.",
"select_payment_mode": "Seleziona modalità di pagamento",
"confirm_mark_as_sent": "Questo preventivo verrà contrassegnato come inviato",
"confirm_send_payment": "Questo pagamento verrà inviato via email al cliente",
"send_payment_successfully": "Pagamento inviato con successo",
"something_went_wrong": "si è verificato un errore",
"confirm_delete": "Non potrai recuperare questo pagamento | Non potrai recuperare questi pagamenti",
"created_message": "Pagamento creato con successo",
"updated_message": "Pagamento aggiornato con successo",
"deleted_message": "Pagamento cancellato con successo | Pagamenti cancellati con successo",
"invalid_amount_message": "L'ammontare del pagamento non è valido",
"amount_due": "Importo dovuto"
},
"expenses": {
"title": "Spese",
"expenses_list": "Lista Costi",
"select_a_customer": "Seleziona Cliente",
"expense_title": "Titolo",
"customer": "Cliente",
"currency": "Valuta",
"contact": "Contatto",
"category": "Categoria",
"from_date": "Dalla Data",
"to_date": "Alla Data",
"expense_date": "Data",
"expense_number": "Numero di spesa",
"expense_number_placeholder": "EXP-001",
"description": "Descrizione",
"receipt": "Ricevuta",
"amount": "Ammontare",
"action": "Azione",
"not_selected": "Non selezionata",
"note": "Nota",
"category_id": "Id categoria",
"date": "Data Spesa",
"add_expense": "Aggiungi Spesa",
"add_new_expense": "Aggiungi nuova Spesa",
"save_expense": "Salva la Spesa",
"update_expense": "Aggiorna Spesa",
"download_receipt": "Scarica la Ricevuta",
"edit_expense": "Modifica Spesa",
"new_expense": "Nuova Spesa",
"expense": "Spesa | Spese",
"no_expenses": "Ancora nessuna spesa!",
"list_of_expenses": "Questa sezione conterrà la lista delle Spese.",
"confirm_delete": "Non potrai recuperare questa spesa | Non potrai recuperare queste spese",
"created_message": "Spesa creata con successo",
"updated_message": "Spesa modificata con successo",
"deleted_message": "Spesa cancellata con successo | Spese cancellate con successo",
"categories": {
"categories_list": "Lista categorie",
"title": "Titolo",
"name": "Nome",
"description": "Descrizione",
"amount": "Ammontare",
"actions": "Azioni",
"add_category": "Aggiungi Categoria",
"new_category": "Nuova Categoria",
"category": "Categoria | Categorie",
"select_a_category": "Seleziona Categoria"
}
},
"login": {
"email": "Email",
"password": "Password",
"forgot_password": "Password dimenticata?",
"or_signIn_with": "o fai login con",
"login": "Accedi",
"register": "Registrati",
"reset_password": "Resetta Password",
"password_reset_successfully": "Password Resettata con successo",
"enter_email": "Inserisci email",
"enter_password": "Inserisci Password",
"retype_password": "Ridigita Password"
},
"modules": {
"buy_now": "Acquista Ora",
"install": "Installa",
"price": "Prezzo",
"download_zip_file": "Scarica il file zip",
"unzipping_package": "Decompressione del pacchetto in corso",
"copying_files": "Copia dei file in corso",
"deleting_files": "Eliminazione dei file inutilizzati",
"completing_installation": "Finalizzando l'installazione",
"update_failed": "Aggiornamento non riuscito",
"install_success": "Modulo installato con successo!",
"customer_reviews": "Recensioni",
"license": "Licenza",
"faq": "FAQ",
"monthly": "Mensile",
"yearly": "Annuale",
"updated": "Aggiornato",
"version": "Versione",
"disable": "Disabilita",
"module_disabled": "Modulo disabilitato",
"enable": "Attiva",
"module_enabled": "Modulo attivato",
"update_to": "Aggiorna a",
"module_updated": "Modulo aggiornato con successo!",
"title": "Moduli",
"module": "Modulo | Moduli",
"api_token": "Token API",
"invalid_api_token": "Token API non valido.",
"other_modules": "Altri Moduli",
"view_all": "Visualizza tutto",
"no_reviews_found": "Non ci sono ancora recensioni per questo modulo!",
"module_not_purchased": "Modulo non acquistato",
"module_not_found": "Modulo non trovato",
"version_not_supported": "La versione minima richiesta per questo modulo non corrisponde. Si prega di aggiornare l'app invoiceshelf alla versione: {version} per procedere.",
"last_updated": "Ultimo aggiornamento il",
"connect_installation": "Collega la tua installazione",
"api_token_description": "Accedi a {url} e collega questa installazione inserendo l'API Token. I moduli acquistati verranno visualizzati qui dopo aver stabilito la connessione.",
"view_module": "Mostra Modulo",
"update_available": "Aggiornamento disponibile",
"purchased": "Acquistato",
"installed": "Installato",
"no_modules_installed": "Nessun modulo installato ancora!",
"disable_warning": "Tutte le impostazioni per questo particolare verranno ripristinate.",
"what_you_get": "Cosa puoi ottenere",
"sign_up_and_get_token": "Registrati & Ottieni Gettone"
},
"users": {
"title": "Utenti",
"users_list": "Lista Utenti",
"name": "Nome",
"description": "Descrizione",
"added_on": "Aggiunto il",
"date_of_creation": "Data di creazione",
"action": "Azione",
"add_user": "Aggiungi Utente",
"save_user": "Salva Utente",
"update_user": "Aggiorna Utente",
"user": "Utente | Utenti",
"add_new_user": "Aggiungi Nuovo Utente",
"new_user": "Nuovo Utente",
"edit_user": "Modifica Utente",
"no_users": "Ancora nessun utente!",
"list_of_users": "Questa sezione conterrà l'elenco degli utenti.",
"email": "Email",
"phone": "Telefono",
"password": "Password",
"user_attached_message": "Non puoi eliminare una Commessa che è già attiva",
"confirm_delete": "Non sarai in grado di recuperare questo utente | Non sarai in grado di recuperare questi utenti",
"created_message": "Utente creato correttamente",
"updated_message": "Utente aggiornato correttamente",
"deleted_message": "Utente eliminato con successo | Utenti eliminati con successo",
"select_company_role": "Seleziona ruolo per {company}",
"companies": "Aziende"
},
"reports": {
"title": "Segnala",
"from_date": "Da",
"to_date": "A",
"status": "Stato",
"paid": "Pagato",
"unpaid": "Non pagato",
"download_pdf": "Scarica PDF",
"view_pdf": "Vedi PDF",
"update_report": "Rapporto d'aggiornamento",
"report": "Segnalazione | Segnalazioni",
"profit_loss": {
"profit_loss": "Guadagni & Perdite",
"to_date": "A",
"from_date": "Da",
"date_range": "Seleziona intervallo date"
},
"sales": {
"sales": "Vendite",
"date_range": "Seleziona intervallo date",
"to_date": "A",
"from_date": "Da",
"report_type": "Tipo Di Rapporto",
"sort": {
"by_customer": "Dal Cliente",
"by_item": "Per Articolo"
}
},
"taxes": {
"taxes": "Tasse",
"to_date": "Alla data",
"from_date": "Dalla data",
"date_range": "Seleziona intervallo date"
},
"errors": {
"required": "Campo obbligatorio"
},
"invoices": {
"invoice": "Fattura",
"invoice_date": "Data fattura",
"due_date": "Data di pagamento",
"amount": "Ammontare",
"contact_name": "Nome contatto",
"status": "Stato"
},
"estimates": {
"estimate": "Preventivo",
"estimate_date": "Data preventivo",
"due_date": "Data di pagamento",
"estimate_number": "Numero di preventivo",
"ref_number": "Numero di Riferimento",
"amount": "Ammontare",
"contact_name": "Nome contatto",
"status": "Stato"
},
"expenses": {
"expenses": "Spese",
"category": "Categoria",
"date": "Data",
"amount": "Ammontare",
"to_date": "Alla data",
"from_date": "Dalla data",
"date_range": "Seleziona intervallo date"
}
},
"settings": {
"menu_title": {
"account_settings": "Impostazioni Account",
"company_information": "Informazioni Azienda",
"customization": "Personalizzazione",
"preferences": "Opzioni",
"notifications": "Notifiche",
"tax_types": "Tipi Di Tasse",
"expense_category": "Categorie di spesa",
"update_app": "Aggiorna App",
"backup": "Backup",
"file_disk": "Disco File",
"custom_fields": "Campi personalizzati",
"payment_modes": "Modalità di Pagamento",
"notes": "Note",
"exchange_rate": "Tasso di cambio",
"address_information": "Indirizzo",
"pdf_generation": "Generazione PDF"
},
"address_information": {
"section_description": " Puoi aggiornare le informazioni sul tuo indirizzo utilizzando il modulo sottostante."
},
"title": "Impostazioni",
"setting": "Opzione | Impostazioni",
"general": "Generale",
"language": "Lingua",
"primary_currency": "Valuta Principale",
"timezone": "Fuso Orario",
"date_format": "Formato data",
"time_format": "Formato Ora",
"currencies": {
"title": "Valute",
"currency": "Valuta | Valute",
"currencies_list": "Lista valute",
"select_currency": "Seleziona Valuta",
"name": "Nome",
"code": "Codice",
"symbol": "Simbolo",
"precision": "Precisione",
"thousand_separator": "Separatore migliaia",
"decimal_separator": "Separatore decimali",
"position": "Posizione",
"position_of_symbol": "Posizione del Simbolo",
"right": "Destra",
"left": "Sinistra",
"action": "Azione",
"add_currency": "Aggiungi Valuta"
},
"mail": {
"host": "Mail Host",
"port": "Mail - Porta",
"driver": "Driver Mail",
"secret": "Segreto",
"mailgun_secret": "Mailgun Secret",
"mailgun_domain": "Dominio",
"mailgun_endpoint": "Endpoint Mailgun",
"ses_secret": "Segreto SES",
"ses_key": "Chiave SES",
"ses_region": "Regione AWS",
"password": "Password Email",
"username": "Nome Utente Email",
"mail_config": "Configurazione Mail",
"from_name": "Nome Mittente Mail",
"from_mail": "Indirizzo Mittente Mail",
"encryption": "Tipo di cifratura Mail",
"mail_config_desc": "Di seguito è riportato il modulo per Configurare il driver di posta elettronica per l'invio di e-mail dall'app. È anche possibile configurare fornitori di terze parti come Sendgrid, SES ecc."
},
"pdf": {
"title": "Configurazione PDF",
"footer_text": "Testo del piè di pagina",
"pdf_layout": "Layout PDF",
"pdf_configuration": "Impostazioni Generazione PDF",
"section_description": "Cambia il modo in cui vengono generati i PDF",
"driver": "Driver PDF da usare",
"papersize": "Dimensioni del foglio",
"papersize_hint": "Dimensioni del foglio in larghezza e altezza (Es. \"210mm 297mm\")",
"gotenberg_host": "Gotenberg service host",
"pdf_variables_save_successfully": "Configurazione PDF salvata correttamente",
"pdf_variables_save_error": "La configurazione PDF non può essere salvata"
},
"company_info": {
"company_info": "Info azienda",
"company_name": "Nome azienda",
"tax_id": "Numero d'identificazione fiscale",
"vat_id": "Partita IVA",
"company_logo": "Logo azienda",
"section_description": "Informazioni sulla tua azienda che verranno visualizzate su fatture, preventivi e altri documenti creati da InvoiceShelf.",
"phone": "Telefono",
"country": "Paese",
"state": "Provincia",
"city": "Città",
"address": "Indirizzo",
"zip": "CAP",
"save": "Salva",
"delete": "Elimina",
"updated_message": "Informazioni azienda aggiornate con successo.",
"delete_company": "Elimina Azienda",
"delete_company_description": "Una volta eliminata la tua azienda, perderai tutti i dati e i file associati in modo permanente.",
"are_you_absolutely_sure": "Sei assolutamente sicuro?",
"delete_company_modal_desc": "Questa azione non può essere annullata. Questo eliminerà definitivamente {company} e tutti i suoi dati associati.",
"delete_company_modal_label": "Digita {company} per confermare"
},
"custom_fields": {
"title": "Campi personalizzati",
"section_description": "Personalizza le tue fatture, preventivi e ricevute di pagamento con i tuoi campi. Assicurati di utilizzare i campi aggiunti qui sotto nei campi della pagina Personalizzazione delle impostazioni.",
"add_custom_field": "Aggiungi campo personalizzato",
"edit_custom_field": "Modifica campo personalizzato",
"field_name": "Nome campo",
"label": "Etichetta",
"type": "Campi Personalizzati",
"name": "Nome",
"slug": "URL Personalizzato",
"required": "Necessaria",
"placeholder": "Segnaposto",
"help_text": "Testo guida",
"default_value": "Valore predefinito",
"prefix": "Prefisso",
"starting_number": "Numero iniziale",
"model": "Modella",
"help_text_description": "Inserisci del testo per aiutare gli utenti a comprendere lo scopo di questo campo personalizzato.",
"suffix": "Suffisso",
"yes": "Si",
"no": "No",
"order": "Ordine",
"custom_field_confirm_delete": "Non sarai in grado di recuperare questo campo personalizzato",
"already_in_use": "Il campo personalizzato è già in uso",
"deleted_message": "Campo personalizzato eliminato correttamente",
"options": "opzioni",
"add_option": "Aggiungi opzioni",
"add_another_option": "Aggiungi un'altra opzione",
"sort_in_alphabetical_order": "Ordina in ordine alfabetico",
"add_options_in_bulk": "Aggiungi opzioni in blocco",
"use_predefined_options": "Usa opzioni predefinite",
"select_custom_date": "Seleziona la data personalizzata",
"select_relative_date": "Seleziona la data relativa",
"ticked_by_default": "Contrassegnato per impostazione predefinita",
"updated_message": "Campo personalizzato aggiornato correttamente",
"added_message": "Campo personalizzato aggiunto correttamente",
"press_enter_to_add": "Premi Invio per aggiungere una nuova opzione",
"model_in_use": "Impossibile aggiornare il modello per i campi già in uso.",
"type_in_use": "Impossibile aggiornare il tipo per i campi già in uso.",
"model_type": {
"customer": "Cliente",
"invoice": "Fattura",
"estimate": "Preventivo",
"expense": "Costo",
"payment": "Pagamento"
}
},
"customization": {
"customization": "personalizzazione",
"updated_message": "Info azienda aggiornate con successo",
"save": "Salva",
"insert_fields": "Inserisci Campi",
"learn_custom_format": "Impara come utilizzare il formato personalizzato",
"add_new_component": "Aggiungi un componente",
"component": "Componente",
"Parameter": "Parametro",
"series": "Serie",
"series_description": "Per impostare un Prefisso / Suffisso come 'INV' attraverso la tua azienda. Supporta la lunghezza del personaggio fino a 6 caratteri.",
"series_param_label": "Valore Serie",
"delimiter": "Delimitatore",
"delimiter_description": "Singolo carattere per specificare il confine tra 2 componenti separati. Per impostazione predefinita è impostato a -",
"delimiter_param_label": "Valore Delimitatore",
"date_format": "Formato data",
"time_format": "Formato Ora",
"date_format_description": "Un campo di data e ora locale che accetta un parametro di formato. Il formato predefinito: 'Y' rende l'anno corrente.",
"date_format_param_label": "Formato",
"sequence": "Sequenza",
"sequence_description": "Sequenza numerica nella tua azienda. Puoi specificare la lunghezza sul parametro specificato.",
"sequence_param_label": "Lunghezza Sequenza",
"customer_series": "Serie Cliente",
"customer_series_description": "Per impostare un prefisso/postfix diverso per ogni cliente.",
"customer_sequence": "Sequenza Cliente",
"customer_sequence_description": "Sequenza consecutiva di numeri per ogni vostro cliente.",
"customer_sequence_param_label": "Lunghezza Sequenza",
"random_sequence": "Sequenza Casuale",
"random_sequence_description": "Stringa alfanumerica casuale. Puoi specificare la lunghezza sul parametro dato.",
"random_sequence_param_label": "Lunghezza Sequenza",
"invoices": {
"title": "Fatture",
"invoice_number_format": "Formato Numero Fattura",
"invoice_number_format_description": "Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.",
"preview_invoice_number": "Anteprima Numero Fattura",
"due_date": "Data di pagamento",
"due_date_description": "Specificare come la data di scadenza viene impostata automaticamente quando si crea una fattura.",
"due_date_days": "Scadenza dopo (giorni)",
"set_due_date_automatically": "Imposta Data Di Scadenza Automaticamente",
"set_due_date_automatically_description": "Abilita questa opzione se vuoi impostare automaticamente la data di scadenza quando crei una nuova fattura.",
"default_formats": "Formato predefinito",
"default_formats_description": "Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.",
"default_invoice_email_body": "Corpo Email Fattura Predefinito",
"company_address_format": "Formato Indirizzo Azienda",
"shipping_address_format": "Formato Indirizzo Di Spedizione",
"billing_address_format": "Formato Indirizzo Fatturazione",
"invoice_email_attachment": "Invia fatture come allegati",
"invoice_email_attachment_setting_description": "Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verrà più visualizzato quando ciò viene abilitato.",
"invoice_settings_updated": "Impostazioni fatture aggiornate con successo",
"retrospective_edits": "Modifica Retrospettiva",
"allow": "Permetti",
"disable_on_invoice_partial_paid": "Disabilita dopo la registrazione del pagamento parziale",
"disable_on_invoice_paid": "Disabilita dopo la registrazione del pagamento parziale",
"disable_on_invoice_sent": "Disabilita dopo l'invio della fattura",
"retrospective_edits_description": " In base alle leggi del tuo paese o alle tue preferenze, puoi limitare gli utenti dalla modifica delle fatture finalizzate."
},
"credit_notes": {
"title": "Note di Credito",
"credit_note_number_format": "Formato Numero Nota di Credito",
"credit_note_number_format_description": "Personalizza il modo in cui il numero della nota di credito viene generato automaticamente quando crei una nuova nota di credito. Le note di credito sono numerate indipendentemente dalle fatture.",
"preview_credit_note_number": "Anteprima Numero Nota di Credito",
"credit_note_settings_updated": "Impostazioni note di credito aggiornate con successo"
},
"estimates": {
"title": "Preventivi",
"estimate_number_format": "Formato del Numero di Serie",
"estimate_number_format_description": "Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.",
"preview_estimate_number": "Anteprima Numero Preventivo",
"expiry_date": "Data di scadenza",
"expiry_date_description": "Specificare come la data di scadenza viene impostata automaticamente quando si crea una fattura.",
"expiry_date_days": "Stima Scade dopo giorni",
"set_expiry_date_automatically": "Imposta Data Di Scadenza Automaticamente",
"set_expiry_date_automatically_description": "Abilita questa opzione se vuoi impostare automaticamente la data di scadenza quando crei una nuova fattura.",
"default_formats": "Formato predefinito",
"default_formats_description": "Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.",
"default_estimate_email_body": "Corpo Email Preventivo Predefinito",
"company_address_format": "Formato Indirizzo Azienda",
"shipping_address_format": "Formato Indirizzo Spedizione",
"billing_address_format": "Formato Indirizzo Fatturazione",
"estimate_email_attachment": "Invia stime come allegati",
"estimate_email_attachment_setting_description": "Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verrà più visualizzato quando ciò viene abilitato.",
"estimate_settings_updated": "Impostazioni preventivi aggiornate con successo",
"convert_estimate_options": "Preventivo Converti Azione",
"convert_estimate_description": "Specificare cosa succede al preventivo dopo che viene convertito in una fattura.",
"no_action": "Nessuna azione",
"delete_estimate": "Elimina preventivo",
"mark_estimate_as_accepted": "Segna preventivo come accettato"
},
"payments": {
"title": "Pagamenti",
"payment_number_format": "Formato Numero Pagamento",
"payment_number_format_description": "Personalizza il modo in cui il numero di fattura viene generato automaticamente quando crei una nuova fattura.",
"preview_payment_number": "Anteprima Numero Di Pagamento",
"default_formats": "Formato predefinito",
"default_formats_description": "Sotto i formati dati vengono utilizzati per riempire automaticamente i campi alla creazione della fattura.",
"default_payment_email_body": "Corpo Email Pagamento Predefinito",
"company_address_format": "Formato Indirizzo Azienda",
"from_customer_address_format": "Dal Formato Indirizzo Cliente",
"payment_email_attachment": "Invia stime come allegati",
"payment_email_attachment_setting_description": "Abilita questa opzione se vuoi inviare fatture come allegati email. Si prega di notare che il pulsante 'Visualizza fattura' nelle email non verrà più visualizzato quando ciò viene abilitato.",
"payment_settings_updated": "Impostazioni di pagamento aggiornate con successo"
},
"items": {
"title": "Commesse",
"units": "Unità",
"add_item_unit": "Aggiungi Unità Item",
"edit_item_unit": "Modifica unità articolo",
"unit_name": "Nome",
"item_unit_added": "Unità aggiunta",
"item_unit_updated": "Unità aggiornata",
"item_unit_confirm_delete": "Non potrai ripristinare questa unità Item",
"already_in_use": "Unità Item già in uso",
"deleted_message": "Unità item eliminata con successo"
},
"notes": {
"title": "Note",
"description": "Risparmia tempo creando note e riutilizzandole sulle tue fatture, preventivi e pagamenti.",
"notes": "Note",
"type": "Tipo",
"is_default": "Seleziona per impostazione predefinita",
"is_default_description": "Questa nota sarà selezionata per impostazione predefinita nelle nuove fatture.",
"add_note": "Aggiungi Nota",
"add_new_note": "Aggiungi nuova nota",
"name": "Nome",
"edit_note": "Modifica nota",
"note_added": "Nota aggiunta correttamente",
"note_updated": "Nota aggiornata correttamente",
"note_confirm_delete": "Non sarà possibile recuperare questa nota",
"already_in_use": "Nota già in uso",
"deleted_message": "Nota eliminata con successo",
"types": {
"estimate": "Preventivo",
"invoice": "Fattura",
"payment": "Pagamento"
}
}
},
"account_settings": {
"profile_picture": "Immagine profilo",
"name": "Nome",
"email": "Email",
"password": "Password",
"confirm_password": "Conferma Password",
"account_settings": "Impostazioni Account",
"save": "Salva",
"section_description": "Puoi aggiornare nome email e password utilizzando il modulo qui sotto.",
"updated_message": "Impostazioni account aggiornate con successo"
},
"user_profile": {
"name": "Nome",
"email": "Email",
"password": "Password",
"confirm_password": "Conferma Password"
},
"notification": {
"title": "Notifica",
"email": "Invia notifiche a",
"description": "Quali notifiche email vorresti ricevere quando qualcosa cambia?",
"invoice_viewed": "Fattura visualizzata",
"invoice_viewed_desc": "Quando il cliente visualizza la fattura inviata via dashboard applicazione.",
"estimate_viewed": "Preventivo visualizzato",
"estimate_viewed_desc": "Quando il cliente visualizza il preventivo inviato dall'applicazione.",
"save": "Salva",
"email_save_message": "Email salvata con successo",
"please_enter_email": "Inserisci Email"
},
"roles": {
"title": "Ruoli",
"description": "Gestisci i ruoli e i permessi di questa azienda",
"save": "Salva",
"add_new_role": "Aggiungi Nuovo Ruolo",
"role_name": "Nome Ruolo",
"added_on": "Aggiunto il",
"add_role": "Aggiungi Ruolo",
"edit_role": "Modifica Ruolo",
"name": "Nome",
"permission": "Permesso | Permessi",
"select_all": "Seleziona tutto",
"none": "Nessuno",
"confirm_delete": "Non sarai in grado di recuperare questo ruolo",
"created_message": "Utente creato correttamente",
"updated_message": "Ruolo aggiornato correttamente",
"deleted_message": "Ruolo eliminato con successo",
"already_in_use": "Ruolo già in uso"
},
"exchange_rate": {
"exchange_rate": "Tasso di cambio",
"title": "Correggi i problemi di cambio valuta",
"description": "Inserisci il tasso di cambio di tutte le valute menzionate di seguito per aiutare il InvoiceShelfe a calcolare correttamente gli importi in {currency}.",
"drivers": "Driver",
"new_driver": "Aggiungi Nuovo Fornitore",
"edit_driver": "Modifica Fornitore",
"select_driver": "Seleziona Driver",
"update": "seleziona il tasso di cambio ",
"providers_description": "Configura qui i tuoi fornitori di tassi di cambio per recuperare automaticamente l'ultimo tasso di cambio sulle transazioni.",
"key": "Chiave API",
"name": "Nome",
"driver": "Driver",
"is_default": "É PREDEFINITO",
"currency": "Valute",
"exchange_rate_confirm_delete": "Non sarà possibile recuperare questo driver",
"created_message": "Fornitore creato con successo",
"updated_message": "Provider Aggiornato Con Successo",
"deleted_message": "Provider Eliminato Con Successo",
"error": " Impossibile Eliminare Il Driver Attivo",
"default_currency_error": "Questa valuta è già utilizzata in uno dei Provider Attivi",
"exchange_help_text": "Inserisci il tasso di cambio da {currency} a {baseCurrency}",
"currency_freak": "Valuta Freak",
"currency_layer": "Livello Valuta",
"open_exchange_rate": "Tasso Di Cambio Aperto",
"currency_converter": "Convertitore Valuta",
"server": "Server",
"url": "Indirizzo",
"active": "Attivo",
"currency_help_text": "Questo provider sarà utilizzato solo sulle valute sopra selezionate",
"currency_in_used": "Le seguenti valute sono già attive su un altro provider. Si prega di rimuovere queste valute dalla selezione per attivare nuovamente questo provider."
},
"tax_types": {
"title": "Tipi Di Tasse",
"add_tax": "Aggiungi Imposta",
"edit_tax": "Modifica imposta",
"description": "Puoi aggiungere o rimuovere le tasse a tuo piacimento. InvoiceShelf supporta le tasse sui singoli articoli e anche sulla fattura.",
"add_new_tax": "Aggiungi nuova imposta",
"tax_settings": "Impostazioni Imposte",
"tax_per_item": "Tassa per prodotto/servizio",
"tax_name": "Nome imposta",
"compound_tax": "Imposta composta",
"amount": "Importo",
"percent": "Percento",
"fixed_amount": "Importo fisso",
"calculation_type": "Tipo di calcolo",
"percentage": "Percentuale",
"fixed": "Fisso",
"action": "Azione",
"tax_setting_description": "Abilita se vuoi aggiungere imposte specifiche per prodotti o servizi. Di default le imposte sono aggiunte direttamente alla fattura.",
"created_message": "Tipo di tassa creata con successo",
"updated_message": "Tipo di tassa aggiornata con successo",
"deleted_message": "Tipo di tassa eliminata con successo",
"confirm_delete": "Non sarà possibile recuperare questo tipo di tassa",
"already_in_use": "Imposta già in uso",
"tax_included": "Inclusive taxes",
"tax_included_description": "Enable this if you want to report that taxes are already included in the invoice items or invoice total.",
"tax_included_by_default": "Enable inclusive taxes by default",
"tax_included_by_default_description": "Enable this if you want to set inclusive taxes by default"
},
"payment_modes": {
"title": "Modalità di pagamento",
"description": "Modalità di transazione per i pagamenti",
"add_payment_mode": "Aggiungi modalità di pagamento",
"edit_payment_mode": "Modifica modalità di pagamento",
"mode_name": "Nome modalità",
"payment_mode_added": "Modalità di pagamento aggiunta",
"payment_mode_updated": "Modalità di pagamento aggiornata",
"payment_mode_confirm_delete": "Non potrai ripristinare la modalità di pagamento",
"payments_attached": "Questo metodo di pagamento è già allegato ai pagamenti. Si prega di eliminare i pagamenti allegati per procedere con la cancellazione.",
"expenses_attached": "Questo metodo di pagamento è già allegato alle spese. Si prega di eliminare le spese allegate per procedere alla cancellazione.",
"deleted_message": "Modalità di pagamento eliminata con successo"
},
"expense_category": {
"title": "Categorie di spesa",
"action": "Azione",
"description": "Le categorie sono necessarie per aggiungere delle voci di spesa. Puoi aggiungere o eliminare queste categorie in base alle tue preferenze.",
"add_new_category": "Aggiungi nuova categoria",
"add_category": "Aggiungi categoria",
"edit_category": "Modifica categoria",
"category_name": "Nome Categoria",
"category_description": "Descrizione",
"created_message": "Categoria di spesa creata con successo",
"deleted_message": "Categoria di spesa eliminata con successo",
"updated_message": "Categoria di spesa aggiornata con successo",
"confirm_delete": "Non potrai ripristinare questa categoria di spesa",
"already_in_use": "Categoria già in uso"
},
"preferences": {
"currency": "Valuta",
"default_language": "Lingua predefinita",
"time_zone": "Fuso Orario",
"fiscal_year": "Anno finanziario",
"date_format": "Formato Data",
"time_format": "Formato Ora",
"discount_setting": "Impostazione Sconto",
"discount_per_item": "Sconto Per Item ",
"discount_setting_description": "Abilita questa opzione se desideri aggiungere uno sconto a singole voci della fattura. Per impostazione predefinita, lo sconto viene aggiunto direttamente alla fattura.",
"expire_public_links": "Scadenza Automatica dei Link Pubblici",
"expire_setting_description": "Specifica se si vuole far scadere tutti i link inviati dall'applicazione per visualizzare fatture, preventivi e pagamenti, ecc. dopo una durata specificata.",
"save": "Salva",
"preference": "Preferenza | Preferenze",
"general_settings": "Impostazioni di default del sistema.",
"updated_message": "Preferenze aggiornate con successo",
"select_language": "Seleziona Lingua",
"select_time_zone": "Seleziona Time Zone",
"select_date_format": "Seleziona Formato Data",
"select_time_format": "Seleziona Formato Data",
"select_financial_year": "Seleziona anno finanziario",
"recurring_invoice_status": "Stato Fattura Ricorrente",
"create_status": "Crea stato",
"active": "Attivo",
"on_hold": "In sospeso",
"update_status": "Aggiorna stato",
"completed": "Completato",
"company_currency_unchangeable": "La valuta dell'azienda non può essere cambiata",
"invoice_use_time": "Usa ora nelle fatture",
"invoice_use_time_description": "Abilita questa opzione se vuoi selezionare l'ora esatta della fattura.",
"fiscal_years": {
"january_december": "Gennaio - Dicembre",
"february_january": "Febbraio - Gennaio",
"march_february": "Marzo - Febbraio",
"april_march": "Aprile - Marzo",
"may_april": "Maggio - Aprile",
"june_may": "Giugno - Maggio",
"july_june": "Luglio - Giugno",
"august_july": "Agosto - Luglio",
"september_august": "Settembre - Agosto",
"october_september": "Ottobre - Settembre",
"november_october": "Novembre - Ottobre",
"december_november": "Dicembre - Novembre"
}
},
"update_app": {
"title": "Aggiorna App",
"description": "Puoi facilmente aggiornare l'app. Aggiorna cliccando sul bottone qui sotto",
"check_update": "Controllo aggiornamenti",
"insider_consent": "Aggiornamenti per i rilasci Insider. Consigliato solo a scopo di test.",
"avail_update": "Aggiornamento disponibile",
"next_version": "Versione successiva",
"requirements": "Requisiti",
"update": "Aggiorna ora",
"update_progress": "Aggiornamento in corso...",
"progress_text": "Sarà necessario qualche minuto. Per favore non aggiornare la pagina e non chiudere la finestra prima che l'aggiornamento sia completato",
"update_success": "L'App è aggiornata! Attendi che la pagina venga ricaricata automaticamente.",
"latest_message": "Nessun aggiornamento disponibile! Sei già alla versione più recente.",
"current_version": "Versione corrente",
"download_zip_file": "Scarica il file ZIP",
"unzipping_package": "Pacchetto di decompressione",
"copying_files": "Copia dei file",
"deleting_files": "Eliminazione dei file inutilizzati",
"running_migrations": "Esecuzione delle migrazioni",
"finishing_update": "Aggiornamento di finitura",
"update_failed": "Aggiornamento non riuscito",
"update_failed_text": "Scusate! L'aggiornamento non è riuscito il: passaggio {step}",
"update_warning": "Tutti i file dell'applicazione e i file dei modelli predefiniti verranno sovrascritti quando si aggiorna l'applicazione tramite questa utility. Si prega di eseguire un backup dei modelli e del database prima di effettuare l'aggiornamento.",
"requirements_not_met": "Update cannot continue because some system requirements are not met (including minimum PHP version). Please fix the failed requirements and try again."
},
"backup": {
"title": "Backup | Backups",
"description": "Il backup è un file zip che contiene tutti i file nelle directory specificate insieme a un dump del database",
"new_backup": "Nuovo Backup",
"create_backup": "Crea Backup",
"select_backup_type": "Scegli tipo di backup",
"backup_confirm_delete": "Non sarà possibile recuperare questo backup",
"path": "percorso",
"new_disk": "Nuovo Disco",
"created_at": "creato il",
"size": "dimensioni",
"dropbox": "dropbox",
"local": "locale",
"healthy": "sano",
"amount_of_backups": "quantità di backup",
"newest_backups": "backup più recenti",
"used_storage": "spazio utilizzato",
"select_disk": "Seleziona Disco",
"action": "Azione",
"deleted_message": "Backup eliminato con successo",
"created_message": "Backup creato con successo",
"invalid_disk_credentials": "Credenziali del disco selezionato non valide"
},
"disk": {
"title": "Disco File | Dischi File",
"description": "Per impostazione predefinita, InvoiceShelf utilizzerà il disco locale per salvare backup, avatar e altri file immagine. È possibile configurare più di un driver disco, come DigitalOcean, S3 e Dropbox, in base alle proprie preferenze.",
"created_at": "creato il",
"dropbox": "dropbox",
"name": "Nome",
"driver": "Driver",
"disk_type": "Tipo",
"disk_name": "Nome Disco",
"new_disk": "Aggiungi Nuovo Disco",
"filesystem_driver": "Filesystem del disco",
"local_driver": "driver locale",
"local_root": "radice locale",
"public_driver": "Driver Pubblico",
"public_root": "Root Pubblica",
"public_url": "Url Pubblico",
"public_visibility": "Visibilità Pubblica",
"media_driver": "Driver Media",
"media_root": "Media Root",
"aws_driver": "Driver AWS",
"aws_key": "Chiave AWS",
"aws_secret": "Segreto AWS",
"aws_region": "Regione AWS",
"aws_bucket": "Bucket AWS",
"aws_root": "Root AWS",
"s3_endpoint": "S3 Endpoint",
"s3_key": "S3 Key",
"s3_secret": "S3 Secret",
"s3_region": "S3 Region",
"s3_bucket": "S3 Bucket",
"s3_root": "S3 Root",
"do_spaces_type": "tipo Do Spaces",
"do_spaces_key": "chiave Do Spaces",
"do_spaces_secret": "segreto Do Spaces",
"do_spaces_region": "regione Do Spaces",
"do_spaces_bucket": "bucket Do Spaces",
"do_spaces_endpoint": "endpoint Do Spaces",
"do_spaces_root": "root Do Spaces",
"dropbox_type": "Tipo Dropbox",
"dropbox_token": "Token Dropbox",
"dropbox_key": "Chiave Dropbox",
"dropbox_secret": "Segreto Dropbox",
"dropbox_app": "App Dropbox",
"dropbox_root": "Root Dropbox",
"default_driver": "Driver Predefinito",
"is_default": "È DEFAULT",
"set_default_disk": "Imposta Disco Predefinito",
"set_default_disk_confirm": "Questo disco sarà impostato come predefinito e tutti i nuovi PDF saranno salvati su questo disco",
"success_set_default_disk": "Disco impostato come predefinito correttamente",
"save_pdf_to_disk": "Salva i PDF su disco",
"disk_setting_description": " Abilita questa opzione, se vuoi salvare automaticamente una copia di ogni PDF Fattura, Preventivo e Ricevuta di Pagamento sul tuo disco predefinito. Attivare questa opzione diminuirà il tempo di caricamento durante la visualizzazione dei PDF.",
"select_disk": "Seleziona Disco",
"disk_settings": "Impostazioni Disco",
"confirm_delete": "I file e le cartelle esistenti nel disco specificato non saranno toccati, ma la configurazione del disco sarà eliminata dal InvoiceShelf",
"action": "Azione",
"edit_file_disk": "Modifica Disco File",
"success_create": "Disco aggiunto correttamente",
"success_update": "Disco aggiornato correttamente",
"error": "Aggiunta del disco fallita",
"deleted_message": "Disco file eliminato con successo",
"disk_variables_save_successfully": "Disco Configurato Con successo",
"disk_variables_save_error": "Configurazione disco fallita.",
"invalid_disk_credentials": "Credenziali del disco selezionato non valide"
},
"taxations": {
"add_billing_address": "Inserisci l'indirizzo di Fatturazione",
"add_shipping_address": "Inserisci l'indirizzo di Spedizione",
"add_company_address": "Inserisci l'indirizzo aziendale",
"modal_description": "Le informazioni di seguito sono richieste per recuperare l'imposta sulle vendite.",
"add_address": "Aggiungi indirizzo per recuperare l'imposta sulle vendite.",
"address_placeholder": "Esempio: Via Garibaldi, 123",
"city_placeholder": "Esempio: Roma",
"state_placeholder": "Esempio: RM",
"zip_placeholder": "Esempio: 00100",
"invalid_address": "Fornisci un indirizzo valido."
}
},
"wizard": {
"account_info": "Informazioni Account",
"account_info_desc": "I dati sottostanti verranno utilizzati per creare l'account Amministratore principale. È possibile modificare i dati in qualsiasi momento dopo aver effettuato l'accesso.",
"name": "Nome",
"email": "Email",
"password": "Password",
"confirm_password": "Conferma Password",
"save_cont": "Salva & Continua",
"company_info": "Informazioni Azienda",
"company_info_desc": "Questa informazione verrà mostrata nelle fatture. Puoi modificare queste informazione in un momento successivo dalla pagina delle impostazioni.",
"company_name": "Nome Azienda",
"company_logo": "Logo Azienda",
"logo_preview": "Anteprima Logo",
"preferences": "Impostazioni",
"preferences_desc": "Impostazioni di default del sistema.",
"currency_set_alert": "La valuta dell'azienda non può essere modificata più tardi.",
"country": "Paese",
"state": "Provincia",
"city": "Città",
"address": "Indirizzo",
"street": "Indirizzo1 | Indirizzo2",
"phone": "Telefono",
"zip_code": "CAP/ Codice di avviamento Postale",
"go_back": "Torna indietro",
"currency": "Valuta",
"language": "Lingua",
"time_zone": "Fuso Orario",
"fiscal_year": "Anno Finanziario",
"date_format": "Formato Date",
"time_format": "Formato Ora",
"from_address": "Indirizzo - Da",
"username": "Nome utente",
"next": "Successivo",
"continue": "Continua",
"skip": "Salta",
"install_language": {
"title": "Scegli la tua lingua",
"description": "Seleziona la procedura guidata della lingua per installare InvoiceShelf"
},
"database": {
"database": "URL del sito & database",
"connection": "Connessione Database",
"host": "Host Database",
"port": "Database - Porta",
"password": "Password Database",
"app_url": "URL dell'App",
"app_domain": "Dominio App",
"username": "Nome Utente del Database",
"db_name": "Database Nome",
"db_path": "Percorso del database",
"overwrite": "Sovrascrivi database esistente e procedi",
"desc": "Crea un database sul tuo server e imposta le credenziali utilizzando il modulo sottostante."
},
"permissions": {
"permissions": "Permessi",
"permission_confirm_title": "Sei sicuro di voler continuare?",
"permission_confirm_desc": "Controllo sui permessi Cartelle, fallito",
"permission_desc": "Qui sotto la lista dei permessi richiesti per far funzionare correttamente l'App. Se il controllo dei permessi fallisce, assicurati di aggiornare/modificare i permessi sulle cartelle."
},
"verify_domain": {
"title": "Verifica Dominio",
"desc": "InvoiceShelf utilizza l'autenticazione basata su sessione, che richiede la verifica del dominio per scopi di sicurezza. Inserisci il dominio su cui accederai alla tua applicazione web.",
"app_domain": "Dominio App",
"verify_now": "Verifica Ora",
"success": "Dominio Verificato Con Successo.",
"failed": "Verifica del dominio fallita. Inserisci un nome di dominio valido.",
"verify_and_continue": "Verifica e continua",
"notes": {
"notes": "Nota:",
"not_contain": "Il dominio app non deve contenere",
"or": "or",
"in_front": "in front of the domain.",
"if_you": "Se si accede al sito web su una porta diversa, si prega di indicare la porta. Per esempio:"
}
},
"mail": {
"host": "Host Mail",
"port": "Mail - Porta",
"driver": "Driver Mail",
"secret": "Segreto",
"mailgun_secret": "Segreto Mailgun",
"mailgun_domain": "Dominio",
"mailgun_endpoint": "Endpoint Mailgun",
"ses_secret": "Segreto SES",
"ses_key": "Chiave SES",
"password": "Password Email",
"username": "Nome Utente Email",
"mail_config": "Configurazione Mail",
"from_name": "Nome mittente mail",
"from_mail": "Indirizzo mittente mail",
"encryption": "Tipo di cifratura Mail",
"mail_config_desc": "Di seguito è riportato il modulo per la configurazione del driver di posta elettronica per l'invio di email dall'app. È anche possibile configurare provider di terze parti come Sendgrid, SES ecc."
},
"req": {
"system_req": "Requisiti di Sistema",
"php_req_version": "Php (versione {version} richiesta)",
"check_req": "Controllo Requisiti",
"system_req_desc": "InvoiceShelf ha alcuni requisiti server. Assicurati che il tuo server abbia la versione PHP richiesta e tutte le estensioni menzionate di seguito."
},
"errors": {
"migrate_failed": "Migrazione Fallita",
"database_variables_save_error": "Impossibile scrivere la configurazione nel file .env. Verificare i permessi del file.",
"mail_variables_save_error": "Configurazione email fallita.",
"connection_failed": "Connessione al Database fallita",
"database_should_be_empty": "Il database dovrebbe essere vuoto"
},
"success": {
"mail_variables_save_successfully": "Email configurata con successo",
"database_variables_save_successfully": "Database configurato con successo."
}
},
"validation": {
"invalid_phone": "Numero di telefono invalido",
"invalid_url": "URL non valido (es: http://www.invoiceshelf.com)",
"invalid_domain_url": "URL non valido (es: invoiceshelf.com)",
"required": "Campo obbligatorio",
"email_incorrect": "Email non corretta.",
"email_already_taken": "Email già in uso.",
"email_does_not_exist": "L'utente con questa email non esiste",
"item_unit_already_taken": "Questo nome item è già utilizzato",
"payment_mode_already_taken": "Questa modalità di pagamento è già stata inserita.",
"send_reset_link": "Invia Link di Reset",
"not_yet": "Non ancora? Invia di nuovo",
"password_min_length": "La password deve contenere {count} caratteri",
"name_min_length": "Il nome deve avere almeno {count} lettere.",
"prefix_min_length": "Il prefisso deve contenere almeno {count} lettere.",
"enter_valid_tax_rate": "Inserisci una aliquota fiscale valido",
"numbers_only": "Solo numeri.",
"characters_only": "Solo caratteri.",
"password_incorrect": "La Password deve essere identica",
"password_length": "La password deve essere lunga {count} caratteri.",
"qty_must_greater_than_zero": "La quantità deve essere maggiore di zero.",
"price_greater_than_zero": "Il prezzo deve essere maggiore di zero.",
"payment_greater_than_zero": "Il pagamento deve essere maggiore di zero.",
"payment_greater_than_due_amount": "Il pagamento inserito è maggiore di quello indicato in fattura.",
"quantity_maxlength": "La Quantità non può essere maggiore di 20 cifre.",
"price_maxlength": "Il prezzo non può contenere più di 20 cifre.",
"price_minvalue": "Il prezzo deve essere maggiore di 0.",
"amount_maxlength": "La somma non deve contenere più di 20 cifre.",
"amount_minvalue": "La somma deve essere maggiore di 0.",
"discount_maxlength": "Lo sconto non deve essere superiore allo sconto massimo",
"description_maxlength": "La Descrizione non deve superare i 255 caratteri.",
"subject_maxlength": "L'Oggetto non deve superare i 100 caratter.",
"message_maxlength": "Il messaggio non può superare i 255 caratteri.",
"maximum_options_error": "Massimo di {max} opzioni selezionate. Per selezionare un'altra opzione deseleziona prima una opzione.",
"notes_maxlength": "Le note non possono superare i 255 caratteri.",
"address_maxlength": "L'Indirizzo non può eccedere i 255 caratteri.",
"ref_number_maxlength": "Il Numero di Riferimento non può superare i 255 caratteri.",
"prefix_maxlength": "Il Prefisso non può superare i 5 caratteri.",
"something_went_wrong": "Si è verificato un errore",
"number_length_minvalue": "La lunghezza del numero deve essere maggiore di 0",
"at_least_one_ability": "Seleziona almeno un permesso.",
"valid_driver_key": "Inserisci una chiave {driver} valida.",
"valid_exchange_rate": "Inserisci un tasso di cambio valido.",
"company_name_not_same": "Il nome dell'azienda deve corrispondere al nome indicato."
},
"errors": {
"starter_plan": "Questa funzione è disponibile dal piano Starter, in poi!",
"invalid_provider_key": "Inserisci una API Key valida per il Fornitore.",
"estimate_number_used": "Il numero stimato è già stato preso.",
"invoice_number_used": "Il numero della fattura è già stato utilizzato.",
"payment_attached": "Una delle fatture selezionate ha già associato un pagamento. Assicurati di eliminare il pagamento associato prima di procedere con la rimozione.",
"credit_note_attached": "Questa fattura è stata stornata da una nota di credito. Seleziona anche la nota di credito per eliminare entrambi i documenti insieme.",
"credit_note_cannot_be_created_from_credit_note": "Non è possibile creare una nota di credito a partire da un'altra nota di credito.",
"draft_invoice_cannot_be_credited": "Una fattura in bozza non può essere stornata. Modifica o elimina la bozza.",
"invoice_already_fully_credited": "Su questa fattura non resta nulla da accreditare.",
"credit_quantity_exceeds_remaining": "Una delle quantità supera quanto resta da accreditare su quella riga.",
"credit_amount_exceeds_invoice_balance": "L'accredito supera il saldo residuo della fattura.",
"credit_note_must_credit_something": "Seleziona almeno una riga con una quantità da accreditare.",
"credit_item_not_on_invoice": "Una delle righe selezionate non appartiene a questa fattura.",
"credit_quantity_invalid": "Inserisci una quantità valida maggiore di zero per ogni riga selezionata.",
"credit_note_cannot_be_cloned": "Una nota di credito non può essere clonata.",
"credit_note_cannot_be_converted_to_estimate": "Una nota di credito non può essere convertita in un preventivo.",
"payment_amount_exceeds_invoice_due_amount": "Il pagamento supera il saldo residuo della fattura.",
"payment_number_used": "Questa modalità di pagamento è già stata inserita.",
"name_already_taken": "Questo Nome esiste giá.",
"receipt_does_not_exist": "La ricevuta non esiste.",
"customer_cannot_be_changed_after_payment_is_added": "Il cliente non può essere modificato dopo aver aggiunto il pagamento",
"invalid_credentials": "Credenziali non valide",
"not_allowed": "Non Consentito",
"login_invalid_credentials": "Queste credenziali non corrispondono ai nostri record.",
"enter_valid_cron_format": "Inserisci un formato cron valido",
"email_could_not_be_sent": "Impossibile inviare l'email a questo indirizzo email.",
"invalid_address": "Inserisci un indirizzo valido.",
"invalid_key": "Inserisci una chiave valida.",
"invalid_state": "Inserisci una provincia valida.",
"invalid_city": "Inserisci una città valida.",
"invalid_postal_code": "Inserisci un CAP valido.",
"invalid_format": "Inserisci un formato di query string valido.",
"api_error": "Il server non risponde.",
"feature_not_enabled": "Funzionalità non abilitata.",
"request_limit_met": "Limite richiesta API superato.",
"address_incomplete": "Indirizzo incompleto"
},
"pdf_estimate_label": "Preventivo",
"pdf_estimate_number": "Preventivo Numero",
"pdf_estimate_date": "Data preventivo",
"pdf_estimate_expire_date": "Data di scadenza",
"pdf_invoice_label": "Fattura",
"pdf_invoice_number": "Numero Fattura",
"pdf_invoice_date": "Data fattura",
"pdf_invoice_due_date": "Data di scadenza",
"pdf_credit_note_label": "Nota di Credito",
"pdf_credit_note_number": "Numero Nota di Credito",
"pdf_credit_note_date": "Data nota di credito",
"pdf_credit_note_reference": "In riferimento alla fattura :number del :date",
"pdf_credit_note_reason": "Motivo: :reason",
"pdf_cancelled_label": "Annullata",
"pdf_cancelled_via_credit_note": "Annullata tramite nota di credito :number",
"pdf_partially_credited_label": "Parzialmente accreditata",
"pdf_partially_credited_via_credit_notes": ":amount accreditati tramite nota di credito :numbers",
"pdf_notes": "Note",
"pdf_items_label": "Commesse",
"pdf_quantity_label": "Quantità",
"pdf_price_label": "Prezzo",
"pdf_discount_label": "Sconto",
"pdf_amount_label": "Ammontare",
"pdf_subtotal": "Parziale",
"pdf_net_total": "Net",
"pdf_total": "Totale",
"pdf_payment_label": "Pagamento",
"pdf_payment_receipt_label": "RICEVUTA DI PAGAMENTO",
"pdf_payment_date": "Data di pagamento",
"pdf_payment_number": "Numero di pagamento",
"pdf_payment_mode": "Modalità di Pagamento",
"pdf_payment_amount_received_label": "Importo Ricevuto",
"pdf_expense_report_label": "RELAZIONE SPESE",
"pdf_total_expenses_label": "TOTALE SPESE",
"pdf_profit_loss_label": "RELAZIONE PROFITTO E PERDITE",
"pdf_sales_customers_label": "Report Vendite Clienti",
"pdf_sales_items_label": "Rapporto vendite",
"pdf_tax_summery_label": "Rapporto Riepilogo Tasse",
"pdf_income_label": "REDDITO",
"pdf_net_profit_label": "PROFITTO NETTO",
"pdf_customer_sales_report": "Relazione Vendite: Per Cliente",
"pdf_total_sales_label": "TOTALE VENDITE",
"pdf_item_sales_label": "Relazione Vendite: Per Articolo",
"pdf_tax_report_label": "RELAZIONE FISCALE",
"pdf_total_tax_label": "TOTALE IMPOSTA",
"pdf_tax_types_label": "Tipi di Tasse",
"pdf_expenses_label": "Uscite",
"pdf_bill_to": "Fattura a,",
"pdf_ship_to": "Invia a,",
"pdf_received_from": "Ricevuto da:",
"pdf_tax_label": "Tassa",
"pdf_tax_id": "Codice Fiscale",
"pdf_vat_id": "P. IVA",
"pdf_amount_credited": "Importo accreditato",
"pdf_amount_paid": "Importo pagato",
"pdf_amount_due": "Importo Dovuto",
"mail_thanks": "Grazie",
"mail_view_estimate": "Mostra preventivo",
"mail_viewed_estimate": ":name ha visualizzato questo preventivo.",
"mail_view_invoice": "Mostra fattura",
"mail_viewed_invoice": ":name ha visualizzato questa fattura.",
"mail_view_payment": "Mostra pagamento",
"notification_view_estimate": "[Notification] Preventivo visualizzato",
"notification_view_invoice": "[Notification] Fattura visualizzata",
"You have received a new invoice from <b>{COMPANY_NAME}</b>.</br> Please download using the button below:": "Hai ricevuto una nuova fattura da <b>{COMPANY_NAME}</b>.</br> Si prega di scaricare utilizzando il pulsante sottostante:"
}