1. Requisições de validação
| Field | Description | Used in |
|---|---|---|
| requestId | ID único gerado pelo cliente para idempotência e correlação de auditoria | Tracer |
| transactionType | Tipo de transação: CARD, WIRE, PIX ou CRYPTO | Tracer |
| subType | Subtipo de transação para contexto adicional (ex.: debit, credit) | Tracer |
| amount | Valor da transação em centavos (menor unidade da moeda, deve ser positivo) | Tracer |
| currency | Código de moeda ISO 4217 (3 letras maiúsculas) | Tracer |
| transactionTimestamp | Quando a transação ocorreu (formato RFC 3339 com fuso horário) | Tracer |
2. Respostas de validação
| Field | Description | Used in |
|---|---|---|
| validationId | Identificador único gerado pelo servidor para o registro de validação | Tracer |
| decision | Decisão de validação: ALLOW, DENY ou REVIEW | Tracer |
| reason | Razão legível da decisão | Tracer |
| matchedRuleIds | IDs das regras que coincidiram e dispararam a decisão | Tracer |
| evaluatedRuleIds | IDs de todas as regras que foram avaliadas | Tracer |
| processingTimeMs | Tempo de processamento em milissegundos | Tracer |
| totalRulesLoaded | Número total de regras carregadas para avaliação | Tracer |
| truncated | Se a resposta foi truncada por limites de tamanho | Tracer |
3. Regras
| Field | Description | Used in |
|---|---|---|
| ruleId | Identificador único da regra | Tracer |
| name | Nome legível da regra (globalmente único, máx. 255 caracteres) | Tracer |
| description | Propósito e explicação da lógica da regra (máx. 1000 caracteres) | Tracer |
| expression | Expressão CEL que deve avaliar para booleano (máx. 5000 caracteres) | Tracer |
| action | Ação executada quando a expressão avalia como true: ALLOW, DENY ou REVIEW | Tracer |
| scopes | Array de escopos que determinam a quais transações esta regra se aplica | Tracer |
| status | Status do ciclo de vida da regra: DRAFT, ACTIVE, INACTIVE ou DELETED | Tracer |
| activatedAt | Quando a regra foi ativada pela última vez (null se nunca ativada) | Tracer |
| deactivatedAt | Quando a regra foi desativada pela última vez (null se nunca desativada) | Tracer |
4. Limites de gastos
| Field | Description | Used in |
|---|---|---|
| limitId | Identificador único do limite | Tracer |
| name | Nome legível do limite (máx. 255 caracteres) | Tracer |
| description | Propósito e explicação de uso do limite (máx. 1000 caracteres) | Tracer |
| limitType | Tipo de limite: DAILY, WEEKLY, MONTHLY, CUSTOM ou PER_TRANSACTION (imutável após criação) | Tracer |
| maxAmount | Valor decimal máximo como string, por exemplo "1000.00" | Tracer |
| currency | Código de moeda ISO 4217 (imutável após criação) | Tracer |
| scopes | Array de escopos que determinam a quais transações este limite se aplica | Tracer |
| status | Status do ciclo de vida do limite: DRAFT, ACTIVE, INACTIVE ou DELETED | Tracer |
| activeTimeStart | Início da janela diária ativa no formato HH:mm | Tracer |
| activeTimeEnd | Fim da janela diária ativa no formato HH:mm | Tracer |
| customStartDate | Data/hora inicial para limites CUSTOM | Tracer |
| customEndDate | Data/hora final para limites CUSTOM | Tracer |
5. Uso de limites
| Field | Description | Used in |
|---|---|---|
| limitAmount | Valor total do limite em centavos | Tracer |
| currentUsage | Uso atual ou projetado após aplicar a transação | Tracer |
| exceeded | Se o limite foi excedido durante a validação | Tracer |
| period | Tipo de período do limite: DAILY, WEEKLY, MONTHLY, CUSTOM ou PER_TRANSACTION | Tracer |
| scope | Descrição legível do escopo (ex.: “account:uuid”, “segment:uuid”) | Tracer |
| attemptedAmount | Valor da transação sendo validada, em centavos | Tracer |
6. Escopos e direcionamento
| Field | Description | Used in |
|---|---|---|
| accountId | Identificador de conta para direcionamento de escopo | Tracer |
| segmentId | Identificador de segmento para direcionamento de escopo | Tracer |
| portfolioId | Identificador de portfólio para direcionamento de escopo | Tracer |
| merchantId | Identificador de comerciante para direcionamento de escopo | Tracer |
| transactionType | Filtro de tipo de transação: CARD, WIRE, PIX ou CRYPTO | Tracer |
| category | Código de categoria do comerciante (4 dígitos MCC conforme ISO 18245) | Tracer |
| country | País do comerciante (ISO 3166-1 alpha-2, 2 letras maiúsculas) | Tracer |

