Módulo satcfe.entidades
¶
-
class
satcfe.entidades.
CFeCancelamento
(destinatario=None, **kwargs)¶ Representa um CF-e de cancelamento.
Parâmetros: - destinatario (Destinatario) – Opcional. Uma instância de
Destinatario
contendo apenas os dados exigidos para a operação de cancelamento (ie.CPF
ouCNPJ
do destinatário). - chCanc (str) – Chave de acesso do CF-e a ser cancelado. Deve ser
precedido do literal
CFe
seguido dos quarenta e quatro dígitos que compõem a chave de acesso. - CNPJ (str) – CNPJ da software house, desenvolvedora do aplicativo comercial, contendo apenas os dígitos do número e incluindo zeros não significativos, se for o caso (14 dígitos).
- signAC (str) – Assinatura do aplicativo comercial (344 dígitos).
- numeroCaixa (int) – Número do caixa ao qual o SAT está conectado.
Normalmente este será o número do caixa de onde parte a solicitação de
cancelamento. Deverá ser um número inteiro entre
0
e999
.
-
destinatario
¶ O
Destinatario
ouNone
.
- destinatario (Destinatario) – Opcional. Uma instância de
-
class
satcfe.entidades.
CFeVenda
(emitente=None, destinatario=None, entrega=None, detalhamentos=None, descontos_acrescimos_subtotal=None, pagamentos=None, informacoes_adicionais=None, **kwargs)¶ Representa um CF-e de venda.
Parâmetros: - emitente (Emitente) – Identificação do emitente do CF-e.
- destinatario (Destinatario) – Opcional. Identificação do destinatário.
- entrega (LocalEntrega) – Opcional. Informações do local de entrega.
- detalhamentos (list) – Uma lista de objetos
ProdutoServico
que representam os produtos/serviços participantes do CF-e de venda. - descontos_acrescimos_subtotal (DescAcrEntr) – Opcional. Se informado,
deverá ser um objeto
DescAcrEntr
que contenha o valor de desconto ou acréscimo sobre o subtotal. - pagamentos (list) – Uma lista de objetos
MeioPagamento
que descrevem cada um dos meios de pagamentos usados no CF-e de venda. - informacoes_adicionais (InformacoesAdicionais) – Opcional.
- versaoDadosEnt (str) – Opcional. String contendo a versão do layout
do arquivo de dados do aplicativo comercial. Se não informado será
utilizado o valor da constante
VERSAO_LAYOUT_ARQUIVO_DADOS_AC
do móduloconstantes
do projeto ``satcomum` <https://github.com/base4sistemas/satcomum/>`_ - CNPJ (str) – CNPJ da software house, desenvolvedora do aplicativo comercial, contendo apenas os dígitos do número e incluindo zeros não significativos, se for o caso (14 dígitos).
- signAC (str) – Assinatura do aplicativo comercial (344 dígitos).
- numeroCaixa (int) – Número do caixa ao qual o SAT está conectado.
Normalmente este será o número do caixa de onde parte a solicitação de
cancelamento. Deverá ser um número inteiro entre
0
e999
. - vCFeLei12741 (Decimal) – Opcional. Se informado deve representar a soma total dos valores aproximados dos tributos, em cumprimento à Lei nº 12.741/2012.
..note:
Não há uma classe específica para representar o elemento ``ide`` do grupo ``B01``, já que todos os seus atributos são esperados nesta classe.
-
descontos_acrescimos_subtotal
¶ Os descontos e acréscimos no subtotal do CF-e (
DescAcrEntr
) ouNone
.
-
destinatario
¶ O
Destinatario
do CF-e ouNone
.
-
detalhamentos
¶ Lista de objetos
Detalhamento
, descrevendo os produtos e serviços do CF-e.
-
entrega
¶ O Local de entrega (
LocalEntrega
) ouNone
.
-
informacoes_adicionais
¶ Informações adicionais do CF-e (
InformacoesAdicionais
) ouNone
.
-
pagamentos
¶ Lista de objetos :class`MeioPagamento`, descrevendo os meios de pagamento empregados na quitação do CF-e.
-
class
satcfe.entidades.
COFINSAliq
(**kwargs)¶ Grupo de COFINS tributado pela alíquota, CST 01, 02 ou 05 (
COFINSAliq
, grupoS02
).Parâmetros: - CST (str) –
- vBC (Decimal) –
- pCOFINS (Decimal) –
-
class
satcfe.entidades.
COFINSNT
(**kwargs)¶ Grupo de COFINS não tributado, CST 04, 06, 07 08 ou 09 (
COFINSNT
, grupoS04
).Parâmetros: CST (str) –
-
class
satcfe.entidades.
COFINSOutr
(**kwargs)¶ Grupo de COFINS para outras operações, CST 99 (
COFINSOutr
, grupoS06
).Parâmetros: - CST (str) –
- vBC (str) – Opcional. Se informado deverá ser também informado o
parâmetro
pCOFINS
. - pCOFINS (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vBC
. - qBCProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vAliqProd
. - vAliqProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
qBCProd
.
Nota
Os parâmetros
vBC
eqBCProd
são mutuamente exclusivos, e um ou outro devem ser informados.
-
class
satcfe.entidades.
COFINSQtde
(**kwargs)¶ Grupo de COFINS tributado por quantidade, CST 03 (
COFINSQtde
, grupoS03
).Parâmetros: - CST (str) –
- qBCProd (Decimal) –
- vAliqProd (Decimal) –
-
class
satcfe.entidades.
COFINSSN
(**kwargs)¶ Grupo de COFINS para contribuíntes do Simples Nacional, CST 49 (
COFINSSN
, grupoS05
).Parâmetros: CST (str) –
-
class
satcfe.entidades.
COFINSST
(**kwargs)¶ Grupo de COFINS substituição tributária (
COFINSST
, grupoT01
).Parâmetros: - vBC (str) – Opcional. Se informado deverá ser também informado o
parâmetro
pCOFINS
. - pCOFINS (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vBC
. - qBCProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vAliqProd
. - vAliqProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
qBCProd
.
Nota
Os parâmetros
vBC
eqBCProd
são mutuamente exclusivos, e um ou outro **devem ser informados.- vBC (str) – Opcional. Se informado deverá ser também informado o
parâmetro
-
class
satcfe.entidades.
DescAcrEntr
(**kwargs)¶ Grupo de valores de entrada de desconto/acréscimo sobre subtotal (
DescAcrEntr
, grupoW19
).Parâmetros: - vDescSubtot (Decimal) – Valor de entrada de desconto sobre subtotal.
Se este argumento for informado, então o argumento
vAcresSubtot
não deve ser informado. - vAcresSubtot (Decimal) – Valor de entrada de acréscimo sobre subtotal.
Se este argumento for informado, então o argumento
vDescSubtot
não deve ser informado.
- vDescSubtot (Decimal) – Valor de entrada de desconto sobre subtotal.
Se este argumento for informado, então o argumento
-
class
satcfe.entidades.
Destinatario
(**kwargs)¶ Identificação do destinatário do CF-e (
dest
, grupoE01
).Parâmetros: - CNPJ (str) – Número do CNPJ do destinatário, contendo apenas os digitos e incluindo os zeros não significativos. Não deve ser informado se o ``CPF`` for informado.
- CPF (str) – Número do CPF do destinatário, contendo apenas os digitos e incluindo os zeros não significativos. Não deve ser informado se o ``CNPJ`` for informado.
- xNome (str) – Opcional. Nome ou razão social do destinatário. O nome do destinatário será ignorado no XML do CF-e de cancelamento.
-
class
satcfe.entidades.
Detalhamento
(produto=None, imposto=None, **kwargs)¶ Detalhamento do produto ou serviço do CF-e (
det
, grupoH01
).Parâmetros: - produto (ProdutoServico) – Produto ou serviço, como uma instância
de
ProdutoServico
ao qual o detalhamento se refere. - imposto (Imposto) – O grupo de tributos incidentes no produto ou
serviço ao qual o detalhamento se refere, como uma instância
de
Imposto
. - infAdProd (str) – Opcional. Informações adicionais do produto ou serviço (norma referenciada, informações complementares, etc).
Nota
O atributo XML
nItem
(H02
) não é determinado aqui, mas atribuído automaticamente, conforme a sua posição na lista dedetalhamentos
.- produto (ProdutoServico) – Produto ou serviço, como uma instância
de
-
class
satcfe.entidades.
Emitente
(**kwargs)¶ Identificação do emitente do CF-e (
emit
, grupoC01
).Parâmetros: - CNPJ (str) – Número do CNPJ do emitente do CF-e, contendo apenas os digitos e incluindo os zeros não significativos.
- IE (str) – Número de Inscrição Estadual do emitente do CF-e, contendo apenas digitos.
- IM (str) – Opcional. Deve ser informado o número da Inscrição Municipal quando o CF-e possuir itens com prestação de serviços sujeitos ao ISSQN, por exemplo.
- cRegTribISSQN (str) – Opcional. Indica o regime especial de
tributação do ISSQN. Veja as constantes em
C15_CREGTRIBISSQN_EMIT
. - indRatISSQN (str) – Opcional. Indicador de rateio do desconto sobre o
subtotal entre itens sujeitos à tributação pelo ISSQN. Veja as
constantes em
C16_INDRATISSQN_EMIT
.
-
class
satcfe.entidades.
Entidade
(schema={}, validator_class=None, **kwargs)¶ Classe base para todas as classes que representem as entidades da implementação do SAT-CF-e. Aqui, chamaremos de “entidade” as classes que representem os grupos de dados que são usados para formar o XML do CF-e de venda ou de cancelamento.
Basicamente, as subclasses precisam sobrescrever a implementação do método
_construir_elemento_xml
, definir o atributo_schema
e, quando necessário, implementar uma especialização do validador no atributo_validator_class
.-
documento
(*args, **kwargs)¶ Resulta no documento XML como string, que pode ou não incluir a declaração XML no início do documento.
-
-
class
satcfe.entidades.
ExtendedValidator
(*args, **kwargs)¶ Validator class. Normalizes and/or validates any mapping against a validation-schema which is provided as an argument at class instantiation or upon calling the
validate()
,validated()
ornormalized()
method. An instance itself is callable and executes a validation.All instantiation parameters are optional.
There are the introspective properties
types
,validators
,coercers
,default_setters
,rules
,normalization_rules
andvalidation_rules
.The attributes reflecting the available rules are assembled considering constraints that are defined in the docstrings of rules’ methods and is effectively used as validation schema for
schema
.Parâmetros: - schema (any mapping) – See
schema
. Defaults toNone
. - ignore_none_values (
bool
) – Seeignore_none_values
. Defaults toFalse
. - allow_unknown (
bool
or any mapping) – Seeallow_unknown
. Defaults toFalse
. - require_all (
bool
) – Seerequire_all
. Defaults toFalse
. - purge_unknown (
bool
) – Seepurge_unknown
. Defaults to toFalse
. - purge_readonly (
bool
) – Removes all fields that are defined asreadonly
in the normalization phase. - error_handler (class or instance based on
BaseErrorHandler
ortuple
) – The error handler that formats the result oferrors
. When given as two-value tuple with an error-handler class and a dictionary, the latter is passed to the initialization of the error handler. Default:BasicErrorHandler
.
- schema (any mapping) – See
-
class
satcfe.entidades.
ICMS00
(**kwargs)¶ Grupo de tributação do ICMS 00, 20 e 90 (
ICMS00
, grupoN02
).Parâmetros:
-
class
satcfe.entidades.
ICMS40
(**kwargs)¶ Grupo de tributação do ICMS 40, 41 e 60 (
ICMS40
, grupoN03
).Parâmetros:
-
class
satcfe.entidades.
ICMSSN102
(**kwargs)¶ Grupo de tributação do ICMS Simples Nacional, CSOSN 102, 300, 400 e 500 (
ICMSSN102
, grupoN04
).Parâmetros:
-
class
satcfe.entidades.
ICMSSN900
(**kwargs)¶ Grupo de tributação do ICMS Simples Nacional, CSOSN 900 (
ICMSSN900
, grupoN05
).Parâmetros:
-
class
satcfe.entidades.
ISSQN
(**kwargs)¶ Grupo do ISSQN (
ISSQN
, grupoU01
).Parâmetros:
-
class
satcfe.entidades.
Imposto
(icms=None, pis=None, pisst=None, cofins=None, cofinsst=None, issqn=None, **kwargs)¶ Grupo de tributos incidentes no produto ou serviço (
imposto
, grupoM01
).Parâmetros: - icms – Opcional. Deve ser uma instância de uma das classes dos
grupos de ICMS (
ICMS00
,ICMS40
,ICMSSN102
ouICMSSN900
) se o item for um produto tributado pelo ICMS ouNone
em caso contrário. - pis – Deve ser uma instância de uma das classes dos grupos de
PIS (
PISAliq
,PISQtde
,PISNT
,PISSN
ouPISOutr
). - pisst – Opcional. Instância de
PISST
ouNone
. - cofins – Deve ser uma instância de uma das classes dos grupos
de COFINS (
COFINSAliq
,COFINSQtde
,COFINSNT
,COFINSSN
ouCOFINSOutr
). - cofinsst – Opcional. Instância de
COFINSST
ouNone
. - issqn – Opcional. Uma instância de
ISSQN
se o item for um serviço tributado pelo ISSQN ouNone
em caso contrário. - vItem12741 (Decimal) – Opcional. Valor aproximado dos tributos do produto ou serviço, conforme a Lei 12.741/12.
-
cofins
¶ Um dos grupos de COFINS (
COFINSAliq
,COFINSQtde
,COFINSNT
,COFINSSN
ouCOFINSOutr
).
-
icms
¶ Um dos grupos de ICMS (
ICMS00
,ICMS40
,ICMSSN102
ouICMSSN900
) se o item for um produto tributado pelo ICMS ouNone
em caso contrário.
- icms – Opcional. Deve ser uma instância de uma das classes dos
grupos de ICMS (
-
class
satcfe.entidades.
InformacoesAdicionais
(**kwargs)¶ Grupo de informações adicionais (
infAdic
, grupoZ01
).Parâmetros: infCpl (str) – Opcional.
-
class
satcfe.entidades.
LocalEntrega
(**kwargs)¶ Identificação do Local de Entrega (
entrega
, grupoG01
).Parâmetros:
-
class
satcfe.entidades.
MeioPagamento
(**kwargs)¶ Meio de pagamento (
MP
, grupoWA02
).Parâmetros:
-
class
satcfe.entidades.
ObsFiscoDet
(**kwargs)¶ Grupo do campo de uso livre do Fisco (
obsFiscoDet
, grupoI17
).Parâmetros:
-
class
satcfe.entidades.
PISAliq
(**kwargs)¶ Grupo de PIS tributado pela alíquota, CST 01, 02 ou 05 (
PISAliq
, grupoQ02
).Parâmetros: - CST (str) –
- vBC (Decimal) –
- pPIS (Decimal) –
-
class
satcfe.entidades.
PISNT
(**kwargs)¶ Grupo de PIS não tributado, CST 04, 06, 07 08 ou 09 (
PISNT
, grupoQ04
).Parâmetros: CST (str) –
-
class
satcfe.entidades.
PISOutr
(**kwargs)¶ Grupo de PIS para outras operações, CST 99 (
PISOutr
, grupoQ06
).Parâmetros: - CST (str) –
- vBC (str) – Opcional. Se informado deverá ser também informado o
parâmetro
pPIS
. - pPIS (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vBC
. - qBCProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vAliqProd
. - vAliqProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
qBCProd
.
Nota
Os parâmetros
vBC
eqBCProd
são mutuamente exclusivos, e um ou outro devem ser informados.
-
class
satcfe.entidades.
PISQtde
(**kwargs)¶ Grupo de PIS tributado por quantidade, CST 03 (
PISQtde
, grupoQ03
).Parâmetros: - CST (str) –
- qBCProd (Decimal) –
- vAliqProd (Decimal) –
-
class
satcfe.entidades.
PISSN
(**kwargs)¶ Grupo de PIS para contribuíntes do Simples Nacional, CST 49 (
PISSN
, grupoQ05
).Parâmetros: CST (str) –
-
class
satcfe.entidades.
PISST
(**kwargs)¶ Grupo de PIS substituição tributária (
PISST
, grupoR01
).Parâmetros: - vBC (str) – Opcional. Se informado deverá ser também informado o
parâmetro
pPIS
. - pPIS (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vBC
. - qBCProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
vAliqProd
. - vAliqProd (str) – Opcional. Se informado deverá ser também informado o
parâmetro
qBCProd
.
Nota
Os parâmetros
vBC
eqBCProd
são mutuamente exclusivos, e um ou outro devem ser informados.- vBC (str) – Opcional. Se informado deverá ser também informado o
parâmetro
-
class
satcfe.entidades.
ProdutoServico
(observacoes_fisco=None, **kwargs)¶ Produto ou serviço do CF-e (
prod
, grupoI01
).Parâmetros: - cProd (str) –
- cEAN (str) – Opcional.
- xProd (str) –
- NCM (str) – Opcional.
- CFOP (str) –
- uCom (str) –
- qCom (Decimal) –
- vUnCom (Decimal) –
- indRegra (str) –
- vDesc (Decimal) – Opcional.
- vOutro (Decimal) – Opcional.
- observacoes_fisco (list) – Opcional. Lista de objetos
ObsFiscoDet
representando os campos de uso livre do fisco.