Invoiceo
Invoiceo creates pdf invoices from yaml files, like a boss.
Installation
git clone https://github.com/shyal/invoiceo.git && cd invoiceo
npm link
Creating invoices
First init your invoices project directory, inside ${HOME}/Documents for example:
mkdir invoices && cd invoices
invoiceo init
make
PDF output examples
Invoice Fomat
Clients
stark:
name: Stark Industries
currency: $
locale: en
address: |
3500 Deer Creek Road
Palo Alto
CA 94304
USA
clientb:
name: Parker Industries
currency: €
locale: fr
address: |
Client B Ltd.
Bar street
Foo town
B00 FAR
FR
Accounts
./source/accounts.yaml
GBP: |
Stark Holdings
baz ltd.
account number 012345678
sort code 00-11-22
SWIFT ABCXZY01
IBAN
AB01 ACCD 0000 1111 2222 33
EUR: |
Parker Holdings
bar ltd.
account number 123456789
sort code 00-11-22
SWIFT ABCXZY01
IBAN
AB01 ACCD 0000 1111 2222 33
USD: |
Mercs Holdings
fizz ltd.
account number 123456789
sort code 00-11-22
SWIFT ABCXZY01
IBAN
AB01 ACCD 0000 1111 2222 33
Companies
hashy:
address: |
HashyCorp Incorporated
95 Washington St
Hoboken
NJ 07030
USA
footer: HashyCorp Incorporated 95 Washington St, Hoboken, NJ 07030, USA Company Number 0123654
acme:
address: |
ACME Corporation
Malvern
Pennsylvania 19355
USA
footer: ACME Corporation, Malvern, Pennsylvania 19355, USA Company Number 0123654
./source/invoices/*.yaml
These are your actual invoices.
client: stark
company: carlos
paid: true
date: 14/11/2016
account: USD
charge_per: item
project: Project Black
vat: 20
items:
- [Dev, Centrifugal force ray, 2016/11/14, 300000]
- [Dev, Rocket sled, 2016/11/13, 800000]
- [Dev, Atomic Earth Borer, 2016/11/12, 3000000]
- [Dev, Life Model Decoy, 2016/11/09, 1000000]
- [Dev, Life Model Decoy, 2016/11/09, 1000000]
- [Dev, Life Model Decoy, 2016/11/09, 1000000]
- [Dev, Life Model Decoy, 2016/11/06, 1000000]
- [Dev, Life Model Decoy, 2016/11/05, 1000000]
- [Dev, Life Model Decoy, 2016/11/04, 1000000]
- [Dev, Life Model Decoy, 2016/11/03, 1000000]
- [Dev, Light-bending device, 2016/11/02, 500000]
The charge_per field can be either item or day. If you do not charge VAT, then simply remove the vat field.

