Skip to content
BrazID

CPF dossier for KYC and anti-money laundering

A single call queries the main public risk lists in parallel and returns a report with the individual's risk level: low, medium or high.

Available in the sandbox. Production release will be announced soon.

Dossier summary

PEP
No
Sanctions
None found
Slave labor
None found
Active debt
R$ 12,500.50
Low risk

What the dossier checks

Official public sources, queried at the same time and consolidated into a single report.

PEP and CGU sanctions
Politically exposed persons, unfit or suspended companies and people (CEIS), Anti-Corruption Law penalties (CNEP) and expulsions from the federal administration (CEAF).
TCU lists
People barred from public office, unfit bidders, accounts judged irregular and people with electoral implications.
Slave labor
The Ministry of Labor's Employers Registry (the "dirty list"), published twice a year.
Federal active debt
Debts registered with the PGFN, with the total amount, the number of records and the data reference date.
International sanctions
OFAC (US), UN and European Union lists, cross-checked by the holder's name.
Calculated risk level
Low, medium or high from the findings: a sanction or slave labor raises it to high; PEP and relevant debts raise it to medium.

How it works

  1. 1

    You send CPF, birth date and purpose

    The API validates the data, checks the balance and answers 202 with the dossie_id. Nothing is charged at this step.

  2. 2

    Sources answer in parallel

    All the lists are queried in the background. If one is unavailable, the dossier ends as failed and nothing is charged.

  3. 3

    You read the report

    Get the result by its dossie_id or receive a notice at your callback, with no personal data. The history stays in your account.

Open the dossier, read the result

The POST accepts the request and returns the dossie_id. The result comes through a GET or a callback.

Endpoint documentation

cURL POST /v1/dossie/cpf

1curl -X POST \2 'https://api.brazid.com/v1/dossie/cpf' \3 -H 'x-api-key: YOUR_API_KEY' \4 -H 'Content-Type: application/json' \5 -d '{"cpf":"111.444.777-35","description":"Prevenção à lavagem de dinheiro","birthdate":"1985-05-12"}'

Response

1{2 "success": true,3 "data": {4 "dossie_id": "dos_8f9a2b1c4d5e6f70",5 "status": "pending",6 "created_at": "2026-10-28T22:30:00.000Z",7 "query": {8 "cpf": "11144477735",9 "description": "Prevenção à lavagem de dinheiro"10 },11 "status_url": "/v1/dossie/cpf/dos_8f9a2b1c4d5e6f70"12 },13 "credits_remaining": 40014}

Dossier accepted. Read the result by its dossie_id.

What it costs

100 credits per completed dossier

Charged only once, when every source has answered. Failed dossiers are not charged.

Free sandbox

In the sandbox the dossier uses test CPFs in several scenarios (clean, PEP, sanction, slave labor, active debt and more), without debiting credits.

Same balance as the lookups

Plan credits work for CPF, CNPJ, batches and the dossier. You need a balance of 100 credits (or overage turned on) to open a dossier.

Where to use it

KYC and customer onboarding

Assess a person's risk before opening the account or granting higher limits.

Anti-money laundering (AML)

Record the purpose of each lookup and keep the history for audits.

Partner due diligence

Check partners, representatives and counterparties before signing a relevant contract.

Frequently asked questions

Is the dossier already live in production?

Not yet. It is available in the sandbox (api-sandbox.brazid.com), where you can integrate and test at no cost. In production the API answers 503 DOSSIER_UNAVAILABLE until release.

Do I have to send the birth date?

Yes. The dossier uses the same registry lookup as the CPF, which checks CPF and birth date together. The date is not returned in the response nor kept beyond processing.

Is the result an exact identification?

It depends on the source. CEIS, CNEP and the TCU lists match on the exact CPF. Some public bases only publish a partially masked CPF, or have no CPF at all (like the international sanctions); in those cases the match is by name and the report states it is an indication, not an exact identification.

How long is the data kept?

The full CPF, name and birth date are kept for 30 days; after that they are erased and the history keeps the masked CPF, the purpose, the risk and the findings. At the data subject's request the erasure is immediate.

How do I know the dossier has finished?

Poll GET /v1/dossie/cpf/{id} until the status changes, or provide an HTTPS callback_url and receive a signed notice with no personal data.

Reduce risk before closing a deal

Create your account and test the dossier in the sandbox with sample CPFs.

Available in the sandbox. Production release will be announced soon.