A minimalist LaTeX template for effortlessly typesetting clean, professional invoices.
| English | Spanish |
|---|---|
![]() | ![]() |
Download invoice.cls file from releases and place it in the same
directory as your LaTeX document
\documentclass{invoice}For latest mainline version, use invoice.cls.
Specify tax rates (optimal) and the currency (code and symbol)
\vatrate{21}
\taxrate{15}
\currency{USD}{\$}Insert the invoice header with date
\makeheader{\today}Define the invoice number, title and description
\invoice{5}{Secure Networking}{
Secure networking demo and consultation delivered to The Tor Project, Inc.
}Specify the receiver name, address and EIN
\receiver{The Tor Project Inc.}{
390 West Street, Suite 3\\
Mansfield, 02048--1170, USA
}{20-8096820}List invoice items name, quantity and price
\begin{invoicetable}
\invoiceitem{Secure Networking Demo}{1}{650}
\invoiceitem{Consultation (2 hours)}{2}{200}
\invoiceitem{Travel expenses}{1}{150}
\end{invoicetable}Optionally, specify any payment terms or conditions
\conditions{Terms and Conditions: Payment is due within 15 days of the
invoice date unless otherwise agreed in writing. No additional
warranties are provided beyond those required by applicable law, and
the provider is not liable for any misuse of the products or
services.}Include your details as the issuer, along with contact and payment information
\emitter{Richard Matthew Stallman}{Free Software Foundation\\
31 Milk St \# 960789\\
Boston, MA 02196 (USA)}{}
\contact{
\href{mailto:rms@gnu.org}{rms@gnu.org}\\
+1 (210) 319-1828\\
}
\bank{
N26 --- NTSBESM1XXX\\
ES02 1563 2738 4539 0712 7127\\
}Currently, only English and Spanish are supported. For Spanish, simply
load the babel package
\usepackage[spanish]{babel}Support for other languages can be easily added if needed
\AtBeginDocument{%
\ifthenelse{\equal{\languagename}{spanish}}{%
\renewcommand{\titletext}{FACTURA}
\renewcommand{\descriptiontext}{DESCRIPCIÓN}
\renewcommand{\quantitytext}{CANT.}
\renewcommand{\pricetext}{PRECIO}
\renewcommand{\amounttext}{IMPORTE}
\renewcommand{\subtotaltext}{BASE IMPONIBLE}
\renewcommand{\totaltext}{TOTAL}
\renewcommand{\vattext}{IVA}
\renewcommand{\taxtext}{IRPF}
\renewcommand{\contacttext}{Contacto}
\renewcommand{\banktext}{Pago}
\renewcommand{\outputamount}[1]{\num{#1}\currencysymbol}
\sisetup{
output-decimal-marker={,},
group-separator={.},
}
}{}
}This project is based on a template I downloaded some time ago. Unfortunately, I have not been able to identify the original author—if you are or know the creator, please let me know so I can give proper credit.
I have simplified the code, use more standard LaTeX, improved
typesetting aesthetics, added booktabs support, and integrated Spanish
translation with babel.
Suggestions or improvements? Raise a pull request!

