Layout SFE Notas v3.0.0 — Especificação Técnica

Contrato JSON para transmissão dos atos do Tabelionato de Notas à CGJ-RJ — Selo de Fiscalização Eletrônico (SFE). Sucessor do XML 2.04 com tipagem forte, enums humanizados e discriminação explícita por tipoAto + dadosAto.

Propósito e escopo

A atribuição de Notas (Tabelionato de Notas) abrange os atos previstos na Lei 8.935/1994 (Lei dos Cartórios), arts. 6.º e 7.º, e em legislação correlata (Lei 6.015/1973, Provimento CNJ 100/2020 — e-Notariado, Convenção da Haia para Apostille, Lei 6.281/2012-RJ, Lei 9.873/2022-RJ).

Este layout cobre 35 tipos de ato distribuídos em três categorias:

ATO_SELADO
28 tipos

Escrituras, Procurações, Testamentos, Firmas, Atos Notariais Eletrônicos (e-Not Assina, AEV, CENAD), Autenticações, Certidão Genérica, Materialização, Apostilamento e Visto.

TRANSMISSAO_NAO_SELADA
5 tipos

Encerramento de Livro, Folha Adicional, Informação Verbal, Complemento de Emolumentos e Desistência.

OPERACAO
2 tipos

Alteração de Emolumentos e Alteração de URL — operações de manutenção sobre atos previamente transmitidos.

O contrato substitui o XSD Schema_Notas_2.04.xsd e o PDF Layout_Notas_2.04.pdf, mantendo paridade funcional 100% e adicionando tipagem forte, enums humanizados e discriminação explícita via tipoAto + dadosAto (oneOf + const).

Fontes normativas

Legislação Federal
  • Lei 8.935/1994 — Lei dos Cartórios
  • Lei 6.015/1973 — Lei dos Registros Públicos
  • Provimento CNJ 100/2020 — e-Notariado (Atos Notariais Eletrônicos)
  • Provimento CNJ 73/2018 — categoria de sexo NAO_BINARIE
  • Convenção da Haia (1961) — Apostille
Legislação RJ & Tabelas
  • Lei 6.281/2012 (RJ) — emolumentos extrajudiciais (PRIMEIRA_AQUISICAO)
  • Lei 9.873/2022 (RJ) — selo eletrônico (valorSeloEletronico)
  • Lei 3.217/1999 — FETJ (20%); Lei 4.664/2005 — FUNDPERJ (5%); LC 111/2006 — FUNPERJ (5%)
  • Manual MAS CGJ-RJ — tabelas n° 1, 2, 6, 8, 9, 10
  • Tabela ONU/M49 — códigos de país (nacionalidadeOnu)

Padrões adotados

Formato e codificação
  • Formato: JSON (RFC 8259)
  • Codificação: UTF-8 sem BOM
  • Indentação: 2 espaços
  • JSON Schema: draft-07
  • $id: https://layouts.tjrj.jus.br/sfe/notas/v3.0.0/layout_schema.json
Caracteres especiais

JSON já escapa nativamente. "Santos & Silva LTDA" dispensa &. Diacríticos UTF-8 nativos — sem ISO-8859-1 do XML legado.

Nome do arquivo de transmissão

Padrão: <COD>_<AAAAMMDD>_NT_<I|A>_<HHMMSS>.json

Exemplos
// Inclusão do dia 2026-05-07 transmitida às 13:21:45
7555_20260507_NT_I_132145.json

// Alteração do mesmo dia transmitida às 17:03:27
7555_20260507_NT_A_170327.json

Limites operacionais

1
Máximo de 5.000 atos por remessa

Mesmo limite do XML legado. Volumes maiores → fatiar em remessas com id distintos.

2
Tamanho máximo de 32 MB

Hard limit do servidor SFE. JSON tipicamente comprime bem em transporte HTTPS.

3
Idempotência por id

UUID v4 em remessa.id. Reenvios com mesmo UUID são tratados como duplicados.

Formato de valores

DomínioTipo JSONPadrão
Inteiros (qtd, códigos numéricos)integerminimum / maximum
Códigos opacos com letras (selo, CCT)string^[A-Z]{4}\d{5}$
Monetáriosstring^\d+\.\d{2}$
Datastring formato dateYYYY-MM-DD
Data-horastring formato date-timeYYYY-MM-DDThh:mm:ss-03:00
Booleanbooleantrue/false (zero "S"/"N")
UUIDstring formato uuidRFC 4122
Hash SHA-256string^[A-Fa-f0-9]{64}$
URLstring formato urimaxLength: 2083

Justificativa de atos não praticados

Em datas sem ato praticado, alimentar remessa.justificativasAusencia[]:

{
  "justificativasAusencia": [
    { "data": "2026-05-04", "motivo": "Feriado municipal" }
  ]
}

Envelope

Estrutura raiz da remessa
{
  "$schema": "https://layouts.tjrj.jus.br/sfe/notas/v3.0.0/layout_schema.json",
  "remessa": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "versaoLayout": "3.0.0",
    "codigoServico": "7555",
    "tipoOperacao": "INCLUSAO",
    "ambiente": "PRODUCAO",
    "software": { "nome": "FUNARPEN-SGF", "versao": "2026.1.0" },
    "dataGeracao": "2026-05-07T13:21:45-03:00",
    "atos": [],
    "justificativasAusencia": []
  }
}

Campos do envelope

CampoTipoObrig.Descrição
idUUID v4Identificador único da remessa (idempotência).
versaoLayout^\d+\.\d+\.\d+$Versão semver. 3.0.0 na primeira JSON.
codigoServico^\d{1,5}$Código do serviço extrajudicial.
tipoOperacaoenum TipoOperacaoINCLUSAO ou ALTERACAO.
ambienteenum AmbienteHOMOLOGACAO ou PRODUCAO.
software.nomestring (2..100)Nome do software gerador.
software.versaostring (1..50)Versão do software.
dataGeracaodate-time com offsetInstante da geração.
atosarray de AtoLista de atos. Máx. 5000.
justificativasAusenciaarrayDatas sem ato praticado.

Catálogo de atos

Os 35 tipos de ato disponíveis no contrato JSON, com a estrutura $ref que governa dadosAto:

#tipoAtoCategoria$ref
1ESCRITURA_LAVRATURAATO_SELADOEscrituraDados
2ESCRITURA_CERTIDAOATO_SELADOEscrituraDados
3PROCURACAO_LAVRATURAATO_SELADOProcuracaoDados
4PROCURACAO_CERTIDAOATO_SELADOProcuracaoDados
5PROCURACAO_SUBSTABELECIMENTOATO_SELADOProcuracaoDados
6PROCURACAO_REVOGACAOATO_SELADOProcuracaoDados
7TESTAMENTO_REGISTRO_PUBLICOATO_SELADOTestamentoDados
8TESTAMENTO_REGISTRO_CERRADOATO_SELADOTestamentoDados
9TESTAMENTO_CERTIDAO_PUBLICOATO_SELADOTestamentoDados
10TESTAMENTO_CERTIDAO_CERRADOATO_SELADOTestamentoDados
11TESTAMENTO_REVOGATORIOATO_SELADOTestamentoDados
12TESTAMENTO_CERTIDAO_REVOGACAOATO_SELADOTestamentoDados
13FIRMA_ABERTURAATO_SELADOFirmaDados
14FIRMA_RECONHECIMENTO_SEMELHANCAATO_SELADOFirmaDados
15FIRMA_RECONHECIMENTO_AUTENTICIDADEATO_SELADOFirmaDados
16FIRMA_RECONHECIMENTO_CHANCELAATO_SELADOFirmaDados
17FIRMA_RECONHECIMENTO_SINAL_PUBLICOATO_SELADOFirmaDados
18ATO_NOTARIAL_ELETRONICO_RAEDDATO_SELADOAtoNotarialEletronicoDados
19ATO_NOTARIAL_ELETRONICO_RFAVATO_SELADOAtoNotarialEletronicoDados
20ATO_NOTARIAL_ELETRONICO_AEVATO_SELADOAtoNotarialEletronicoDados
21ATO_NOTARIAL_ELETRONICO_AD_CENADATO_SELADOAtoNotarialEletronicoDados
22AUTENTICACAO_CPFATO_SELADOAutenticacaoCpfDados
23AUTENTICACAO_RGATO_SELADOAutenticacaoRgDados
24AUTENTICACAO_ESTRANGEIROATO_SELADOAutenticacaoEstrangeiroDados
25CERTIDAO_GENERICAATO_SELADOCertidaoGenericaDados
26MATERIALIZACAO_DOC_ELETRONICOATO_SELADOMaterializacaoDocEletronicoDados
27APOSTILAMENTOATO_SELADOApostilamentoDados
28VISTOATO_SELADOVistoDados
29ENCERRAMENTO_LIVROTRANSMISSAO_NAO_SELADAEncerramentoLivroDados
30FOLHA_ADICIONAL_COMPLEMENTOTRANSMISSAO_NAO_SELADAFolhaAdicionalComplementoDados
31INFORMACAO_VERBALTRANSMISSAO_NAO_SELADAInformacaoVerbalDados
32COMPLEMENTO_EMOLUMENTOSTRANSMISSAO_NAO_SELADAComplementoEmolumentosDados
33DESISTENCIA_ATOTRANSMISSAO_NAO_SELADADesistenciaAtoDados
34ALTERACAO_EMOLUMENTOSOPERACAOAlteracaoEmolumentosDados
35ALTERACAO_URLOPERACAOAlteracaoUrlDados

Total: 35 atos.

Estruturas compartilhadas

Os blocos abaixo aparecem em $defs e são reutilizados por múltiplos atos. Toda mudança nestas estruturas reflete em todos os tipos de ato — versionar com cuidado.

5.1 — Pessoa
$defs.Pessoa — pessoa física participante de Escritura, Procuração, Testamento (como testador), Firma, Apostilamento, Visto, Certidão Genérica
CampoTipoObrig.Descrição
tipoParticipante^\d{1,3}$Tabela CGJ-RJ n° 2 (Tipos de Participante).
nomestring (2..250)Nome completo.
sexoenum SexoFEMININO, MASCULINO, NAO_BINARIE, IGNORADO.
dataNascimentodate
numeroIdentidadestring (2..25)🔶Obrigatório quando cpf ausente.
orgaoEmissorstring (2..70)
cpf^\d{11}$🔶Apenas dígitos.
justificativaAusenciaCpfenum🔶NAO_POSSUI / NAO_DECLARADO / ESTRANGEIRO.
nacionalidadeOnuinteger (1..999)Código ONU/M49. Brasil = 76.
estadoCivilenum EstadoCivil
numeroPreTestestring (2..25)Exclusivo para Procuração.
numeroConsultaBibstring (2..25)Indisponibilidade de bens.
numeroConsultaLei11441string (2..25)Inventário/separação/divórcio Lei 11.441/07.
filiacaoFiliacaoMáximo 2 genitores.
5.2 — PessoaJuridica
CampoTipoObrig.Descrição
tipoParticipante^\d{1,3}$Tabela CGJ-RJ n° 2.
nomestring (2..250)Razão social.
cnpj^\d{14}$🔶Apenas dígitos.
justificativaAusenciaCnpjenum🔶NAO_POSSUI / NAO_DECLARADO.
nacionalidadeOnuinteger (1..999)
numeroConsultaBibstring (2..25)
5.3 — Filiacao / Genitor

tipoFiliacao aceita apenas MAE ou PAI. Diferente do RCPN, o XSD legado de Notas não admite GENITOR para casos não-binários.

{
  "filiacao": {
    "genitores": [
      { "tipoFiliacao": "PAI", "nome": "ANTONIO COSTA", "sexo": "MASCULINO" },
      { "tipoFiliacao": "MAE", "nome": "MARIA COSTA", "sexo": "FEMININO" }
    ]
  }
}
5.4 — Participantes

Coleção de pessoas físicas e jurídicas participantes do ato:

{
  "participantes": {
    "pessoasFisicas":    [ { /* Pessoa */ } ],
    "pessoasJuridicas":  [ { /* PessoaJuridica */ } ]
  }
}
5.5 — ImovelRural / ImovelUrbano

Compõem objetos em Escritura. Compartilham campos básicos (serviço RI, matrícula, tipoRecolhimento, município, UF, imposto de transmissão, adquirente/cedente, valorBem) e adicionam atributos específicos:

ImovelRural
  • numeroIncra
  • local
  • area
  • unidadeMedida
  • denominacao
  • numeroInscricaoSrf
ImovelUrbano
  • logradouro
  • bairro
5.6 — Emolumentos + ItemEmolumento

Estrutura de cotação de emolumentos do ato:

CampoTipoObrig.Descrição
tipoCobrancaenum TipoCobrancaJUSTICA_GRATUITA / COM_COBRANCA / SEM_COBRANCA / NIHIL / ATO_CONJUNTO / PRIMEIRA_AQUISICAO.
valorTotalEmolumentosmonetário🔶Soma. Suprimido em JG/SC/AC.
fetjmonetárioLei 3.217/1999 — 20%.
fundperjmonetárioLei 4.664/2005 — 5%.
funperjmonetárioLC 111/2006 — 5%.
funarpenmonetárioFUNARPEN/RJ — 4%.
ressagmonetárioRessarcimento de gratuidade — 2%.
valorDistribuidormonetário
valorSeloEletronicomonetárioLei 9.873/2022 art. 11.
valorIssmonetário
itensarray de ItemEmolumento (max 100)🔶Suprimido em JG/SC/AC.
ItemEmolumento
CampoTipoObrig.Descrição
anointeger (2000..2099)Ano de vigência da tabela. Padrão = dataPratica.
tabelastring (1..8)Tabela CGJ-RJ n° 1 (Emolumentos).
itemstring (1..20)Item da tabela (geralmente romano).
subItemstring (0..20)Subitem da tabela.
quantidadeinteger (1..9999)
complementostring (2..200)
excecaostring (2..200)
5.7 — AtoVinculado

Vínculo entre o ato corrente e outro ato (conjunto, complemento, ato original, etc.).

CampoTipoObrig.
tipoVinculoenum TipoVinculo
codigoServico^\d{1,5}$
selo^[A-Z]{4}\d{5}$
aleatoriostring (3..10)
tipoSeloenum TipoSelo
cct^[A-Z]{4}\d{5}$
dataPraticadate
nomeServicostring (2..100)🔶
estadoServico^[A-Z]{2}$🔶
5.8 — ProcuracaoOriginal / TestamentoOriginal

Referências a atos antigos sem selo (anteriores ao SFE):

  • ProcuracaoOriginal: PROCURACAO_SUBSTABELECIMENTO, PROCURACAO_REVOGACAO, PROCURACAO_CERTIDAO.
  • TestamentoOriginal: TESTAMENTO_REVOGATORIO, TESTAMENTO_CERTIDAO_PUBLICO, TESTAMENTO_CERTIDAO_CERRADO.

Regra: apenas um dos elementos deve ser preenchido — procuracaoOriginal/testamentoOriginal (legado sem selo) OU atosVinculados[] (com selo).

Atos selados (28 tipos)

Todo ato selado tem o conjunto comum de campos: categoria = ATO_SELADO, dataPratica, selo, aleatorio, livro, folhaInicial, folhaFinal, numeroAto, localPratica, indCertidaoEletronica, indAtoEletronico. Campos eletrônicos (urlPdfAto, hashPdfAto, urlDossie, hashDossie, matriculaNotarialEletronica) são obrigatórios quando indAtoEletronico = true.

6.1 — Escritura: Lavratura & Certidão
tipoAto: ESCRITURA_LAVRATURA | ESCRITURA_CERTIDAO  ·  $ref: EscrituraDados  ·  substitui <Escritura> (XSD AtoEscritura)

Escritura pública notarial. Inclui compra-venda, doação, dação em pagamento, permuta, divórcio extrajudicial, inventário extrajudicial, união estável, pacto antenupcial e demais subtipos da tabela CGJ-RJ n° 8 (codigoTipoEscritura).

CampoTipoObrig.
tipoEscrituraenum TipoEscritura
codigoTipoEscritura^\d{1,3}$
descricaoSubtipostring (2..250)🔶 (codigoTipoEscritura='999')
dataAssinaturaFinaldate
indAlvaraJudicialboolean
indPorProcuracaoboolean
indValorDeclaradoboolean
valorDeclaradomonetário🔶 (indValorDeclarado=true)
moedaenum Moeda
dadosProcuracaoDadosProcuracaoEscritura🔶 (indPorProcuracao=true)
objetosObjetosEscritura
participantesParticipantes
atosVinculadosarray
emolumentosEmolumentos
Exemplo — Lavratura, COM_COBRANCA, com imóvel urbano
{
  "tipoAto": "ESCRITURA_LAVRATURA",
  "dadosAto": {
    "categoria": "ATO_SELADO",
    "dataPratica": "2026-04-15",
    "selo": "EAPO96302",
    "aleatorio": "KOI",
    "livro": "E-405",
    "folhaInicial": "85",
    "folhaFinal": "89",
    "numeroAto": "4841",
    "localPratica": "SEDE",
    "tipoEscritura": "LAVRATURA_ESCRITURA",
    "codigoTipoEscritura": "40",
    "descricaoSubtipo": "Compra e Venda",
    "indAlvaraJudicial": false,
    "indPorProcuracao": true,
    "indValorDeclarado": true,
    "valorDeclarado": "850000.00",
    "moeda": "REAL",
    "dadosProcuracao": {
      "lavradoNoRj": true,
      "codigoServicoProcuracao": "154",
      "seloProcuracao": "EAAA00120",
      "aleatorioProcuracao": "ABN"
    },
    "objetos": {
      "imoveisUrbanos": [{
        "tipoRecolhimento": "NORMAL",
        "tipoConstrucao": "EDIFICACAO",
        "uf": "RJ",
        "logradouro": "Rua da Luz, 12",
        "valorBem": "850000.00"
      }]
    },
    "participantes": {
      "pessoasFisicas": [{
        "nome": "MAGALI RIBEIRO",
        "cpf": "70218645849"
      }]
    },
    "emolumentos": {
      "tipoCobranca": "COM_COBRANCA",
      "valorTotalEmolumentos": "1234.56",
      "fetj": "246.91",
      "itens": [{ "ano": 2026, "tabela": "1", "item": "1", "subItem": "I", "quantidade": 1 }]
    }
  }
}
6.2 — Procuração: Lavratura, Certidão, Substabelecimento, Revogação
tipoAto: PROCURACAO_LAVRATURA | PROCURACAO_CERTIDAO | PROCURACAO_SUBSTABELECIMENTO | PROCURACAO_REVOGACAO

Inclui poderes específicos (previdenciários, bens móveis/imóveis/valores) e poderes gerais. Substabelecimento e revogação referem-se a procuração original — quando antiga (sem selo), use procuracaoOriginal; quando recente (com selo), use atosVinculados[].

CampoTipoObrig.
tipoProcuracaoenum TipoProcuracao
finalidadeProcuracaoenum FinalidadeProcuracao
tipoLivroenum TipoLivroProcuracao
dataVigenciadate
procuracaoOriginalProcuracaoOriginal🔶 (NSP/NRP/NCP com ato antigo)
participantesParticipantes
atosVinculadosarray
emolumentosEmolumentos
6.3 — Testamento: Registro Público/Cerrado, Certidão, Revogatório
tipoAto: TESTAMENTO_REGISTRO_PUBLICO | TESTAMENTO_REGISTRO_CERRADO | TESTAMENTO_CERTIDAO_PUBLICO | TESTAMENTO_CERTIDAO_CERRADO | TESTAMENTO_REVOGATORIO | TESTAMENTO_CERTIDAO_REVOGACAO
CampoTipoObrig.
tipoTestamentoenum TipoTestamento
testamentoOriginalTestamentoOriginal🔶 (NCTP/NCTC/NTR antigos)
testadorPessoa
atosVinculadosarray
emolumentosEmolumentos

Regra: escolher entre testamentoOriginal (legado) ou atosVinculados (com selo) para vincular ao ato original.

6.4 — Firma: Abertura & Reconhecimentos
tipoAto: FIRMA_ABERTURA | FIRMA_RECONHECIMENTO_SEMELHANCA | FIRMA_RECONHECIMENTO_AUTENTICIDADE | FIRMA_RECONHECIMENTO_CHANCELA | FIRMA_RECONHECIMENTO_SINAL_PUBLICO
CampoTipoObrig.
tipoFirmaenum TipoFirma
codigoEtiquetastring (2..25)🔶 (SEMELHANCA/AUTENTICIDADE)
tipoDocumentoenum TipoDocumentoFirma🔶 (idem)
descricaoDocumentostring (2..500)🔶 (tipoDocumento=OUTROS)
pessoasFirmaarray de Pessoa (≥1)
atosVinculadosarray
emolumentosEmolumentos

Regra: em FIRMA_ABERTURA, pessoasFirma[] exige dados completos + filiação. Em reconhecimentos, apenas nome é suficiente.

6.5 — Ato Notarial Eletrônico (RAEDD, RFAV, AEV, AD-CENAD)
Fonte: Provimento CNJ 100/2020 — e-Notariado

RAEDD = e-Not Assina · RFAV = videoconferência · AEV = Autorização Eletrônica de Viagem · AD-CENAD = CENAD.

CampoTipoObrig.
tipoAtoNotarialEletronicoenum
emolumentosEmolumentos

Regra: todos os atos desta família são eletrônicos por natureza — indAtoEletronico=true + URLs/hashes + matriculaNotarialEletronica recomendados.

6.6 — Autenticação: CPF, RG, Estrangeiro
AUTENTICACAO_CPF
CampoTipoObrig.
codigoEtiquetastring (2..25)
dataAutenticacaodate-time
cpfApresentante^\d{11}$
emolumentosEmolumentos

Regras de uso (PDF §5.9): vedado uso de CPF de empregado celetista; mais de 20 atos/mês para mesmo CPF de empregado serão criticados; mais de 50 atos/mês para mesmo CPF também serão criticados; CPF é validado por dígito verificador.

AUTENTICACAO_RG
CampoTipoObrig.
codigoEtiquetastring (2..25)
dataAutenticacaodate-time
nomeApresentantestring (2..200)
enderecoApresentantestring (2..250)
identidadeApresentantestring (2..25)
orgaoEmissorIdentidadestring (2..70)
dataEmissaoIdentidadedate
emolumentosEmolumentos
AUTENTICACAO_ESTRANGEIRO
CampoTipoObrig.
codigoEtiquetastring (2..25)
dataAutenticacaodate-time
nomeApresentantestring (2..200)
enderecoApresentantestring (2..250)
numeroPassaportestring (2..25)
paisEmissorstring (2..50)
emolumentosEmolumentos
6.7 — Certidão Genérica

Certidão genérica positiva ou negativa de Escritura (G1), Procuração (G2), Testamento (G3) ou Firma (G4).

CampoTipoObrig.
tipoCertidaoenum TipoCertidaoGenerica
negativaboolean
participantesParticipantes
atosVinculadosarray
emolumentosEmolumentos
6.8 — Materialização de Documento Eletrônico

Impressão com fé pública de documento eletrônico originário de website ou arquivo.

CampoTipoObrig.
origemDocenum OrigemDocMaterializacao
qtdTotalFolhasinteger
numeroFolhainteger
dataImpressaodate-time
urluri (max 1000)🔶 (origemDoc=WEBSITE)
nomeArquivostring (2..100)🔶 (origemDoc=ARQUIVO)
formatoArquivostring (2..4)🔶 (origemDoc=ARQUIVO)
dataArquivodate-time🔶 (origemDoc=ARQUIVO)
tamanhoArquivoKbinteger🔶 (origemDoc=ARQUIVO)
emolumentosEmolumentos
6.9 — Apostilamento
Fonte: Convenção da Haia (1961) — Apostille

Autentica documento público para uso em países signatários da Convenção da Haia.

CampoTipoObrig.
documentostring (2..50)
apostiladorstring (2..50)
documentoApostiladorstring (2..25)
participantesParticipantes
emolumentosEmolumentos
6.10 — Visto

Apostilamento por embaixada/consulado — revalidação de ato anterior.

CampoTipoObrig.
revalidadaboolean
participantesParticipantes
atosVinculadosarray
emolumentosEmolumentos

Regra: as informações sobre o ato original devem estar em atosVinculados[].

Transmissão não selada (5 tipos)

Toda transmissão não selada tem: categoria=TRANSMISSAO_NAO_SELADA, dataPratica, cct, e os mesmos campos eletrônicos opcionais de ato selado quando aplicável.

7.1 — Encerramento de Livro
CampoTipoObrig.
livrostring (2..25)
qtdTotalFolhasinteger
identificacaoLivrostring (2..100)
dataEncerramentodate
7.2 — Folha Adicional / Complemento

Complemento de certidão quanto a emolumentos e fundos.

CampoTipoObrig.
qtdPaginasExcedentesinteger
atosVinculadosarray (≥1)
emolumentosEmolumentos
7.3 — Informação Verbal
CampoTipoObrig.
numeroAtostring (2..25)
nomestring (2..200)
emolumentosEmolumentos
7.4 — Complemento de Emolumentos
CampoTipoObrig.
atosVinculadosarray (≥1)
emolumentosEmolumentos

Regra: atosVinculados[].tipoVinculo deve ser ATO_COMPLEMENTO_EMOLUMENTOS.

7.5 — Desistência
CampoTipoObrig.
tipoAtoOrigemstring (2..250)
motivoenum MotivoDesistencia
descricaoMotivostring (2..250)🔶 (motivo=OUTROS)
emolumentosEmolumentos

Operações (2 tipos)

Operações de manutenção sobre atos previamente transmitidos. Categoria OPERACAO.

8.1 — Alteração de Emolumentos
CampoTipoObrig.
selo^[A-Z]{4}\d{5}$
emolumentosEmolumentos

selo aceita selo OU CCT (mesmo formato). Regra: pode ser enviada em INCLUSAO ou ALTERACAO. Pré-condição: o ato deve já existir na base do TJ.

8.2 — Alteração de URL

Exclusiva para atos eletrônicos.

CampoTipoObrig.
selo^[A-Z]{4}\d{5}$
urlPdfAtouri
urlDossieuri

Regra: hashes não podem ser alterados. Operação deve ser enviada em ALTERACAO (tipoOperacao=ALTERACAO).

Tabelas de domínio

Mapeamento dos enums humanizados em JSON 3.0.0 contra os códigos abreviados do XML 2.04.

TipoOperacao
INCLUSAOI
ALTERACAOA
Ambiente
HOMOLOGACAOHML
PRODUCAOPRD
TipoCobranca
JUSTICA_GRATUITAJG
COM_COBRANCACC
SEM_COBRANCASC
NIHILNH
ATO_CONJUNTOAC
PRIMEIRA_AQUISICAOPA
Sexo  (Provimento CNJ 73/2018)
FEMININOF
MASCULINOM
NAO_BINARIEX
IGNORADOI
EstadoCivil
SOLTEIRO1
CASADO2
VIUVO3
SEPARADO_JUDICIALMENTE4
DIVORCIADO5
SEPARADO_CONSENSUALMENTE6
DESQUITADO7
IGNORADO8
TipoVinculo
ATO_ESCRITURAH
ATO_CERTIDAOC
ATO_TESTAMENTOT
ATO_PROCURACAOU
ATO_DE_ACERVOA
ATO_COM_ERRO_MATERIALE
ATO_ABERTURA_FIRMAF
ATO_CONJUNTOJ
ATO_COMPLEMENTO_EMOLUMENTOSM
ATO_TESTAMENTO_REVOGATORIOY
TipoLocalPratica & TipoSelo
SEDES
FORA_DA_SEDEF
FISICOF
ELETRONICOE
JustificativaAusenciaCpf & ...Cnpj
NAO_POSSUI1
NAO_DECLARADO2
ESTRANGEIRO (CPF)3
TipoLivroProcuracao & FinalidadeProcuracao
PROCURACAOP
ESCRITURAE
MISTOM
PREVIDENCIARIA1
BENS_MOVEIS_IMOVEIS_VALORES2
COMUM3
TipoCertidaoGenerica & OrigemDocMaterializacao
ESCRITURAG1
PROCURACAOG2
TESTAMENTOG3
FIRMAG4
WEBSITEW
ARQUIVOA
TipoDocumentoFirma
CONTRATOS1
DECLARACAO2
PROCURACAO3
COMPRA_VENDA_VEICULOS_DUT4
OUTROS5
TipoRecolhimentoImovel & TipoConstrucaoImovel
NORMALN
ISENTOI
FUTUROF
TERRENOT
EDIFICACAOE
UnidadeMedidaArea
METRO1
KILOMETRO2
HECTARE3
ACRE4
ARE5
ALQUEIRE6
CENTIARES7
LEGUA8
Moeda  (série histórica)
CRUZEIROCr$1942–67, 1970–86
CRUZEIRO_NOVONCr$1967–70
CRUZADOCz$1986–89
CRUZADO_NOVONCz$1989–90
CRUZEIRO_REALCR$1993–94
REALR$1994–
MotivoDesistencia & TipoImpostoTransmissao
FALTA_ASSINATURA1
DESISTENCIA2
OUTROS3
ITBIITBI
ITDITD
TipoFiliacao
MAEM
PAIP

Em Notas o XSD legado não admite GENITOR (limitação de 2 valores). Diferente do RCPN.

Códigos preservados (chaves externas)

Mantidos como string por serem chaves de tabela CGJ-RJ ou IBGE/ONU:

CampoTabela externaTipo
Pessoa.tipoParticipanteCGJ-RJ n° 2string ^\d{1,3}$
Pessoa.nacionalidadeOnuONU/M49integer
Imovel.codigoMunicipioCGJ-RJ n° 9 (Municípios)string
Imovel.indicadoCodigoServicoRiCGJ-RJ n° 6 (Serviços Extrajudiciais)string
EscrituraDados.codigoTipoEscrituraCGJ-RJ n° 8 (Tipos de Escritura)string
ItemEmolumento.tabela / item / subItemCGJ-RJ n° 1 (Emolumentos)string

Migração XML → JSON

Regras gerais

1
Atributos PascalCase → propriedades camelCase

VersaoLayoutversaoLayout; CodServicocodigoServico.

2
Elementos aninhados → objetos; listas → arrays

<X>...</X><X>...</X> → array [ {...}, {...} ].

3
Atributos enum S/N → boolean

IndPorProcuracao="S""indPorProcuracao": true.

4
Datas dd/mm/aaaa → ISO 8601

15/04/2026"2026-04-15"; data-hora vai com offset -03:00.

5
Decimais com vírgula → ponto, em string

"1.234,56""1234.56" (regex ^\d+\.\d{2}$).

6
Discriminação por tipoAto

Elementos como <Escritura>/<Procuracao> viram tipoAto + dadosAto via oneOf + const.

Mapeamento — Envelope & Ato base

XML 2.04 (XPath)JSON 3.0.0 (caminho)Regra
/Notas/@VersaoLayoutremessa.versaoLayoutEra "2.04". Agora "3.0.0".
/Notas/Remessa/@Idremessa.idEra número (max 25). Agora UUID v4.
/Notas/Remessa/@CodServicoremessa.codigoServicoMesmo formato.
/Notas/Remessa/@TipoOperacaoremessa.tipoOperacaoI/AINCLUSAO/ALTERACAO.
/Notas/Remessa/@Softwareremessa.software.nomeTexto livre virou objeto {nome, versao}.
/Notas/Remessa/@Ambienteremessa.ambienteHML/PRDHOMOLOGACAO/PRODUCAO.
(sem equivalente XML)remessa.dataGeracaoNovo. Instante ISO com offset.
Ato/@SelodadosAto.seloMesmo padrão ^[A-Z]{4}\d{5}$.
Ato/@LocalPraticadadosAto.localPraticaS/FSEDE/FORA_DA_SEDE.
Ato/@IndAtoEletronicodadosAto.indAtoEletronicoS/Ntrue/false.
Transmissao/@CCTdadosAto.cctMesmo formato.

Mapeamento — Escritura & Imóvel

XML 2.04JSON 3.0.0Regra
Escritura/@TipoAtotipoAto raiz + dadosAto.tipoEscrituraNLE/NCE → LAVRATURA_ESCRITURA/CERTIDAO_ESCRITURA.
Escritura/@TipoEscrituradadosAto.codigoTipoEscrituraCódigo CGJ n° 8 preservado.
Escritura/@MoedadadosAto.moedaCr$/R$CRUZEIRO/REAL.
Imovel/@TipoRecolhimentoimoveis*.tipoRecolhimentoN/I/FNORMAL/ISENTO/FUTURO.
Imovel/@Tipoimoveis*.tipoConstrucaoT/ETERRENO/EDIFICACAO.
ImovelRural/@UnidadeMedidaimoveisRurais[].unidadeMedida1..8 → enum.

Mapeamento — Pessoa & Filiação

XML 2.04JSON 3.0.0Regra
PessoaFisica/@SexopessoaFisica.sexoF/M/X/I → enum.
PessoaFisica/@CPFpessoaFisica.cpfApenas dígitos.
PessoaFisica/@JustificativaAusenciaCPFpessoaFisica.justificativaAusenciaCpf1/2/3 → enum.
PessoaFisica/@EstadoCivilpessoaFisica.estadoCivil1..8 → enum.
PessoaFisica/@NumeroConsultaLei11441_07pessoaFisica.numeroConsultaLei11441Renomeado (sem sufixo _07).
Genitor/@TipoFiliacaogenitor.tipoFiliacaoM/PMAE/PAI.
PessoaJuridica/@CNPJpessoaJuridica.cnpjApenas dígitos.
PessoaJuridica/@JustificativaAusenciaCNPJpessoaJuridica.justificativaAusenciaCnpj1/2 → enum.

Mapeamento — Demais atos & Emolumentos

XML 2.04JSON 3.0.0Regra
Procuracao/@FinalidadeProcuracaodadosAto.finalidadeProcuracao1/2/3 → enum.
Firma/@TipoDocumentodadosAto.tipoDocumento1..5 → enum.
CertidaoGenerica/@TipoCertidaodadosAto.tipoCertidaoG1..G4 → enum.
CertidaoGenerica/@IndNegativadadosAto.negativaS/N → boolean.
MaterializacaoDocEletronico/@OrigemDocdadosAto.origemDocW/AWEBSITE/ARQUIVO.
DesistenciaAto/@MotivodadosAto.motivo1/2/3 → enum.
AtoVinculado/@TipoVinculoatosVinculados[].tipoVinculoH/C/T/U/A/E/F/J/M/Y → enum.
Emolumentos/@TipoCobrancaemolumentos.tipoCobrancaJG/CC/SC/NH/AC/PA → enum.
Emolumentos/ItemEmolumento/@Quantidadeemolumentos.itens[].quantidadestring → integer.

Cobertura: 100% dos atributos do XSD Schema_Notas_2.04.xsd. Tabela exaustiva em layout.md §8.2.

Regras de negócio (invariantes)

Regras não expressas no schema — validação adicional no servidor SFE/CGJ-RJ. Implementadas no harness _build\ e na camada de aplicação SELO2.

9.1
Eletrônico exige URL+hash

Se indAtoEletronico=true: urlPdfAto, hashPdfAto, urlDossie, hashDossie obrigatórios. Em atos selados, matriculaNotarialEletronica também.

9.2
Suprimir emolumentos em JG/SC/AC

Quando tipoCobranca ∈ {JUSTICA_GRATUITA, SEM_COBRANCA, ATO_CONJUNTO}, todos os campos monetários e itens devem ser ausentes.

9.3
SC exige vínculo

tipoCobranca=SEM_COBRANCA (ato corretivo de erro material) exige atosVinculados[] apontando ao ato com erro.

9.4
AC referencia ato principal

tipoCobranca=ATO_CONJUNTO exige atosVinculados[] com tipoVinculo=ATO_CONJUNTO referenciando o ato principal (lista duplamente encadeada).

9.5
Procuração por escritura

Quando EscrituraDados.indPorProcuracao=true, o objeto dadosProcuracao é obrigatório.

9.6
Valor declarado em escritura

Quando EscrituraDados.indValorDeclarado=true, valorDeclarado é obrigatório.

9.7
Procuração/Testamento com original

Para atos referenciando ato original: apenas um entre procuracaoOriginal/testamentoOriginal (sem selo) OU atosVinculados (com selo).

9.8
Outorgado ausente em revogação

Em PROCURACAO_REVOGACAO com procuracaoOriginal.outorgadoAusente=true, numeroNotificacao é obrigatório.

9.9
Etiqueta + tipo documento em reconhecimento

Em FIRMA_RECONHECIMENTO_SEMELHANCA/...AUTENTICIDADE, codigoEtiqueta e tipoDocumento obrigatórios. Se tipoDocumento=OUTROS, descricaoDocumento também.

9.10
Materialização ARQUIVO vs WEBSITE

origemDoc=WEBSITE exige url. origemDoc=ARQUIVO exige nomeArquivo, formatoArquivo, dataArquivo, tamanhoArquivoKb.

9.11
Data autenticação = data prática

Em autenticações, dataAutenticacao deve ter parte de data igual a dataPratica. Idem para dataImpressao em materialização.

9.12
Selo dentro da faixa do serviço

selo e cct devem pertencer à faixa autorizada para remessa.codigoServico. Validação operacional do servidor.

9.13
CPF/CNPJ válido

CPF/CNPJ devem passar pelo dígito verificador. Schema valida apenas formato.

9.14
Sem CPF exige justificativa OU outro documento

Pessoa.cpf ausente exige ou justificativaAusenciaCpf ou numeroIdentidade.

9.15
Limite operacional CPF apresentante

Em AUTENTICACAO_CPF: vedado CPF de empregado celetista; criticadas mais de 20/mês para mesmo CPF de empregado e mais de 50/mês para qualquer CPF.

9.16
Hashes não são alteráveis

ALTERACAO_URL permite trocar URLs mas não hashes.

9.17
Limite do array atos

remessa.atos[] ≤ 5.000. Volumes maiores → fatiar em remessas distintas com id próprios.

Validação e CI

Harness em _build\. Cobre as duas pilhas de produção: .NET Framework 4.8.1 (homologação CGJ-RJ) e .NET 10 (SELO2 Desktop / SGF 2026).

Entrypoints
  • valida.ps1 — entrypoint PowerShell.
  • valida.py — validação via jsonschema (Python).
  • valida.vb + valida.vbproj — Newtonsoft.Json.Schema (.NET Framework 4.8.1).
  • ValidaLayout.NET10.cs + .csproj — JsonSchema.Net (.NET 10).
Saídas
  • _build\validacao_schema.txt — auto-validação do schema vs meta-schema draft-07.
  • _build\validacao_exemplo.txt — validação do exemplo contra o schema.

Toda alteração no layout_schema.json deve manter ambos os relatórios verdes. Ver _build\README.md.

Versionamento e histórico

VersãoDataMudanças
3.0.0 2026-05-07 Primeira versão JSON. Sucessora do XML 2.04. Migração 100% dos atributos do XSD. Tipagem forte, enums humanizados, discriminação explícita via tipoAto + dadosAto.

Janela de transição XML→JSON: 180 dias após publicação.

Pontos de atenção

1. Códigos preservados como string

Mantemos string (não integer) os campos que são chaves de tabela CGJ-RJ/IBGE/ONU. Razão: mudança quebraria reconciliação financeira FUNARPEN e integração MAS.

2. tipoFiliacao sem GENITOR

XSD legado de Notas limita a M/P. Diferente do RCPN (Provimento CNJ 73/2018 introduz GENITOR). Se a CGJ atualizar, basta acrescentar ao enum em minor.

3. Sexo.NAO_BINARIE mantido

XSD admite X. Traduzido para NAO_BINARIE conforme nomenclatura canônica (Provimento CNJ 73/2018).

4. Moeda histórica

O domínio Moeda cobre o seriado histórico (Cruzeiro → Real). Necessário para certidões de escrituras anteriores a 1994.

5. Selo + CCT em AlteracaoEmolumentos / AlteracaoUrl

PDF afirma que o atributo Selo aceita selo OU CCT. Mantivemos o nome selo (campo único) — validação operacional servidor decide qual é.

6. Visto como ATO_SELADO

Visto foi classificado como ATO_SELADO (não categoria própria). Justificativa: tem selo + aleatório + livro + folha — perfeitamente conforme padrão.

7. AC (ato conjunto) como tipoCobranca

Embora semanticamente sugira "categoria de ato", marca o modo de cotação (cotado no ato principal). Não confundir com tipoVinculo=ATO_CONJUNTO, que marca o vínculo entre atos.

8. Suprimir vs explicitar zero

Quando emolumentos são suprimidos (JG/SC/AC), o objeto emolumentos ainda existe — apenas com tipoCobranca preenchido. Não codificar valorTotalEmolumentos: "0.00".

9. Diferenças em relação ao XSD
  • Adicionado dataGeracao no envelope (timestamp ISO com offset).
  • Adicionado software.versao separado de software.nome.
  • TipoOperacao=A agora ALTERACAO.
  • IndCertidaoEletronica: XSD permite apenas S; em JSON é boolean puro.
10. Divergências documentadas

Nenhuma divergência entre PDF e XSD identificada que afete o contrato. Nenhum código ambíguo. Cobertura: 100%.

Referências

Artefatos do contrato
  • layout.md — especificação canônica em Markdown.
  • layout_schema.json — JSON Schema draft-07.
  • exemplo.json — instância representativa de cada ato.
  • _build\ — harness de validação (PS, Python, .NET 4.8.1, .NET 10).
  • _migracao\lado_a_lado.md — comparativo XML × JSON por ato.