Invoicing
An invoicing app for Mac that drafts the invoice from your logged hours.
nokko is a native Mac app that tracks time on your projects and turns the unbilled hours into an invoice, priced at your rates, with VAT, a sequential number and a PDF in English, Lithuanian, German, French or Spanish. We wrote it for our own agency in Lithuania, where an invoice that charges no VAT has to say why.
Pick a client and a period, and the logged hours become invoice lines.
The draft starts from the time you logged. Choose a period and a client, or narrow it by tag, and nokko lists the sessions as lines, one per task or split by day. An hour counts as billed once an invoice for that client covers its day, so the Clients view only shows what is left to invoice.
Every figure is on screen and editable before the file is written. Change a line, untick one, or add a flat amount for fixed-price work.

Rates are set per project or per client, and VAT is a percentage or a cited exemption.
A rate can sit on the project, on the client or in your settings as a default, and the most specific one wins. Totals are recomputed every time the invoice is read, so the sum can never drift from the lines above it.
VAT is a percentage on the invoice. If you charge none, nokko asks for the reason to print under the totals and offers the usual wording: the EU reverse charge under Article 196, the Article 44 exemption, or the Lithuanian non-payer note. You can also type your own.
Invoice numbers are sequential, counted from the invoices you already have.
Numbers run per year with a prefix you choose, like INV-2026-007. nokko finds the next one by reading the invoices in your folder, so there is no hidden counter to fall out of step. A number typed by hand is kept and stepped past, and nothing is ever renumbered.
Each invoice is a Markdown file: the number, client, dates, currency, VAT and language in frontmatter, the lines and totals as tables, and any notes you write around them kept as you wrote them. Mark it sent or paid when it is. It prints or saves as a PDF on A4 or US Letter, with your logo, business name and font.
Invoices print in English, Lithuanian, German, French and Spanish.
Each invoice has its own language, so one client can get German and the next English. The labels change with it, and in Lithuanian the title becomes PVM sąskaita faktūra when VAT is charged. Currency is set per invoice as well.
nokko does not send invoices, take payments or track expenses.
nokko drafts the invoice and makes the PDF. Emailing it, payment links, reminders to late payers and syncing to accounting software all happen somewhere else. It has no expenses or quotes, and it does not produce structured e-invoices such as Peppol or ZUGFeRD. If your clients require those, use an invoicing service that does.
If you invoice fixed fees and never track time, a dedicated invoicing service will serve you better too. nokko earns its place when the hours and the invoice belong together.
What the invoice carries, and where it is written.
Every value below is plain text in a file you own, so the invoice still reads in any editor years from now.
| Capability | In nokko | In the invoice file |
|---|---|---|
| Lines from tracked hours | Yes | A table of hours, rate and amount |
| Flat-fee lines | Yes | A line with an amount and no hours |
| Rates | Project, then client, then default | rate: on the project or client |
| VAT | A percentage, or a cited exemption | vat: and vat-note: |
| Sequential numbers | Per year, read from existing invoices | number: |
| Languages | English, Lithuanian, German, French, Spanish | language: |
| Status | Draft, sent, paid | invoice-status: |
| A4 or US Letter, with your logo | Saved wherever you choose | |
| Online payments and reminders | No | |
| E-invoices (Peppol, ZUGFeRD) | No |
Swipe sideways for the other columns.