libredte_lib_sdk.billing.document.builder module
Servicio para billing.document.builder.
- class libredte_lib_sdk.billing.document.builder.DocumentBuilderService(client: ApiClient)
Bases:
objectConstruye documentos tributarios (billing.document.builder).
El mismo worker de la API sirve tanto para un borrador como para el documento timbrado y firmado, según qué datos se le pasen — acá se separa en dos métodos explícitos para que la intención de cada llamada quede clara en el código que la usa.
- build_draft(parsed_data: dict[str, Any]) Document
Emite el borrador de un DTE a partir de datos ya normalizados.
parsed_data es el Encabezado/Detalle (y demás nodos) del formato DTE del SII, incluyendo Encabezado.IdDoc.Folio (el SDK no asigna folios: eso lo decide quien llama, típicamente porque lleva el correlativo). Sin CAF ni certificado, el resultado no queda timbrado (Document.is_timbrado es False).
- build_signed(parsed_data: dict[str, Any], *, caf_xml: str, certificate: Certificate) Document
Genera el DTE real, timbrado y firmado.
Requiere un CAF real (XML tal como lo entrega el SII, cubriendo el folio indicado en parsed_data) y el certificado digital del emisor. Para pruebas, ambos se pueden generar con IdentifierComponent.caf_faker y TradingPartiesComponent.mandatario_manager.