Skip to content


Repository files navigation


Super simple PDF invoicing. InvoicePrinter is a server, command line program and pure Ruby library to generate PDF invoices in no time. You can use Ruby or JSON as the invoice representation to build the final PDF.


  • Simple, no styling required, no calculation, no money formatting (bring your own)
  • Pure Ruby, no dependency on system libraries or browsers
  • Fast, so you can render invoices on the fly during requests


Simple invoice

See more usecases in the examples/ directory.


  • A4 and US letter paper size
  • Invoice/document name and number
  • Purchaser and provider boxes with addresses and identificaton numbers
  • Payment method box showing banking details including SWIFT and IBAN fields
  • Issue/due dates box
  • Configurable items' table with item description, breakdown, quantity, unit, price per unit, tax and item's total amount fields
  • Description above the table
  • Final subtotal/tax/total info box
  • Page numbers
  • Configurable field labels & sublabels (optional little labels)
  • Configurable font file
  • Logotype (as image scaled to fit 50px of height)
  • Background (as image)
  • Stamp & signature (as image)
  • Note
  • JSON format
  • CLI
  • Server
  • Well tested



I am developing InvoicePrinter as a free and MIT-licensed library for several years now.

Please consider buying my book or SaaS starter kit so I can work more on Open Source.


Copyright 2015-2023 © Josef Strzibny. MIT licensed.