![Invoice](https://private-user-images.githubusercontent.com/42545625/248511491-16dae9d9-390c-49b6-aedd-3f882b17f57b.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTA3MTc5MjIsIm5iZiI6MTcxMDcxNzYyMiwicGF0aCI6Ii80MjU0NTYyNS8yNDg1MTE0OTEtMTZkYWU5ZDktMzkwYy00OWI2LWFlZGQtM2Y4ODJiMTdmNTdiLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDAzMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwMzE3VDIzMjAyMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJhOTJhZDg0Y2E0NWU1OTRlOTFkMWVhMGUyYjNlYjhjOWVkN2RkZDhjYzg4ZGIyYjlkMDRkY2RiZWE0YmY4OWImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.rnuOrzBoRtg-F2IQ2d2GMfdrtq3l76OI4qJzA7DHQdg)
Generate invoices from the command line.
invoice generate --from "Dream, Inc." --to "Imagine, Inc." \
--item "Rubber Duck" --quantity 2 --rate 25 \
--tax 0.13 --discount 0.15 \
--note "For debugging purposes."
View the generated PDF at invoice.pdf
, you can customize the output location
with --output
.
open invoice.pdf
![Example invoice](https://private-user-images.githubusercontent.com/42545625/248511492-13153de2-dfa1-41e6-a18e-4d3a5cea5b74.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTA3MTc5MjIsIm5iZiI6MTcxMDcxNzYyMiwicGF0aCI6Ii80MjU0NTYyNS8yNDg1MTE0OTItMTMxNTNkZTItZGZhMS00MWU2LWExOGUtNGQzYTVjZWE1Yjc0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDAzMTclMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwMzE3VDIzMjAyMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWNhYjJjODExMjMzZjFiY2NlNjVjY2E1OWNiOGQxMDc0YWQ3MmE3NWQwZWRhMTk2OTI0YzBiZDc4NDU0ZTIzOWQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.PhoaFBYVRLL0V9YTYEanNQECy0iWoZpcUPZX2hH-lq0)
Save repeated information with environment variables:
export INVOICE_LOGO=/path/to/image.png
export INVOICE_FROM="Dream, Inc."
export INVOICE_TO="Imagine, Inc."
export INVOICE_TAX=0.13
export INVOICE_RATE=25
Generate new invoice:
invoice generate \
--item "Yellow Rubber Duck" --quantity 5 \
--item "Special Edition Plaid Rubber Duck" --quantity 1 \
--note "For debugging purposes." \
--output duck-invoice.pdf
Or, save repeated information with JSON / YAML:
{
"logo": "/path/to/image.png",
"from": "Dream, Inc.",
"to": "Imagine, Inc.",
"tax": 0.13,
"items": ["Yellow Rubber Duck", "Special Edition Plaid Rubber Duck"],
"quantities": [5, 1],
"rates": [25, 25],
}
Generate new invoice by importing the configuration file:
invoice generate --import path/to/data.json \
--output duck-invoice.pdf
If you would like a custom invoice template for your business or company, please reach out via:
Install with Go:
go install github.com/maaslalani/invoice@main
Or download a binary from the releases.
I'd love to hear your feedback on improving invoice
.
Feel free to reach out via:
zzz