> ## 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.

# TripItinerary

> Pares de origem e destino compráveis dentro de uma viagem

## Campos

| Campo             | Tipo        | Descrição                                                 |
| ----------------- | ----------- | --------------------------------------------------------- |
| `tripItineraryId` | `UUID`      | Identificador único                                       |
| `tripId`          | `UUID`      | Referência à viagem                                       |
| `fromStopId`      | `UUID`      | Referência à parada de embarque relacionada a TripStop    |
| `toStopId`        | `UUID`      | Referência à parada de desembarque relacionada a TripStop |
| `price`           | `Int`       | Preço do trecho 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                                |
| `deletedBy`       | `UUID?`     | Usuário que removeu o registro, quando aplicável          |
| `deletedAt`       | `DateTime?` | Data de remoção                                           |

## Relacionamentos

* Relaciona-se com [Trip](/data-modelling/operations/trip)
* Relaciona-se com [TripStop](/data-modelling/operations/trip-stop) (como origem via `fromStopId`)
* Relaciona-se com [TripStop](/data-modelling/operations/trip-stop) (como destino via `toStopId`)
* Relaciona-se com múltiplos [Ticket](/data-modelling/sales/ticket)

## Regras de Negócio

* Representa um par O\&D (origem e destino) comprável dentro de uma viagem.
* Cada combinação de paradas é única dentro da viagem.
* Cada par possui precificação independente, armazenada em centavos.
* Os dados geográficos e temporais (nome, lat, lng, horários) são obtidos via referência ao TripStop.
* Os segmentos ocupados pelo itinerário são determinados pelo range de `stopOrder` entre as paradas referenciadas.

## Example

```json theme={null}
{
  "tripItineraryId": "0197a810-87ce-7b60-9d80-660d0ee1c413",
  "tripId": "0197a80f-2d8f-7710-b243-b67fb477a1c0",
  "fromStopId": "0197a810-1ec9-7a9a-9a41-df98334b870e",
  "toStopId": "0197a810-e7aa-7f22-8af0-af3419e88f26",
  "price": 8900,
  "createdBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "createdAt": "2026-07-03T15:32:00.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-03T15:32:00.000Z",
  "deletedBy": null,
  "deletedAt": null
}
```
