GetTax, powered by SAC Fiscal

Conceitos

Dados da consulta

GTIN, CFOP, setor e data de referência, e como cada um muda o resultado.

Uma consulta tem quatro campos. Dois são obrigatórios:

CampoObrigatórioFormato
gtinsim8, 12, 13 ou 14 dígitos, com dígito verificador válido
cfopsim4 dígitos
sectornãoum dos códigos de GET /v1/enums/sectors
referenceDatenãodata AAAA-MM-DD

O corpo aceita exatamente esses campos. Qualquer outro, como um CNPJ, é recusado com 400 INVALID_REQUEST. O mesmo vale para cada item de um lote.

GTIN#

O código de barras do produto, só com dígitos: sem máscara, espaços ou hífens. GTIN-8, GTIN-12, GTIN-13 (o EAN-13 comum) e GTIN-14 são aceitos, desde que o dígito verificador confira (módulo 10 da GS1).

A resposta devolve o GTIN normalizado com 14 dígitos, com zeros à esquerda: 7891000315507 volta como 07891000315507. A identidade do produto não muda; use a forma de 14 dígitos como chave no seu banco.

CFOP#

O CFOP é atributo da operação, não do produto. Venda a consumidor, devolução, transferência entre filiais e remessa podem ter CST diferentes para o mesmo produto, por isso o campo é obrigatório e não tem valor padrão. Envie o CFOP da operação real.

O CFOP não é curinga. As regras fiscais são cadastradas para um CFOP exato ou para uma operação: uma lista explícita e versionada de CFOPs. O GetTax traduz o CFOP da consulta para a operação a que ele pertence na data de referência e aplica as regras daquela operação mais as cadastradas para o CFOP exato.

Algumas operações resolvem a classificação sozinhas, sem depender do produto. Uma transferência entre estabelecimentos do mesmo titular, por exemplo, pode ter uma regra de etapa OPERATION que vale para qualquer NCM. Ver Etapas do motor.

Setor#

O setor de atuação do cliente final da software house (supermercado, restaurante etc.). É opcional.

CódigoContexto
VAREJO_GERALVarejo em geral
BAR_RESTAURANTEBares e restaurantes
PRODUTOR_RURALProdutor rural
GOVERNOGoverno
ATACADOAtacado
ZONA_FRANCAZona Franca

O setor filtra, não decide:

  • Sem sector: vêm todas as alternativas pertinentes ao produto e ao CFOP, de qualquer setor.
  • Com sector: vêm as alternativas genéricas (sem setor) mais as daquele setor. As genéricas não são descartadas por existir uma específica.
  • Omitir o setor não equivale a VAREJO_GERAL.
  • O setor sozinho não garante uma redução. BAR_RESTAURANTE, por exemplo, não reduz nada automaticamente: as condições aparecem em cada alternativa, em applicability.
  • Valor fora da lista é recusado com 400 INVALID_REQUEST.

A lista pode crescer. Leia de GET /v1/enums/sectors, que não consome franquia, em vez de fixá-la no código.

Data de referência#

referenceDate escolhe as regras e alíquotas vigentes. Sem ela, vale a data de hoje no fuso de São Paulo, independente do fuso do servidor ou do cliente. A data usada volta na resposta, em referenceDate.

  • Para emitir um documento agora, omita o campo.
  • Para reprocessar ou conferir um documento antigo, envie a data do documento.

Toda vigência no GetTax (regra, linha de cClassTrib, alíquota) é um intervalo [effectiveFrom, effectiveTo): início inclusivo, fim exclusivo. effectiveTo: null quer dizer sem data de término.