cfdibills.schemas.cfdi40.Concepto

class cfdibills.schemas.cfdi40.Concepto(*, impuestos: cfdibills.schemas.cfdi40.ImpuestosConcepto = None, informacion_aduanera: List[cfdibills.schemas.cfdi40.InformacionAduanera] = [], cuenta_predial: List[cfdibills.schemas.cfdi40.CuentaPredial] = [], complemento_concepto: List[Dict] = [], parte: List[cfdibills.schemas.cfdi40.Parte] = [], clave_prod_serv: str, no_identificacion: str = None, cantidad: cfdibills.schemas.fields.ConstrainedDecimalValue, clave_unidad: str, unidad: str = None, descripcion: cfdibills.schemas.cfdi40.ConstrainedStrValue, valor_unitario: float, importe: cfdibills.schemas.fields.ConstrainedDecimalValue, descuento: cfdibills.schemas.fields.ConstrainedDecimalValue = Decimal('0'), objeto_imp: cfdibills.schemas.catalogs.ObjetoImp, a_cuenta_terceros: List[cfdibills.schemas.cfdi40.ACuentaTerceros] = [])[source]

Bases: pydantic.main.BaseModel

Schema of a “Concepto” of a CFDI v4.0.

Based on: https://www.sat.gob.mx/sitio_internet/cfd/4/cfdv40.xsd

__init__(**data: Any) None

Create a new model by parsing and validating input data from keyword arguments.

Raises ValidationError if the input data cannot be parsed to form a valid model.

Methods

__init__(**data)

Create a new model by parsing and validating input data from keyword arguments.

construct([_fields_set])

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.

copy(*[, include, exclude, update, deep])

Duplicate a model, optionally choose which fields to include, exclude and change.

dict(*[, include, exclude, by_alias, ...])

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

from_orm(obj)

json(*[, include, exclude, by_alias, ...])

Generate a JSON representation of the model, include and exclude arguments as per dict().

parse_file(path, *[, content_type, ...])

parse_obj(obj)

parse_raw(b, *[, content_type, encoding, ...])

schema([by_alias, ref_template])

schema_json(*[, by_alias, ref_template])

update_forward_refs(**localns)

Try to update ForwardRefs on fields based on this Model, globalns and localns.

validate(value)

Attributes

impuestos

Nodo opcional para capturar los impuestos aplicables al presente concepto.

informacion_aduanera

Nodo opcional para introducir la información aduanera aplicable cuando se trate de ventas de primera mano de mercancías importadas o se trate de operaciones de comercio exterior con bienes o servicios.

cuenta_predial

Nodo opcional para asentar el número de cuenta predial con el que fue registrado el inmueble, en el sistema catastral de la entidad federativa de que trate, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable.

complemento_concepto

parte

Nodo opcional para expresar las partes o componentes que integran la totalidad del concepto expresado en el comprobante fiscal digital por Internet.

clave_prod_serv

Atributo requerido para expresar la clave del producto o del servicio amparado por el presente concepto.

no_identificacion

Atributo opcional para expresar el número de parte, identificador del producto o del servicio, la clave de producto o servicio, SKU o equivalente, propia de la operación del emisor, amparado por el presente concepto.

cantidad

Atributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por el presente concepto.

clave_unidad

Atributo requerido para precisar la clave de unidad de medida estandarizada aplicable para la cantidad expresada en el concepto.

unidad

Atributo opcional para precisar la unidad de medida propia de la operación del emisor, aplicable para la cantidad expresada en el concepto.

descripcion

Atributo requerido para precisar la descripción del bien o servicio cubierto por el presente concepto.

valor_unitario

Atributo requerido para precisar el valor o precio unitario del bien o servicio cubierto por el presente concepto

importe

Atributo requerido para precisar el importe total de los bienes o servicios del presente concepto.

descuento

Atributo opcional para representar el importe de los descuentos aplicables al concepto.

objeto_imp

Atributo requerido para expresar si la operación comercial es objeto o no de impuesto.

a_cuenta_terceros

Nodo opcional para registrar información del contribuyente Tercero, a cuenta del que se realiza la operación.

a_cuenta_terceros: List[cfdibills.schemas.cfdi40.ACuentaTerceros]

Nodo opcional para registrar información del contribuyente Tercero, a cuenta del que se realiza la operación.

cantidad: cfdibills.schemas.fields.ConstrainedDecimalValue

Atributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por el presente concepto.

clave_prod_serv: str

Atributo requerido para expresar la clave del producto o del servicio amparado por el presente concepto. Es requerido y deben utilizar las claves del catálogo de productos y servicios, cuando los conceptos que registren por sus actividades correspondan con dichos conceptos.

clave_unidad: str

Atributo requerido para precisar la clave de unidad de medida estandarizada aplicable para la cantidad expresada en el concepto. La unidad debe corresponder con la descripción del concepto.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(*, include: Union[AbstractSetIntStr, MappingIntStrAny] = None, exclude: Union[AbstractSetIntStr, MappingIntStrAny] = None, update: DictStrAny = None, deep: bool = False) Model

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include – fields to include in new model

  • exclude – fields to exclude from new model, as with values this takes precedence over include

  • update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep – set to True to make a deep copy of the model

Returns

new model instance

cuenta_predial: List[cfdibills.schemas.cfdi40.CuentaPredial]

Nodo opcional para asentar el número de cuenta predial con el que fue registrado el inmueble, en el sistema catastral de la entidad federativa de que trate, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable.

descripcion: str

Atributo requerido para precisar la descripción del bien o servicio cubierto por el presente concepto.

descuento: cfdibills.schemas.fields.ConstrainedDecimalValue

Atributo opcional para representar el importe de los descuentos aplicables al concepto. No se permiten valores negativos.

dict(*, include: Union[AbstractSetIntStr, MappingIntStrAny] = None, exclude: Union[AbstractSetIntStr, MappingIntStrAny] = None, by_alias: bool = False, skip_defaults: bool = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

importe: cfdibills.schemas.fields.ConstrainedDecimalValue

Atributo requerido para precisar el importe total de los bienes o servicios del presente concepto. Debe ser equivalente al resultado de multiplicar la cantidad por el valor unitario expresado en el concepto. No se permiten valores negativos.

impuestos: Optional[cfdibills.schemas.cfdi40.ImpuestosConcepto]

Nodo opcional para capturar los impuestos aplicables al presente concepto. Cuando un concepto no registra un impuesto, implica que no es objeto del mismo.

informacion_aduanera: List[cfdibills.schemas.cfdi40.InformacionAduanera]

Nodo opcional para introducir la información aduanera aplicable cuando se trate de ventas de primera mano de mercancías importadas o se trate de operaciones de comercio exterior con bienes o servicios.

json(*, include: Union[AbstractSetIntStr, MappingIntStrAny] = None, exclude: Union[AbstractSetIntStr, MappingIntStrAny] = None, by_alias: bool = False, skip_defaults: bool = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

no_identificacion: Optional[str]

Atributo opcional para expresar el número de parte, identificador del producto o del servicio, la clave de producto o servicio, SKU o equivalente, propia de la operación del emisor, amparado por el presente concepto. Opcionalmente se puede utilizar claves del estándar GTIN.

objeto_imp: cfdibills.schemas.catalogs.ObjetoImp

Atributo requerido para expresar si la operación comercial es objeto o no de impuesto.

parte: List[cfdibills.schemas.cfdi40.Parte]

Nodo opcional para expresar las partes o componentes que integran la totalidad del concepto expresado en el comprobante fiscal digital por Internet.

unidad: Optional[str]

Atributo opcional para precisar la unidad de medida propia de la operación del emisor, aplicable para la cantidad expresada en el concepto. La unidad debe corresponder con la descripción del concepto.

classmethod update_forward_refs(**localns: Any) None

Try to update ForwardRefs on fields based on this Model, globalns and localns.

valor_unitario: float

Atributo requerido para precisar el valor o precio unitario del bien o servicio cubierto por el presente concepto