---
title: "Expenses"
description: "Utlägg och attester. Varje app är en modul i en gemensam datamodell."
canonical: "https://obop-platform.sliplane.app/sv/apps/expenses/"
lang: "sv"
---

# Expenses

## Vad den är till för

Employees file expense claims that move through draft, submitted, approved and paid. Paying needs its own permission and a human approval; receipts are referenced by note, not stored.

## Vad paketet gör och inte gör

Employee expense claims with a draft, submitted, approved and paid flow. Paying is a separate permission and needs a human approval; receipts are referenced by note, not stored.

## Modeller

### `expenses_expense`

An amount an employee spent for the business and wants reimbursed

Läsgrupp: `expenses.user`. Skrivgrupp: `expenses.user`.

| Fält | Typ | Dataklass | Personuppgift | Grupp | Agenter ser | Beskrivning |
|---|---|---|---|---|---|---|
| `description` | text | `none` | nej | `expenses.user` | i klartext | What the money was spent on |
| `employee` | text | `internal` | ja | `expenses.user` | maskerad | Name of the person claiming the expense |
| `spent_on` | date | `none` | nej | `expenses.user` | i klartext | Date of the purchase (YYYY-MM-DD) |
| `category` | select (travel, meals, lodging, supplies, software, other) | `none` | nej | `expenses.user` | i klartext | Expense category: travel, meals, lodging, supplies, software, other |
| `amount` | money | `financial` | ja | `expenses.user` | undanhållen | Amount owed to the employee (minor currency units, e.g. cents) |
| `currency` | text | `none` | nej | `expenses.user` | i klartext | ISO 4217 currency code, for example EUR |
| `receipt_note` | longtext | `none` | nej | `expenses.user` | i klartext | Where the receipt is kept and what it shows |
| `paid_on` | date | `financial` | ja | `expenses.finance` | undanhållen | Date the employee was reimbursed (YYYY-MM-DD) |
| `payment_reference` | text | `financial` | ja | `expenses.finance` | undanhållen | Bank transfer reference of the reimbursement |
| `state` | select (draft, submitted, approved, paid, refused) | `none` | nej | `expenses.user` | i klartext | Claim status: draft, submitted, approved, paid, refused |

## Arbetsflöden

### `expenses_expense`

| Åtgärd | Flyttar | Vem får köra den | Godkännande |
|---|---|---|---|
| `expenses_expense.submit` | state: draft → submitted | `expenses.user` | nej |
| `expenses_expense.approve` | state: submitted → approved | `expenses.manager` | nej |
| `expenses_expense.pay` | state: approved → paid | `expenses.finance` | ja |
| `expenses_expense.refuse` | state: submitted → refused | `expenses.manager` | nej |

## Behörighetsgrupper

Grupper som den här appen använder:

- `expenses.finance`
- `expenses.manager`
- `expenses.user`

## Steg som kräver godkännande

Steg som en agent bara kan föreslå:

- `expenses_expense.pay`

## Vad agenter kan och inte kan göra

En agent kan läsa, söka, skapa och uppdatera poster i den här appen, och köra de åtgärder som inte kräver godkännande, inom behörighetsgrupperna för sin token.

Den kan bara föreslå de här stegen, och en person måste godkänna dem: `expenses_expense.pay`, `expenses_expense.delete`.

Personuppgifter maskeras som platshållare: `expenses_expense.employee`.

De här fälten undanhålls helt från agenter: `expenses_expense.amount`, `expenses_expense.paid_on`, `expenses_expense.payment_reference`.

## Beroenden

Inga.

## Installera

Installera den från appen Customize (Marknadsplats), eller från kommandoraden:

```bash
obop modules install-from expenses
```

Kräver en databas och administratörsbehörighet.

## Bygg din egen

[Modulguiden visar hur appar som den här skrivs](/sv/docs/reference/module-manifest/)
