libredte_lib_sdk.billing.exchange package
Submodules
Module contents
Componente billing.exchange: respuesta al intercambio de DTE.
- class libredte_lib_sdk.billing.exchange.DocumentResponseService(client: ApiClient)
Bases:
objectGenera los XML de respuesta al intercambio de DTE.
Cubre EnvioRecibos (recibo de mercaderías o servicios) y RespuestaDTE (acuse de recibo del envío o resultado de validación).
- build_envio_recibos(recibos: list[dict[str, Any]], *, caratula: dict[str, Any], certificate: Certificate) EnvioRecibos
Construye el XML EnvioRecibos firmado.
recibos es la lista de recibos tal cual el formato SII (cada uno con TipoDoc/Folio/FchEmis/RUTEmisor/RUTRecep/ MntTotal/Recinto, y opcionalmente RutFirma/Declaracion). caratula trae RutResponde/RutRecibe.
- build_respuesta_envio(data: dict[str, Any], *, caratula: dict[str, Any], certificate: Certificate) RespuestaEnvio
Construye el XML RespuestaDTE firmado.
data trae recepcion_envio o resultado_dte (listas), tal cual el formato SII. caratula trae RutResponde/RutRecibe/ IdRespuesta.
- validate_schema(source: str) dict[str, Any]
Valida source contra el esquema XSD del documento de respuesta.
source es el XML del documento de respuesta, en base64.
- validate_signature(source: str) list[dict[str, Any]]
Valida cada firma electrónica del documento de respuesta.
EnvioRecibos trae múltiples firmas (una por recibo, más la del SetRecibos); RespuestaDTE trae solo la del nodo Resultado. En ambos casos se devuelve una lista, un ítem por firma.
- class libredte_lib_sdk.billing.exchange.EnvioRecibos(datos: dict[str, Any], xml_base64: str)
Bases:
XmlPayloadMixinXML EnvioRecibos construido (document_response::buildEnvioRecibos).
Recibo de mercaderías o servicios prestados por un proveedor. datos es la estructura ya parseada, xml_base64 el XML completo — permite encadenar a validate_schema/validate_signature.
- datos: dict[str, Any]
- classmethod from_api(data: dict[str, Any]) EnvioRecibos
Construye un EnvioRecibos desde el data que devuelve la API.
- xml_base64: str
- class libredte_lib_sdk.billing.exchange.ExchangeComponent(client: ApiClient)
Bases:
objectAgrupa los servicios de billing.exchange.
- class libredte_lib_sdk.billing.exchange.RespuestaEnvio(datos: dict[str, Any], xml_base64: str)
Bases:
XmlPayloadMixinXML RespuestaDTE construido (document_response::buildRespuestaEnvio).
Acuse de recibo del envío (RecepcionEnvio) o resultado de validación por documento (ResultadoDTE), según los datos entregados.
- datos: dict[str, Any]
- classmethod from_api(data: dict[str, Any]) RespuestaEnvio
Construye un RespuestaEnvio desde el data de la API.
- xml_base64: str