> ## Documentation Index
> Fetch the complete documentation index at: https://docs.timetracker.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Invoices in the client portal

> What a client sees on the portal invoice list and invoice page, which invoice details are hidden from them, and why the portal has no pay button.

A portal contact can read every invoice you issued to their client company. They see the number, the dates, the lines, the totals and the status.

They cannot pay it, download it, comment on it, or see where any line came from.

## Where invoices live in the portal

**Invoices** is one of the two nav items in the portal. The page heading is **Your invoices**, above the eyebrow **Billing**.

## The invoice list

The list is a table with exactly four columns:

| Column      | What it shows                                  |
| ----------- | ---------------------------------------------- |
| **Invoice** | The invoice number. Links to the invoice page. |
| **Issued**  | The issue date.                                |
| **Total**   | The invoice total, right-aligned.              |
| **Status**  | The payment status badge.                      |

Invoices are listed newest first. There is no search box, no filter, no sort control, no date-range picker and no pagination.

There is no client column, no due-date column, no balance column and no actions column.

When there is nothing to show, the client sees **No invoices yet** with the text `Invoices will appear here when your group issues them.`

## Invoice statuses a client can see

| Badge              | Meaning                      |
| ------------------ | ---------------------------- |
| **Draft**          | Not sent yet                 |
| **Sent**           | Issued to the client         |
| **Viewed**         | The client has opened it     |
| **Partially paid** | Some money received          |
| **Paid**           | Settled in full              |
| **Overdue**        | Past its due date and unpaid |
| **Void**           | Cancelled                    |

<Warning>
  Draft invoices are **not** hidden from the portal. If you create a draft for a client, their contact can see it. Create the invoice when you are ready for them to see it.
</Warning>

## The invoice page

Clicking a row opens the invoice. At the top is a back link, **All invoices**. Then one card containing:

<Steps>
  <Step title="The header">
    The invoice number in large monospace, with **Issued** and **Due** dates beneath it, and the status badge on the right.
  </Step>

  <Step title="A From block">
    Your sender details, exactly as they were saved on the invoice. This only renders if you set them. There is no "Bill to" block.
  </Step>

  <Step title="The line items">
    A table with four columns – **Description**, **Qty**, **Unit** and **Amount**.
  </Step>

  <Step title="The totals">
    Four rows, right-aligned, in order – **Subtotal**, **Discount**, **Tax**, then a separator and a bold **Total**.
  </Step>

  <Step title="A download button">
    **Download invoice**, with the helper text `PDF download is coming soon – this is a live, shareable view of your invoice.`
  </Step>
</Steps>

**Discount** and **Tax** always show, even when they are zero.

<Note>
  The **Download invoice** button is present but not yet active. The portal invoice page is a live view – it always reflects the current state of the invoice, so a client does not need a file to check it.
</Note>

## What a client cannot see or do on an invoice

| Hidden or unavailable              | Detail                                                                       |
| ---------------------------------- | ---------------------------------------------------------------------------- |
| Where a line came from             | A client cannot tell if a line is tracked time, an expense, or a manual line |
| The time entry behind a line       | Never sent                                                                   |
| The exchange rate applied          | Never sent                                                                   |
| Internal invoice notes             | Never sent                                                                   |
| Who created the invoice            | Never sent                                                                   |
| Amount paid or balance due         | There is no such row on the portal invoice                                   |
| Per-line tax, tax name or tax rate | Only a single **Tax** total shows                                            |
| Pay online                         | There is no pay button and no payment step                                   |
| Mark as paid                       | Only your team records a payment                                             |
| Comment or dispute                 | There is no comment thread on an invoice                                     |

If you need a client to query an invoice, ask them to comment on a project deliverable, or reply to your email.

## Currency

The invoice shows the currency it was issued in. Amounts are formatted for the reader's own locale, so a client in Germany may see a different thousands separator than you do – but the number and the currency are identical.

Money is never recalculated in the client's browser. What they see is what you issued.

## Example

Daniel Okafor at Northwind Studio issues invoice `INV-0042` to Bluebird Coffee for the Website Redesign, in USD.

Ruth Castillo signs in and opens **Invoices**. She sees one row:

| Invoice  | Issued     | Total       | Status |
| -------- | ---------- | ----------- | ------ |
| INV-0042 | 1 Mar 2026 | \$12,000.00 | Sent   |

She clicks it and sees Northwind Studio's sender details, three lines, and the totals block. One line reads "Design – 30 – $100.00 – $3,000.00".

She cannot tell that those 30 hours came from Sarah Lin's tracked time. She cannot see Sarah's $45 cost rate, and she cannot see that the line carries $1,650 of margin.

## Permissions

| Action                      | Capability       | Roles that hold it by default          |
| --------------------------- | ---------------- | -------------------------------------- |
| Create and send invoices    | `invoice.manage` | Owner, Admin, Project Manager, Finance |
| Record a payment            | `payment.record` | Owner, Admin, Project Manager, Finance |
| Give a client portal access | `client.manage`  | Owner, Admin, Project Manager          |

A portal contact holds no capabilities. Their reach comes from their client company, not a permission.

## What happens when the Invoices app is off

The portal degrades quietly rather than breaking. The **Invoices** page shows **No invoices yet**, and a client who has an old invoice link cannot open it. The rest of the portal keeps working normally.

## Common questions

<AccordionGroup>
  <Accordion title="Can a client pay an invoice in the portal?">
    No. The portal invoice view is read-only. There is no payment button and no checkout step.
  </Accordion>

  <Accordion title="Can a client download a PDF?">
    Not yet. The button is there with the note `PDF download is coming soon – this is a live, shareable view of your invoice.`
  </Accordion>

  <Accordion title="Which invoices does a contact see?">
    Every invoice for any client that owns a project shared with them. They never see another company's invoices.
  </Accordion>

  <Accordion title="Does viewing in the portal mark the invoice as Viewed?">
    Invoices carry a **Viewed** status in the normal invoice lifecycle. See <a href="/invoicing/invoice-statuses">invoice statuses</a> for how that status is set.
  </Accordion>

  <Accordion title="Can I stop a client seeing a specific invoice?">
    Not per invoice. Reach is derived from the client company. Void an invoice you issued by mistake rather than trying to hide it.
  </Accordion>
</AccordionGroup>

## Troubleshooting

| Problem                                          | Cause                                                   | Fix                                                         |
| ------------------------------------------------ | ------------------------------------------------------- | ----------------------------------------------------------- |
| A client sees no invoices                        | The Invoices app is off, or none exist for their client | Turn the app on in **Settings → Apps**, or issue an invoice |
| A client sees a draft                            | Drafts are visible in the portal                        | Only create the invoice when you are ready                  |
| The download button does nothing                 | PDF download is not available yet                       | Send the PDF by email from your invoice screen              |
| A client asks about a line they do not recognise | Line origin is hidden by design                         | Explain it in a comment on the project                      |

## Related guides

<CardGroup cols={2}>
  <Card title="What clients can see" icon="eye" href="/portal/what-clients-can-see">
    Field by field, what reaches a client.
  </Card>

  <Card title="Invoice statuses" icon="tag" href="/invoicing/invoice-statuses">
    What each status means and how they move.
  </Card>

  <Card title="Send an invoice" icon="send" href="/invoicing/send-an-invoice">
    Issue an invoice to a client.
  </Card>

  <Card title="Record a payment" icon="dollar-sign" href="/invoicing/record-a-payment">
    Mark an invoice paid.
  </Card>

  <Card title="Client portal overview" icon="door-open" href="/portal/overview">
    How the portal is set up.
  </Card>

  <Card title="Portal permissions" icon="lock" href="/portal/portal-permissions">
    Who controls portal access.
  </Card>
</CardGroup>
