Help
A Week From Wednesday does two things: it writes invoices, and it tracks who has paid them. It is not a bookkeeping package, and there is nothing to learn beyond this page.
1. Installing
Windows. Run the installer, accept the license, and it installs for your user account only — no administrator prompt. The dialog offers an all-users install if you would rather. A Start Menu entry is created; a desktop shortcut is optional.
There is also a portable ZIP: unzip it anywhere and run A Week From Wednesday.exe. It stores its data in the same place as the installed version, so the two are interchangeable.
macOS. Open the disk image and drag the app into Applications.
Either way, the app is self-contained. There is nothing else to install, no runtime, and no database server.
2. Your serial
You enter your serial once, the first time you run the app.
What it looks like. It is in the email from your purchase, and reads WEDN-XXXXX-XXXXX-XXXXX-XXXXX — the letters WEDN and then twenty characters in four groups of five. The alphabet deliberately contains no I, L, O or U, so nothing in it is ambiguous when read aloud or copied by eye. You can type it in lowercase, with or without the dashes, and the app will fold it into shape.
Entering it. Paste it into the box and press Activate. The screen has two other buttons: Buy a licence, which opens the purchase page, and Quit. Closing the window is the same as Quit — the app stops rather than sitting there unusable.
You get one of three answers, and they mean different things:
- "That does not look right — check it for typos." The serial carries a checksum, so a mistyped character is caught on your own machine before anything is sent. Read it again; nothing is wrong with your licence.
- "Could not reach the licence server." No connection, or ours is down. Not a problem with your serial. Try again when you are online.
- Anything else is the server's own words — the licence was refunded, or both seats are already used.
How many computers. Two. That is the licence, enforced when you activate, and it is meant for the desktop-and-laptop case. The activation is signed for the machine it was issued to, so copying the activation file to a third computer does not work.
After that it is offline. Once activated the app does not touch the network at launch. About once every thirty days it re-checks in the background — never waited on, never interrupting you. That check carries the serial, an anonymous one-way hash of the machine, and the app version, and nothing else. Nothing about your invoices or your clients ever leaves the computer.
Silence never locks you out. A timeout, a dead connection, a captive portal, an outage at our end — all of it means "unknown", and the app carries on exactly as before and tries again next launch. There is no offline ceiling and no grace period to run out of. The only thing that stops the app is a correctly signed revocation, which happens when a licence is refunded or withdrawn — and even then your invoices stay on your computer, untouched.
If it will not activate and you are sure the serial is right and you are online, email hello@ctrlcolab.com with the serial.
3. First-run setup
The first time you open the app it asks for the details that appear on every invoice:
- Business name — yours, or your own name if you trade under it. This is the most important field: if you do not set a logo, this is printed at the top of the invoice as the letterhead.
- Phone, street address, city/state/ZIP, country — printed top-right. Leave any of them blank and that line is simply omitted, so a one-line address looks right rather than leaving a gap.
- Default tax rate (%) — pre-filled on every new invoice. Set it to your usual rate; you can still change it per invoice. Leave it at 0 if you do not charge tax.
- Payment due in (days) — how the due date is calculated from the issue date. 14 is the default.
- First invoice number — where your numbering starts. If you are moving from another system, set this to one past your last invoice so the sequence continues unbroken.
- Logo — optional. Any PNG, JPEG, GIF or BMP. See §17 for sizing.
- Payment terms — the paragraph printed at the bottom of every invoice. This is where you say who cheques are payable to and where to send them.
Everything here is editable later in Preferences, so nothing is a permanent commitment. Skip for now takes you straight to the app and does not come back. Closing the window with the X instead leaves the question open, and it is asked again next launch, rather than leaving the company nameless forever.
4. Companies
A company is a complete, separate set of books: its own invoices, its own numbering, its own customers, its own saved items, its own logo and terms, in its own file on disk. Most people only ever need one. You want a second if you bill under more than one name — a personal trading name and a limited company, say — because those are separate records for the taxman and their invoice numbering must not interleave.
File ▸ New Company… asks for the same details as first-run setup and creates a new set of books. File ▸ Load Company opens a submenu listing everything the app can find; pick one to switch to it, and the one you are already in is shown as open and cannot be picked. The company you are in is named in the window title bar, and the one you were last in reopens next time you start the app.
Switching asks before discarding an unsaved invoice, and nothing is shared between companies — a customer entered in one does not appear in the other. That is the point of them being separate.
Where those files live is up to you: Preferences ▸ Where companies are stored shows the folder and can move them all somewhere your backups reach. See §21.
5. The window
A menu bar, then two columns. The app opens on the dashboard, not on a blank form.
The menus. File holds New Invoice, Save Invoice, Export PDF, then New Company… and Load Company, then Reports…, Preferences… and Quit. About holds Help (this page), Keyboard Shortcuts, About, and Bug Report — which opens an email to us with the version, your operating system and your company count already filled in, so you do not have to go looking for them.
Left — the invoice column. A search box, a Sort button, then every invoice you have saved. Each row shows #number client and, beneath it, the payment state: $X due, Partial $X · $Y left, or Paid $X · date. A small coloured dot marks how late it is, using the same aging colours as the dashboard, and a thin bar under the row fills as the invoice is paid. The checkbox on the right opens the Record payment window for that invoice.
Right — the workspace. A title card carrying the invoice number or the word Dashboard, a status message, and the buttons. The first button toggles between the two views: it says New Invoice while the dashboard is showing and Dashboard while an invoice is. Then Save, Preview invoice and Export PDF. Below that, the invoice itself: a scrolling form of cards — Client, Invoice details, Line items, Terms, Totals, and Payment ledger.
A saved invoice opens locked. It is a document that was sent, not a draft, so the fields are read-only and the status reads Saved invoice — press Edit to change it. In place of Save you get Edit, which unlocks it, and a Delete button at the end of the row. Nothing about a saved invoice can be changed by accident.
On a draft, the status message beside the buttons is worth watching: it reads Unsaved changes the moment you edit anything, and Saved once written. Closing the window, switching company, or starting a new invoice with unsaved changes asks whether to save first.
6. The dashboard
What the app knows, at a glance. It is the view you land on, and it is where collections start.
The four tiles
- Outstanding — every unpaid balance added up, including invoices not yet due.
- Past due — the part of that which is actually late. It turns amber when there is any, and it is the only tile you can click: clicking it narrows the invoice column to exactly those invoices. The other three are totals, and a total is not a selection.
- Received this year — payments banked since January 1st, by the date you recorded them as paid.
- Invoiced this year — invoices issued since January 1st, by their issue date.
The last two are deliberately different questions and will not match. One counts money that arrived, the other counts work that was billed; see §16 for why that distinction matters to your accountant.
Invoiced and received
Twelve months, ending with this one. Each month is one bar: the whole bar is what you invoiced, the brighter fill inside it is what you were paid in that month. Hover a bar and the readout above the chart names the month and both figures — the chart carries no printed numbers, because twelve pairs of them would be a table rather than a chart.
Click a month and the invoice column narrows to invoices issued in it. A month with nothing in it is not clickable.
Aging
Six rows, one per period, each with the total owed in it: Current (not yet due), 1–30, 31–60, 61–90, 91–120 and Over 120 days past due. Under them, the Past due total, which is everything except Current.
A period with nothing in it is greyed and does nothing. Click one that has money in it and the invoice column narrows to those invoices — the same rule the card counted with, so the list and the total always agree. Hover a row and two buttons appear at the end of it, Report and Email: that is §15.
The colours are yours to change — Preferences ▸ Aging colors. They are used here and in the invoice column's status dots.
Who and what is billing
Two short rankings, five rows each, with a bar for scale. Top clients is by invoiced total. Most-billed items ranks line-item descriptions by what they have earned, which is a fair guide to what you should have a saved item for.
Clearing a filter. Anything you clicked on the dashboard lands in the search box as ordinary words — Past due, Aging: 61–90, March 2026 — so you can see why the list changed. Click the same thing again to take it off, press the ✕ in the search box, or press Esc.
7. Writing an invoice
- New Invoice (the button on the title card, or Ctrl+N). It is numbered for you, dated today, with the due date already calculated from your default.
- Pick the Client. Type to filter your customer list, or press the ▾ to see all of it. The customer you billed last is already filled in — most people bill the same handful of people, so the common case is that this is done.
- Add your line items (§8), by hand or from your saved items.
- Check the Totals card, which updates as you type.
- Edit the Terms if this invoice needs different wording from your default.
- Save, then Export PDF and send it.
The address is read-only. The four address fields on the Client card show what this invoice was written with, and they are filled from the customer record rather than typed here. Correcting a customer's address should change who you bill next, not silently rewrite an invoice you already sent — so addresses are edited in the customer record and nowhere else (§10).
Dates are typed as MM/DD/YYYY. Changing the issue date does not move the due date — set that yourself if you need it.
8. Line items & tax
Each line has four fields and a checkbox:
- Line item — the short title, printed in normal weight.
- Details or scope — an optional second line in smaller type, for the specifics. Use it and your invoice reads as an explanation rather than a bill.
- Rate — the unit price. Currency symbols and commas are ignored, so
$1,250.00and1250are the same. - Qty — the quantity. Fractions are fine:
1.5hours,0.25days. A whole number prints without a decimal. - Tax exempt — tick it and this line is excluded from the tax calculation while still counting toward the subtotal.
The line total appears on the right as you type. Add line at the top of the card adds another; the × at the end of a row removes it. Removing the only remaining row clears it rather than deleting it, so an invoice always has somewhere to type.
Tax exempt is the one thing worth understanding properly, because it is the reason a single tax-rate box is enough for most freelancers. Tax is charged on the sum of the lines you have not marked exempt. So a job with $2,000 of labour (exempt in your state) and $300 of materials (taxable) gets a correct invoice from one rate: mark the labour line exempt, leave the materials line alone, and the tax lands on $300.
That split is also the only place the taxable/non-taxable figures on the bookkeeping summary come from. Which lines are actually exempt is a question for your accountant, not for this app — see the note in §23.
9. Saved items
A short catalogue of the services and products you bill often, so a line takes one click instead of retyping a description and a rate.
Setting them up. Preferences ▸ Saved services and products ▸ Add a service or product. Each one has a Name (what you pick it by, and what prints as the line's title), an optional Description (the invoice's second line), and a Rate. The pencil edits one, the bin removes it.
Using them. On the invoice, Line items ▸ Saved item opens the list; press Add beside one and it becomes a line with a quantity of 1, which you then adjust like any other line. If the invoice is still on its untouched first row, it fills that row rather than leaving a blank one above.
It is copied, not linked. An invoice is a record of what was billed at the time, so repricing or deleting a saved item later cannot rewrite an invoice you already sent.
Pressing Saved item with nothing saved yet offers to take you to Preferences to set some up.
10. Customers
A customer is a real record, not just a name on an invoice. It holds:
- Customer name — required. It is what the invoice is addressed to and how you find them again.
- Street address, Address line 2, City, state, ZIP, Country — copied onto each invoice as it is written.
- Email and Second email — the first is what a collections email uses; the second appears on the collections report so you have the accounts-payable address as well as your contact's.
- Phone and Website — printed on the collections report, for when the email is being ignored.
Adding one. + Add Customer on the Client card. It is saved and put straight onto the invoice you are writing.
Editing one. Edit Customer appears on the Client card once the name in the box matches a customer you have. Changes apply from now on; invoices already written keep the address they were written with.
Deleting one. Delete customer inside the customer window. This also deletes every invoice billed to them, with their line items and payments, so the confirmation tells you how many invoices that is before you decide and makes you type the word Delete in full. There is no undo.
11. Totals
Five figures, all calculated for you and all updating live:
- Subtotal — every line total added up, exempt or not.
- Tax — the tax rate applied to the non-exempt lines only.
- Total — subtotal plus tax.
- Amount paid — the sum of the payment ledger. Nothing else feeds it; you cannot type over it.
- Amount due — total minus paid, shown large at the foot of the card and never negative. Overpay an invoice and it shows zero rather than a negative balance.
Money is calculated with decimal arithmetic and rounded half-up to the cent, so the figures add up exactly and do not drift by a penny the way floating-point totals can.
12. Preview & PDF
Preview invoice (Ctrl+Shift+P) renders the real PDF to a temporary file and opens it in your usual viewer. It is exactly what exporting would produce — the same code draws both — so it is the honest way to check a layout before sending. Nothing is saved.
Export PDF (Ctrl+P) asks where to save and writes the file there. The default filename is Invoice 1042 - Client Name.pdf. Exporting also saves the invoice, so an invoice you have sent is always one you have on record. Afterwards you are asked whether to open it.
The page is US Letter. The layout is fixed and deliberately plain: your logo or business name top-left, your contact details top-right, then Billed To, Date of Issue, Invoice Number and Amount Due (USD) across the page, then the line items, the totals, and your terms. A long invoice runs onto further pages headed Invoice 1042 - continued, with the totals on a final - summary page.
The text in the PDF is real text, not an image, so it is searchable and can be copied — which matters when a client's accounts department wants to paste a figure rather than retype it.
13. Recording payments
This is the accounts-receivable half, and the reason the app exists rather than a template in a word processor.
From the list. Click the checkbox beside an invoice in the invoice column and the Record payment window opens for it, with the balance already filled in. It is one click from seeing that something is owed to recording that it arrived.
From the invoice. + Add payment on the Payment ledger card does the same thing. The ledger card only appears once there is a payment to show.
Either way you record four things:
- Amount paid — pre-filled with the outstanding balance, which is the common case; type over it for a part payment.
- Payment type — Check, Wire / EFT, or Cash.
- A reference — the field renames itself to Check number or Wire / EFT reference to match, and disappears entirely for Cash, which has no reference worth recording.
- Date paid — today by default. This is the date the money is counted on, so set it to when it actually arrived if you are catching up.
Every payment is listed on the ledger with running totals of Total payments and Balance remaining.
Partial payments are the point. A client paying half up front and half on delivery gets two ledger entries, and the invoice reads Partial $1,000 · $1,000 left in the list until the balance reaches zero, at which point it flips to Paid on its own. You never mark it paid manually; the arithmetic decides.
14. Finding old invoices
The search box filters the list as you type, matching the client name or the invoice number — so 1042 finds invoice 1042 and acme finds everything billed to Acme. It waits for you to stop typing before rebuilding the list.
Sort reorders the column: Newest first (the default), Due date, Client A–Z, Balance owed, or Aging. The choice is remembered between sessions, and a tick marks the one in force.
Click any invoice to open it. It opens locked; press Edit (Ctrl+E) to change it, then Save. The invoice keeps its number, and saving an edit does not consume a new one — the next new invoice still gets the next number in sequence.
15. Chasing what is late
Hover any aging row on the dashboard that has money in it and two buttons appear: Report and Email. Both work on everyone in that one period.
Report
A PDF of who to chase and how to reach them, headed Collections — 61–90 and dated. It is organised by customer, not by invoice: someone with four late invoices is still one phone call. Each row gives the name, a contact (email first, phone if there is no email), how many days their oldest debt in that period is, and the balance. Their other details — second email, phone, website — sit under the name when there are any. Worst first, because the list is worked from the top down.
This is the sheet you print before picking up the phone. The aging report in §16 is the other view of the same money: organised by invoice, and it answers what is owed rather than who to call.
One message to everyone in that period at once. The window shows:
- BCC — every customer in the period who has an email address on file, with a copy button beside the list. They are in BCC rather than To for an obvious reason: a collections email addressed to a list shows every customer who is late to every other customer who is late.
- A note of who was left out, by name, if any of them has no email address. Add one from their customer record.
- RE: and Message — filled in from the template for that period, and editable here before you send. The message box is spell-checked.
Send to email client hands the whole thing to whatever program handles mail on your computer and leaves it open on the draft. The app sends nothing itself. The message goes out under your own address, from your own sent items, after you have read it — which is the only honest design for a desktop app with no server.
A very long message with a very long recipient list can exceed what an email program will accept on a command line; if that happens you are told, rather than being handed a draft that silently lost its body. Shorten the message or do it in two goes.
The templates
Preferences ▸ Collection messages. Pick a period from the Period button and edit its subject and body — one at a time, because six messages laid out at once is a wall of text nobody reads. Each period ships with a plain, slightly formal message written for it, escalating from a note that nothing is due yet to a final reminder past 120 days.
{business} anywhere in the subject or body is replaced with your business name when the message is opened. Save message stores your version; Reset to default puts the shipped one back.
16. Reports
File ▸ Reports… (Ctrl+R). Two reports. Tick PDF to get something to read, Comma-delimited (CSV) to get something to hand over, or both — then Export… and choose where.
Two conventions in the CSVs, and both are the difference between a file that imports and one your bookkeeper retypes: money is written bare (1250.00, never $1,250.00, because a currency symbol turns the column into text and every sum over it silently returns zero), and dates are written ISO (2026-09-12, unambiguous between US and European readers, and sorting correctly as text). The files carry a UTF-8 byte-order mark so Excel on Windows reads accented names correctly. The PDFs are landscape US Letter, because these are wide tables.
Accounts receivable aging
Who owes you, and how late they are. Every unpaid invoice, grouped by client and split into Current (not yet due), 1–30, 31–60, 61–90, 91–120 and Over 120 days past due, with a total per bucket and a past-due figure that excludes anything not yet owed.
Partly paid invoices age on what is still outstanding, not the original amount, and paid invoices do not appear at all. The As at date defaults to today; set it back to see where you stood at the end of last month.
The CSV is one file: one row per outstanding invoice, with its bucket both named in a column and columned as an amount — so it reads as-is, and pivots if you want it to. A TOTAL row closes it.
Bookkeeping summary
For your accountant, over a date range. From and To are inclusive, and there are quick buttons for This year, Last year, This quarter and Last month.
It has three sections, and the reason for three rather than one is worth knowing. Books are kept on one of two bases, and which one is not this app's decision: accrual counts revenue when you issue an invoice, cash counts it when the money arrives. Over the same quarter those are different numbers. So the report gives both and lets your bookkeeper take whichever you file on:
- Invoices issued in the period, selected by issue date — the accrual figure, with the taxable / exempt split a sales-tax return asks for. That split comes from the per-line Tax exempt boxes (§8) and is not recorded anywhere else.
- Payments received in the period, selected by date paid — the cash figure, broken down by method (Check, Wire / EFT, Cash) so it reconciles against your bank statement.
- Open invoices at the period end — your accounts receivable balance. This ties to the aging report's total.
As CSV it writes three files into a folder you choose — …-invoices-issued.csv, …-payments-received.csv and …-open-invoices.csv — because a single file holding three differently shaped tables cannot be imported by Excel, QuickBooks or Xero, all of which want one header row and one record shape per file.
One honesty note, which is also printed on the report: open balances are as they stand today, not reconstructed as at the period end. The app keeps a dated ledger of payments but does not rebuild historical balances.
What it is not: this is a handover of what you invoiced and collected, not a set of accounts. It knows nothing about your expenses, so it cannot tell you your profit — see §23.
17. Preferences
File ▸ Preferences… (Ctrl+,). Nine cards, in this order.
Business details — name, phone, street address, city/state/ZIP, country; plus the invoice defaults: default due in days, default tax rate, and next invoice number. The next number must be higher than your highest saved invoice, and the app refuses a lower one rather than let you create a duplicate.
Invoice logo — choose an image (PNG, JPEG, GIF or BMP) and set its size from 25% to 120%. The logo sits in a fixed box top-left and is scaled to fit while keeping its proportions, so a wide logo and a square one both land correctly. Saving copies the image into your company's own folder as a PNG, named after the company — so moving or deleting the original afterwards changes nothing. Use original clears the logo and goes back to printing your business name as type. The preview sits on a chequerboard so a transparent or white logo is still visible.
Default terms — the wording printed at the bottom of every new invoice. Changing it does not alter invoices already written.
Saved services and products — see §9.
Database backup — a one-off copy, and an automatic schedule. See §20.
Where companies are stored — see §21.
Aging colors — the six swatches used on the dashboard's aging card and on the status dots in the invoice column. Click a swatch to change it; Reset to default colors puts the shipped palette back. Only the ones you actually changed are stored, so a swatch you never touched follows any future change to the defaults.
Collection messages — see §15.
Appearance — Dark, Light, or Match Windows. Dark is how the app was designed; Light is there for a bright room.
What Save settings covers. The business details, the logo and its size, and the default terms are written when you press Save settings, and Cancel discards them. Appearance, the backup schedule, the aging colours and the collection messages apply the moment you set them and have their own buttons — they describe the app rather than the company you are billing as, so they are the same in every set of books.
18. Keyboard shortcuts
About ▸ Keyboard Shortcuts shows this same list inside the app, read from the bindings themselves so the two cannot disagree.
On a Mac, read every Ctrl below as Cmd. The app binds the platform's own modifier, so Cmd+N, Cmd+S and the rest are what you press there — and the list inside the app shows them that way. F1, Esc and right-click are the same on both.
| Keys | What it does |
|---|---|
Ctrl+N | New invoice |
Ctrl+S | Save the invoice |
Ctrl+E | Edit a saved invoice |
Ctrl+P | Export the invoice as a PDF |
Ctrl+Shift+P | Preview the invoice |
Ctrl+F | Jump to the search box |
Ctrl+D | Show the dashboard |
Ctrl+R | Reports |
Ctrl+, | Preferences |
Ctrl+Delete | Delete the invoice (asks you to type Delete) |
F1 | Help |
Ctrl+Q | Quit |
Esc | Close a dialog, or clear the search |
Ctrl+A | Select everything in a field |
Ctrl+C / Ctrl+X / Ctrl+V | Copy, cut, paste |
Ctrl+Z / Ctrl+Y | Undo, redo (in the larger text boxes) |
| Right-click a field | Cut, copy, paste and spelling suggestions |
The application shortcuts are ignored while a dialog is open, so Ctrl+N with the customer window in front cannot start a new invoice on the window behind it.
19. Spell check
The prose boxes are spell-checked: the invoice's Terms, the Message in a collections email, and the collection message templates in Preferences. Misspellings get a red underline shortly after you stop typing. Right-click a word for up to five corrections, best first, and click one to replace it — a correction keeps the shape of the word it replaces, so a capitalised word stays capitalised.
The same right-click menu carries Add "word" to dictionary, which remembers the word for good. Your additions live in a plain text file alongside your data (§21), one word per line.
What is deliberately not checked: customer names, business names, addresses, invoice numbers and line-item titles. They are full of proper nouns and abbreviations that are correct and in no dictionary, and a field underlined in red everywhere teaches you to ignore the underline. Words shorter than three letters, words in ALL CAPS (NET, EFT, ACH, LLC) and anything containing a digit are skipped for the same reason.
The dictionary is an ordinary English word list that ships inside the app, weighted toward billing and motion-design vocabulary so invoice, retainer, animatic and ProRes do not come up underlined. It is entirely local — nothing you type is sent anywhere.
20. Backups
Do this. Nobody else has a copy of your invoices.
There is no cloud sync and no account, which means there is no server-side copy of anything — deliberately, because your clients' details are not ours to hold. The flip side is that a failed drive with no backup takes your billing history with it.
Automatic. Preferences ▸ Database backup ▸ Automatic backup: Never, Every day, Every week or Every month. Copies are written into a Backups folder beside your books, shortly after launch when one is due. The newest ten are kept and older ones removed, so it cannot quietly fill your disk. Switching it on takes a backup at once rather than promising one in a month's time. It is off until you ask for it.
On demand. Preferences ▸ Download database backup writes a complete copy of the open company wherever you choose. It is a proper SQLite backup rather than a file copy, so it is safe to take while the app is running.
Either way, put one somewhere that is itself backed up — a synced folder, an external drive — and repeat it whenever you would mind losing the work since last time. Note that automatic backups live beside your books, so they are no help against losing the whole drive.
To restore, close the app and put the backup file into the Companies folder in place of that company's file (§21).
21. Where your data lives
One file per company, in a folder you choose, inside the app's data directory. By default that directory is:
- Windows:
%LOCALAPPDATA%\A Week From Wednesday\ - macOS:
~/Library/Application Support/A Week From Wednesday/
In it you will find Companies\ (one .db per company, plus its logo and the Backups folder), app.json (the settings that are the same in every company — appearance, aging colours, collection messages, sort order, backup schedule), license.json (your activation), and custom-dictionary.txt (words you added to the spell checker).
Each company file holds that company's invoices, line items, customers, payments, saved items and settings. They are standard SQLite files, so any SQLite tool can open them — your records are not locked inside our format. Copying one to another machine carries that company across whole.
Preferences ▸ Where companies are stored moves the whole Companies folder. The app closes the open company, moves the files, and reopens — and it refuses rather than overwriting if the destination already contains a file of the same name.
Uninstalling deliberately leaves all of it alone, so removing and reinstalling the app never costs you an invoice. If you genuinely want the data gone, delete the folder yourself.
To keep everything somewhere else entirely — an encrypted volume, a synced folder — either use the Preferences setting above, or set the WEDNESDAY_DATA_DIR environment variable to move the app's whole data directory. Note that your activation lives there too, so a fresh data directory will ask for your serial again.
If you upgraded from an earlier version, your existing invoices were moved into the Companies folder automatically the first time you opened this one, named after the business already recorded in them.
22. Troubleshooting
It will not accept my serial. Read the message; the three cases are different. "Check it for typos" is decided on your own machine and means the serial is not one of ours as typed. "Could not reach the licence server" is a connection problem, not a licence problem. Anything else is the server's own answer — usually a refunded licence or both seats already used. See §2.
"Preview invoice" does nothing. The preview opens in whatever application your system uses for PDFs; if no PDF viewer is set up, there is nothing for it to open. Install one — any browser will do — or use Export PDF and open the file yourself.
I cannot type into the invoice. It is a saved invoice, which opens locked. Press Edit, or Ctrl+E.
I cannot type the client's address. Correct — it comes from the customer record. Press Edit Customer on the Client card. Invoices already written keep the address they were written with, by design.
It will not let me set the next invoice number. It must be greater than your highest saved invoice, so the sequence cannot collide with an invoice you have already sent.
The invoice is marked Partial when I was paid in full. The ledger totals decide the state. Check the payment amount you entered against the invoice total — a payment recorded before you added the last line item, or before tax, will be short.
The Email button says nobody has an email address. Collections email uses the Email field on the customer record, and invoices written before a customer existed as a record carry only a name. Open the customer from an invoice and fill it in. The Report still works — it prints whatever contact details there are.
The collections email will not open. The message plus the recipient list was too long to hand to your email program. Shorten the message, or split the period into two sends.
My logo does not appear on the PDF. Re-choose it in Preferences ▸ Invoice logo and press Save settings; if the image cannot be read you are told so there and then. Until a logo is set, the invoice prints your business name as type, which is why nothing looks broken.
My invoices have disappeared. Almost always a different user account, a different machine, a company you are not currently in (check the window title and File ▸ Load Company), or a WEDNESDAY_DATA_DIR set in one place and not another. Check whether the file at §21 exists before assuming the worst.
The window opens with empty business details. Setup was skipped. Open Preferences and fill them in.
Anything else: hello@ctrlcolab.com, or About ▸ Bug Report, which fills in the version and your system for you.
23. FAQ
Is this a subscription? No. $14.99 once. No renewal, nothing to cancel. Every 1.x update is included.
Do I need an account or an internet connection? No account, ever. You need to be online once, to activate your serial, and then about once a month so the app can confirm the licence is still good — that check runs in the background and carries only the serial, an anonymous machine identifier and the app version. If you are offline it just keeps working, for as long as that lasts. Nothing about your invoices is ever sent anywhere.
Can I use it on my desktop and my laptop? Yes — your licence activates on two computers, which is exactly this case. The data does not sync between them, though; each install has its own companies folder. If you need the same records on both, point Preferences ▸ Where companies are stored at a synced folder on each machine, and do not run both at once.
Can it email invoices, or take card payments? It does not send anything itself and it handles no money. The collections email (§15) composes a message and hands it to your own email program to send; an invoice is a PDF you attach yourself. Getting paid is between you and your client. That boundary is why the app is this simple.
Can it handle multiple currencies? No. Amounts are formatted with a dollar sign and the PDF says "Amount Due (USD)".
Can it do recurring invoices, estimates, expenses, or time tracking? No. It is invoices and payments received, nothing else. Saved items cover the repetition that a recurring invoice usually means in practice.
Does it work out the tax for me? No, and this is worth being clear about. You enter a rate; the app applies it to the lines you have not marked exempt. It does not know your jurisdiction's rate, whether your work is taxable, or what your tax authority requires an invoice to contain — and it is not an accounting or tax product. If you are unsure, ask an accountant. See EULA §9.
Can it tell me my profit, or track expenses? No. It records what you invoiced and what you were paid; it knows nothing about what you spent. The Bookkeeping summary (§16) gives your accountant the income side, which is the half this app holds.
Can I import from FreshBooks, QuickBooks, or a spreadsheet? Not currently. Set First invoice number to continue your existing sequence and carry on from there; older invoices stay wherever they are.
Can I change how the invoice looks? Your logo, its size, your business details and your terms — yes. The layout itself is fixed.
Is my data encrypted? No. It is a plain SQLite file readable by anyone with access to your user account. Use full-disk encryption (BitLocker, FileVault) if that matters, which is the right tool for it.
Questions this page did not answer: hello@ctrlcolab.com
© 2026 CTRL Colab LLC. All rights reserved.