Skip to Content
Plataforma AdminTrilha de Auditoria

Trilha de Auditoria

A trilha de auditoria registra automaticamente toda acao relevante realizada no sistema. Cada criacao, edicao ou exclusao de dados gera um registro imutavel que pode ser consultado a qualquer momento para fins de compliance, investigacao e transparencia.


Por que Auditar?

A auditoria e essencial para:

  • Compliance — Atender requisitos de LGPD, GDPR e normas contabeis (IFRS, USALI)
  • Seguranca — Detectar acessos indevidos ou acoes suspeitas
  • Investigacao — Rastrear quem fez o que e quando em caso de incidentes
  • Transparencia — Dar visibilidade a gestores sobre acoes da equipe
  • Reversao — Entender o estado anterior de um registro antes de uma alteracao

O que e Registrado

Toda mutacao (criacao, atualizacao ou exclusao) em entidades de negocio gera um registro de auditoria. Alguns exemplos:

AcaoEntidadeExemplo
CREATEReserva”Usuario Maria criou a reserva #RES-2026-001847”
UPDATEHospede”Usuario Joao atualizou o telefone do hospede Carlos Silva”
DELETELancamento”Usuario Ana excluiu o lancamento contabil #LC-00412”
REVERSEMovimentacao”Usuario Pedro estornou a movimentacao de caixa #MV-00198”
READTenant (N2)“Superuser N2 acessou dados do tenant Hotel Solar”

Nota: Leituras normais (GET) nao sao registradas para evitar volume excessivo. A excecao sao acessos de suporte (N2), que registram toda leitura cross-tenant.


Campos do Registro

Cada entrada na trilha de auditoria contem:

CampoDescricaoExemplo
idIdentificador unico do registro (UUIDv7, ordenavel por tempo)019...abc
tenantIdTenant onde a acao ocorreu (nulo para acoes cross-tenant N2)tenant-uuid
tableNameNome da tabela/entidade afetadareservations
recordIdID do registro criado, editado ou excluidorecord-uuid
actionTipo da acaoCREATE, UPDATE, DELETE, REVERSE, READ
userIdID do usuario que realizou a acaouser-uuid
superuserLevelSe a acao foi de um superuser: n1 ou n2n1
originOrigem da acaoAPI, INTEGRATION, AUTOMATION, SYSTEM, SUPERUSER
oldValueEstado anterior do registro (para UPDATE e DELETE){ "status": "pending" }
newValueNovo estado do registro (para CREATE e UPDATE){ "status": "confirmed" }
ipAddressIP de origem da requisicao189.40.72.15
userAgentNavegador/cliente que realizou a acaoMozilla/5.0...
createdAtData/hora exata da acao2026-05-26T14:30:00Z

Protecao de Dados Pessoais (PII)

Os registros de auditoria nao armazenam dados pessoais em texto plano. Informacoes sensiveis como nomes, emails, telefones e documentos sao sanitizados antes de serem gravados:

Dado OriginalComo e Armazenado na Auditoria
maria.silva@email.comm***@email.com
CPF: 123.456.789-00CPF: ***.456.***-**
Tel: (21) 99999-1234Tel: (21) ****-1234
Numero do cartaoNunca registrado

Isso garante conformidade com LGPD/GDPR sem comprometer a utilidade da trilha para investigacoes.


Imutabilidade

Registros de auditoria sao imutaveis por design:

  • Nao podem ser editados, nem por administradores
  • Nao podem ser excluidos, nem por superusuarios N1
  • A tabela nao possui operacao UPDATE nem DELETE na API
  • IDs usam UUIDv7 (ordenados por tempo), garantindo sequenciamento

Importante: A imutabilidade da trilha de auditoria e uma garantia de compliance. Mesmo em caso de exclusao de dados do tenant (LGPD), os registros de auditoria sao retidos pelo periodo legal obrigatorio com dados pessoais anonimizados.


Como Consultar

Via Interface

  1. Acesse Configuracoes > Trilha de Auditoria (requer papel Admin)
  2. Use os filtros disponiveis:
FiltroDescricao
PeriodoData inicial e final
UsuarioQuem realizou a acao
EntidadeTabela afetada (reservas, hospedes, financeiro, etc.)
AcaoCREATE, UPDATE, DELETE, REVERSE
OrigemAPI, Interface, Integracao, Sistema
RegistroID especifico do registro afetado
  1. Clique em uma linha para expandir os detalhes (valores anteriores e novos)

Via API

GET /api/audit-logs?tableName=reservations&action=UPDATE&from=2026-05-01&to=2026-05-31 Authorization: Bearer <token>

Origens das Acoes

OrigemDescricao
APIAcao realizada via interface web (dashboard)
INTEGRATIONAcao originada por integracao via chave de API
AUTOMATIONAcao automatica do sistema (ex: no-show automatico, depreciacao programada)
SYSTEMOperacao interna do sistema (ex: seed de dados, migracoes)
SUPERUSERAcao de um superuser N1 ou N2

Casos de Uso Comuns

Quem cancelou uma reserva?

Filtre por tableName = reservations, action = UPDATE, e procure por registros onde newValue.status = "cancelled". O campo userId mostra quem fez a acao e createdAt mostra quando.

Quando um usuario foi alterado?

Filtre por tableName = users e recordId = &lt;id-do-usuario&gt;. A trilha mostra todas as alteracoes, incluindo mudanca de papel (role).

O suporte Opero acessou meus dados?

Filtre por origin = SUPERUSER. Toda acao de N1/N2 e registrada com o campo superuserLevel preenchido.

Rastrear alteracoes financeiras

Filtre por tableName em (accrual_entries, cash_movements, accounts_payable, etc.) para ver todas as operacoes financeiras e quem as realizou.


Retencao

Os registros de auditoria sao mantidos por 5 anos (configuravel por tenant para periodos maiores). Apos o periodo de retencao, registros antigos sao arquivados.


Permissoes

PapelAcesso a Trilha de Auditoria
Admin / Tenant AdminLeitura completa
FinanceiroLeitura de registros financeiros
OperacionalSem acesso
POS / FornecedoresSem acesso
Superuser N1Leitura completa (cross-tenant)
Superuser N2Leitura (se acesso de suporte aprovado)
Last updated on