Validar SUCESSO no valor máximo dentro do permitido no vínculo do pix

[JSR-LIM-001] - Validar SUCESSO no valor máximo dentro do permitido no vínculo do pix.

Introdução

Este documento descreve as condições necessárias e o fluxo de status para validar sucesso com valor máximo permitido no teste [JSR-LIM-001].


Condições Necessárias

Valores Críticos

ParâmetroValorObservação
Limite de transaçãoR$ 500,00Definido na etapa 4 (Approve)
Valor do pagamento PIXR$ 500,00Deve ser o mesmo valor do limite

Status Necessários por Etapa


EtapaRequisiçãoStatus EsperadoObservação
1Get Application Token-Autenticação bem-sucedida
2Enrollment Payment initiationAWAITING_ACCOUNT_HOLDER_VALIDATIONEnrollment criado
3LoginAWAITING_ACCOUNT_HOLDER_VALIDATIONLogin bem-sucedido
4ApproveAWAITING_ENROLLMENTLimite definido: R$ 500,00
5Callback Payment InitiationAWAITING_ENROLLMENTCallback processado
6fido-registration-options-Opções geradas
7fido-registrationAUTHORISEDEnrollment autorizado
8payment-initiationAWAITING_AUTHORISATIONPayment criado
9fido-sign-options-Opções de assinatura geradas
10authoriseAUTHORISEDPayment autorizado
11pixCONSUMEDSucesso

Fluxo de Status

┌─────────────────────────────────────────────────────────────┐
│ 1. Enrollment Payment Initiation                            │
│    Status: AWAITING_ACCOUNT_HOLDER_VALIDATION               │
└────────────────────┬────────────────────────────────────── ┘
                     │
                     ▼
┌─────────────────────────────────────────────────────────────┐
│ 2. Login + Approve                                          │
│    Status: AWAITING_ENROLLMENT                              │
│    ⚠️ LIMITE DEFINIDO: R$ 500,00                           │
└────────────────────┬──────────────────────────────────────┘
                     │
                     ▼
┌─────────────────────────────────────────────────────────────┐
│ 3. Callback + FIDO Registration                             │
│    Status: AUTHORISED                                       │
│    ✅ Enrollment completo e autorizado                      │
└────────────────────┬──────────────────────────────────────┘
                     │
                     ▼
┌─────────────────────────────────────────────────────────────┐
│ 4. Payment Initiation                                       │
│    Status: AWAITING_AUTHORISATION                           │
│    Valor: R$ 500,00 ⚠️                                    │
└────────────────────┬──────────────────────────────────────┘
                     │
                     ▼
┌─────────────────────────────────────────────────────────────┐
│ 5. FIDO Sign + Authorise                                    │
│    Status: AUTHORISED                                       │
│    ✅ Payment autorizado                                    │
└────────────────────┬──────────────────────────────────────┘
                     │
                     ▼
┌─────────────────────────────────────────────────────────────┐
│ 6. PIX - Processamento                                      │
│    Status: CONSUMED                                         │
│    ✅ Pix realizado com sucesso                             │
└─────────────────────────────────────────────────────────────┘

Ponto Críticos

1. Definição do Limite ( Etapa 4 - Approve)

Na requisição Approve, é essencial definir o limite de transação:

{
    "limits": {
        "transactionLimit": "500"
    }
}

2. Valor do Pagamento (Etapa 8 - payment-initiation e Etapa 11 - pix)

O valor do pagamento deve ser o mesmo valor do limite:

{
    "payment": {
      "amount": "500.00", // ⚠️ Valor necessário para testar o limite
      "currency": "BRL"
    }
}

Validação do Sucesso

Resposta Esperada

{
    "brandId": "6908eea056020bf52a97653c",
    "redirectUrl": "http://localhost:8080/callback",
    "enrollment": {
        "rp": "pkhadson.github.io",
        "platform": "CROSS_PLATFORM",
        "enrollmentId": "69386b4552ebcf00112c50f8"
    },
    "tags": {
        "merchant": "8d75198a"
    },
    "data": {
        "loggedUser": {
            "document": {
                "identification": "98765432100",
                "rel": "CPF"
            }
        },
        "creditor": {
            "cpfCnpj": "58764789000137",
            "personType": "PESSOA_JURIDICA",
            "name": "Marco Antonio de Brito"
        },
        "payment": {
            "type": "PIX",
            "date": "2025-12-09",
            "currency": "BRL",
            "amount": "500.00",
            "details": {
                "localInstrument": "DICT",
                "proxy": "[email protected]",
                "creditorAccount": {
                    "accountType": "CACC",
                    "ispb": "12345678",
                    "issuer": "1774",
                    "number": "1234567890"
                }
            }
        },
        "remittanceInformation": ""
    },
    "applicationId": "6894fb85c8eb360011caf967",
    "journeySessionId": "69386dbb52ebcf00112c511c",
    "paymentInitiationApi": "PAYMENTS_V4",
    "tokenId": "69386dbb3e5f55001136342f",
    "createdAt": "2025-12-09T18:43:07.773Z",
    "updatedAt": "2025-12-09T18:43:45.375Z",
    "authorizationUrl": "https://api.opb.ca422f1m.dev.fsapps.app/orgs/visa/auth?client_id=uuTH8EZcRHQSbwmQ3WDDv&request_uri=urn%3Aietf%3Aparams%3Aoauth%3Arequest_uri%3A3OPAb7pHhV_ed6h6oDwOz",
    "ofConsentId": "69386dbd52ebcf00112c511f",
    "idempotencyKey": "e64e8e17-bbc4-4529-bf1f-3a61a8442190",
    "id": "69386dbb52ebcf00112c511d",
    "ofConsent": {
        "paymentInitiationId": "69386dbb52ebcf00112c511d",
        "consentId": "urn:visahml:3533c3ff-b83d-41db-8f59-4311ab16a61f",
        "organization_id": "c55ceb2e-c9fb-4989-8ed1-39208d6d7951",
        "brand_id": "cf4412a8-5b91-4e72-bf70-87b7e07d1344",
        "authorization_url": "https://api.opb.ca422f1m.dev.fsapps.app/orgs/visa/auth?client_id=uuTH8EZcRHQSbwmQ3WDDv&request_uri=urn%3Aietf%3Aparams%3Aoauth%3Arequest_uri%3A3OPAb7pHhV_ed6h6oDwOz",
        "consent_id": "urn:visahml:3533c3ff-b83d-41db-8f59-4311ab16a61f",
        "code_verifier": "lZgR4MBhMRm4O9l9V8cg19JweEJRJkc-PmJPpqZ5WH4",
        "nonce": "X2nSWElIElYop7uoOugNEQAtf8dTzsjXehNJTG9e4GM",
        "state": "69386dbb52ebcf00112c511d",
        "redirect_uri": "https://api-sandbox-wl.openkeys.dev.keys.fsapps.io/callback",
        "scope": "openid consent:urn:visahml:3533c3ff-b83d-41db-8f59-4311ab16a61f payments",
        "consentTerm": 0,
        "consentTermUnit": "M",
        "creationDateTime": "2025-12-09T18:43:08.000Z",
        "creditor": {
            "personType": "PESSOA_JURIDICA",
            "cpfCnpj": "58764789000137",
            "name": "Marco Antonio de Brito"
        },
        "events": [
            {
                "date": "2025-12-09T18:43:08.000Z",
                "event": "AWAITING_AUTHORISATION"
            },
            {
                "date": "2025-12-09T18:43:09.377Z",
                "event": "REDIRECTED"
            },
            {
                "date": "2025-12-09T18:43:35.972Z",
                "event": "AUTHORISED"
            }
        ],
        "expirationDateTime": "2025-12-09T19:43:35.972Z",
        "journey": [],
        "kind": "PAYMENT",
        "loggedUser": {
            "document": {
                "identification": "98765432100",
                "rel": "CPF"
            }
        },
        "nfc": false,
        "organizationLogo": "https://www.celcoin.com.br/img/rede-celcoin-logo.svg",
        "organizationName": "Mock Bank Visa Conecta",
        "ownerBrandId": "cf4412a8-5b91-4e72-bf70-87b7e07d1344",
        "ownerId": "c55ceb2e-c9fb-4989-8ed1-39208d6d7951",
        "payment": {
            "type": "PIX",
            "date": "2025-12-09",
            "currency": "BRL",
            "amount": "500.00",
            "details": {
                "localInstrument": "DICT",
                "proxy": "[email protected]",
                "creditorAccount": {
                    "ispb": "12345678",
                    "issuer": "1774",
                    "number": "1234567890",
                    "accountType": "CACC"
                }
            }
        },
        "status": "AUTHORISED",
        "statusUpdateDateTime": "2025-12-09T18:43:35.972Z",
        "transactions": [],
        "id": "69386dbd52ebcf00112c511f"
    },
    "ofPayments": [
        {
            "paymentInitiationId": "69386dbb52ebcf00112c511d",
            "consentId": "urn:visahml:3533c3ff-b83d-41db-8f59-4311ab16a61f",
            "localInstrument": "DICT",
            "payment": {
                "amount": "500.00",
                "currency": "BRL"
            },
            "creditorAccount": {
                "number": "1234567890",
                "accountType": "CACC",
                "ispb": "12345678",
                "issuer": "1774"
            },
            "cnpjInitiator": "13935893000109",
            "proxy": "[email protected]",
            "endToEndId": "E139358932025120918124LTvop2DsrC",
            "authorisationFlow": "FIDO_FLOW",
            "creationDateTime": "2025-12-09T18:43:47Z",
            "debtorAccount": {
                "ispb": "12345678",
                "issuer": "0001",
                "number": "969139",
                "accountType": "CACC"
            },
            "paymentId": "f56689b8-4455-47e0-b07c-49913c681ccd",
            "status": "RCVD",
            "statusUpdateDateTime": "2025-12-09T18:43:47Z",
            "id": "69386de152ebcf00112c5124"
        }
    ]
}

Condições para Reproduzir

  1. Enrollment deve estar no status AUTHORISED
  2. ✅ _Payment _ deve estar no status AUTHORISED
  3. ✅ Limite de transação deve ser 500
  4. ✅ Valor do pagamento deve ser exatamente 500.00
  5. ✅ Todas as etapas anteriores devem ser executadas com sucesso