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

# Checkout

> Agrupador comercial de uma compra que pode gerar pedidos por empresa

## Campos

| Campo        | Tipo       | Descrição                                              |
| ------------ | ---------- | ------------------------------------------------------ |
| `checkoutId` | `UUID`     | Identificador único                                    |
| `customerId` | `UUID`     | Referência ao cliente comprador                        |
| `code`       | `String`   | Código legível único do checkout                       |
| `amount`     | `Int`      | Valor total do checkout em centavos                    |
| `createdBy`  | `UUID?`    | Usuário que criou o registro, quando aplicável         |
| `createdAt`  | `DateTime` | Data de criação                                        |
| `updatedBy`  | `UUID?`    | Usuário que fez a última atualização, quando aplicável |
| `updatedAt`  | `DateTime` | Data da última atualização                             |

## Relacionamentos

* Relaciona-se com Customer
* Relaciona-se com múltiplos [Order](/data-modelling/sales/order)
* Relaciona-se indiretamente com múltiplos [TripReview](/data-modelling/operations/trip-review) por meio dos Orders

## Regras de Negócio

* Agrupa a compra do cliente antes da separação por empresa.
* Um checkout pode gerar um ou mais Orders.
* Cada Order pertence a uma única empresa; o checkout soma os Orders gerados.
* Um checkout pode acumular múltiplos TripReviews indiretamente, um para cada Trip avaliada.
* O checkout não recebe avaliação direta; a avaliação pertence à Trip comprada no Order.
* O `amount` do checkout é a soma dos `amount` dos Orders.
* O campo `code` identifica a compra de forma legível.

## Example

```json theme={null}
{
  "checkoutId": "0197a812-b835-79c4-8f0b-0e3863eb6d34",
  "customerId": "0197a7f6-4d36-7c0a-a7cb-54fcb33a3148",
  "code": "OAB-CHK-20260703-0001",
  "amount": 28900,
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-03T16:00:00.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-03T16:00:00.000Z"
}
```
