Skip to content

mauricewipf/adoc-invoice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AsciiDoc Invoice with Calculations

AsciiDoc-based invoice template with automatic calculations via a Ruby extension.

Files

  • invoice.adoc — Invoice template with parameterized fields
  • calc-extension.rb — Ruby extension that evaluates {calc:...} expressions
  • invoice-sample.pdf — Original template (for reference)

Usage

Requires Asciidoctor (Ruby-based).

# Generate HTML
asciidoctor -r ./calc-extension.rb invoice.adoc

# Generate PDF (requires asciidoctor-pdf gem)
asciidoctor-pdf -r ./calc-extension.rb invoice.adoc

How It Works

All invoice data is defined as AsciiDoc attributes at the top of invoice.adoc. The calc-extension.rb processes {calc:expression} patterns and replaces them with computed values formatted in German locale (e.g. 12.426,00):

:price: 114.00
:qty: 109
:total: {calc:{qty}*{price}}   → 12.426,00

Invoice Fields

Attribute Description
Company / Customer Name, address, contact, bank details
invoice_number Invoice number
invoice_date Invoice date
due_date Payment due date
description Free-text field (e.g. service period, project name)
item<N>_desc Line item description
item<N>_details Line item details (free-text, e.g. order/article numbers)
item<N>_qty Quantity
item<N>_price Unit price
item<N>_total Line total (use {calc:...})
subtotal, vat_amount, total Calculated totals

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors