TF Fiscal

APIs principais

Categorias fiscais NF-e

5 endpoints

POST/api/category/create

Criar categoria fiscal

Cria uma nova categoria fiscal (template de impostos) vinculada à empresa autenticada. Cada categoria agrega cenários de ICMS, IPI, PIS, COFINS, e opcionalmente IBS/CBS e IS. Para editar uma existente, use /api/category/edit.

Headers obrigatórios

HeaderTipoDescrição
tokenstringToken da empresa
signstringAssinatura MD5
timestampstringUnix timestamp em segundos

Body — top-level

CampoTipoDescrição
descricao *stringDescrição da categoria fiscal
category_idstringID customizado. Quando omitido, é auto-gerado no formato "TF" + número incremental
disable_difalbooleanDesabilita o cálculo de DIFAL para esta categoria. Default: false
desconta_icms_pis_cofinsbooleanAbate o ICMS antes de calcular PIS/COFINS — tributa (valor − ICMS), padrão atual no Brasil; default false (sem abatimento, imposto maior)
icms[] *arrayCenários de ICMS (estrutura abaixo)
ipi[] *arrayCenários de IPI (estrutura abaixo)
pis[] *arrayCenários de PIS (estrutura abaixo)
cofins[] *arrayCenários de COFINS (estrutura abaixo)
ibs_cbs[]arrayCenários de IBS/CBS — reforma tributária (estrutura abaixo)
is[]arrayCenários de IS — Imposto Seletivo (estrutura abaixo)

Body — icms[]

CampoTipoDescrição
tipo_tributacao *stringTipo de tributação ICMS
cenario *stringCenário (ex.: "saida_dentro_estado", "saida_fora_estado", "padrao")
tipo_pessoa *string"fisica" ou "juridica"
codigo_cfop *stringCFOP
situacao_tributaria *stringCST/CSOSN do ICMS
nao_contribuintebooleanCliente não-contribuinte
aliquota_importacaostringAlíquota de importação
aliquota_creditodecimalAlíquota de crédito (% para Simples Nacional)
aliquota_diferimentodecimalPercentual de diferimento (não retornado pelo get_detail)
aliquota_diferimentoFcpstringDiferimento do FCP (atenção: campo usa camelCase diferimentoFcp; não retornado pelo get_detail)
aliquota_reducaodecimalPercentual de redução de base ICMS
aliquota_reducaoStdecimalPercentual de redução de base ICMS-ST (atenção: reducaoSt camelCase)
motivo_desoneracaostringCódigo do motivo da desoneração ICMS
motivo_desoneracaoStstringCódigo do motivo da desoneração ICMS-ST (atenção: camelCase)
ad_rem_icmsdecimalICMS monofásico — alíquota ad rem em R$/unidade (CST 02, 15, 53)
ad_rem_icms_retdecimalICMS monofásico — ad rem retido em R$/unidade (CST 15, 61)
p_dif_monodecimalICMS monofásico — percentual de diferimento (CST 53)
q_bc_monodecimalICMS monofásico — quantidade tributada (litros/kg); 0 usa a quantidade do item (CST 02, 15, 53)
valor_desoneracaodecimalValor do ICMS desonerado em R$ — emite vICMSDeson (CST 40, 41, 50, 90)
v_bc_st_retdecimalBase de cálculo do ICMS-ST retido na operação anterior (informado, não calculado — CST 60, CSOSN 500)
p_stdecimalAlíquota suportada pelo consumidor final em % (informado, não calculado — CST 60, CSOSN 500)
v_icms_st_retdecimalValor do ICMS-ST retido na operação anterior (informado, não calculado — CST 60, CSOSN 500)
v_icms_substitutodecimalValor do ICMS próprio do substituto (informado, não calculado — CST 60, CSOSN 500)
v_bc_fcp_st_retdecimalBase de cálculo do FCP retido por ST (informado, não calculado — CST 60, CSOSN 500)
p_fcp_st_retdecimalAlíquota do FCP retido por ST em % (informado, não calculado — CST 60, CSOSN 500)
v_fcp_st_retdecimalValor do FCP retido por ST (informado, não calculado — CST 60, CSOSN 500)
Alíquotas por estado — opcional
aliquota_mva[]arrayMVA por UF — itens: { estado, aliquota }
aliquota_icms[]arrayAlíquota ICMS por UF — itens: { estado, aliquota }
aliquota_icms_st[]arrayAlíquota ICMS-ST por UF — itens: { estado, aliquota }
aliquota_fcp[]arrayAlíquota FCP por UF — itens: { estado, aliquota }
aliquota_fcp_st[]arrayAlíquota FCP-ST por UF — itens: { estado, aliquota }
beneficio_fiscal[]arrayCódigo de benefício fiscal por UF — itens: { estado, codigo }

Body — ipi[]

CampoTipoDescrição
cenario *stringCenário
tipo_pessoa *string"fisica" ou "juridica"
situacao_tributaria *stringCST IPI
codigo_enquadramento *stringCódigo de enquadramento legal
aliquota *stringAlíquota IPI
valor_unidadestringIPI por quantidade — valor em R$/unidade; só usado quando não há alíquota percentual (CST 00, 50, 49, 99)

Body — pis[] e cofins[] (mesma estrutura)

CampoTipoDescrição
cenario *stringCenário
tipo_pessoa *string"fisica" ou "juridica"
situacao_tributaria *stringCST PIS/COFINS
aliquota *stringAlíquota
valor_unidadestringPIS/COFINS por quantidade — valor em R$/unidade; v = quantidade × valor (CST 03 e demais formas por quantidade)

Body — ibs_cbs[] (Reforma Tributária)

CampoTipoDescrição
cenario *stringCenário
tipo_pessoa *string"fisica" ou "juridica"
situacao_tributaria *stringCST IBS/CBS
classificacao_tributaria *stringClassificação tributária
p_ibs_ufstringAlíquota do IBS UF em % (opcional; vazio usa o padrão da transição, 0,10 em 2026). Aceita ponto ou vírgula
p_ibs_munstringAlíquota do IBS Município em % (opcional; padrão 0 em 2026)
p_cbsstringAlíquota da CBS em % (opcional; padrão 0,90 em 2026)
p_red_aliqstringPercentual de redução de alíquota (CST 011, 200, 515)
p_difstringPercentual de diferimento (CST 510, 515)
p_red_bcstringPercentual de redução da base de cálculo (CST 222)
proporcaostringProporção da operação em % (CST 221)
aliquota_cbs_monostringCBS monofásica — alíquota em % sobre a base; prevalece sobre valor_unidade_cbs (CST 620)
aliquota_ibs_monostringIBS monofásico — alíquota em % sobre a base; prevalece sobre valor_unidade_ibs (CST 620)
valor_unidade_cbsstringCBS monofásica — ad rem em R$/unidade; só usado quando não há alíquota percentual (CST 620)
valor_unidade_ibsstringIBS monofásico — ad rem em R$/unidade; só usado quando não há alíquota percentual (CST 620)
valor_deducao_legalstringValor da dedução legal da base em R$ (CST 830)

Body — is[] (Imposto Seletivo)

CampoTipoDescrição
cenario *stringCenário
tipo_pessoa *string"fisica" ou "juridica"
situacao_tributaria *stringCST IS
aliquota *stringAlíquota IS

* Campo obrigatório.

GET/api/category/get_detail

Detalhes da categoria fiscal

Retorna a configuração completa de uma categoria fiscal: todos os cenários de ICMS, IPI, PIS, COFINS, IBS/CBS, incluindo arrays por UF (MVA, alíquotas, benefícios fiscais).

Headers obrigatórios

HeaderTipoDescrição
tokenstringToken da empresa
signstringAssinatura MD5 (path inclui a query string)
timestampstringUnix timestamp em segundos

Query string

ParâmetroTipoDescrição
category_id *stringID da categoria fiscal

* Campo obrigatório.

GET/api/category/get_list

Listar categorias fiscais

Lista as categorias fiscais da empresa autenticada com paginação. Retorna category_id, descricao e o bloco ibs_cbs (Reforma Tributária) de cada categoria — use /api/category/get_detail para os demais impostos.

Headers obrigatórios

HeaderTipoDescrição
tokenstringToken da empresa
signstringAssinatura MD5 (path inclui a query string)
timestampstringUnix timestamp em segundos

Query string

ParâmetroTipoDescrição
page *intNúmero da página (≥ 1)
page_size *intTamanho da página (1–50)

* Campo obrigatório.

POST/api/category/edit

Editar categoria fiscal

Edita uma categoria fiscal existente. O corpo é idêntico ao de /api/category/create, com a única diferença de que category_id é obrigatório e deve corresponder a uma categoria existente. O upsert substitui completamente os arrays icms, ipi, pis, cofins, ibs_cbs, is — envie todos os cenários atualizados (não há merge por cenário).

Headers obrigatórios

HeaderTipoDescrição
tokenstringToken da empresa
signstringAssinatura MD5
timestampstringUnix timestamp em segundos

Body

A estrutura completa do body está documentada em /api/category/create. Aqui só o category_id tem tratamento diferente:

CampoTipoDescrição
category_id *stringID da categoria a editar (deve existir; caso contrário retorna erro)
descricao *stringDescrição
icms[] *arrayCenários ICMS (substitui completamente)
ipi[] *arrayCenários IPI
pis[] *arrayCenários PIS
cofins[] *arrayCenários COFINS
ibs_cbs[]arrayCenários IBS/CBS (opcional)
is[]arrayCenários IS (opcional)
disable_difalbooleanDefault: false
desconta_icms_pis_cofinsbooleanAbate o ICMS antes de calcular PIS/COFINS — tributa (valor − ICMS), padrão atual no Brasil; default false (sem abatimento, imposto maior)

* Campo obrigatório. Para os campos internos de cada array (icms[].codigo_cfop etc.), veja /api/category/create.

POST/api/category/delete

Excluir categoria fiscal

Remove uma categoria fiscal da empresa. Operação irreversível. Produtos que estavam vinculados a esta categoria continuarão referenciando o category_id removido, então a emissão de NFe vai falhar — atualize os produtos antes de excluir.

Headers obrigatórios

HeaderTipoDescrição
tokenstringToken da empresa
signstringAssinatura MD5
timestampstringUnix timestamp em segundos

Body

CampoTipoDescrição
category_id *stringID da categoria a excluir

* Campo obrigatório.