Al cancelar CFDI se elimina la relacion con el ir.attachment.facturae.mx
Resumen
¿Cual es la razon de la siguiente funcion?
Entiendo que al cancelar una factura o documento CFDI, esta desligando el ir.attachment.facturae.mx, pero queria saber, la razon concreta en si de hacer eso...
Lo comento, porque es totalmente factible, que una factura o cfdi, siga teniendo la relacion con el XML, aunque estuviera cancelado. Esto, pensando en el siguiente escenario...
Yo cancelo una Factura del año 2018 o de un periodo anterior al actual, esto con la intención generar una nueva que sustituya al CFDI cancelado con antelacion.
Sin embargo, si no tengo relacionado el CFDI como tal al account.invoice, me genera un error a tratar de generar el XML, ya que en el nodo de CfdiRelacionado del XMl no me puede incluir el UUID del XML relacionado.
De momento, lo que hice para poder generar mi factura, es que le volví a establecer de manera manual el cfdi_id del ir.attachment.factura.mx usando una Query Update directamente en Postgresql, para que el account.invoice pueda obtener el UUID de dicho documento.
prod_tequilera=# update account_invoice set cfdi_id=2772 where id in(2344);
UPDATE 1
Pasos para reproducirlo
- Cancelar una factura
- Generar una nueva factura con la intención de sustituir a la anterior.
- a. Seleccioanr el tipo de relacion: 04 Sustitucion de los cfdi previos
- b. Seleccionando como documento relacionado la factura cancelada.
- Cuando se intenta validar y timbrar, marca error de XML malformado
¿Cuál es el comportamiento equivocado que se está presentando?
Actualmente se obtiene el XML siguiente, donde puede indentificarse facilmente el error en el nodo CfdiRelacionado, ya que en lugar de llevar escrito el UUID, lo que lleva es un valor False.
<cfdi:Comprobante xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv33.xsd" Version="3.3" Serie="FE" Folio="3863" Fecha="2019-04-05T13:04:36" Sello="EeVkoeG2PXG67JXPoPaEpz40e2HkQdXzFcXXjF9ezvp8YvlG58jCjqIw5KYgRJ+XZhYNkC5Wp7xxPfXlEKJnnRRhNGAQPomSSLVCBp8PNoKf8RQ5q5lcqyruP/YvozZILpOGbRBJZVqsnOwDi0DeYtwuqROyKUuNJGN+sFk9HDgJdOgAhAhE14CXeyjsMiZijxldEYTxRI1RUUSpK90tK7RaoIDY7yLjrQmT8Nms+N01YoWCSQFBI0s2s6WEUFrc2l+bWEwGprsX7RdowolYCuRlmZ9H3AG6d6asV9RjtIdPGVpowOmnzG2VGjv3hGex7WFtGYRDDYAvBamJxrQ4zw==" NoCertificado="00001000000404123622" Certificado="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" FormaPago="99" CondicionesDePago="30 Net Days" SubTotal="10986.50" Descuento="3.00" Moneda="MXN" Total="16563.12" TipoDeComprobante="I" MetodoPago="PPD" LugarExpedicion="37238">
<cfdi:CfdiRelacionados TipoRelacion="04">
<cfdi:CfdiRelacionado UUID="False"/>
</cfdi:CfdiRelacionados>
<cfdi:Emisor Rfc="CLM960130596" Nombre="CORPORACIÓN LICORERA 1910 S.A. DE C.V." RegimenFiscal="601"/>
<cfdi:Receptor Nombre="Conseciones del Sureste S.A. de C.V." Rfc="CSU8802169B5" UsoCFDI="G01"/>
<cfdi:Conceptos>
<cfdi:Concepto ClaveProdServ="50202200" NoIdentificacion="33.04CT750NAC" Cantidad="10.000000" ClaveUnidad="XBX" Descripcion="[33.04CT750NAC] 1921 Crema de Tequila 750 ml 15% Alc. Vol." ValorUnitario="1098.350000" Importe="10983.50" Descuento="0.00">
<cfdi:Impuestos>
<cfdi:Traslados>
<cfdi:Traslado Base="10983.50" Impuesto="003" TipoFactor="Tasa" TasaOCuota="0.300000" Importe="3295.05"/>
<cfdi:Traslado Base="14278.55" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="2284.57"/>
</cfdi:Traslados>
</cfdi:Impuestos>
</cfdi:Concepto>
<cfdi:Concepto ClaveProdServ="50202200" NoIdentificacion="33.04CT750DEG" Cantidad="3.000000" ClaveUnidad="H87" Descripcion="[33.04CT750DEG] 1921 Crema de Tequila 750 ml 15% Alc. Vol." ValorUnitario="1.000000" Importe="3.00" Descuento="3.00">
</cfdi:Concepto>
</cfdi:Conceptos>
<cfdi:Impuestos TotalImpuestosTrasladados="5579.62">
<cfdi:Traslados>
<cfdi:Traslado Impuesto="003" TipoFactor="Tasa" TasaOCuota="0.300000" Importe="3295.05"/>
<cfdi:Traslado Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="2284.57"/>
</cfdi:Traslados>
</cfdi:Impuestos>
<cfdi:Complemento/>
</cfdi:Comprobante>
En el nodo CfdiRelacionado deberia de llevar algo por el estilo siguiente:
<cfdi:CfdiRelacionados TipoRelacion="04">
<cfdi:CfdiRelacionado UUID="4EA00BE8-B686-4B1A-A9CB-8B1E76FB9DF0"/>
</cfdi:CfdiRelacionados>
Entonces, con todo esto, me pregunto ¿Es correcta la razón de ser del método siguiente?
@api.model
def unlink_cfdi(self):
""" Delete de relation """
self.cfdi_id = False
Reciban un cordial saludo.
cc @OpenPymeMx