---
title: "Sales"
description: "Offerter och ordrar. Varje app är en modul i en gemensam datamodell."
canonical: "https://obop.dev/sv/apps/sales/"
lang: "sv"
---

# Sales

## Vad den är till för

Write quotations for customers and turn them into confirmed orders. Orders point at a contact, carry a total and a currency, and confirmed orders are what Invoicing bills.

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

Quotations and confirmed orders for customers.

## Modeller

### `sale_order`

A quotation or confirmed order for a customer

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

| Fält | Typ | Dataklass | Personuppgift | Grupp | Agenter ser | Beskrivning |
|---|---|---|---|---|---|---|
| `party_id` | ref → party | `none` | nej | `sales.user` | i klartext | Customer party id |
| `state` | select (draft, confirmed, cancelled) | `none` | nej | `sales.user` | i klartext | Lifecycle: draft, confirmed or cancelled |
| `total_minor` | money | `none` | nej | `sales.user` | i klartext | Order total in minor units |
| `currency` | text | `none` | nej | `sales.user` | i klartext | ISO 4217 currency code |

## Arbetsflöden

### `sale_order`

| Åtgärd | Flyttar | Vem får köra den | Godkännande |
|---|---|---|---|
| `sale_order.confirm` | state: draft → confirmed | `sales.user` | nej |
| `sale_order.cancel` | state: * → cancelled | `sales.user` | nej |
| `sale_order.reset_to_draft` | state: cancelled → draft | `sales.user` | nej |

## Behörighetsgrupper

Grupper som den här appen använder:

- `sales.user`

## Steg som kräver godkännande

Inget steg i den här appen kräver godkännande, förutom att ta bort poster.

## 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: `sale_order.delete`.

## Beroenden

- `base`

## Installera

Inbyggd. Den finns i varje instans och kan inte tas bort.

## Bygg din egen

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