aboutsummaryrefslogtreecommitdiff
path: root/docs/INVOICING.md
diff options
context:
space:
mode:
authorAnders Betts <anders.betts@gmail.com>2026-09-20 15:08:58 +0200
committerAnders Betts <anders.betts@gmail.com>2026-09-20 15:08:58 +0200
commitfb21e8efa65662dcb6c2cc7ed693dea91888c3a7 (patch)
tree43f0662b2c61dd596e2be78fdd107463e8aa9591 /docs/INVOICING.md
parent480640a747b81cb39deb1ec24e6e199a9c837fbe (diff)
downloadbokf-fb21e8efa65662dcb6c2cc7ed693dea91888c3a7.tar.gz
bokf-fb21e8efa65662dcb6c2cc7ed693dea91888c3a7.zip
invoice: render the document as PDF
Diffstat (limited to 'docs/INVOICING.md')
-rw-r--r--docs/INVOICING.md49
1 files changed, 33 insertions, 16 deletions
diff --git a/docs/INVOICING.md b/docs/INVOICING.md
index 8d08068..f509997 100644
--- a/docs/INVOICING.md
+++ b/docs/INVOICING.md
@@ -62,19 +62,34 @@ Grid (points, origin top-left; refined against the originals in
| Element | x | y |
|---|---|---|
-| Header bar (full width) | 0 | 48–80 |
-| Wordmark | 20 | 55 |
-| `FAKTURA` (right-aligned) | 577 | 55 |
-| Label column (right-aligned at 114) | 57–114 | 96 + 14.7/row |
-| Value column | 178 | same rows |
-| Fakturaadress block | 556 | 142 + 22/line |
-| Table header | 20 | 247 |
-| Table columns | 20, 119, 343, 409, 484, 544 | — |
-| Summary block | 282 / 445 | 514 + 14.7/row |
-| Bankgiro / OCR | 475 | 579 / 592 |
-| `Summa att betala SEK` | 407 | 609 |
-| Footer | 20, 119, 264 | 638 + 14.7/row |
-| Page number | 577 | 820 (right) |
+| Header bar (x 17.3–577.7) | 17.3 | 53.3–75.7 |
+| Wordmark `MAKANDRA AB` (ink left/baseline) | 21.74 | 69.14 |
+| `FAKTURA` (ink right/baseline) | 576.87 | 69.14 |
+| Info labels (bold 7.285 pt), right-aligned | 113.98 | 101.11 + 14.71/row |
+| Info values (9.107 pt), left-aligned | 118.87 | same rows |
+| Dröjsmålsränta (3 fixed lines) | 118.87 | 174.03 + 10.47/line |
+| Fakturaadress block (name always first slot) | 370.35 | 115.82 + 14.71/line |
+| Table header bar (x 17.3–577.7) | 17.3 | 242.43–257.85 |
+| Table columns: left edges | 20.10, 118.87 | baseline 253.81 |
+| Table columns: right edges | 365.45, 433.39, 504.15, 574.89 | — |
+| First table row | 20.10/118.87 | 268.53, 14.71/grid row |
+| Summary left labels / values, right-aligned | 329.76 / 365.45 | 518.60, 533.31, 548.03, 569.04, 583.75 |
+| Rule above summary (0.70 pt, black) | 17.3–577.7 | 507.57 |
+| Rule above footer (0.70 pt, black) | 17.3–577.7 | 621.76 |
+| Summary right labels / values, right-aligned | 504.17 / 574.89 | same rows |
+| `OCR` row | 504.15 / 574.89 | 598.46 |
+| `Summa att betala SEK` (bold) | 504.17 / 574.89 | 615.24 |
+| Footer headings (bold 6.375 pt) | 20.10, 118.87, 263.88 | 642.47 |
+| Footer values (9.107 pt) | 20.10, 118.87, 334.63 | 656.60, 671.31, 686.02 |
+| Page number | 567.43 | 819.80 (9.75 pt) |
+
+Table rows: the first row's baseline is 268.53, every grid row is 14.71 pt.
+A row's `description` lines print one grid row apart, except that the
+first extra line starts one blank grid row lower (29.42 pt): the original
+sheets use that gap before the `Period ...` line. The next invoice row
+starts `(description lines + 1)` grid rows below the current one. The
+left and right summary blocks are anchored at fixed positions, not
+reflowed after the table.
Fields, in the original's order (note: the original says
`Betalningsvilkor`, kept for fidelity):
@@ -93,9 +108,11 @@ Fields, in the original's order (note: the original says
- Footer: `Adress` (org name, address), `Kontakt` (phone, e-mail),
`Orgnr`, `Momsregnr`, `Godkänd för F-skatt`.
-Amounts: table cells print kronor with no decimals when whole, otherwise
-two; the summary prints `14 400,00` (space thousands separator, comma
-decimal). A single trailing page number `1`.
+Amounts: table cells and the summary's plain kronor cells print no
+thousands separator and no decimals when the amount is whole, otherwise a
+comma decimal (e.g. `73200`, `12,50`). Only `Summa att betala SEK` is
+grouped and always two decimals: `91 500,00`. A single trailing page
+number `1`.
## 3. Numbering and OCR