Descargar XML y PDF
Dos archivos por factura. El XML es el comprobante: es lo que tiene el SAT, lo que tu cliente le pasa a su contador y lo que la ley te pide conservar cinco años. El PDF es la representación impresa, que es la copia que lee una persona.
Content-Disposition: attachment, no dentro de un JSON.
Las direcciones también llegan en la factura, en xml_url y pdf_url,
y no cambian: puedes guardarlas.
El XML
Es el comprobante que devolvió el PAC, byte por byte. No lo volvemos a generar: el orden de los atributos, los decimales y los
espacios entran en el sello, así que un XML reconstruido no verificaría contra el que tiene el SAT. Llega con
Content-Type: application/xml.
El PDF
La representación impresa que pide la regla 2.7.1.7 de la RMF: el código QR que lleva a la consulta del SAT, los números de serie del CSD del emisor y del SAT, la leyenda de que es una representación impresa, las fechas de emisión y de certificación, y la cadena original del complemento de certificación.
Se arma a partir del XML la primera vez que lo pides y se guarda. Cancelar la factura descarta esa copia y la vuelve a armar, que es lo único que cambia en la hoja después del timbrado. Pídelo las veces que quieras.
Si el servicio que arma el PDF no responde contestamos
503 con
renderer_unavailable. El comprobante no se ve afectado: el XML sigue disponible y es el documento
que tiene el SAT.
Errores
- document_unavailable
- La factura no está timbrada, o su comprobante todavía no llega. El mensaje dice cuál de las dos.
- not_found
- Esa factura no es de tu cuenta, o no existe. Contestamos igual a las dos.
- unauthorized
- Falta la llave o ya fue revocada.
- renderer_unavailable
- El servicio que arma el PDF no respondió. El XML sí está disponible; vuelve a pedir el PDF en unos minutos.