Estrutura da conta e mappings

Campos da conta DeRE, hierarquia, desdobramento, vigência e mappings de codTrib, COSIF e ISS para o D-1011.

Prepare o JSON de cada conta com os campos e mappings necessários para gerar o D-1011 (Plano Geral de Contas Comentado, ou PGCC) da DeRE (Declaração de Regimes Específicos).

Estrutura de uma conta DeRE

Exemplo de uma conta analítica não desdobrada, com codTrib (código de tributação do IBS e da CBS), conta COSIF e indicador de ISS, com POST /accounts:

{
  "account_external_id": "1101000",
  "company_account_external_id": "CLI-98765",
  "location": "BR",
  "name": "Caixa e equivalentes de caixa",
  "description": "Disponibilidades em caixa e em contas de liquidez imediata",
  "type": "A",
  "level": 3,
  "order_id": 3,
  "nature": 1,
  "sub_nature": "D",
  "parent_account": "11000",
  "split_code": "000",
  "status": "ACTIVE",
  "valid_from": "2026-10-01T00:00:00Z",
  "account_mappings": [
    { "group": "CodTrib IBS/CBS - DeRe", "account": "118915099" },
    { "group": "COSIF", "account": "1.1.1.10.00.00-8" }
  ],
  "code_mappings": [
    { "type": "dere_ind_trib_iss", "value": "0" }
  ]
}

Uma resposta 200 confirma que a conta foi gravada, não que ela cumpre as regras da DeRE. Essas regras são verificadas quando a Brinta gera o D-1011. Consulte Validações, erros e checklist para distinguir as validações da API das regras do evento.

Os demais campos da Accounts API (name_alt, account_alt, hierarchy_code, centers e outros) podem ser enviados no mesmo formato. Eles não entram no D-1011.

Campos da conta

CampoObrigatório para a APIObrigatório para a DeREDescrição
account_external_idSimSimCódigo completo da conta (interno + desdobramento). Único por empresa. Veja Código, desdobramento e conta pai
company_account_external_id ou company_idUm dos doisSimA empresa declarante: o ID no seu sistema ou o UUID na Brinta. Nunca os dois
locationSimSimBR
nameSimSimNome da conta. Até 100 caracteres na DeRE
descriptionSimSim, nas analíticasDescrição da conta. Até 300 caracteres na API
typeSimSimS sintética ou A analítica. Veja Tipo da conta
levelSimSimNível de 1 a 99
order_idSimNãoOrdem de exibição. A Brinta ordena as contas do D-1011 pelo código, não por este campo
natureNãoSimNatureza da conta, de 1 a 5. Veja Natureza da conta e do saldo
sub_natureNãoSimNatureza do saldo: C, D ou V. Veja Natureza da conta e do saldo
parent_accountNãoSim, se level > 1Código completo da conta pai. Veja Código, desdobramento e conta pai
split_codeNãoSimCódigo de desdobramento, de 000 a 999. Veja Código, desdobramento e conta pai
statusNãoNãoACTIVE (padrão) ou INACTIVE
valid_fromNãoSimInício da vigência da conta (ISO 8601). Veja Datas
valid_untilNãoNãoFim da vigência. Não pode ser anterior ao início
account_mappingsNãoSimO codTrib e a conta COSIF. Veja Mappings para a DeRE
code_mappingsNãoSim, nas analíticasO indicador de ISS. Veja Mappings para a DeRE

Vários campos são opcionais para a API, mas obrigatórios para a DeRE. Se faltarem, a API cria a conta mesmo assim, mas o D-1011 sai com erros e a Brinta não o transmite até que sejam corrigidos.

Tipo da conta

Envie S em type para as contas sintéticas (que agrupam outras) e A para as analíticas (que recebem saldo).

  • Uma conta é sintética se, e somente se, outra conta a tiver como pai.
  • Toda conta de nível 1 é sintética.
  • Uma conta analítica não pode ser pai de outra.

A API aceita qualquer texto em type e o grava como recebido, porque o campo é usado em outras obrigações. Para a DeRE, a Brinta reconhece S e A (também SYNTHETIC e ANALYTIC). Se chegar outro valor, ela deduz o tipo a partir da hierarquia.

Natureza da conta e do saldo

nature e sub_nature são dois dados diferentes, que não devem ser confundidos.

CampoO que representaValores para a DeRE
natureO grupo contábil da conta (codNat no D-1011)1 ativo · 2 passivo · 3 patrimônio líquido · 4 receita · 5 despesa
sub_natureDe que lado o saldo costuma ficar (natCta no D-1011)C credor · D devedor · V variável
  • A API aceita qualquer inteiro em nature. Para a DeRE, o valor precisa estar entre 1 e 5.
  • sub_nature só aceita C, D ou V. Se você não tiver o dado, não envie o campo: enviá-lo vazio ou como null gera erro.
  • A Brinta verifica se o primeiro dígito do codTrib é coerente com nature: 1 ativo, 2 passivo ou patrimônio líquido, 3 receita, 4 despesa. Uma divergência é informada como alerta.

Código, desdobramento e conta pai

  • account_external_id: o código completo da conta (cCta): o código interno mais o código de desdobramento, sem pontos nem hífens (1101 + 000 = 1101000). Precisa ser único no plano.
  • split_code: o código de desdobramento, enviado também separado. 000 em toda conta não desdobrada e na conta original de uma conta mista; 001, 002, … em cada filha. Sempre três dígitos, como texto.
  • O código completo precisa terminar com o split_code: a Brinta obtém o código interno (cCtaInterna) removendo o split_code do final (1101000 − 000 → 1101).
  • parent_account: o código completo da conta pai, que já precisa existir na mesma empresa, ser sintética e estar ativa.
  • level: precisa ser maior que o nível da conta pai. Use o nível do pai + 1.

Para desdobrar uma conta mista (uma conta analítica com mais de um codTrib), transforme a original em sintética e crie uma filha analítica por codTrib. As filhas compartilham a conta COSIF da original. Veja os payloads em Exemplos de carga e consulta.

Datas

  • valid_from é o início da vigência da conta (iniVig) e é obrigatório para a DeRE. Envie a data a partir da qual a conta está em uso.
  • valid_until é o fim da vigência (fimVig). Envie apenas se a conta deixou de ser usada.
  • Se você não enviar start_date, a API atribui a ele o valor de valid_from, e vice-versa.
  • O fim nunca pode ser anterior ao início: a API rejeita.

Mappings para a DeRE

A DeRE usa três dados que não são campos simples da conta, e sim correspondências.

DadoComo é enviadoAplica-se aRegra
codTribaccount_mappings: { "group": "CodTrib IBS/CBS - DeRe", "account": "<codTrib>" }Só analíticasUm único codTrib por conta, de 9 dígitos, existente na Tabela 11
Conta COSIFaccount_mappings: { "group": "COSIF", "account": "<código COSIF>" }Todas as contasUma única conta COSIF por conta. As filhas de um desdobramento usam a mesma da original
Indicador de ISScode_mappings: { "type": "dere_ind_trib_iss", "value": "0" } ou "1"Só analíticasProibido nas sintéticas
  • O código COSIF é enviado exatamente como aparece no plano, com pontos e hífen (1.1.1.10.00.00-8). Só com dígitos (1111000008) a API responde Account … not found in group COSIF.
  • A API rejeita uma conta de um grupo que não existe, um grupo repetido e mais contas do que o grupo admite.
  • A resposta da API não devolve account_mappings nem code_mappings. Para conferi-los depois da carga, use Account Management no dashboard.

Do JSON ao evento D-1011

Campo do D-1011Campo na API
cCtaaccount_external_id (código completo)
cCtaInternaaccount_external_id sem o split_code do final
cDbrMistasplit_code
nomeCtaname
indCtatype
descCtadescription
cCtaSupparent_account
cCtaRefaccount_mappings, grupo COSIF
nivelCtalevel
natCtasub_nature
codNatnature
codTribaccount_mappings, grupo CodTrib IBS/CBS - DeRe
indTribISScode_mappings, tipo dere_ind_trib_iss
iniVigvalid_from
fimVigvalid_until

A Brinta gera o restante: o CNPJ raiz da empresa (nrInsc), o plano referencial e a frequência de encerramento do cabeçalho, o período de vigência do evento, a ordem das contas, o identificador do evento e a assinatura.

Próximo passo

Consulte Fluxo de integração e autenticação para ordenar a carga, autenticar as chamadas e criar as contas.

Voltar à guia principal


Did this page help you?