<







57 Tickets Later: Everything That Has Changed in ZEIT.IO

Robert Reiz Robert Reiz | September 07, 2026 | 15:52 UTC
Over the past few weeks we closed 57 tickets: bank integration reconciles invoices automatically, the SEPA export now covers credit notes too, there are four clear project types, absences for external staff, and more entries in the audit log.

Over the past few weeks we closed 57 tickets β€” including one of the biggest features we had announced for 2026. Rather than comment on each change on its own, we have bundled them here: an overview of everything that is new, grouped by the areas you work in every day.

If you take away only one thing from this article, make it this one: bank integration is live.


Bank integration: payment status maintains itself

You can now connect your bank accounts directly to ZEIT.IO. Outgoing invoices, incoming invoices and credit notes are reconciled automatically, and the payment status stays current without anyone maintaining it by hand.

That affects more than a tick box in the invoice list: your open item list is dependable at any moment, and the dunning run only reaches the people who genuinely have not paid. When bank integration marks an invoice as paid, that is written to the audit log exactly like a manually recorded payment β€” so either way, the change stays traceable.

The connection is read-only. ZEIT.IO retrieves balances and transactions, and cannot initiate a payment.

β†’ From Bank Statement to Payment Status: Bank Integration in ZEIT.IO


Invoicing and accounting

SEPA export for credit notes and incoming invoices. Credit notes and incoming invoices can now be exported as a SEPA file, in the pain.001.001.03 and pain.001.001.09 formats. ZEIT.IO remembers which documents have already been exported and warns you on a second export β€” so no payment goes out twice.
β†’ Payment Runs Without Retyping: The SEPA Export in ZEIT.IO

Auto-invoicing on the last day of the month. Automatic invoicing could previously only bill the previous month. You can now pick the last day of a month as the execution date and bill the current month instead.
β†’ A new auto-invoice trigger: billing on the last day of the month

Language per customer. The default language can now be set directly on the customer β€” and, where it differs, on individual contact persons and departments too. Invoices and approval emails go out in the right language automatically.

Recipients per project. Until now, exactly one customer contact could be stored per project. You now define once, on the project, who receives offers, invoices, copies and dunning notices β€” with larger customers those are rarely the same people. The invoice and dunning contacts can additionally be set directly on the invoice.
β†’ Recipients per project: offers, invoices and dunning notices to the right contacts

CVR number for Danish freelancers. Danish freelancers can store their CVR number. It is output correctly as BT-29 in the e-invoice.
β†’ One number instead of three fields: the CVR number for Danish freelancers

Alongside those, three smaller improvements that take friction out of everyday work:

  • Maintenance contracts with a description: in the monthly auto-invoice for maintenance contracts, the line item's description is now editable as well as its name.
  • Delivery date on credit notes: credit notes now have a settings tab β€” just like outgoing invoices β€” where the delivery date can be set instead of being derived from the service period. That lets you control which controlling month the credit note appears in.
  • Incoming credit notes with daily rates: daily rates can now be captured when uploading an incoming credit note.

Projects and contracts

Four clear project types. Instead of ambiguous hybrids there are now unambiguous project types β€” among them fixed price to fixed price, and fixed price to time & material. With the "fixed price to T&M" type you sell at a fixed price and buy in on an hourly basis. Each project type now answers clearly how you sell, how you buy in, and where the margin comes from.
β†’ Four project types, one clear logic

Change requests for supplier contracts. Accepted supplier contracts are no longer frozen. Payment terms, cash discount values and every configured billing rate can be adjusted via a change request. The supplier sees the old and new values side by side and can accept or reject the changes.
β†’ The rate goes up – and the contract stays

Up to four daily rates with your own labels. Supplier contracts now support up to four daily rates instead of two. And the labels are no longer fixed to "Remote" and "On site" β€” you assign your own names, which also appear for the freelancer, on the invoice and on the credit note.
β†’ "On site 2" – what was that again?

Project documents. PDFs can now be filed directly on the project β€” the contract lives where the project is.
β†’ Project Documents: The Contract Now Lives Where the Project Is

And in addition:

  • Customer documents: documents can now be stored on the customer as well, exactly as on projects.
  • Offer to fixed-price project: an offer could previously only be converted into a time & material project. Converting it into a fixed-price project now works too.
  • Switching a contract to open-ended: employee contracts with an end date can be converted into open-ended contracts after the fact.
  • Free date range as a filter: projects and supplier contracts can now be filtered by a freely chosen date range instead of only by predefined months. Everything overlapping the period is shown.

Time tracking and absences

Absences. External staff can now maintain their own absences β€” holiday or sick leave. During that time they no longer receive reminder emails. If a timesheet belongs to exactly one freelancer, the absence days are additionally shown directly in the timesheet.
β†’ Two weeks in Croatia, zero reminder emails: absences in ZEIT.IO

Excel timesheets. Freelancers can now also upload Excel files as a timesheet for approval. The spreadsheet is rendered as HTML right in the browser, and the original file stays available for download.
β†’ View Excel Timesheets Right in Your Browser

Plus three smaller refinements:

  • Preventing times in the future: whether time entries with a future date are allowed can now be configured per contract.
  • Editing and deleting comments: whoever wrote a comment can now also change or remove it afterwards.
  • A warning when adding approvers: when an approver is added to a project, ZEIT.IO checks whether the approval process is active for all members, and points it out to you if it is not.

Master data, expenses and permissions

CSV import for customer data. Customers, contact persons and departments had to be created by hand until now. You can now import them from CSV β€” the exported files can be read straight back in.

Two-factor authentication. The 2FA setup has been reworked: activating it requires your current password, and 2FA only goes live once you have confirmed a code from your app. A new QR code likewise only replaces the old one after confirmation, and turning 2FA off requires a valid code. Locking yourself out is no longer possible.
β†’ Two Factors, Zero Lockouts: The Reworked 2FA Setup in ZEIT.IO

And two permission topics:

  • Submitting expenses on behalf of others: organisation admins could previously only view and edit their employees' expenses. They can now submit them for approval as well.
  • A new permission for project members: employees without access to salaries could not previously add colleagues to a project. There is now a dedicated permission for that, independent of the salary permissions.

Traceability: more in the audit log

The audit log answers the question "who changed this β€” and when?". Several changes were not landing in that history. That is now fixed:

What is now logged Where you find it
Payments that bank integration assigns automatically On the document concerned
Switching the federal state in the public holiday settings In the settings
Custom public holidays β€” including whether it is a full or half day In the settings
Switching the default bank account In the contract concerned

Bugs fixed

  • When accepting an organisation contract, the customer was created in the wrong organisation.
  • A comment stayed behind in the timesheet input field after being submitted.
  • The selected period was ignored when exporting a project's invoices.

What are you still missing?

A large share of the items on this list came out of feedback from our users β€” the CSV import, the freely named daily rates and the recipients per project, to name three. If something is missing, or a workflow is more cumbersome than it needs to be, write to us at support@zeit.io. We read every message.

Thank you for your trust!