Error CFDI40188 al timbrar: el RFC a cuenta de terceros debe ser distinto al del emisor y al del receptor
El error CFDI40188 aparece cuando el RfcACuentaTerceros de un concepto coincide con el Rfc del emisor o con el del receptor. El nodo cfdi:ACuentaTerceros sirve para identificar a un tercero distinto de las dos partes de la operación; si el RFC es el de una de ellas, el nodo no tiene sentido. Aquí verás cuándo se usa este nodo, por qué un dato repetido lo hace fallar y cómo corregirlo.
Resumen rápido del error
- Código: CFDI40188
- Campo: RfcACuentaTerceros
- Nodo del XML:
cfdi:Conceptos/cfdi:Concepto/cfdi:ACuentaTerceros - Regla del SAT (Anexo 20): El valor registrado en este atributo deber ser diferente al valor registrado en los atributos Rfc de los nodos Emisor y Receptor.
- Mensaje de rechazo: El valor del campo RfcACuentaTerceros, debe ser diferente de los valores de los campos Rfc del Emisor y Receptor.
- Cuándo aparece: al timbrar, antes de que se genere el UUID.
¿Qué significa el error CFDI40188?
El nodo cfdi:ACuentaTerceros se usa en un concepto cuando la operación se realiza por cuenta de un tercero: una persona o empresa distinta de quien emite y de quien recibe el comprobante. Por eso su RFC debe ser diferente de ambos. La regla CFDI40188 solo compara los tres RFC.
La regla no comprueba que el tercero exista en la lista de RFC (eso es CFDI40187), que su nombre corresponda (CFDI40189 y CFDI40190), ni su régimen o domicilio (CFDI40191 y CFDI40192). Si el RFC repetido es en realidad un error de captura, corregirlo suele resolver también las demás.
Dónde se valida: el nodo A cuenta de terceros
La validación se aplica al atributo RfcACuentaTerceros del nodo cfdi:ACuentaTerceros de un concepto y lo compara con el Rfc del cfdi:Emisor y del cfdi:Receptor.
- CFDI40187: el RFC debe estar en la lista de RFC inscritos, salvo el genérico extranjero.
- CFDI40188: el RFC debe ser distinto al del emisor y al del receptor (esta ficha).
- CFDI40189: el nombre debe estar en la lista de RFC inscritos.
- CFDI40190: el nombre debe pertenecer al RFC del tercero.
- CFDI40191: el régimen del tercero debe estar en
c_RegimenFiscal. - CFDI40192: el domicilio del tercero debe estar en la lista de RFC inscritos.
Causas más comunes del error CFDI40188
- Se copió el RFC del emisor. El formulario del tercero se rellenó con los datos de la propia empresa.
- Se copió el RFC del receptor. Se repitió el cliente en el nodo del tercero.
- La plantilla del concepto trae un tercero fijo. Un concepto guardado conserva un tercero de una venta anterior.
- Se usó el nodo sin necesidad. La operación no es por cuenta de un tercero.
- Se confundió con el receptor. Se quiso poner al cliente final y ya estaba como receptor.
- Hubo un error de integración. Un sistema externo llenó el tercero con el RFC del comprobante.
Cómo corregir el error CFDI40188 paso a paso
- Confirma si hay un tercero. Decide si la operación se hace por cuenta de otra persona.
- Si no lo hay, retira el nodo. Quita
cfdi:ACuentaTercerosdel concepto. - Si lo hay, captura su RFC. Usa el RFC del tercero real, distinto del emisor y del receptor.
- Completa los demás datos. Nombre, régimen y domicilio del tercero (CFDI40189 a CFDI40192).
- Revisa las plantillas. Asegúrate de que ningún concepto guardado arrastre un tercero ajeno.
- Se vuelve a timbrar. Con los datos coherentes, el PAC pasa a las demás validaciones.
Ejemplo en el XML: incorrecto y correcto
Ejemplo de un concepto cuyo RFC a cuenta de terceros repite el del emisor; los datos son ficticios:
Incorrecto:
<cfdi:Emisor Rfc="ABC010101AB1" ... />
<cfdi:Receptor Rfc="ABC030303AB3" ... />
<cfdi:ACuentaTerceros RfcACuentaTerceros="ABC010101AB1" NombreACuentaTerceros="EMPRESA DE PRUEBA" RegimenFiscalACuentaTerceros="601" DomicilioFiscalACuentaTerceros="06000" />
Correcto:
<cfdi:Emisor Rfc="ABC010101AB1" ... />
<cfdi:Receptor Rfc="ABC030303AB3" ... />
<cfdi:ACuentaTerceros RfcACuentaTerceros="ABC040404AB4" NombreACuentaTerceros="TERCERO DE PRUEBA" RegimenFiscalACuentaTerceros="601" DomicilioFiscalACuentaTerceros="64000" />
Los datos son ficticios. En el ejemplo correcto, el tercero es una persona distinta del emisor y del receptor, con su propio nombre, régimen y domicilio.
Cuándo no usar el nodo ACuentaTerceros
Antes de capturar un tercero, conviene preguntarse si realmente hay uno. Si facturas por tu propia cuenta a un cliente, el nodo no hace falta. Si vendes por cuenta de otra persona, sí, y entonces necesitas su RFC, nombre, régimen y domicilio fiscal tal como figuran en su constancia. Una buena práctica es mantener un catálogo de terceros aparte del de clientes, con una marca clara, para que nadie copie un cliente al nodo del tercero. Y revisa que las plantillas de concepto no guarden un tercero de ventas anteriores. Para repasar la estructura del concepto, consulta la guía de facturación electrónica CFDI 4.0.
Cómo evitar este error con Soicont
Soicont es una plataforma de facturación electrónica CFDI 4.0 con PAC autorizado. Antes de enviar el comprobante a timbrar, valida los datos del receptor, los catálogos del SAT y los cálculos de impuestos, y si algo no cuadra te muestra el error con una explicación clara para que lo corrijas y vuelvas a emitir. Además, tus folios no caducan y puedes facturar para varias empresas (multi-RFC) desde una sola cuenta.
Conoce la facturación electrónica CFDI 4.0, la plataforma y los paquetes de folios.
Errores relacionados
- Error CFDI40187 (RfcACuentaTerceros): el RFC del tercero debe estar en la lista de RFC inscritos.
- Error CFDI40189 (NombreACuentaTerceros): el nombre del tercero debe estar en la lista de RFC inscritos.
- Error CFDI40190 (NombreACuentaTerceros): el nombre del tercero debe pertenecer a su RFC.
- Error CFDI40191 (RegimenFiscalACuentaTerceros): el régimen del tercero debe estar en c_RegimenFiscal.
- Error CFDI40192 (DomicilioFiscalACuentaTerceros): el domicilio del tercero debe estar en la lista de RFC inscritos.
Consulta también el Centro de Soluciones con todos los errores del SAT.
Preguntas frecuentes
¿Qué significa el error 40188?
Que el RFC a cuenta de terceros es igual al del emisor o al del receptor.
¿Cuándo se usa ACuentaTerceros?
Cuando la operación se hace por cuenta de un tercero distinto de las dos partes.
¿Puedo repetir el RFC del cliente?
No. Debe ser distinto del emisor y del receptor.
¿Qué otros datos pide el tercero?
Nombre, régimen y domicilio fiscal, cada uno con su regla.
¿Y si no hay tercero?
Retira el nodo del concepto.
¿Se genera UUID con este error?
No. El comprobante se rechaza antes del timbrado.
¿Todavía no se resuelve?
Si después de revisar estos puntos el error continúa, escríbenos desde la página de contacto con el código del error y el XML que intentaste timbrar (nunca envíes contraseñas ni la llave privada del CSD). Si aún no tienes cuenta, crea la tuya y empieza a facturar con validaciones previas.