Os preços desta página são de tabela, sem assinatura — plano reduz o valor por consulta, e fonte de repasse cobra o emolumento da UF do alvo. O número que vale é o do POST /v1/orcamento/visualizacao-matricula, calculado sobre o alvo real e sem cobrar.
Operador Nacional do Sistema de Registro Eletrônico de Imóveis (ONR)
Visualização de Matrícula
O inteiro conteúdo de uma matrícula de imóvel, direto do registro de imóveis, em minutos.
Site oficial da fonte ↗/v1/consultas/visualizacao-matricula
v1
Tempo típico
não medido
A partir de
R$ 12,84
por consulta, varia por UF
Visão geral
Devolve o conteúdo da matrícula do imóvel no registro de imóveis: quem é o titular, os ônus e gravames averbados, penhoras, hipotecas, área, confrontações e a cadeia de atos. É o documento que responde "o que está registrado sobre este imóvel".
Atenção: É fonte de DADO, não certidão. O PDF sai do sistema do cartório, mas **não tem fé pública nem validade declarada** — não é oponível a terceiros e não serve para instruir processo ou fechar negócio. Serve para due diligence, análise e decisão. Quem tem fé pública é a Certidão de Inteiro Teor, que é outro produto, mais caro e mais lento.
O endereçamento é pelo IMÓVEL, não pela pessoa: matrícula + cartório + município + UF. Se você só tem o CPF/CNPJ do titular e não sabe onde ele tem imóvel, comece pela Pesquisa Prévia de Bens — ela faz a busca reversa e devolve exatamente estes quatro campos.
Antes de começar
5 crítico · 3 de atenção
Cada item aqui saiu de um caso real que custou dinheiro. Ler isto é mais barato do que descobrir depois.
Não tem fé pública — e a diferença é jurídica, não de formato
A visualização entrega o MESMO conteúdo da certidão de inteiro teor, e é aí que mora o risco: o PDF parece um documento oficial, mas não é assinado digitalmente pelo oficial do registro e não declara validade.
Não use para instruir processo, registrar ato, fechar financiamento ou provar titularidade perante terceiro. Para isso existe a Certidão de Inteiro Teor (/v1/consultas/certidao-inteiro-teor), que é o mesmo conteúdo com assinatura do cartório — e custa cerca de 3,3× mais, porque o emolumento é outro.
Use a visualização para o que ela é boa: due diligence, triagem, decisão interna, conferência antes de pedir a certidão paga.
Cada chamada gasta emolumento de cartório, e não tem desfazer
O preço não é tarifa nossa: é o emolumento que o registro de imóveis cobra, fixado por tabela estadual, mais a nossa margem. Ele sai da nossa conta pré-paga no portal no momento do pedido, e ato registral não estorna.
Atenção: Por isso Idempotency-Key é obrigatória. Mesma chave devolve a mesma resposta, sem protocolar de novo e sem cobrar de novo. Chave nova é pedido novo, ainda que o imóvel seja o mesmo.
Cuidado com retry automático de biblioteca HTTP: um timeout do SEU lado não significa que o pedido não saiu do nosso — significa que você não viu a resposta. Reenvie com a MESMA chave.
O preço só se sabe orçando — varia por cartório
Não existe tabela nacional. O emolumento muda por estado e por serventia, então o valor publicado no card é PISO ("a partir de"), nunca o preço do seu pedido.
Use POST /v1/orcamento/visualizacao-matricula com os mesmos quatro campos do imóvel: ele cota na origem, não cobra e devolve preco.total com estimado: true. É o único número que bate com a fatura.
Atenção: Cartório que não cota não é vendido. Município escrito errado, serventia inexistente ou tabela indisponível fazem a consulta responder 602 (indisponível) SEM chamar a origem e SEM cobrar — em vez de protocolar um pedido que ninguém sabe quanto custa.
O bloqueio de pedido repetido é da CONTA, não da sua
O RI Digital recusa um segundo pedido da mesma matrícula, no mesmo cartório, enquanto o anterior estiver vigente. A recusa vem faturada pela origem e não entrega documento nenhum — por isso nós barramos antes, e a resposta é 602 sem cobrança.
Atenção: A plataforma opera com UMA conta no portal para toda a carteira. Isso significa que um pedido feito por outro cliente nosso, do mesmo imóvel, bloqueia o seu enquanto estiver vigente. A janela em uso é de 7 dias, e ela é estimativa: o portal não devolve o prazo real de vigência.
A resposta diz a data a partir da qual o pedido volta a ser aceito. Se o volume do seu produto tornar isso frequente, o caminho é uma credencial dedicada no portal — fale com o suporte antes de escalar.
O link da origem morre em 7 dias — use o nosso
A URL do PDF que o cartório devolve é assinada e expira: medido em 2026-08-11, validade de 7 dias. Guardar essa URL e abrir semanas depois entrega link morto de um documento que já custou emolumento.
Nós arquivamos os bytes na entrega. Use documento_url da resposta — ela aponta para o nosso arquivo, autentica com o mesmo Bearer e não expira. site_receipts[] continua trazendo a URL da origem para conferência.
Finalidade é declaração legal
O campo imovel_finalidade é declarado AO CARTÓRIO em nome de quem pede. Não é filtro de busca nem preferência técnica.
Atenção: O valor 3 afirma que o solicitante É titular de direito real registrado sobre o imóvel. Due diligence de imóvel de terceiro não é titularidade — mandar 3 ali é declaração falsa feita em nome do seu cliente. Por isso o padrão é 2, e o 3 só vai à origem se você o enviar explicitamente.
A resposta é 202: o pedido roda na fila
O portal do cartório leva de dezenas de segundos a poucos minutos, e segurar a conexão até lá deixa pedido órfão pago quando o seu HTTP desiste. Por isso o POST responde 202 com data[0].protocolo na hora, e o documento chega depois.
Consulte GET /v1/consultas/{protocolo} para acompanhar. Ele **não cobra e não fala com a origem** — lê a linha que o motor já escreveu, então pode ser consultado à vontade. Enquanto estiver rodando ele responde 202; quando terminar, 200 com o documento (ou um 6xx dizendo o que houve).
O header.billable já vem true no 202: o valor foi debitado na aceitação. Não some o preço de novo quando o 200 chegar.
Timeout da origem não quer dizer que nada foi protocolado
Quando o portal não responde a tempo (605), a pergunta que fica é de dinheiro: o ato saiu ou não? Nós não chutamos — perguntamos à lista de pedidos da origem antes de decidir.
Achou o protocolo: o valor fica, o documento é entregue e você recebe normalmente. Não achou: o valor é estornado integralmente e a resposta diz que nada foi cobrado pelo cartório. A reconciliação roda sozinha a cada 30 min.
Atenção: Não reenvie com chave de idempotência nova depois de um timeout. É exatamente o caso em que um segundo ato registral seria protocolado e pago.
Requisição
Autenticação por token no cabeçalho. Parâmetro obrigatório que falta é recusado antes de qualquer cobrança — não vira consulta paga que volta vazia.
cpf_cnpj
string
obrigatório
Atenção: O CONSULENTE, não o dono do imóvel. É a quem a consulta fica associada na sua conta e no seu extrato — o documento sai do imóvel, não deste CPF/CNPJ. Aceita com ou sem máscara.
imovel_matricula
string
obrigatório
Número da matrícula OU o CNM (Código Nacional de Matrícula). Zeros à esquerda são aceitos.
imovel_cartorio
integer
obrigatório
Atenção: O NÚMERO do registro de imóveis, inteiro: 1 para o 1º RI. Mandar "1º RI - Taquaritinga" é 607 faturado pela origem.
imovel_municipio
string
obrigatório
Atenção: Município DO CARTÓRIO, não do imóvel. Medido em 2026-08-11: um imóvel de Fernando Prestes está matriculado no RI de Taquaritinga. Errar aqui não protocola nada — a cotação falha e a consulta fica indisponível sem cobrar.
imovel_uf
string(2)
obrigatório
UF do cartório.
imovel_finalidade
integer
opcional
Atenção: Declaração AO CARTÓRIO, não parâmetro técnico. 1 = investigação para avaliação de crédito ou solvência · 2 = investigação jurídica sobre o imóvel e sua titularidade (padrão) · 3 = o solicitante É titular de direito real sobre o imóvel. Ver a nota "Finalidade é declaração legal".
Idempotency-Key
header (UUID)
obrigatório
Atenção: Cabeçalho HTTP, obrigatório: cada chamada debita emolumento de cartório. Janela de 24 h. Nunca use CPF/CNPJ como chave — documento pessoal em header fica em log de acesso.
curl -X POST https://api.oficialdata.com.br/v1/consultas/visualizacao-matricula \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"cpf_cnpj": "12345678000190",
"imovel_matricula": "21916",
"imovel_cartorio": 1,
"imovel_municipio": "Taquaritinga",
"imovel_uf": "SP",
"imovel_finalidade": 2
}'
O HTTP é sempre 200 quando a requisição chegou.
O resultado real está em code, no corpo — trate
code, nunca o status.
Resposta
Dentro de data[]:
11 campos em 3 blocos.
Campo que a origem não informou volta null —
nunca 0 nem string vazia. Um zero inventado
vira "nada consta" num laudo.
data[]
object
SUCESSO quando o documento foi entregue. É o estado da CONSULTA, não um veredito sobre o imóvel — a visualização não tem veredito.
Atenção: A ENTREGA. Aponta para o nosso arquivo, autentica com o mesmo Bearer e NÃO expira. Use esta, nunca a de site_receipts[] — aquela é da origem e morre em 7 dias.
Frase pronta para tela, já com o aviso de que a visualização não tem fé pública.
⚠️ URL do PDF NA ORIGEM. Expira em 7 dias — está aqui para conferência e auditoria, não para ser o seu link.
identificadores
object
Atenção: Protocolo do pedido no cartório (ex.: VM030158741). GUARDE: é por ele que se reconcilia um emolumento pago, e é o que o cartório pede no balcão.
Matrícula efetivamente atendida. Quando o cartório devolve o número, ele tem precedência sobre o que você mandou.
dados
object
Texto da matrícula, quando o cartório devolve a camada de texto. Muitas serventias entregam só o PDF — null aqui não significa documento faltando.
Serventia por extenso ("1º RI de Taquaritinga/SP").
Município do cartório.
UF do cartório.
Total cobrado, formatado em reais. O mesmo valor de header.price.
Códigos de erro
O mesmo mapa que o motor usa em produção. As colunas de estorno e retentativa fazem parte do contrato: nem toda falha devolve o dinheiro, e você tem direito de saber quais antes de integrar.
| Classe | Códigos | Significa | Estorna | Retenta |
|---|---|---|---|---|
sucesso |
200 | A origem respondeu e entregou. | — | — |
nao_encontrado |
612 | A origem respondeu: nada consta para este alvo. | Não | Não |
indeterminado |
611 | A origem não conseguiu emitir pela internet. Não é irregularidade. | Não | Não |
erro_participante |
608 619 620 | A origem recusou os DADOS do pedido. | Não | Sim |
retry |
600 605 609 610 613 614 615 618 | Instabilidade momentânea da origem ou do transporte. | Sim | Sim |
fatal |
601 602 603 604 606 607 617 621 622 | Defeito de integração — nosso, não seu. | Sim | Não |
A pegadinha do estorno:
erro_participante é a única
classe que não devolve o dinheiro — nela a
origem respondeu, recusando os dados do pedido. Falha nossa é
fatal e sempre estorna.
Permanentes: 602 e 603 não se curam sozinhos — não vale retentar. A fonte sai do ar na hora e um humano é avisado.
Preço por UF
É emolumento de cartório, fixado por lei estadual. Orçar antes de disparar em lote não é boa prática, é requisito.
Mais barata
R$ 12,84
BR
Mediana
R$ 12,84
1 UFs vendáveis
Mais cara
R$ 12,84
BR — 1,0× a mais barata
Estes são os preços da sua conta. O valor é o emolumento do cartório mais a nossa margem, e a margem varia conforme o seu plano — planos maiores pagam menos por consulta.
BR
12,84
Limites e desempenho
Números medidos em produção. Onde está "não medido", é porque não medimos — e um número chutado aqui viraria SLA que ninguém verificou.
Tempo típico
não medido
p95
não medido
Teto por hora
—
Timeout máximo
540s
De onde vem o tempo: dos ~s típicos, cerca de 85% é a origem varrendo os cartórios. Essa parte é intocável — não há otimização nossa que a reduza.
Sobre o teto: a origem exige sessão única por conta, então as corridas são serializadas. O número acima é o limite real de uma conta, não uma cota comercial. Volume acima disso exige combinar antes — não adianta paralelizar do seu lado.
Versionamento
O contrato de resposta é v1,
e a versão viaja em header.api_version
em toda resposta.
- Campo novo opcional pode entrar a qualquer momento e não muda a versão. Seu parser precisa ignorar campo que não conhece.
- Remover campo, renomear campo ou mudar tipo é versão nova, publicada em paralelo, com prazo de desligamento anunciado da anterior.
- Nunca alteramos o significado de um campo existente mantendo o nome. Se o significado muda, o nome muda junto.
Quer ser dos primeiros a integrar?
A ordem de liberação segue a demanda real. Diga o volume que você espera e em quais UFs.