# Billing tracked time

Once time is tracked, you bundle it into **billing groups** — the basis for your customer
invoice. Track time first, see [Time tracking](https://lalabase.com/docs/en/guides/features/time-tracking).

Lalabase itself does **not** create the invoice: you do that in your usual invoicing or
accounting software. Here you only record the **invoice number**, linking the billing group
to the invoice you created externally.

## The list at a glance

The **Billings** tab shows every billing group as a table: the name with its projects
underneath, the number of time entries, the total, the status, the invoice number and the
creation date. Clicking a row opens the group; the menu at the end of the row offers view, edit,
**Send to invoice** and delete. Editing and the status change open as a small window
right on the page. Below the table sits the total of the visible groups.

You filter as on the time list: **period** (it applies to the group's creation date),
**project**, and the **status** row with the **in billing** and **billed** checkboxes -
the figure beside each says how many groups a click would show, counted under the other
filters. Both boxes on means all. The **search** covers name, description and invoice
number; **reset** appears as soon as anything narrows the list. Above the table stands the
filter's answer: count and total.

## Create a billing group

1. Open **Times** and switch to the **Billings** tab at the top — or assign a ticket's open time to a group
   directly on the ticket via **Click to assign**.
2. Pick an existing billing group or create one with **New billing group**.
3. The time is now bundled under that group.

## Prepare and export

Open the billing group. At the top it sums up its key figures: duration, status, period,
scope, projects and invoice. Three views help: **chronological**, **by subject**, and
**customer export**. The **Related to** column shows what a time entry hangs off — a ticket or a
meeting. In the **by subject** view every subject gets its own row with a total; unlinked time
sits at the end. In the customer export, use **Generate descriptions** to create
customer-ready text per session, adjust it where needed, and download everything as an
**Excel export**.

## Mark as billed

**Send to invoice** opens a small window: enter the invoice number and date, save, done.
The group moves from the **In billing** filter to **Billed**. The status change is for
admins and the finance role; the creator keeps editing name and description. To take a
billed group back, use **Withdraw billing** in the menu. That also removes the invoice
number from every contained time, so Lalabase asks first.

<div class="docs-callout docs-callout--warning">
  <div class="docs-callout__title">Caution</div>
  <p>Changing a billing group that has already been billed can affect your accounting. Lalabase shows a clear warning in the edit window.</p>
</div>

## Spotting partial billing on a ticket

If only part of a ticket's tracked time has been billed, the ticket shows an amber
half-circle icon. Hover over it to see the hint **Mixed billing status**. Clicking it opens
a small popover with an **Open time sessions overview** link that takes you straight to all
of that ticket's time — across all date ranges and billing statuses. That way you can see at
a glance which sessions are still open and which have already been billed.
