Serasa: Consulta CPF e Score icon

Serasa CPF score and Limpa Nome APIs

Serasa Experian · Lending

Serasa: Consulta CPF e Score is Serasa Experian's Brazil consumer-bureau app for CPF lookup, Serasa Score, Limpa Nome debt negotiation, credit monitoring, a Pix wallet and bills-to-pay, score lock/unlock, and Serasa Extract (the LGPD personal-data report). The Android home surfaces the score card, lock-unlock, debts to settle, credit-area offers, wallet/Pix keys, dark-web alerts and the extract request. It competes with Boa Vista SCPC, Quod and the score widgets inside Nubank, Itaú, Santander and Caixa apps for Brazilians who want a bureau score and a place to settle overdue debts without calling each creditor. Sign-in uses the CPF with a password or a stored biometric login, with optional remember-me.

Bureau score readings land in score as a numeric value with a status label, and the lock-status payload pairs that number with isPremium and autoLockUnlock, whose isLocked flag says whether the consumer has hidden the score from lenders. Limpa Nome debt offers carry offerId, contractHash, debtType, discountPercentage and discountValue; offer details add debtOrigin and companyInformation, and settled deals reappear as agreementId with agreementStatus. The bureau summary buckets negativatedDebts, bankruptcies, badChecks, protests and lawSuits, each debt keyed by contractNumber, occurrenceDate and value, and the whole report is stamped with an authenticityCode. CPF identity is cpf, ppid, birthDate and cellphone; wallet cash is balance.total beside Pix hasKeys and transactionsByMonth. Monitoring adds alertSend, the watched companies items and a dark-web status card, while the credit area mints a redirectUrl that hands the signed-in consumer to a partner checkout.

Collection desks, credit-marketplace partners, debt-settlement ERPs and identity-monitoring stacks consume these fields to pause underwriting on a locked score, reconcile instalments against creditor ledgers and flag new bureau or dark-web hits the same day. openData Studio turns them into callable open data.

Screenshots

  • Serasa: Consulta CPF e Score screenshot 1
  • Serasa: Consulta CPF e Score screenshot 2
  • Serasa: Consulta CPF e Score screenshot 3
  • Serasa: Consulta CPF e Score screenshot 4
  • Serasa: Consulta CPF e Score screenshot 5
  • Serasa: Consulta CPF e Score screenshot 6

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • Mint biometric login token

    POST /v1/consumer/auth/biometric-exchange osint

    Exchanges the CPF plus a stored biometricToken (or password) for the token, sessionToken and utToken used as Bearer credentials on later consumer calls.

    Auth: Unauthenticated JSON body. The returned token, sessionToken and utToken become the Bearer credential on later consumer calls.

    • cpf
    • isRemember
    • password
    • biometricToken
    • prefSe
    • prefSe2
    • event
    • requestToken
    • id
    • otp
    • token
    • utToken
    • validAt
    • sessionToken
    • persistentToken
    • name
    • email
    • cellphone
    • loa
    • status
    • type
    • needsReconfirm
    • tokenEligible
    • userData
    POST /v1/consumer/auth/biometric-exchange HTTP/1.1
    Content-Type: application/json
    
    {
      "cpf": "12345678901",
      "isRemember": true,
      "password": null,
      "biometricToken": "<biometric-token>",
      "prefSe": "android",
      "prefSe2": "9.100.1",
      "event": "login",
      "requestToken": "<request-token>"
    }
    {
      "id": "usr-4412",
      "otp": false,
      "token": "<jwt>",
      "utToken": "ut_7c2a",
      "validAt": "2026-10-17T18:30:00Z",
      "sessionToken": "sess_aa11",
      "persistentToken": "pt_bb22",
      "cpf": "12345678901",
      "name": "Maria Silva",
      "email": "[email protected]",
      "cellphone": "11987654321",
      "loa": 2,
      "status": "ACTIVE",
      "type": "PF",
      "needsReconfirm": false,
      "tokenEligible": true,
      "userData": {
        "id": "usr-4412"
      }
    }
  • Read signed-in session

    GET /v1/consumer/identity/current osint

    Returns the signed-in identity (id, cpf, name, email, cellphone, birth_date) for the current token.

    Auth: Bearer token from the sign-in exchange.

    • id
    • email
    • cellphone
    • cpf
    • name
    • birth_date
    • accepted_terms
    • cellphone_verified_at
    GET /v1/consumer/identity/current HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "id": "usr-4412",
      "email": "[email protected]",
      "cellphone": "11987654321",
      "cpf": "12345678901",
      "name": "Maria Silva",
      "birth_date": "1990-03-12",
      "accepted_terms": "2026-01-15T12:00:00Z",
      "cellphone_verified_at": "2026-02-01T09:14:00Z"
    }
  • Retrieve consumer profile

    GET /v1/consumer/identity/profile osint

    Loads the consumer profile after sign-in: identity (id, ppid, cpf, name, email, cellphone) plus loa, sessionId and the ewallet and bills-to-pay opt-in flags.

    Auth: Bearer token from the sign-in exchange.

    • id
    • ppid
    • cpf
    • name
    • firstName
    • initials
    • email
    • cellphone
    • birthDate
    • loa
    • sessionId
    • token
    • transactionId
    • billsToPayUserOptIn
    • billsToPayDdaAuthorizePartner
    • ewallet
    • picture
    • kba
    • subscription
    • settings
    GET /v1/consumer/identity/profile HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "id": "usr-4412",
      "ppid": "pp-10028441",
      "cpf": "12345678901",
      "name": "Maria Silva",
      "firstName": "Maria",
      "initials": "MS",
      "email": "[email protected]",
      "cellphone": "11987654321",
      "birthDate": "1990-03-12",
      "loa": 2,
      "sessionId": "sess_aa11",
      "token": "<jwt>",
      "transactionId": "txn-7c2a",
      "billsToPayUserOptIn": true,
      "billsToPayDdaAuthorizePartner": false,
      "ewallet": {
        "enabled": true
      }
    }
  • Score lock-unlock resume

    GET /v1/consumer/score/lock-status openfinance

    Returns the score-lock home: the score value with its status label, isPremium, autoLockUnlock.isLocked and the vipCard block.

    Auth: Bearer token from the sign-in exchange.

    • title
    • isPremium
    • score
    • value
    • status
    • details
    • autoLockUnlock
    • isLocked
    • icon
    • description
    • processingIcon
    • processingDescription
    • faqResume
    • vipCard
    GET /v1/consumer/score/lock-status HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "title": "Serasa Score",
      "isPremium": false,
      "score": {
        "value": 734,
        "status": {
          "label": "GOOD"
        },
        "details": {
          "model": "serasa-score"
        }
      },
      "status": {
        "label": "UNLOCKED"
      },
      "autoLockUnlock": {
        "icon": "lock",
        "isLocked": false,
        "description": "Score visivel para o mercado",
        "processingIcon": "hourglass",
        "processingDescription": "Atualizando"
      },
      "faqResume": {
        "items": []
      },
      "vipCard": {
        "visible": false
      }
    }
  • Wallet resume

    GET /v1/consumer/wallet/summary openbanking

    Reads the in-app wallet home: balance.total and the saved creditCards.

    Auth: Bearer token from the sign-in exchange.

    • balance
    • total
    • creditCards
    GET /v1/consumer/wallet/summary HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "balance": {
        "total": 128.45
      },
      "creditCards": {
        "items": [
          {
            "idCreditCard": "cc-4412",
            "brand": "mastercard"
          }
        ]
      }
    }
  • List Pix keys

    GET /v1/consumer/wallet/pix-keys openbanking

    Lists the registered Pix keys as hasKeys plus each key's id and key value.

    Auth: Bearer token from the sign-in exchange.

    • hasKeys
    • key
    • id
    GET /v1/consumer/wallet/pix-keys HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "hasKeys": true,
      "key": {
        "id": "pix-7c2a",
        "key": "12345678901"
      }
    }
  • Pix cash-in extract

    GET /v1/consumer/wallet/pix-ledger openbanking

    Returns the Pix cash-in ledger as transactionsByMonth plus the running balance.

    Auth: Bearer token from the sign-in exchange.

    • transactionsByMonth
    • balance
    GET /v1/consumer/wallet/pix-ledger HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "balance": 128.45,
      "transactionsByMonth": [
        {
          "month": "2026-10",
          "items": [
            {
              "amount": 50.0,
              "type": "CASHIN"
            }
          ]
        }
      ]
    }
  • List Limpa Nome debt offers

    GET /v1/consumer/debt-offers openfinance

    Lists Limpa Nome offer rows with offerId, contractHash and the card's discountPercentage, discountValue and debtType.

    Auth: Bearer token from the sign-in exchange. Optional query selects the offer context.

    • message
    • status
    • data
    • offers
    • offerId
    • contractHash
    • card
    • tags
    • debtType
    • offerType
    • hasInstallments
    • discountPercentage
    • discountValue
    • isCart
    • isEligibleCart
    • recommended
    • footer
    • consolidationCard
    • cartDataOffersResponse
    • otherOffersResponse
    GET /v1/consumer/debt-offers HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "message": "OK",
      "status": 200,
      "data": {
        "offers": [
          {
            "offerId": "off-9c10",
            "contractHash": "ch_aa11",
            "card": {
              "tags": ["discount"],
              "debtType": "NEGATIVATED",
              "offerType": "INSTALLMENT",
              "hasInstallments": true,
              "discountPercentage": 40.0,
              "discountValue": 800.0,
              "isCart": false,
              "isEligibleCart": true
            }
          }
        ],
        "recommended": [],
        "footer": {},
        "consolidationCard": {},
        "cartDataOffersResponse": {},
        "otherOffersResponse": {}
      }
    }
  • Debt offer details

    GET /v1/consumer/debt-offers/{offerId} openfinance

    Loads one debt offer by offerId: id, debtType, offerType, debtOrigin and the creditor's companyInformation (partner, title).

    Auth: Bearer token from the sign-in exchange.

    • message
    • status
    • data
    • id
    • header
    • debtType
    • offerType
    • debtOrigin
    • companyInformation
    • title
    • subtitle
    • debtDisclaimer
    • partner
    • details
    GET /v1/consumer/debt-offers/off-9c10 HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "message": "OK",
      "status": 200,
      "data": {
        "id": "off-9c10",
        "header": "Negocie com o credor",
        "debtType": "NEGATIVATED",
        "offerType": "INSTALLMENT",
        "debtOrigin": "SPC",
        "companyInformation": {
          "title": "Loja Exemplo",
          "subtitle": "CNPJ 00.000.000/0001-00",
          "debtDisclaimer": "Valores sujeitos a atualizacao",
          "partner": "lno",
          "details": []
        }
      }
    }
  • List debt agreements

    GET /v1/consumer/debt-agreements openfinance

    Returns agreement sections with agreementId, cartId, consolidationId and agreementStatus for settled Limpa Nome deals.

    Auth: Bearer token from the sign-in exchange.

    • message
    • status
    • data
    • emptyState
    • agreementList
    • section
    • title
    • description
    • list
    • agreementId
    • cartId
    • consolidationId
    • image
    • agreementStatus
    GET /v1/consumer/debt-agreements HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "message": "OK",
      "status": 200,
      "data": {
        "emptyState": null,
        "agreementList": [
          {
            "section": "ACTIVE",
            "title": "Acordos vigentes",
            "description": "Parcelas em dia",
            "list": [
              {
                "agreementId": "agr-4412",
                "cartId": null,
                "consolidationId": null,
                "image": "https://cdn.example/partner.png",
                "description": "Loja Exemplo",
                "agreementStatus": "ACTIVE"
              }
            ]
          }
        ]
      }
    }
  • Serasa Extract report

    GET /v1/consumer/reports/personal-data openfinance

    Loads the personal-data report home: userBlocked, subscriberBox and the per-section cards.

    Auth: Bearer token from the sign-in exchange.

    • userBlocked
    • cards
    • subscriberBox
    • error
    • key
    • icon
    • title
    • description
    • observation
    GET /v1/consumer/reports/personal-data HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "userBlocked": false,
      "subscriberBox": {
        "visible": true
      },
      "cards": [
        {
          "error": false,
          "key": "debts",
          "icon": "alert",
          "title": "Dividas negativadas",
          "description": "2 ocorrencias",
          "observation": "Atualizado hoje"
        }
      ]
    }
  • Bureau document resume

    GET /v1/consumer/reports/bureau-summary openfinance

    Returns the bureau summary: authenticityCode plus negativatedDebts (companyName, contractNumber, occurrenceDate, value) alongside bankruptcies, badChecks, protests and lawSuits.

    Auth: Bearer token from the sign-in exchange.

    • subscription
    • authenticityCode
    • report
    • generationDate
    • negativatedDebts
    • bankruptcies
    • badChecks
    • protests
    • lawSuits
    • companyName
    • document
    • debts
    • availabilityDate
    • date
    • occurrenceDate
    • value
    • contractNumber
    • source
    GET /v1/consumer/reports/bureau-summary HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "subscription": {
        "active": true
      },
      "authenticityCode": "auth-7c2a",
      "report": {
        "generationDate": "2026-10-17T12:00:00Z",
        "negativatedDebts": {
          "items": [
            {
              "companyName": "Loja Exemplo",
              "document": "00000000000100",
              "debts": [
                {
                  "availabilityDate": "2026-09-01",
                  "date": "2026-08-15",
                  "occurrenceDate": "2026-08-10",
                  "value": 1999.9,
                  "contractNumber": "CT-9981",
                  "source": "SPC"
                }
              ]
            }
          ]
        },
        "bankruptcies": {"items": []},
        "badChecks": {"items": []},
        "protests": {"items": []},
        "lawSuits": {"items": []}
      }
    }
  • Dark-web monitoring card

    GET /v1/consumer/monitoring/breach-watch osint

    Loads the premium dark-web watch screen: title, description, the status card (icon, title, description) and info.

    Auth: Bearer token from the sign-in exchange.

    • title
    • description
    • card
    • icon
    • info
    GET /v1/consumer/monitoring/breach-watch HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "title": "Monitoramento Dark Web",
      "description": "Seus dados na dark web",
      "card": {
        "icon": "shield",
        "title": "Nenhum vazamento novo",
        "description": "Ultima varredura hoje"
      },
      "info": {
        "hint": "Adicione e-mail e celular"
      }
    }
  • Monitoring alerts

    GET /v1/consumer/monitoring/alert-settings osint

    Returns the CPF monitoring alert settings: alertSend, info and the monitored companies.

    Auth: Bearer token from the sign-in exchange.

    • alertSend
    • info
    • companies
    GET /v1/consumer/monitoring/alert-settings HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "alertSend": {
        "enabled": true
      },
      "info": {
        "title": "Alertas do CPF"
      },
      "companies": {
        "items": [
          {
            "name": "Loja Exemplo",
            "document": "00000000000100"
          }
        ]
      }
    }
  • Credit-area redirect token

    GET /v1/consumer/credit-offers/handoff openfinance

    Mints a redirectUrl so the credit-area marketplace can hand the signed-in consumer to a partner checkout.

    Auth: Bearer token from the sign-in exchange. Query carries the credit-area order identifier.

    • redirectUrl
    GET /v1/consumer/credit-offers/handoff?orderId=ord-8f21 HTTP/1.1
    Authorization: Bearer <access-token>
    {
      "data": {
        "redirectUrl": "https://credito.example/checkout?tok=rt_9c10"
      }
    }

Data categories

  • CPF identity
  • session tokens
  • credit score
  • score lock-unlock
  • Limpa Nome offers
  • debt agreements
  • Pix keys
  • wallet balance
  • bureau extract
  • negativated debts
  • dark-web monitoring
  • credit marketplace

Where teams use this data

  • Bureau score lock monitoring

    A lender or collection desk polls score value, isPremium and autoLockUnlock.isLocked so underwriting pauses when the consumer has locked Serasa Score from the market.

  • Limpa Nome offer reconciliation

    A debt-marketplace or ERP matches offerId, discountPercentage, discountValue, agreementId and agreementStatus against creditor ledgers so settled negativated debts drop the same day the instalment posts.

  • Pix wallet treasury

    A payments ops bot reads WalletResponse.balance.total, PixKeysResponse.key and PixExtractResponse.transactionsByMonth to reconcile cash-in against Limpa Nome Pix checkout.

  • CPF leak and protest watch

    An identity-risk stack joins MonitoringResponse.companies and DarkWebMonitoringResponse.card with SAFReportResponse.negativatedDebts, protests and contractNumber so a new bureau hit or dark-web card fires the same day.

Frequently asked questions

Which identity fields does a Serasa session return?

After CPF sign-in the identity payloads expose id, ppid, cpf, name, email, cellphone, birthDate, loa and sessionId, plus token / sessionToken / utToken for later calls.

What sits on a Limpa Nome debt offer?

Each offer row has offerId and contractHash; its card carries debtType, offerType, hasInstallments, discountPercentage, discountValue and cart eligibility. Details add companyInformation.partner and debtOrigin. Settled deals appear under agreementId and agreementStatus.

How is Serasa Score lock represented?

The lock-status payload returns the score value with its status label, isPremium and autoLockUnlock.isLocked, plus a vipCard block and faqResume items for the lock screen.

What does the bureau report include?

The personal-data report home returns keyed section cards (userBlocked, subscriberBox). The bureau summary adds authenticityCode and the buckets negativatedDebts, bankruptcies, badChecks, protests and lawSuits, each debt with contractNumber, occurrenceDate, value and source.

Apps similar to Serasa: Consulta CPF e Score

  • SPC Consumidor — SPC Consumidor is SPC Brasil's official app: it shows a free SPC Score and whether the CPF has pending records on SPC Brasil's separate bureau file.
  • Acordo Certo — Acordo Certo is Consumidor Positivo's debt-settlement app in the Equifax Boa Vista group: check a CPF for free, see which debts are hitting the score, and negotiate with partner banks in one login.
  • Consumidor Positivo — Equifax BoaVista's Consumidor Positivo portal is the consumer side of the SCPC bureau, for a free CPF consult and a Score that uses Cadastro Positivo, debt history and time on credit.
  • Quod — Quod is a Brazilian credit bureau whose Cadastro Positivo file yields a Quod Score from 300 to 1,000; consumers can check the score and registry for free after registering on Quod's consumer site.
  • Nubank — Nubank's NuScore (0–1,000) rates card use, saving habits and indebtedness inside Nubank; the result does not change bureau scores such as Serasa's.
  • Registrato — Registrato is Banco Central do Brasil's CPF report of active bank accounts, Pix keys and SCR debts; it lists credit relationships and does not produce a score.

Topics

  • serasa api
  • serasa score
  • limpa nome
  • cpf consulta
  • pix wallet serasa
  • serasa extract
  • dark web monitoring
  • negativated debts

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote