Validar FALHA por exceder o limite diário configurado pelo cliente
[JSR-LIMD-005] - Validar FALHA por exceder o limite diário configurado pelo cliente
Introdução
Este documento descreve as condições necessárias e o fluxo de status para reproduzir o cenário de erro VALOR_ACIMA_LIMITE (limite diário) no teste [JSR-LIMD-005].
Condições Necessárias
Valores Críticos
| Parâmetro | Valor | Observação |
|---|---|---|
| Limite de transação | R$ 1.943,00 | Definido na etapa 4 (Approve) |
| Limite diário | R$ 1.942,00 | Definido na etapa 4 (Approve) |
| Valor do pagamento PIX | R$ 1.942,22 | Deve ser exatamente esse valor para cair no mock do erro de limite diário excedido |
Status Necessários por Etapa
| Etapa | Requisição | Status Esperado | Observação |
|---|---|---|---|
| 1 | Get Application Token | - | Autenticação bem-sucedida |
| 2 | Enrollment Payment initiation | AWAITING_ACCOUNT_HOLDER_VALIDATION | Enrollment criado |
| 3 | Login | AWAITING_ACCOUNT_HOLDER_VALIDATION | Login bem-sucedido |
| 4 | Approve | AWAITING_ENROLLMENT | Limite diário definido: R$ 1.942,00 |
| 5 | Callback Payment Initiation | AWAITING_ENROLLMENT | Callback processado |
| 6 | fido-registration-options | - | Opções geradas |
| 7 | fido-registration | AUTHORISED | Enrollment autorizado |
| 8 | payment-initiation | AWAITING_AUTHORISATION | Payment criado |
| 9 | fido-sign-options | - | Opções de assinatura geradas |
| 10 | authorise | AUTHORISED | Payment autorizado |
| 11 | pix | 422 ERROR | Erro: VALOR_ACIMA_LIMITE |
Fluxo de Status
┌─────────────────────────────────────────────────────────────┐
│ 1. Enrollment Payment Initiation │
│ Status: AWAITING_ACCOUNT_HOLDER_VALIDATION │
└────────────────────┬────────────────────────────────────── ┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 2. Login + Approve │
│ Status: AWAITING_ENROLLMENT │
│ ⚠️ LIMITE DIÁRIO DEFINIDO: R$ 1.942,00 │
└────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 3. Callback + FIDO Registration │
│ Status: AUTHORISED │
│ ✅ Enrollment completo e autorizado │
└────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 4. Payment Initiation │
│ Status: AWAITING_AUTHORISATION │
│ Valor: R$ 1.942,22 ⚠️ │
└────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 5. FIDO Sign + Authorise │
│ Status: AUTHORISED │
│ ✅ Payment autorizado │
└────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 6. PIX - Processamento │
│ ❌ ERRO 422: VALOR_ACIMA_LIMITE │
│ "Daily limit exceeded 1942.22" │
└─────────────────────────────────────────────────────────────┘
Ponto Críticos
1. Definição do Limite ( Etapa 4 - Approve)
Na requisição Approve, é essencial definir o limite de transação:
{
"limits": {
"transactionLimit": "1943",
"dailyLimit": "1942"
}
}2. Valor do Pagamento (Etapa 8 - payment-initiation e Etapa 11 - pix)
O valor do pagamento deve ser exatamente R$ 1.942,22 e deve ser enviado o header "x-force-error":
headers: {
"x-force-error": true
}
body: {
...,
"payment": {
"amount": "1942.22", // ⚠️ Valor necessário para retornar o erro
"currency": "BRL"
}
}3. Momento do Erro
O erro não ocorre durante:
- Criação do payment-initiation
- Autorização do payment (fido-sign-options + authorise)
O erro ocorre apenas na etapa final:
- Processamento do PIX (etapa 11)
Validação do Erro
Resposta Esperada
{
"name": "MoleculerClientError",
"message": [
{
"code": "VALOR_ACIMA_LIMITE",
"title": "Valor acima do limite.",
"detail": "Daily limit exceeded 1942"
}
],
"code": 422
}Condições para Reproduzir
- ✅ Enrollment deve estar no status AUTHORISED
- ✅ Payment deve estar no status AUTHORISED
- ✅ Limite de transação deve ser 1943
- ✅ Limite diário de transação deve ser 1942
- ✅ Valor do pagamento deve ser exatamente 1942.22
- ✅ Todas as etapas anteriores devem ser executadas com sucesso
Observações Importantes
- O limite diário é validado apenas no momento do processamento do PIX
- O payment pode ser criado e autorizado mesmo com valor acima do limite
- A validação ocorre na camada de processamento de pagamento, não na autorização
- O erro retorna código HTTP 422 (Unprocessable Entity)
Updated 3 days ago