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

# Log your time in Slack

> Choose how Invup asks for your hours, then log them with a form or by typing in a direct message.

Invup can ask for your hours in Slack once a day. You answer in one of two ways: a form with buttons, or a plain message that you type. Either way, your time lands in Invup as ordinary time entries.

> [!NOTE]
>
> Any team member linked to Slack can use this, as long as they are assigned to a project and are allowed to create time entries. Invup matches you to your Slack account by your Invup email. If Invup never replies to your messages, your account may not be linked, or Chat may not be available yet. Send `/invup`: if it is not linked, Slack says **Your Slack account isn't linked to Invup. Please ask your admin to connect you.** Admins set this up in [Set up Slack time logging](https://docs.invup.me/time-tracking/set-up-slack-time-logging.md). Permissions are explained in [Roles and permissions](https://docs.invup.me/setup/roles-and-permissions.md).

## Choose how Invup asks

**1. Open your preferences**

In any Slack conversation, send `/invup preferences`.

**2. Pick Chat, Form or Off**

Under **How should Invup ask?** choose **Chat (type your hours)**, **Form (buttons and a form)** or **Off**. Off means no daily message at all.

If you do not see Chat, the dialog tells you why, either **Chat is not available yet.** or **Chat needs a quick Slack reconnect by your admin.** Pass the message on to your admin, who can follow [Set up Slack time logging](https://docs.invup.me/time-tracking/set-up-slack-time-logging.md).

**3. Set your time and save**

Under **When?** pick any time, down to the minute, then select **Save**. Invup confirms with a message such as **Done. Chat at 5:15 PM, America/Toronto.**

The timezone is read from your Slack profile. There is no timezone to choose here. If Invup does not have it yet, the dialog says the times are in your organization's time zone.

### The first time

If Chat is available, your organization has daily prompts on, and you have not chosen yet, Invup sends you one message that asks **How would you like to log time?** with two buttons, **Chat** and **Form**. Select one and the message is replaced with a confirmation of your choice and time. Until you answer, you get the form.

You can change your mind at any time with `/invup preferences`.

## Form mode

In Form mode you get a message each working day with your projects, each with a button.

**1. Open the daily message**

Each project has a **Record Time** button, or **Add Time** once you have logged something that day. A project with services has a **Select service** menu instead. A locked project shows a locked button.

**2. Fill in the form**

Enter **Hours**, **Minutes** and an optional **Description**, then select **Submit**. Invup confirms what it logged.

**3. Add more for the same project**

You can log several entries for the same project on the same day. The dialog lists what is already logged above an **Add Another Entry** form.

**4. Edit or delete an entry**

Select **Edit** on an entry to change it and **Save**, or select **Delete Entry** and confirm. **Back to Entries** returns to the list. If you are not allowed to change entries, the button reads **View** or is missing.

## Chat mode

In Chat mode you get a message with a short template and answer it by typing. Chat mode is only offered when it is available for your organization.

**1. Read your template**

Each working day Invup sends a message with today's date, your clients as headings, and one line per project you are assigned to that is active that day. A project that has services gets one line per service. Each open line ends with a dash, ready for your time. The message ends with a reminder about the `[date]` line and a link to the dashboard.

A project you already logged against shows the total so far, and a locked project shows the date it is locked until.

**2. Reply with your hours**

Reply in the thread under today's daily message, or send Invup a new direct message. Write one line per project or service:

`Maintenance - 3:31 - what you did`

Blank lines are skipped. To log another day, put the date alone on a line, for example `[2026-10-14]`, and the lines under it use that day. Without a date, Invup uses the date of the daily message you replied under, or today. While a draft is open, lines without a date use that draft's date.

You can write time as `3:31`, `3h31`, `3h 31m`, `3.5h`, `2h` or `90m`. Keep each line under its client heading, because that helps Invup find the right project.

**3. Read the preview**

Invup reads your message and turns it into a draft for you to review. It reacts to your message with an hourglass, then posts a preview in the thread of today's daily message, or under your message if there is none. The notification for that reply reads **Draft ready to review.**

The preview groups your lines by client. Each line shows the project, the time and your description. Lines for another day start with the date. At the bottom it shows **Total to record**, and a **Record** button.

Nothing is recorded yet.

**4. Fix flagged lines**

A line Invup cannot record is flagged with its reason. Fix it by replying in the preview's thread, or by sending a new direct message the same day. Invup updates the same preview. You do not need to send everything again.

If no line can be recorded, there is no Record button. The preview says **Nothing here can be recorded yet. Reply here to fix the flagged lines.**

**5. Record**

Select **Record**, or reply with a keyword. Invup records the lines that are ready and replaces the preview with how many entries and how much time, followed by **See them in Invup**. That link opens the entries you just recorded.

### Why a line is flagged

Flagged lines look like `Project: reason`. This is what each reason means and how to fix it.

| Reason | What it means | How to fix it |
| - | - | - |
| `matches more than one project` | The name fits more than one of your projects. Invup lists the options and does not pick. | Reply with the full project name, or the client and project. |
| `no match` | No project you are assigned to fits the name. | Check the spelling and the client heading above the line, or ask to be assigned to the project. |
| `needs a service` | The project uses services and the line has no single matching service. | Reply with the service name. The options are listed. |
| `no duration` | The line has a description but no time. A project line left with no time and no description is skipped without a flag. | Reply with the time, for example `Maintenance - 2h`. |
| `locked for that date` | The project is locked, has not started or has ended for that date. | Use a different date, or ask an admin about the lock. |

A short part of a name is enough when it fits only one project. When it fits more than one, Invup flags the line instead of choosing.

### Record keywords

Instead of the button you can reply with one of these words. The list follows your Slack language, and the button always works.

| Slack language | Keywords |
| - | - |
| English | `record`, `yes`, `confirm`, `looks good`, `ok record` |
| French | `enregistrer`, `oui`, `confirmer`, `c'est bon`, `ok enregistrer` |

The whole message must be the keyword. Capital letters and punctuation do not matter. Anything else, such as `yes please`, is read as a correction to your hours.

### What Invup never does for you

* It never records anything until you select **Record** or send a keyword.
* It never invents a time. A line with a description but no time is flagged `no duration`. A project line left with no time and no description is skipped.
* It never picks between two projects that both fit. It flags the line and lists them.

When you record, Invup checks every line again against your current assignments, project dates and locks. A line that no longer passes is skipped and named with its reason, and the rest are recorded.

## Things worth knowing

* **Invup only reads direct messages to it.** Messages in channels are ignored. Editing a message you already sent does nothing, so send a new one.
* **While today's draft is open, a reply in its thread or a new direct message corrects or adds to it.** Invup updates the same preview. A reply in a different thread, or a message once the draft's day has passed, starts a new draft and replaces the open one.
* **One draft is open at a time.** It stays open until you record it, a new draft replaces it, or it expires after seven days without changes. When a new draft replaces an open one, the old preview changes to **Replaced by a newer draft. Nothing here was recorded.** If Invup cannot read a message, it says so and the draft closes. If you send a keyword when there is no open draft, Invup says **That draft is closed. Reply with your hours to start a new one.**
* **You must be in Chat mode.** If Chat is not available, Invup does not read your messages. Once it is, a message sent in Form or Off mode gets a pointer to `/invup preferences`. If Invup replies **Plain-text logging is not available right now.**, try again later.
* **Keep messages short and spaced out.** A message over 4000 characters is ignored with no reply. If you send many messages in a short time, some are ignored with no reply, so wait a minute. If you send a message while Invup is still reading the last one, it says **This draft is still being read. Try again in a moment.**
* **There is a daily limit on typed logging.** When you reach it, Invup replies **You've reached today's limit for typed logging. Try again tomorrow.** The same message appears if your whole organization reaches its own limit. The daily message and the Form still work.
* **Replies come in your Slack language,** English or French.
* **Your plan's time entry limit still applies.** The Free plan has a cap that resets each billing period. If recording would take your organization past it, nothing is recorded and Slack tells you. See [Choose your plan](https://docs.invup.me/setup/choose-your-plan.md).

## Next

> [card] [Set up Slack time logging](https://docs.invup.me/time-tracking/set-up-slack-time-logging.md)
>
> How admins connect Slack and set the schedule.

> [card] [Roles and permissions](https://docs.invup.me/setup/roles-and-permissions.md)
>
> What each role is allowed to do.

> [card] [Choose your plan](https://docs.invup.me/setup/choose-your-plan.md)
>
> Plan limits on time entries.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.