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.
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:
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.
Encerramento de Livro, Folha Adicional, Informação Verbal, Complemento de Emolumentos e Desistência.
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).
NAO_BINARIEPRIMEIRA_AQUISICAO)valorSeloEletronico)nacionalidadeOnu)$id: https://layouts.tjrj.jus.br/sfe/notas/v3.0.0/layout_schema.jsonJSON já escapa nativamente. "Santos & Silva LTDA" dispensa &.
Diacríticos UTF-8 nativos — sem ISO-8859-1 do XML legado.
Padrão: <COD>_<AAAAMMDD>_NT_<I|A>_<HHMMSS>.json
// 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
Mesmo limite do XML legado. Volumes maiores → fatiar em remessas com id distintos.
Hard limit do servidor SFE. JSON tipicamente comprime bem em transporte HTTPS.
idUUID v4 em remessa.id. Reenvios com mesmo UUID são tratados como duplicados.
| Domínio | Tipo JSON | Padrão |
|---|---|---|
| Inteiros (qtd, códigos numéricos) | integer | minimum / maximum |
| Códigos opacos com letras (selo, CCT) | string | ^[A-Z]{4}\d{5}$ |
| Monetários | string | ^\d+\.\d{2}$ |
| Data | string formato date | YYYY-MM-DD |
| Data-hora | string formato date-time | YYYY-MM-DDThh:mm:ss-03:00 |
| Boolean | boolean | true/false (zero "S"/"N") |
| UUID | string formato uuid | RFC 4122 |
| Hash SHA-256 | string | ^[A-Fa-f0-9]{64}$ |
| URL | string formato uri | maxLength: 2083 |
Em datas sem ato praticado, alimentar remessa.justificativasAusencia[]:
{
"justificativasAusencia": [
{ "data": "2026-05-04", "motivo": "Feriado municipal" }
]
}
{
"$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": []
}
}
| Campo | Tipo | Obrig. | Descrição |
|---|---|---|---|
id | UUID v4 | ✅ | Identificador ú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. |
tipoOperacao | enum TipoOperacao | ✅ | INCLUSAO ou ALTERACAO. |
ambiente | enum Ambiente | ✅ | HOMOLOGACAO ou PRODUCAO. |
software.nome | string (2..100) | ✅ | Nome do software gerador. |
software.versao | string (1..50) | ✅ | Versão do software. |
dataGeracao | date-time com offset | ✅ | Instante da geração. |
atos | array de Ato | ⬜ | Lista de atos. Máx. 5000. |
justificativasAusencia | array | ⬜ | Datas sem ato praticado. |
Os 35 tipos de ato disponíveis no contrato JSON, com a estrutura $ref que governa dadosAto:
| # | tipoAto | Categoria | $ref |
|---|---|---|---|
| 1 | ESCRITURA_LAVRATURA | ATO_SELADO | EscrituraDados |
| 2 | ESCRITURA_CERTIDAO | ATO_SELADO | EscrituraDados |
| 3 | PROCURACAO_LAVRATURA | ATO_SELADO | ProcuracaoDados |
| 4 | PROCURACAO_CERTIDAO | ATO_SELADO | ProcuracaoDados |
| 5 | PROCURACAO_SUBSTABELECIMENTO | ATO_SELADO | ProcuracaoDados |
| 6 | PROCURACAO_REVOGACAO | ATO_SELADO | ProcuracaoDados |
| 7 | TESTAMENTO_REGISTRO_PUBLICO | ATO_SELADO | TestamentoDados |
| 8 | TESTAMENTO_REGISTRO_CERRADO | ATO_SELADO | TestamentoDados |
| 9 | TESTAMENTO_CERTIDAO_PUBLICO | ATO_SELADO | TestamentoDados |
| 10 | TESTAMENTO_CERTIDAO_CERRADO | ATO_SELADO | TestamentoDados |
| 11 | TESTAMENTO_REVOGATORIO | ATO_SELADO | TestamentoDados |
| 12 | TESTAMENTO_CERTIDAO_REVOGACAO | ATO_SELADO | TestamentoDados |
| 13 | FIRMA_ABERTURA | ATO_SELADO | FirmaDados |
| 14 | FIRMA_RECONHECIMENTO_SEMELHANCA | ATO_SELADO | FirmaDados |
| 15 | FIRMA_RECONHECIMENTO_AUTENTICIDADE | ATO_SELADO | FirmaDados |
| 16 | FIRMA_RECONHECIMENTO_CHANCELA | ATO_SELADO | FirmaDados |
| 17 | FIRMA_RECONHECIMENTO_SINAL_PUBLICO | ATO_SELADO | FirmaDados |
| 18 | ATO_NOTARIAL_ELETRONICO_RAEDD | ATO_SELADO | AtoNotarialEletronicoDados |
| 19 | ATO_NOTARIAL_ELETRONICO_RFAV | ATO_SELADO | AtoNotarialEletronicoDados |
| 20 | ATO_NOTARIAL_ELETRONICO_AEV | ATO_SELADO | AtoNotarialEletronicoDados |
| 21 | ATO_NOTARIAL_ELETRONICO_AD_CENAD | ATO_SELADO | AtoNotarialEletronicoDados |
| 22 | AUTENTICACAO_CPF | ATO_SELADO | AutenticacaoCpfDados |
| 23 | AUTENTICACAO_RG | ATO_SELADO | AutenticacaoRgDados |
| 24 | AUTENTICACAO_ESTRANGEIRO | ATO_SELADO | AutenticacaoEstrangeiroDados |
| 25 | CERTIDAO_GENERICA | ATO_SELADO | CertidaoGenericaDados |
| 26 | MATERIALIZACAO_DOC_ELETRONICO | ATO_SELADO | MaterializacaoDocEletronicoDados |
| 27 | APOSTILAMENTO | ATO_SELADO | ApostilamentoDados |
| 28 | VISTO | ATO_SELADO | VistoDados |
| 29 | ENCERRAMENTO_LIVRO | TRANSMISSAO_NAO_SELADA | EncerramentoLivroDados |
| 30 | FOLHA_ADICIONAL_COMPLEMENTO | TRANSMISSAO_NAO_SELADA | FolhaAdicionalComplementoDados |
| 31 | INFORMACAO_VERBAL | TRANSMISSAO_NAO_SELADA | InformacaoVerbalDados |
| 32 | COMPLEMENTO_EMOLUMENTOS | TRANSMISSAO_NAO_SELADA | ComplementoEmolumentosDados |
| 33 | DESISTENCIA_ATO | TRANSMISSAO_NAO_SELADA | DesistenciaAtoDados |
| 34 | ALTERACAO_EMOLUMENTOS | OPERACAO | AlteracaoEmolumentosDados |
| 35 | ALTERACAO_URL | OPERACAO | AlteracaoUrlDados |
Total: 35 atos.
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.
| Campo | Tipo | Obrig. | Descrição |
|---|---|---|---|
tipoParticipante | ^\d{1,3}$ | ⬜ | Tabela CGJ-RJ n° 2 (Tipos de Participante). |
nome | string (2..250) | ✅ | Nome completo. |
sexo | enum Sexo | ⬜ | FEMININO, MASCULINO, NAO_BINARIE, IGNORADO. |
dataNascimento | date | ⬜ | — |
numeroIdentidade | string (2..25) | 🔶 | Obrigatório quando cpf ausente. |
orgaoEmissor | string (2..70) | ⬜ | — |
cpf | ^\d{11}$ | 🔶 | Apenas dígitos. |
justificativaAusenciaCpf | enum | 🔶 | NAO_POSSUI / NAO_DECLARADO / ESTRANGEIRO. |
nacionalidadeOnu | integer (1..999) | ⬜ | Código ONU/M49. Brasil = 76. |
estadoCivil | enum EstadoCivil | ⬜ | — |
numeroPreTeste | string (2..25) | ⬜ | Exclusivo para Procuração. |
numeroConsultaBib | string (2..25) | ⬜ | Indisponibilidade de bens. |
numeroConsultaLei11441 | string (2..25) | ⬜ | Inventário/separação/divórcio Lei 11.441/07. |
filiacao | Filiacao | ⬜ | Máximo 2 genitores. |
| Campo | Tipo | Obrig. | Descrição |
|---|---|---|---|
tipoParticipante | ^\d{1,3}$ | ⬜ | Tabela CGJ-RJ n° 2. |
nome | string (2..250) | ✅ | Razão social. |
cnpj | ^\d{14}$ | 🔶 | Apenas dígitos. |
justificativaAusenciaCnpj | enum | 🔶 | NAO_POSSUI / NAO_DECLARADO. |
nacionalidadeOnu | integer (1..999) | ⬜ | — |
numeroConsultaBib | string (2..25) | ⬜ | — |
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" }
]
}
}
Coleção de pessoas físicas e jurídicas participantes do ato:
{
"participantes": {
"pessoasFisicas": [ { /* Pessoa */ } ],
"pessoasJuridicas": [ { /* PessoaJuridica */ } ]
}
}
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:
ImovelRuralnumeroIncralocalareaunidadeMedidadenominacaonumeroInscricaoSrfImovelUrbanologradourobairroEstrutura de cotação de emolumentos do ato:
| Campo | Tipo | Obrig. | Descrição |
|---|---|---|---|
tipoCobranca | enum TipoCobranca | ✅ | JUSTICA_GRATUITA / COM_COBRANCA / SEM_COBRANCA / NIHIL / ATO_CONJUNTO / PRIMEIRA_AQUISICAO. |
valorTotalEmolumentos | monetário | 🔶 | Soma. Suprimido em JG/SC/AC. |
fetj | monetário | ⬜ | Lei 3.217/1999 — 20%. |
fundperj | monetário | ⬜ | Lei 4.664/2005 — 5%. |
funperj | monetário | ⬜ | LC 111/2006 — 5%. |
funarpen | monetário | ⬜ | FUNARPEN/RJ — 4%. |
ressag | monetário | ⬜ | Ressarcimento de gratuidade — 2%. |
valorDistribuidor | monetário | ⬜ | — |
valorSeloEletronico | monetário | ⬜ | Lei 9.873/2022 art. 11. |
valorIss | monetário | ⬜ | — |
itens | array de ItemEmolumento (max 100) | 🔶 | Suprimido em JG/SC/AC. |
ItemEmolumento| Campo | Tipo | Obrig. | Descrição |
|---|---|---|---|
ano | integer (2000..2099) | ⬜ | Ano de vigência da tabela. Padrão = dataPratica. |
tabela | string (1..8) | ✅ | Tabela CGJ-RJ n° 1 (Emolumentos). |
item | string (1..20) | ✅ | Item da tabela (geralmente romano). |
subItem | string (0..20) | ⬜ | Subitem da tabela. |
quantidade | integer (1..9999) | ✅ | — |
complemento | string (2..200) | ⬜ | — |
excecao | string (2..200) | ⬜ | — |
Vínculo entre o ato corrente e outro ato (conjunto, complemento, ato original, etc.).
| Campo | Tipo | Obrig. |
|---|---|---|
tipoVinculo | enum TipoVinculo | ✅ |
codigoServico | ^\d{1,5}$ | ⬜ |
selo | ^[A-Z]{4}\d{5}$ | ⬜ |
aleatorio | string (3..10) | ⬜ |
tipoSelo | enum TipoSelo | ⬜ |
cct | ^[A-Z]{4}\d{5}$ | ⬜ |
dataPratica | date | ⬜ |
nomeServico | string (2..100) | 🔶 |
estadoServico | ^[A-Z]{2}$ | 🔶 |
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).
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.
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).
| Campo | Tipo | Obrig. |
|---|---|---|
tipoEscritura | enum TipoEscritura | ✅ |
codigoTipoEscritura | ^\d{1,3}$ | ✅ |
descricaoSubtipo | string (2..250) | 🔶 (codigoTipoEscritura='999') |
dataAssinaturaFinal | date | ⬜ |
indAlvaraJudicial | boolean | ✅ |
indPorProcuracao | boolean | ✅ |
indValorDeclarado | boolean | ✅ |
valorDeclarado | monetário | 🔶 (indValorDeclarado=true) |
moeda | enum Moeda | ⬜ |
dadosProcuracao | DadosProcuracaoEscritura | 🔶 (indPorProcuracao=true) |
objetos | ObjetosEscritura | ⬜ |
participantes | Participantes | ✅ |
atosVinculados | array | ⬜ |
emolumentos | Emolumentos | ✅ |
{
"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 }]
}
}
}
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[].
| Campo | Tipo | Obrig. |
|---|---|---|
tipoProcuracao | enum TipoProcuracao | ✅ |
finalidadeProcuracao | enum FinalidadeProcuracao | ⬜ |
tipoLivro | enum TipoLivroProcuracao | ✅ |
dataVigencia | date | ⬜ |
procuracaoOriginal | ProcuracaoOriginal | 🔶 (NSP/NRP/NCP com ato antigo) |
participantes | Participantes | ✅ |
atosVinculados | array | ⬜ |
emolumentos | Emolumentos | ✅ |
| Campo | Tipo | Obrig. |
|---|---|---|
tipoTestamento | enum TipoTestamento | ✅ |
testamentoOriginal | TestamentoOriginal | 🔶 (NCTP/NCTC/NTR antigos) |
testador | Pessoa | ✅ |
atosVinculados | array | ⬜ |
emolumentos | Emolumentos | ✅ |
Regra: escolher entre testamentoOriginal (legado)
ou atosVinculados (com selo) para vincular ao ato original.
| Campo | Tipo | Obrig. |
|---|---|---|
tipoFirma | enum TipoFirma | ✅ |
codigoEtiqueta | string (2..25) | 🔶 (SEMELHANCA/AUTENTICIDADE) |
tipoDocumento | enum TipoDocumentoFirma | 🔶 (idem) |
descricaoDocumento | string (2..500) | 🔶 (tipoDocumento=OUTROS) |
pessoasFirma | array de Pessoa (≥1) | ✅ |
atosVinculados | array | ⬜ |
emolumentos | Emolumentos | ✅ |
Regra: em FIRMA_ABERTURA, pessoasFirma[]
exige dados completos + filiação. Em reconhecimentos, apenas nome é suficiente.
RAEDD = e-Not Assina · RFAV = videoconferência ·
AEV = Autorização Eletrônica de Viagem · AD-CENAD = CENAD.
| Campo | Tipo | Obrig. |
|---|---|---|
tipoAtoNotarialEletronico | enum | ✅ |
emolumentos | Emolumentos | ✅ |
Regra: todos os atos desta família são eletrônicos por natureza —
indAtoEletronico=true + URLs/hashes + matriculaNotarialEletronica recomendados.
AUTENTICACAO_CPF| Campo | Tipo | Obrig. |
|---|---|---|
codigoEtiqueta | string (2..25) | ✅ |
dataAutenticacao | date-time | ✅ |
cpfApresentante | ^\d{11}$ | ✅ |
emolumentos | Emolumentos | ✅ |
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| Campo | Tipo | Obrig. |
|---|---|---|
codigoEtiqueta | string (2..25) | ✅ |
dataAutenticacao | date-time | ✅ |
nomeApresentante | string (2..200) | ✅ |
enderecoApresentante | string (2..250) | ✅ |
identidadeApresentante | string (2..25) | ✅ |
orgaoEmissorIdentidade | string (2..70) | ✅ |
dataEmissaoIdentidade | date | ✅ |
emolumentos | Emolumentos | ✅ |
AUTENTICACAO_ESTRANGEIRO| Campo | Tipo | Obrig. |
|---|---|---|
codigoEtiqueta | string (2..25) | ✅ |
dataAutenticacao | date-time | ✅ |
nomeApresentante | string (2..200) | ✅ |
enderecoApresentante | string (2..250) | ✅ |
numeroPassaporte | string (2..25) | ✅ |
paisEmissor | string (2..50) | ✅ |
emolumentos | Emolumentos | ✅ |
Certidão genérica positiva ou negativa de Escritura (G1),
Procuração (G2), Testamento (G3) ou Firma (G4).
| Campo | Tipo | Obrig. |
|---|---|---|
tipoCertidao | enum TipoCertidaoGenerica | ✅ |
negativa | boolean | ✅ |
participantes | Participantes | ✅ |
atosVinculados | array | ⬜ |
emolumentos | Emolumentos | ✅ |
Impressão com fé pública de documento eletrônico originário de website ou arquivo.
| Campo | Tipo | Obrig. |
|---|---|---|
origemDoc | enum OrigemDocMaterializacao | ✅ |
qtdTotalFolhas | integer | ✅ |
numeroFolha | integer | ✅ |
dataImpressao | date-time | ✅ |
url | uri (max 1000) | 🔶 (origemDoc=WEBSITE) |
nomeArquivo | string (2..100) | 🔶 (origemDoc=ARQUIVO) |
formatoArquivo | string (2..4) | 🔶 (origemDoc=ARQUIVO) |
dataArquivo | date-time | 🔶 (origemDoc=ARQUIVO) |
tamanhoArquivoKb | integer | 🔶 (origemDoc=ARQUIVO) |
emolumentos | Emolumentos | ✅ |
Autentica documento público para uso em países signatários da Convenção da Haia.
| Campo | Tipo | Obrig. |
|---|---|---|
documento | string (2..50) | ✅ |
apostilador | string (2..50) | ✅ |
documentoApostilador | string (2..25) | ✅ |
participantes | Participantes | ✅ |
emolumentos | Emolumentos | ✅ |
Apostilamento por embaixada/consulado — revalidação de ato anterior.
| Campo | Tipo | Obrig. |
|---|---|---|
revalidada | boolean | ✅ |
participantes | Participantes | ✅ |
atosVinculados | array | ⬜ |
emolumentos | Emolumentos | ✅ |
Regra: as informações sobre o ato original devem estar em atosVinculados[].
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.
| Campo | Tipo | Obrig. |
|---|---|---|
livro | string (2..25) | ✅ |
qtdTotalFolhas | integer | ✅ |
identificacaoLivro | string (2..100) | ✅ |
dataEncerramento | date | ✅ |
Complemento de certidão quanto a emolumentos e fundos.
| Campo | Tipo | Obrig. |
|---|---|---|
qtdPaginasExcedentes | integer | ✅ |
atosVinculados | array (≥1) | ✅ |
emolumentos | Emolumentos | ✅ |
| Campo | Tipo | Obrig. |
|---|---|---|
numeroAto | string (2..25) | ✅ |
nome | string (2..200) | ✅ |
emolumentos | Emolumentos | ✅ |
| Campo | Tipo | Obrig. |
|---|---|---|
atosVinculados | array (≥1) | ✅ |
emolumentos | Emolumentos | ✅ |
Regra: atosVinculados[].tipoVinculo deve ser
ATO_COMPLEMENTO_EMOLUMENTOS.
| Campo | Tipo | Obrig. |
|---|---|---|
tipoAtoOrigem | string (2..250) | ✅ |
motivo | enum MotivoDesistencia | ✅ |
descricaoMotivo | string (2..250) | 🔶 (motivo=OUTROS) |
emolumentos | Emolumentos | ✅ |
Operações de manutenção sobre atos previamente transmitidos. Categoria OPERACAO.
| Campo | Tipo | Obrig. |
|---|---|---|
selo | ^[A-Z]{4}\d{5}$ | ✅ |
emolumentos | Emolumentos | ✅ |
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.
Exclusiva para atos eletrônicos.
| Campo | Tipo | Obrig. |
|---|---|---|
selo | ^[A-Z]{4}\d{5}$ | ✅ |
urlPdfAto | uri | ⬜ |
urlDossie | uri | ⬜ |
Regra: hashes não podem ser alterados.
Operação deve ser enviada em ALTERACAO (tipoOperacao=ALTERACAO).
Mapeamento dos enums humanizados em JSON 3.0.0 contra os códigos abreviados do XML 2.04.
TipoOperacaoINCLUSAO | I |
ALTERACAO | A |
AmbienteHOMOLOGACAO | HML |
PRODUCAO | PRD |
TipoCobrancaJUSTICA_GRATUITA | JG |
COM_COBRANCA | CC |
SEM_COBRANCA | SC |
NIHIL | NH |
ATO_CONJUNTO | AC |
PRIMEIRA_AQUISICAO | PA |
Sexo (Provimento CNJ 73/2018)FEMININO | F |
MASCULINO | M |
NAO_BINARIE | X |
IGNORADO | I |
EstadoCivilSOLTEIRO | 1 |
CASADO | 2 |
VIUVO | 3 |
SEPARADO_JUDICIALMENTE | 4 |
DIVORCIADO | 5 |
SEPARADO_CONSENSUALMENTE | 6 |
DESQUITADO | 7 |
IGNORADO | 8 |
TipoVinculoATO_ESCRITURA | H |
ATO_CERTIDAO | C |
ATO_TESTAMENTO | T |
ATO_PROCURACAO | U |
ATO_DE_ACERVO | A |
ATO_COM_ERRO_MATERIAL | E |
ATO_ABERTURA_FIRMA | F |
ATO_CONJUNTO | J |
ATO_COMPLEMENTO_EMOLUMENTOS | M |
ATO_TESTAMENTO_REVOGATORIO | Y |
TipoLocalPratica & TipoSeloSEDE | S |
FORA_DA_SEDE | F |
FISICO | F |
ELETRONICO | E |
JustificativaAusenciaCpf & ...CnpjNAO_POSSUI | 1 |
NAO_DECLARADO | 2 |
ESTRANGEIRO (CPF) | 3 |
TipoLivroProcuracao & FinalidadeProcuracaoPROCURACAO | P |
ESCRITURA | E |
MISTO | M |
PREVIDENCIARIA | 1 |
BENS_MOVEIS_IMOVEIS_VALORES | 2 |
COMUM | 3 |
TipoCertidaoGenerica & OrigemDocMaterializacaoESCRITURA | G1 |
PROCURACAO | G2 |
TESTAMENTO | G3 |
FIRMA | G4 |
WEBSITE | W |
ARQUIVO | A |
TipoDocumentoFirmaCONTRATOS | 1 |
DECLARACAO | 2 |
PROCURACAO | 3 |
COMPRA_VENDA_VEICULOS_DUT | 4 |
OUTROS | 5 |
TipoRecolhimentoImovel & TipoConstrucaoImovelNORMAL | N |
ISENTO | I |
FUTURO | F |
TERRENO | T |
EDIFICACAO | E |
UnidadeMedidaAreaMETRO | 1 |
KILOMETRO | 2 |
HECTARE | 3 |
ACRE | 4 |
ARE | 5 |
ALQUEIRE | 6 |
CENTIARES | 7 |
LEGUA | 8 |
Moeda (série histórica)CRUZEIRO | Cr$ | 1942–67, 1970–86 |
CRUZEIRO_NOVO | NCr$ | 1967–70 |
CRUZADO | Cz$ | 1986–89 |
CRUZADO_NOVO | NCz$ | 1989–90 |
CRUZEIRO_REAL | CR$ | 1993–94 |
REAL | R$ | 1994– |
MotivoDesistencia & TipoImpostoTransmissaoFALTA_ASSINATURA | 1 |
DESISTENCIA | 2 |
OUTROS | 3 |
ITBI | ITBI |
ITD | ITD |
TipoFiliacaoMAE | M |
PAI | P |
Em Notas o XSD legado não admite GENITOR
(limitação de 2 valores). Diferente do RCPN.
Mantidos como string por serem chaves de tabela CGJ-RJ ou IBGE/ONU:
| Campo | Tabela externa | Tipo |
|---|---|---|
Pessoa.tipoParticipante | CGJ-RJ n° 2 | string ^\d{1,3}$ |
Pessoa.nacionalidadeOnu | ONU/M49 | integer |
Imovel.codigoMunicipio | CGJ-RJ n° 9 (Municípios) | string |
Imovel.indicadoCodigoServicoRi | CGJ-RJ n° 6 (Serviços Extrajudiciais) | string |
EscrituraDados.codigoTipoEscritura | CGJ-RJ n° 8 (Tipos de Escritura) | string |
ItemEmolumento.tabela / item / subItem | CGJ-RJ n° 1 (Emolumentos) | string |
VersaoLayout → versaoLayout; CodServico → codigoServico.
<X>...</X><X>...</X> → array [ {...}, {...} ].
IndPorProcuracao="S" → "indPorProcuracao": true.
15/04/2026 → "2026-04-15"; data-hora vai com offset -03:00.
"1.234,56" → "1234.56" (regex ^\d+\.\d{2}$).
tipoAtoElementos como <Escritura>/<Procuracao> viram tipoAto + dadosAto via oneOf + const.
| XML 2.04 (XPath) | JSON 3.0.0 (caminho) | Regra |
|---|---|---|
/Notas/@VersaoLayout | remessa.versaoLayout | Era "2.04". Agora "3.0.0". |
/Notas/Remessa/@Id | remessa.id | Era número (max 25). Agora UUID v4. |
/Notas/Remessa/@CodServico | remessa.codigoServico | Mesmo formato. |
/Notas/Remessa/@TipoOperacao | remessa.tipoOperacao | I/A → INCLUSAO/ALTERACAO. |
/Notas/Remessa/@Software | remessa.software.nome | Texto livre virou objeto {nome, versao}. |
/Notas/Remessa/@Ambiente | remessa.ambiente | HML/PRD → HOMOLOGACAO/PRODUCAO. |
| (sem equivalente XML) | remessa.dataGeracao | Novo. Instante ISO com offset. |
Ato/@Selo | dadosAto.selo | Mesmo padrão ^[A-Z]{4}\d{5}$. |
Ato/@LocalPratica | dadosAto.localPratica | S/F → SEDE/FORA_DA_SEDE. |
Ato/@IndAtoEletronico | dadosAto.indAtoEletronico | S/N → true/false. |
Transmissao/@CCT | dadosAto.cct | Mesmo formato. |
| XML 2.04 | JSON 3.0.0 | Regra |
|---|---|---|
Escritura/@TipoAto | tipoAto raiz + dadosAto.tipoEscritura | NLE/NCE → LAVRATURA_ESCRITURA/CERTIDAO_ESCRITURA. |
Escritura/@TipoEscritura | dadosAto.codigoTipoEscritura | Código CGJ n° 8 preservado. |
Escritura/@Moeda | dadosAto.moeda | Cr$/R$ → CRUZEIRO/REAL. |
Imovel/@TipoRecolhimento | imoveis*.tipoRecolhimento | N/I/F → NORMAL/ISENTO/FUTURO. |
Imovel/@Tipo | imoveis*.tipoConstrucao | T/E → TERRENO/EDIFICACAO. |
ImovelRural/@UnidadeMedida | imoveisRurais[].unidadeMedida | 1..8 → enum. |
| XML 2.04 | JSON 3.0.0 | Regra |
|---|---|---|
PessoaFisica/@Sexo | pessoaFisica.sexo | F/M/X/I → enum. |
PessoaFisica/@CPF | pessoaFisica.cpf | Apenas dígitos. |
PessoaFisica/@JustificativaAusenciaCPF | pessoaFisica.justificativaAusenciaCpf | 1/2/3 → enum. |
PessoaFisica/@EstadoCivil | pessoaFisica.estadoCivil | 1..8 → enum. |
PessoaFisica/@NumeroConsultaLei11441_07 | pessoaFisica.numeroConsultaLei11441 | Renomeado (sem sufixo _07). |
Genitor/@TipoFiliacao | genitor.tipoFiliacao | M/P → MAE/PAI. |
PessoaJuridica/@CNPJ | pessoaJuridica.cnpj | Apenas dígitos. |
PessoaJuridica/@JustificativaAusenciaCNPJ | pessoaJuridica.justificativaAusenciaCnpj | 1/2 → enum. |
| XML 2.04 | JSON 3.0.0 | Regra |
|---|---|---|
Procuracao/@FinalidadeProcuracao | dadosAto.finalidadeProcuracao | 1/2/3 → enum. |
Firma/@TipoDocumento | dadosAto.tipoDocumento | 1..5 → enum. |
CertidaoGenerica/@TipoCertidao | dadosAto.tipoCertidao | G1..G4 → enum. |
CertidaoGenerica/@IndNegativa | dadosAto.negativa | S/N → boolean. |
MaterializacaoDocEletronico/@OrigemDoc | dadosAto.origemDoc | W/A → WEBSITE/ARQUIVO. |
DesistenciaAto/@Motivo | dadosAto.motivo | 1/2/3 → enum. |
AtoVinculado/@TipoVinculo | atosVinculados[].tipoVinculo | H/C/T/U/A/E/F/J/M/Y → enum. |
Emolumentos/@TipoCobranca | emolumentos.tipoCobranca | JG/CC/SC/NH/AC/PA → enum. |
Emolumentos/ItemEmolumento/@Quantidade | emolumentos.itens[].quantidade | string → integer. |
Cobertura: 100% dos atributos do XSD Schema_Notas_2.04.xsd. Tabela exaustiva em layout.md §8.2.
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.
Se indAtoEletronico=true: urlPdfAto, hashPdfAto, urlDossie, hashDossie obrigatórios. Em atos selados, matriculaNotarialEletronica também.
Quando tipoCobranca ∈ {JUSTICA_GRATUITA, SEM_COBRANCA, ATO_CONJUNTO}, todos os campos monetários e itens devem ser ausentes.
tipoCobranca=SEM_COBRANCA (ato corretivo de erro material) exige atosVinculados[] apontando ao ato com erro.
tipoCobranca=ATO_CONJUNTO exige atosVinculados[] com tipoVinculo=ATO_CONJUNTO referenciando o ato principal (lista duplamente encadeada).
Quando EscrituraDados.indPorProcuracao=true, o objeto dadosProcuracao é obrigatório.
Quando EscrituraDados.indValorDeclarado=true, valorDeclarado é obrigatório.
Para atos referenciando ato original: apenas um entre procuracaoOriginal/testamentoOriginal (sem selo) OU atosVinculados (com selo).
Em PROCURACAO_REVOGACAO com procuracaoOriginal.outorgadoAusente=true, numeroNotificacao é obrigatório.
Em FIRMA_RECONHECIMENTO_SEMELHANCA/...AUTENTICIDADE, codigoEtiqueta e tipoDocumento obrigatórios. Se tipoDocumento=OUTROS, descricaoDocumento também.
origemDoc=WEBSITE exige url. origemDoc=ARQUIVO exige nomeArquivo, formatoArquivo, dataArquivo, tamanhoArquivoKb.
Em autenticações, dataAutenticacao deve ter parte de data igual a dataPratica. Idem para dataImpressao em materialização.
selo e cct devem pertencer à faixa autorizada para remessa.codigoServico. Validação operacional do servidor.
CPF/CNPJ devem passar pelo dígito verificador. Schema valida apenas formato.
Pessoa.cpf ausente exige ou justificativaAusenciaCpf ou numeroIdentidade.
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.
ALTERACAO_URL permite trocar URLs mas não hashes.
atosremessa.atos[] ≤ 5.000. Volumes maiores → fatiar em remessas distintas com id próprios.
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).
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)._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.
| Versão | Data | Mudanç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.
stringMantemos 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.
tipoFiliacao sem GENITORXSD 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.
Sexo.NAO_BINARIE mantidoXSD admite X. Traduzido para NAO_BINARIE conforme nomenclatura canônica (Provimento CNJ 73/2018).
Moeda históricaO domínio Moeda cobre o seriado histórico (Cruzeiro → Real). Necessário para certidões de escrituras anteriores a 1994.
AlteracaoEmolumentos / AlteracaoUrlPDF afirma que o atributo Selo aceita selo OU CCT. Mantivemos o nome selo (campo único) — validação operacional servidor decide qual é.
Visto como ATO_SELADOVisto foi classificado como ATO_SELADO (não categoria própria). Justificativa: tem selo + aleatório + livro + folha — perfeitamente conforme padrão.
AC (ato conjunto) como tipoCobrancaEmbora 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.
Quando emolumentos são suprimidos (JG/SC/AC), o objeto emolumentos ainda existe — apenas com tipoCobranca preenchido. Não codificar valorTotalEmolumentos: "0.00".
dataGeracao no envelope (timestamp ISO com offset).software.versao separado de software.nome.TipoOperacao=A agora ALTERACAO.IndCertidaoEletronica: XSD permite apenas S; em JSON é boolean puro.Nenhuma divergência entre PDF e XSD identificada que afete o contrato. Nenhum código ambíguo. Cobertura: 100%.
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.