Ir para o conteúdo
Blog

Guias

Esquema da DOI-Web: o layout-doiweb.json e a saída do formato do PGD

Por Equipe DOIWeb · · 5 min de leitura

O layout-doiweb.json é o esquema oficial (JSON Schema 2020-12) do arquivo de importação da DOI-Web. O formato antigo do PGD, o DOI.TXT versão 6.1, é aceito só temporariamente e gera pendências impeditivas em todas as declarações, porque campos e leiautes mudaram.

O que é o layout-doiweb.json

O layout-doiweb.json é o esquema oficial do arquivo de importação da DOI-Web. Ele é um JSON Schema (versão 2020-12) publicado pela Receita Federal em doi.rfb.gov.br/api/layout-doiweb.json e descreve a hierarquia dos campos, quais são obrigatórios, o tipo de cada um e os valores possíveis.

Quem monta o arquivo, seja um sistema de cartório ou uma ferramenta de conversão, precisa seguir esse esquema. A DOI-Web não aceita campos que ele não prevê.

As regras do arquivo, segundo o manual da Receita

  • A extensão é .json ou .zip. Se for .zip, ele deve conter apenas um arquivo .json.
  • O conteúdo tem a forma { "declaracoes": [ {...}, {...} ] }, com uma ou mais declarações.
  • Todos os campos previstos devem estar presentes.
  • Não pode haver campos estranhos ao esquema.
  • Atributos sem conteúdo não devem ser enviados.
  • Os tamanhos mínimo e máximo de cada atributo devem ser respeitados.
  • Os dados precisam ser válidos para o tipo. Por exemplo, datas no formato AAAA-MM-DD e números inteiros sem texto.

Como a DOI-Web trata o arquivo importado

  • A validação é feita declaração por declaração. Uma declaração com erro não impede a importação das que estão corretas no mesmo arquivo.
  • Se a estrutura do JSON for inválida, o arquivo inteiro é rejeitado.
  • Toda declaração importada é salva com a situação RASCUNHO.
  • As declarações ficam vinculadas ao cartório em que o usuário está logado.
  • Um cartório só importa um arquivo por vez. É preciso esperar o término da importação anterior.

Como é o arquivo do PGD (versão 6.1)

O formato do PGD é um arquivo de texto chamado DOI.TXT, na versão 6.1 do leiaute da ajuda do PGD DOI. Ele não tem hierarquia: cada registro ocupa uma linha, com posições fixas.

  • Gravação em ASCII, com registros de tamanho fixo: 365 bytes mais 2 bytes de fim de registro (0D0A), totalizando 367.
  • Valores e áreas usam vírgula e as duas últimas posições como centavos, sem separador de milhar. Por exemplo, 20.000,00 é informado como 20000,00. Campo sem informação fica em espaços.
  • Datas no formato DD/MM/AAAA.
  • Registro tipo 1: dados da operação (data da lavratura, livro, folha, matrícula, registro, situação, atribuição, tipo da transação, tipo de imóvel, endereço e valores). Aparece uma vez por declaração.
  • Registro tipo 2: um para cada alienante, sempre depois do tipo 1.
  • Registro tipo 3: um para cada adquirente, depois dos registros tipo 2.
  • Registro tipo 9: o último do arquivo, com o total de registros, incluindo ele mesmo.

Para duas declarações, a primeira com 1 alienante e 2 adquirentes e a segunda com 3 alienantes e 2 adquirentes, a sequência de tipos é 1, 2, 3, 3, 1, 2, 2, 2, 3, 3, 9.

Do formato do PGD para o formato da DOI-Web

Pelo manual de importação, a DOI-Web oferece dois formatos de arquivo: o formato PGD, um TXT no padrão usado na importação do PGD DOI, e o formato DOI-Web, em JSON.

O manual também avisa que a importação do formato antigo é temporária e que todas as declarações importadas nele geram pendências impeditivas, porque houve modificação de campos e leiautes. Na prática, o arquivo do PGD não serve como ponto de partida sem adaptação. O caminho previsto pela Receita é o JSON no esquema atual.

Comparando os dois leiautes, as diferenças de estrutura são estas:

  • O PGD é um arquivo plano, com uma linha por registro. O JSON da DOI-Web é hierárquico: cada declaração é um objeto e traz dentro dele as listas de alienantes e de adquirentes.
  • O PGD usa datas em DD/MM/AAAA e valores com vírgula. O JSON usa datas em AAAA-MM-DD e valores numéricos.
  • O esquema da DOI-Web tem campos que o leiaute 6.1 do PGD não prevê, como o CIB, o código do INCRA e o código nacional de matrícula.

Este artigo não traz uma tabela de equivalência campo a campo entre o PGD e a DOI-Web. Para isso, use o leiaute oficial da DOI-Web, que descreve cada campo por ficha, e a tabela de domínio de cada código.

Baixe o layout-doiweb.json

Esta é a cópia do esquema oficial conferida em 20/10/2026, idêntica ao arquivo publicado em doi.rfb.gov.br naquela data. Se a Receita atualizar o esquema, o arquivo do portal dela é o que vale.

Baixar layout-doiweb.json

SHA-256 da cópia: f244cfbc6bc201f37eaaf9a2cd40205ea8e6632e9d079d2e91bd58ccdeb17666. Compare com o arquivo que você baixar para ter certeza de que é o mesmo.

Abrir o esquema no portal da Receita

Como conferir se o seu JSON está de acordo

O DOIWeb tem um validador que confere o seu arquivo contra esse esquema, direto no navegador. Você cola ou escolhe o JSON e vê os erros de estrutura antes de enviar para a DOI-Web.

Ver o validador na página Como funciona

Perguntas rápidas

O DOIWeb é o portal da DOI-Web?

Não. É um serviço privado e independente, sem vínculo com a Receita Federal, o gov.br ou o ONR. O portal oficial é doi.rfb.gov.br.

Posso importar um arquivo do PGD na DOI-Web?

O manual diz que o formato antigo é aceito temporariamente, mas gera pendências impeditivas em todas as declarações.

O arquivo pode ser compactado?

Sim, em .zip, desde que contenha apenas um arquivo .json.

Comece pela recuperação que está pendente.

Recupere as declarações disponíveis, confira os dados e gere o arquivo para o ONR. Pagamento único, sem assinatura.

Criar conta e importar minhas DOI