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

# Overview

> Mapa dos domains do DEVMOB e como eles se relacionam.

O DEVMOB é um sistema de gestão de transporte rodoviário de passageiros. A arquitetura está organizada em domains de negócio com responsabilidades bem definidas, além de capacidades de **Platform** transversais que dão suporte aos demais.

## Domains

<CardGroup cols={3}>
  <Card title="Identity" icon="user" href="/domain/identity/overview">
    Usuários, credenciais, autenticação e segurança. Quem é o usuário no sistema.
  </Card>

  <Card title="Tenant" icon="building" href="/domain/tenant/overview">
    Organizações, cooperativas, empresas, memberships e convites. Estrutura organizacional.
  </Card>

  <Card title="Authorization" icon="shield-halved" href="/domain/authorization/overview">
    RBAC com roles e permissions por organização. O que cada usuário pode fazer.
  </Card>

  <Card title="Fleet" icon="bus" href="/domain/fleet/overview">
    Frota de veículos, layout de assentos, categorias de assento e motoristas.
  </Card>

  <Card title="Operations" icon="route" href="/domain/operations/overview">
    Rotas, viagens, itinerários, disponibilidade de assentos e eventos operacionais.
  </Card>

  <Card title="Sales" icon="cart-shopping" href="/domain/sales/overview">
    Pedidos e passagens. O fluxo comercial de venda até a emissão da passagem.
  </Card>

  <Card title="Benefits" icon="tag" href="/domain/benefits/overview">
    Gratuidades e descontos tarifários: catálogo, programas, documentos e uso no pedido.
  </Card>

  <Card title="Credit Grant" icon="wallet" href="/domain/credit-grant/overview">
    Créditos internos concedidos por Company para uso de Customer na própria Company.
  </Card>

  <Card title="Promotion" icon="tags" href="/domain/promotion/overview">
    Promoções comerciais de Company com catálogo e regras fixas de validação.
  </Card>

  <Card title="Support" icon="headset" href="/domain/support/overview">
    Chamados, mensagens, anexos, atribuições e satisfação de atendimento.
  </Card>

  <Card title="Communication" icon="bell" href="/domain/communication/overview">
    Notificações persistidas para inbox e realtime dentro do produto.
  </Card>

  <Card title="Export" icon="file-export" href="/domain/data-transfer/overview">
    Exportação de dados por catálogo, job assíncrono e agendamento.
  </Card>

  <Card title="Billing" icon="money-bill-transfer" href="/domain/billing/overview">
    Pagamentos, recebíveis, contas bancárias e transferências.
  </Card>

  <Card title="Observability" icon="eye" href="/domain/observability/overview">
    Logs de auditoria para rastreabilidade.
  </Card>

  <Card title="Platform" icon="layer-group" href="/domain/platform/overview">
    Capacidades transversais: configuração global, armazenamento de arquivos e relatórios.
  </Card>
</CardGroup>

## Como os Domains se Relacionam

O fluxo principal do sistema segue esta sequência:

1. **Identity** define quem são os usuários (dados pessoais, credenciais).
2. **Tenant** organiza os usuários em organizações, cooperativas e empresas.
3. **Authorization** define o que cada usuário pode fazer dentro de cada organização.
4. **Fleet** permite que empresas cadastrem seus veículos, layouts de assento e motoristas.
5. **Operations** usa a frota para criar rotas e agendar viagens com paradas (TripStop) e itinerários compráveis.
6. **Sales** permite que empresas vendam passagens para os itinerários das viagens.
7. **Benefits**, **Promotion** e **Credit Grant** podem reduzir ou compor o valor pago no Order conforme suas regras.
8. **Billing** processa pagamentos, sincroniza recebíveis e registra transferências para contas bancárias das empresas. O gateway fee é recebido via webhook, não pré-configurado.
9. **Support**, **Communication** e **Export** cobrem atendimento, notificações persistidas e exportação operacional.

<Info>
  Cada domain possui suas próprias entidades, regras de negócio e invariantes. Operações críticas que cruzam domains devem preservar consistência entre os dados envolvidos. Eventos assíncronos são usados para efeitos complementares, como notificações e atualizações vindas de integrações externas.
</Info>
