Skip to main content
O PassengerBenefitRequest representa uma solicitação de elegibilidade feita por um passageiro para um FareBenefitProgram. A solicitação não é por empresa, exceto quando o próprio programa for comercial e pertencer a uma empresa.

Campos

CampoTipoDescrição
passengerBenefitRequestIdUUIDIdentificador único
customerIdUUIDCliente/passageiro solicitante
fareBenefitProgramIdUUIDPrograma de benefício solicitado
requestedByUserIdUUIDUsuário que abriu a solicitação
reviewedByUserIdUUID?Usuário que analisou a solicitação
codeStringCódigo legível da solicitação
notesString?Observações informadas pelo passageiro
rejectionReasonString?Motivo de rejeição, quando aplicável
statusPassengerBenefitRequestStatusStatus atual da solicitação
validFromDateTime?Início da validade do benefício aprovado
validUntilDateTime?Fim da validade do benefício aprovado
reviewedAtDateTime?Data de análise da solicitação
createdByUUID?Usuário que criou o registro, quando aplicável
createdAtDateTimeData de criação
updatedByUUID?Usuário que fez a última atualização, quando aplicável
updatedAtDateTimeData da última atualização
deletedByUUID?Usuário que removeu o registro, quando aplicável
deletedAtDateTime?Data de remoção lógica

Relacionamentos

Regras de Negócio

  • Uma solicitação só pode ser aprovada se os documentos obrigatórios da categoria estiverem aprovados.
  • O responsável pela análise é definido por reviewOwnerType do FareBenefitProgram.
  • Quando reviewOwnerType = PLATFORM, a análise é feita pelo BackOffice/plataforma.
  • Quando reviewOwnerType = COMPANY, a análise é feita pela empresa dona do programa.
  • rejectionReason é obrigatório quando status for REJECTED.
  • validFrom e validUntil definem a janela em que o benefício pode ser aplicado.
  • Um passageiro não deve ter duas solicitações aprovadas e ativas para o mesmo programa.
  • Solicitações APPROVED, REJECTED, CANCELED ou EXPIRED são terminais para o fluxo de análise.
  • requestedByUserId indica quem abriu a solicitação; createdBy, updatedBy e deletedBy registram a auditoria da mutação do registro.

Enums

PassengerBenefitRequestStatus

ValorDescrição
PENDINGSolicitação criada, aguardando documentos ou triagem
IN_REVIEWSolicitação em análise
APPROVEDSolicitação aprovada
REJECTEDSolicitação rejeitada
CANCELEDSolicitação cancelada pelo passageiro ou operador
EXPIREDBenefício aprovado expirou

Example

{
  "passengerBenefitRequestId": "0197f712-8a7e-7a53-9d28-51f8f3c77d41",
  "customerId": "0197a7f6-4d36-7c0a-a7cb-54fcb33a3148",
  "fareBenefitProgramId": "0197f711-bf5b-7b90-a45b-577e6269a061",
  "requestedByUserId": "0197a7f6-2c4d-74ae-b89b-9d36d9c341f2",
  "reviewedByUserId": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "code": "BEN-20260704-0001",
  "notes": "Solicitação de meia passagem estudantil",
  "rejectionReason": null,
  "status": "APPROVED",
  "validFrom": "2026-07-04T12:00:00.000Z",
  "validUntil": "2027-01-04T12:00:00.000Z",
  "reviewedAt": "2026-07-04T12:00:00.000Z",
  "createdBy": "0197a7f6-2c4d-74ae-b89b-9d36d9c341f2",
  "createdAt": "2026-07-04T11:30:00.000Z",
  "updatedBy": "0197a805-0910-7eb2-bae7-90a13df2a9b2",
  "updatedAt": "2026-07-04T12:00:00.000Z",
  "deletedBy": null,
  "deletedAt": null
}