Error 1180 de VERI*FACTU
Qué implica
Este código provoca el rechazo del registro de facturación afectado — o de la petición completa si el error se produce en la cabecera. El resto de registros del envío se procesan con normalidad, así que la respuesta será ParcialmenteCorrecto: revisa la RespuestaLinea de cada registro para localizar exactamente cuáles cayeron. El rechazado no consta en la AEAT hasta que lo corrijas y reenvíes, vigilando no romper el encadenamiento de huellas al regenerarlo.
Elementos XML implicados
El mensaje cita este elemento del esquema oficial (SuministroInformacion.xsd):
Encadenamiento — empieza por localizarlo en tu registro y contrastar su contenido con las condiciones del documento de validaciones.
Causas habituales
La huella se calculó sin aplicar el trim de espacios a cada valor, o con URL-encoding — el documento oficial exige trim y prohíbe el encoding.
El registro no encadena: la huella del registro anterior que declaras no es la del último registro real de tu sistema.
Los valores hasheados no son los literales del XML (fechas o importes reformateados entre el cálculo y la serialización).
Salida en minúsculas o con longitud distinta de 64 caracteres hexadecimales.
Cómo depurarlo
Reproduce los tres vectores de ejemplo del documento oficial de la huella: si tu implementación no los clava bit a bit, ahí está el fallo.
Verifica la cadena completa de tu serie (no solo el último registro): una rotura antigua contamina todo lo posterior.
Calcula la huella sobre los mismos bytes que serializas — nunca desde objetos que reformatean fechas o números.
Prueba el validador gratuito — esquema oficial, cadena de huellas y reglas de importes, sin registro y con retención cero. Y si quieres el mock de la AEAT para tu CI, apúntate a la beta de la suite.
Errores relacionados
- 1247 El valor del campo TipoHuella es incorrecto.
- 1262 La longitud de huella no cumple con las especificaciones.
- 1263 La longitud del tipo de huella no cumple con las especificaciones.
- 1278 El valor de la huella del registro anterior debe ser diferente a la huella del registro actual
- 2000 El cálculo de la huella suministrada es incorrecta.
- 2002 La longitud de huella del registro anterior no cumple con las especificaciones.