Modelos

class pynfse_nacional.models.Endereco

Bases: BaseModel

model_config = {'hide_input_in_errors': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_codigo_municipio(v)

Valida codigo IBGE do municipio (7 digitos).

Parameters:

v (int)

Return type:

int

classmethod validate_uf(v)

Valida sigla da UF.

Parameters:

v (str)

Return type:

str

classmethod validate_cep(v)

Valida CEP (8 digitos).

Parameters:

v (str)

Return type:

str

class pynfse_nacional.models.Prestador

Bases: BaseModel

model_config = {'hide_input_in_errors': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_cnpj(v)

Valida CNPJ (14 digitos com digitos verificadores).

Parameters:

v (str)

Return type:

str

classmethod validate_telefone(v)

Valida telefone (6-20 digitos).

Parameters:

v (str | None)

Return type:

str | None

class pynfse_nacional.models.Tomador

Bases: BaseModel

model_config = {'hide_input_in_errors': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_cpf(v)

Valida CPF (11 digitos com digitos verificadores).

Parameters:

v (str | None)

Return type:

str | None

classmethod validate_cnpj(v)

Valida CNPJ (14 digitos com digitos verificadores).

Parameters:

v (str | None)

Return type:

str | None

classmethod validate_telefone(v)

Valida telefone (6-20 digitos).

Parameters:

v (str | None)

Return type:

str | None

validate_cpf_or_cnpj()

Valida que pelo menos CPF ou CNPJ foi informado.

Return type:

Tomador

class pynfse_nacional.models.ValoresServico

Bases: BaseModel

Service values breakdown for NFSe.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pynfse_nacional.models.Servico

Bases: BaseModel

model_config = {'hide_input_in_errors': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_codigo_lc116(v)

Valida codigo LC 116 (deve ter formato XX.XX.XX com subitem).

Parameters:

v (str)

Return type:

str

classmethod validate_codigo_nbs(v)

Valida codigo NBS (9 digitos).

Parameters:

v (str | None)

Return type:

str | None

classmethod validate_valor_servicos(v)

Valida valor dos servicos (deve ser positivo).

Parameters:

v (Decimal)

Return type:

Decimal

class pynfse_nacional.models.SubstituicaoNFSe

Bases: BaseModel

Informacoes de substituicao de NFSe.

model_config = {'hide_input_in_errors': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_chave_nfse(v)

Valida chave de acesso da NFSe (50 digitos).

Parameters:

v (str)

Return type:

str

class pynfse_nacional.models.DPS

Bases: BaseModel

Declaracao de Prestacao de Servicos.

The regApTribSN/regApIBSCBSSN rules follow the IBSCBS regulations: E0162, R294, R295, E0710, E0712, and E0713.

model_config = {'extra': 'forbid', 'hide_input_in_errors': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_serie(v)

Valida serie (1-5 digitos numericos).

Parameters:

v (str)

Return type:

str

classmethod validate_id_dps(v)

Valida id_dps se informado (padrao: DPS + 42 digitos).

Parameters:

v (str | None)

Return type:

str | None

build_dps_id()

Build the official DPS identifier from model data.

Return type:

str

classmethod validate_competencia(v)

Valida competencia (formato YYYY-MM).

Parameters:

v (str)

Return type:

str

classmethod validate_regime_tributario(v)

Valida regime tributario.

Parameters:

v (str)

Return type:

str

validate_regime_tributario_rules()

Validate opSimpNac-dependent regTrib flags.

Return type:

DPS

class pynfse_nacional.models.NFSeResponse

Bases: BaseModel

Response from NFSe Nacional API after DPS submission.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pynfse_nacional.models.EventResponse

Bases: BaseModel

Response from event registration (e.g., cancellation).

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pynfse_nacional.models.NFSeQueryResult

Bases: BaseModel

Result of querying an NFSe by access key.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pynfse_nacional.models.NFSe

Bases: BaseModel

Nota Fiscal de Servicos Eletronica - returned by SEFIN after DPS processing.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pynfse_nacional.models.ConvenioMunicipal

Bases: BaseModel

Informacoes de convenio de um municipio.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].