Versión 3.1.0
Soporte de CFDI 4.0
Se agrega el soporte de CFDI 4.0 con fundamento en el Anexo 20.
Para ello, la Especificación técnica del código de barras bidimensional a incorporar en la representación impresa
se separa a un estándar interno llamado CfdiStandard20170701
Refactorización de métodos compartidos
Las expresiones de CFDI 3.3 y CFDI 4.0 son idénticas, así como la forma de formatear datos como RFC, Sello, Total, etc.
por lo que se refactorizan las clases para poner los métodos comunes en traits.
Codificación de caracteres especiales
Se corrige el problema encontrado al formar expresiones en la codificación de los valores de las expresiones,
al parecer, los valores necesitan expresarse con codificación XML, a pesar de que estén formando parte de una URL.
Por lo tanto, los RFC que contienen &
se deben especificar como &
.
Se hicieron las pruebas con las siguientes URL:
https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx?id=790BA0FF-26DD-4C97-AA84-7A2E9A132730&re=GG&950901AD7&rr=AER970617UH7&tt=1550025.37&fe=SoCSeA==
https://verificacfdi.facturaelectronica.sat.gob.mx/default.aspx?id=5555BFA3-7107-4715-A2E1-31F05E86961B&re=SAZD861013FU2&rr=CAÑA360510556&tt=0.01&fe=l+AO4g==
La misma regla aplica para el registro de identificación fiscal del extranjero utilizado en un
CFDI de Retenciones e Información de Pagos.
Se actualiza el año del archivo de licencia.
Se actualizaron algunos temas relacionados con el entorno de desarrollo:
- Se agrega el script
tests/expression.php
para obtener la expresión de un CFDI. - Se corren las pruebas usando PHP 7.3, 7.4, 8.0 y 8.1.
- Se agregó la herramienta
psalm
. - Se agregó la herramienta
infection
. - Se excluyó
.phive/
del paquete distribuible. - En la acción de construcción de GitHub, se crearon trabajos para las tareas.
- Se actualizaron las versiones de las dependencias.
Los siguientes cambios se hicieron en sus fechas correspondientes, pero hasta ahora se agregan a una versión.