Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Proyecto SIF/Veri*Factu/Ley Antifraude > Registros de Facturacion y Eventos (XML)
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-07-2025
rafa1963 rafa1963 is offline
Miembro
 
Registrado: dic 2024
Posts: 100
Poder: 2
rafa1963 Va por buen camino
Tipo facturas exentas

Buenas tardes, alguien tiene algún ejemplo o me puede orientar para el registro de una factura exenta y sus tipos, se que existen desde la E1 a E6 pero no sé como aplicarlas en el XML
Gracias
Responder Con Cita
  #2  
Antiguo 21-07-2025
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Te paso un ejemplo de una factura con varias líneas EXENTAS

Código:
<?xml version="1.0" encoding="utf-8"?>
<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"  
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"  
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd"> 
	<sum:RegistroFactura>
		<sum1:RegistroAlta>
			<sum1:IDVersion>1.0</sum1:IDVersion>
			<sum1:IDFactura>
				<sum1:IDEmisorFactura>99999910G</sum1:IDEmisorFactura>
				<sum1:NumSerieFactura>SERIE-3</sum1:NumSerieFactura>
				<sum1:FechaExpedicionFactura>21-07-2025</sum1:FechaExpedicionFactura>
			</sum1:IDFactura>
			<sum1:NombreRazonEmisor>EMPRESA PRUEBAS</sum1:NombreRazonEmisor>
			<sum1:TipoFactura>F1</sum1:TipoFactura>
			<sum1:DescripcionOperacion>articulo exento E6</sum1:DescripcionOperacion>
			<sum1:Destinatarios>
				<sum1:IDDestinatario>
					<sum1:NombreRazon>el corte ingles</sum1:NombreRazon>
					<sum1:NIF>A28017895</sum1:NIF>
				</sum1:IDDestinatario>
			</sum1:Destinatarios>
			<sum1:Desglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E1</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>400.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>02</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E3</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>200.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E4</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>300.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E6</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>100.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
			</sum1:Desglose>
			<sum1:CuotaTotal>0.00</sum1:CuotaTotal>
			<sum1:ImporteTotal>1000.00</sum1:ImporteTotal>
			<sum1:Encadenamiento>
				<sum1:RegistroAnterior>
					<sum1:IDEmisorFactura>99999910G</sum1:IDEmisorFactura>
					<sum1:NumSerieFactura>SERIE-2</sum1:NumSerieFactura>
					<sum1:FechaExpedicionFactura>18-07-2025</sum1:FechaExpedicionFactura>
					<sum1:Huella>6D64A280EB0690419449C68E2E6F4577813B70E1CD3B5A5EE3DCF730118D1AB8</sum1:Huella>
				</sum1:RegistroAnterior>
			</sum1:Encadenamiento>
			<sum1:SistemaInformatico>
				<sum1:NombreRazon>Mi empresa S.L.</sum1:NombreRazon>
				<sum1:NIF>11111111X</sum1:NIF>
				<sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
				<sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
				<sum1:Version>1.0</sum1:Version>
				<sum1:NumeroInstalacion>55555555555555</sum1:NumeroInstalacion>
				<sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
				<sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
				<sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
			</sum1:SistemaInformatico>
			<sum1:FechaHoraHusoGenRegistro>2025-07-21T08:24:04Z</sum1:FechaHoraHusoGenRegistro>
			<sum1:NumRegistroAcuerdoFacturacion/>
			<sum1:IdAcuerdoSistemaInformatico/>
			<sum1:TipoHuella>01</sum1:TipoHuella>
			<sum1:Huella>16021AB2329D491F1507DEEF23805AC7ADA9D0B6D9214E3074E2896C87535BC0</sum1:Huella>
			<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="Signature-30f2e625-4b94-4a85-8eee-59ce46143107">
				....
			</ds:Signature>
		</sum1:RegistroAlta>
	</sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>
La factura tiene tres líneas exentas con los tipos E6 (100€), E3 (200€) y E4 (300€)
También tiene una lúnea exenta no deducible (400€) y una línea de SUPLIDOS (500€)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 21-07-2025
rafa1963 rafa1963 is offline
Miembro
 
Registrado: dic 2024
Posts: 100
Poder: 2
rafa1963 Va por buen camino
Re

Muchas gracias Germán por tu respuesta, he visto las muestras y sus detalles. Te estoy muy agradecido. Pero no me queda muy claro como puedo saber que tipo asignar en futuras ocasiones (Como saber a cual asignar E1, o E2, etc).
Gracias
Responder Con Cita
  #4  
Antiguo 21-07-2025
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En nuestro caso (que digan los demás si implementan lógicas más elaboradas), el E3, E4 y E6 los asigna el usuario manualmente, cuando el tipo es EXENTO.
El E1, se asigna automáticamente cuando el tipo es EXENTO_SD (sin derecho a deducción).
El E2 ahora mismo no recuerdo, tendría que mirarlo....
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 21-07-2025
rci rci is online now
Miembro
 
Registrado: nov 2020
Posts: 565
Poder: 6
rci Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
En nuestro caso (que digan los demás si implementan lógicas más elaboradas), el E3, E4 y E6 los asigna el usuario manualmente, cuando el tipo es EXENTO.
El E1, se asigna automáticamente cuando el tipo es EXENTO_SD (sin derecho a deducción).
El E2 ahora mismo no recuerdo, tendría que mirarlo....
Nosotros todavía tenemos pendiente implementar que el usuario pueda escoger la causa de exención
De momento usamos E5 para intracomunitarias y E2 para exportaciones y el resto E6
Es un punto pendiente de mejorar en nuestro SIF...
Responder Con Cita
  #6  
Antiguo 23-07-2025
rafa1963 rafa1963 is offline
Miembro
 
Registrado: dic 2024
Posts: 100
Poder: 2
rafa1963 Va por buen camino
Thumbs up re

Gracias por vuestra aportación.
Responder Con Cita
  #7  
Antiguo 07-08-2025
[email protected] frrr@grupo3rs.c is offline
Miembro
 
Registrado: mar 2024
Posts: 116
Poder: 3
frrr@grupo3rs.c Va por buen camino
Cita:
Empezado por rci Ver Mensaje
Nosotros todavía tenemos pendiente implementar que el usuario pueda escoger la causa de exención
De momento usamos E5 para intracomunitarias y E2 para exportaciones y el resto E6
Es un punto pendiente de mejorar en nuestro SIF...
Podrias poner un ejemplo completo como tratar las exportaciones, con las facturas de la aduana incluida,

Gracias
Responder Con Cita
  #8  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por rci Ver Mensaje
Nosotros todavía tenemos pendiente implementar que el usuario pueda escoger la causa de exención
De momento usamos E5 para intracomunitarias y E2 para exportaciones y el resto E6
Es un punto pendiente de mejorar en nuestro SIF...
Hola rci. Leo que el tema de intracomunitarias lo tenéis resuelto y a mi me está dando la lata el XML. Yo envío esto:

Código:
<IDFactura>
<IDEmisorFactura>22334455R</IDEmisorFactura>
<NumSerieFactura>399-G01</NumSerieFactura>
<FechaExpedicionFactura>07-08-2025</FechaExpedicionFactura>
</IDFactura>
<NombreRazonEmisor>AAAAAAAAAAA</NombreRazonEmisor>
<Subsanacion>N</Subsanacion>
<RechazoPrevio>N</RechazoPrevio>
<TipoFactura>E5</TipoFactura>
<DescripcionOperacion>VENTAS</DescripcionOperacion>
<FacturaSimplificadaArt7273>N</FacturaSimplificadaArt7273>
<FacturaSinIdentifDestinatarioArt61d>N</FacturaSinIdentifDestinatarioArt61d>
<Macrodato>N</Macrodato>
<Destinatarios>
<IDDestinatario>
<NombreRazon>BBBBBBBBBBBBBBBBBBBBBBBB</NombreRazon>
<NIF>123456789</NIF>
<IDOtro>
<CodigoPais>PT</CodigoPais>
<IDType>02</IDType>
</IDOtro>
</IDDestinatario>
</Destinatarios>
<Cupon>N</Cupon>
<Desglose>
<DetalleDesglose>
<ClaveRegimen>01</ClaveRegimen>
<CalificacionOperacion>N2</CalificacionOperacion>
<BaseImponibleOimporteNoSujeto>50.00</BaseImponibleOimporteNoSujeto>
</DetalleDesglose>
</Desglose>
<CuotaTotal>0.00</CuotaTotal>
<ImporteTotal>50.00</ImporteTotal>
<Encadenamiento>
<RegistroAnterior>
<IDEmisorFactura>29781758R</IDEmisorFactura>
<NumSerieFactura>398-G01</NumSerieFactura>
<FechaExpedicionFactura>29-07-2025</FechaExpedicionFactura>
<Huella>A0865A4CF1DC7FA3AF234E8A2B87862C827E467D58361019FD85657CE52D14DB</Huella>
</RegistroAnterior>
</Encadenamiento>
<SistemaInformatico>
<NombreRazon>AAAAAAAAAAAAAAAAAAA</NombreRazon>
<NIF>22334455R</NIF>
<NombreSistemaInformatico>GestionVF</NombreSistemaInformatico>
<IdSistemaInformatico>88</IdSistemaInformatico>
<Version>25.03.15</Version>
<NumeroInstalacion>15</NumeroInstalacion>
<TipoUsoPosibleSoloVerifactu>S</TipoUsoPosibleSoloVerifactu>
<TipoUsoPosibleMultiOT>S</TipoUsoPosibleMultiOT>
<IndicadorMultiplesOT>S</IndicadorMultiplesOT>
</SistemaInformatico>
<FechaHoraHusoGenRegistro>2025-08-07T10:45:32+02:00</FechaHoraHusoGenRegistro>
<TipoHuella>01</TipoHuella>
<Huella>33CCAF1B0E8AA71013542DDFF0DF5FBDD15B8C6DD23024892F5502BDB96EF589</Huella>
</RegistroAlta>
</RegistroFactura>
Y no me entra, respondiendo esto:

Código:
<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Body><env:Fault>
<faultcode>env:Client</faultcode><faultstring>Codigo[4102].El XML no cumple el esquema. Falta informar campo obligatorio.: IDDestinatario</faultstring>
<detail><callstack>El XML no cumple el esquema. Falta informar campo obligatorio.: IDDestinatario
WSExcepcion [faultcode=null, detailMap=null, version=0, faultstring=null, faultactor=null, faultSubCode=null, reasonText=null, detail=null, nameSpaceUriDetail=null]
	at es.aeat.tike.cont.xml.util.UtilesXMLTIKE.existeEtiquetaFin(UtilesXMLTIKE.java:483)
	at es.aeat.tike.cont.ws.xml.comun.ParserXmlDestinatarios.parsearListaDestinatarios(ParserXmlDestinatarios.java:103)
	at es.aeat.tike.cont.ws.xml.fe.estructura.ParserXmlRegistroFacturacion.parsearRegistro(ParserXmlRegistroFacturacion.java:444)
	at es.aeat.tike.cont.ws.xml.fe.estructura.ParserXmlRegFactuAltaBaja.parseaAlta(ParserXmlRegFactuAltaBaja.java:188)
	at es.aeat.tike.cont.ws.xml.fe.estructura.ParserXmlRegFactuAltaBaja.tratarRegistroAlta(ParserXmlRegFactuAltaBaja.java:875)
	at es.aeat.tike.cont.ws.xml.fe.estructura.ParserXmlRegFactuAltaBaja.parserComunRegFactu(ParserXmlRegFactuAltaBaja.java:94)
	at es.aeat.tike.cont.ws.fe.ProcesasfAltaBajaWS.altaBajaFacturaSistemaFacturacion(ProcesasfAltaBajaWS.java:58)
	at es.aeat.tike.cont.ws.fe.VistaSF.procesaOperacion(VistaSF.java:56)
	at es.aeat.tike.cont.ws.VistaMaestro.procesaCabecera(VistaMaestro.java:241)
	at es.aeat.tike.cont.ws.VistaMaestro.inicializaParseaValidaProcesaCabecera(VistaMaestro.java:86)
	at es.aeat.tike.cont.ws.fe.VerifactuSOAP.doPost(VerifactuSOAP.java:49)
	at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:520)
	at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:587)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1266)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:754)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:451)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:197)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:100)
	at io.openliberty.http.monitor.ServletFilter.doFilter(ServletFilter.java:76)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:203)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
	at es.aeat.tike.cont.ws.filter.VFFilter.doFilter(VFFilter.java:53)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:203)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
	at es.aeat.adws.jdit.imp.ws.WSFilterSrvImpl.doFilter(WSFilterSrvImpl.java:253)
	at es.aeat.adws.jdit.api.ws.WSFilter.doFilter(WSFilter.java:24)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:203)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
	at es.aeat.adht.jdit.imp.infra.JDitFilterSrvImpl._runUnified(JDitFilterSrvImpl.java:300)
	at es.aeat.adht.jdit.imp.infra.JDitFilterSrvImpl.filtroIni(JDitFilterSrvImpl.java:151)
	at es.aeat.adht.jdit.imp.infra.JDitFilterSrvImpl.doFilter(JDitFilterSrvImpl.java:103)
	at es.aeat.adht.jdit.imp.infra.JDitFilterSrvImpl.doFilter(JDitFilterSrvImpl.java:78)
	at es.aeat.adht.jdit.api.filter.JDitFilter.doFilter(JDitFilter.java:21)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:203)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:1069)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1260)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1078)
	at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:77)
	at com.ibm.ws.webcontainer40.servlet.CacheServletWrapper40.handleRequest(CacheServletWrapper40.java:87)
	at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:978)
	at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.run(DynamicVirtualHost.java:293)
	at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink$TaskWrapper.run(HttpDispatcherLink.java:1284)
	at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink.wrapHandlerAndExecute(HttpDispatcherLink.java:500)
	at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink.ready(HttpDispatcherLink.java:459)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:569)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleNewRequest(HttpInboundLink.java:503)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.processRequest(HttpInboundLink.java:363)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.ready(HttpInboundLink.java:330)
	at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:169)
	at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:77)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager.requestComplete(WorkQueueManager.java:516)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager.attemptIO(WorkQueueManager.java:586)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager.workerRun(WorkQueueManager.java:970)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager$Worker.run(WorkQueueManager.java:1059)
	at com.ibm.ws.threading.internal.ExecutorServiceImpl$RunnableWrapper.run(ExecutorServiceImpl.java:298)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)
</callstack></detail></env:Fault></env:Body></env:Envelope>
Decir que la entidad receptora de la factura existe y su NIF también, es una empresa portuguesa.

El caso es que no tengo narices de ver por qué no me entra.
Si fueses tan amable de ponerme un ejemplo te lo agradecería mil.

Última edición por Neftali [Germán.Estévez] fecha: 07-08-2025 a las 12:43:14.
Responder Con Cita
  #9  
Antiguo 07-08-2025
ar-ar ar-ar is offline
Registrado
 
Registrado: may 2025
Posts: 2
Poder: 0
ar-ar Va por buen camino
Cuando añades el bloque IDOTRO no se debe añadir la etiqueta NIF, sino que se indica la etiqueta ID (con el NIF o el ID que sea) en el bloque IDOTRO
Código:
                  <sum1:IDOtro>
                    
                     <sum1:CodigoPais>?</sum1:CodigoPais>
                     <sum1:IDType>?</sum1:IDType>
                     <sum1:ID>?</sum1:ID>
                  </sum1:IDOtro>
Responder Con Cita
  #10  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por ar-ar Ver Mensaje
Cuando añades el bloque IDOTRO no se debe añadir la etiqueta NIF, sino que se indica la etiqueta ID (con el NIF o el ID que sea) en el bloque IDOTRO
Código:
                  <sum1:IDOtro>
                    
                     <sum1:CodigoPais>?</sum1:CodigoPais>
                     <sum1:IDType>?</sum1:IDType>
                     <sum1:ID>?</sum1:ID>
                  </sum1:IDOtro>
Pues si, muchas gracias, el tema que me daba era ese, si.

Última edición por Decanato fecha: 07-08-2025 a las 12:35:43.
Responder Con Cita
  #11  
Antiguo 07-08-2025
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En el error te está dando pistas:
Código:
<faultstring>Codigo[4102].El XML no cumple el esquema. Falta informar campo obligatorio.: IDDestinatario</faultstring>
De que te estás dejando un nodo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #12  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por ar-ar Ver Mensaje
Cuando añades el bloque IDOTRO no se debe añadir la etiqueta NIF, sino que se indica la etiqueta ID (con el NIF o el ID que sea) en el bloque IDOTRO
Código:
                  <sum1:IDOtro>
                    
                     <sum1:CodigoPais>?</sum1:CodigoPais>
                     <sum1:IDType>?</sum1:IDType>
                     <sum1:ID>?</sum1:ID>
                  </sum1:IDOtro>
En el campo ID iría el VAT de la empresa receptora de la factura, no???. Es que mando esto:

<IDDestinatario>
<NombreRazon>MELAINVENTO S.A.</NombreRazon>
<IDOtro>
<CodigoPais>PT</CodigoPais>
<IDType>02</IDType>
<ID>112233445</ID>
</IDOtro>
</IDDestinatario>

Tanto la empresa como su VAT son correctos, y me la rechaza con este error:

<tikR:CodigoErrorRegistro>1103</tikR:CodigoErrorRegistro><tikRescripcionErrorRegistro>El valor del campo ID es incorrecto.</tikRescripcionErrorRegistro>

No sé a qué se puede deber
Responder Con Cita
  #13  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
En el error te está dando pistas:
Código:
<faultstring>Codigo[4102].El XML no cumple el esquema. Falta informar campo obligatorio.: IDDestinatario</faultstring>
De que te estás dejando un nodo.
Si si, gracias, ya me lo indicaron arriba. Ahora, como verás, no sé que pasa con el valor del campo ID, que es el que me faltaba.
Responder Con Cita
  #14  
Antiguo 07-08-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por Decanato Ver Mensaje
Si si, gracias, ya me lo indicaron arriba. Ahora, como verás, no sé que pasa con el valor del campo ID, que es el que me faltaba.
Puede que no este dado de alta en el Vat y has ndicado 02, con 04 te funcilnará seguro por que se lo come todo, pero si es expirtacion y esta dado de alta en el Vat no está correcto ese dato. Prueba poniendo también PT en el id
Responder Con Cita
  #15  
Antiguo 07-08-2025
novatico novatico is offline
Miembro
 
Registrado: dic 2022
Posts: 370
Poder: 4
novatico Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Puede que no este dado de alta en el Vat y has ndicado 02, con 04 te funcilnará seguro por que se lo come todo, pero si es expirtacion y esta dado de alta en el Vat no está correcto ese dato. Prueba poniendo también PT en el id
Ya os he comentado otras veces que yo trabajo en Visual Foxpro.
Tengo una rutina para comprobar los VAT's y si consulto el que se muestra, "112233445" de Portugal (PT), me devuelve "INVALIDO"

Para que no queden dudas, tengo otro VAT de Portugal que me devuelve la información correcta.

Última edición por novatico fecha: 07-08-2025 a las 15:57:57.
Responder Con Cita
  #16  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Puede que no este dado de alta en el Vat y has ndicado 02, con 04 te funcilnará seguro por que se lo come todo, pero si es expirtacion y esta dado de alta en el Vat no está correcto ese dato. Prueba poniendo también PT en el id
Muchas gracias ermendalenda, poniendo el código del país delante del VAT me ha ido perfecto, y con el 02. Y una cosa más, ya que lo comentas, y a título de curiosidad: si utilizase el 04 que dices que se lo traga todo, qué efecto puede tener??? Porque estoy tentado de utilizarlo y quitarme de historias, siempre que no me genere ningún marrón.
Responder Con Cita
  #17  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por novatico Ver Mensaje
Ya os he comentado otras veces que yo trabajo en Visual Foxpro.
Tengo una rutina para comprobar los VAT's y si consulto el que se muestra, "112233445" de Portugal (PT), me devuelve "INVALIDO"

Para que no queden dudas, tengo otro VAT de Portugal que me devuelve la información correcta.
Muchas gracias por el interés, ese código lo puse de ejemplo para no publicar ningún dato real, por eso te da inválido.

Por cierto, yo pasé también por Visual FoxPro durante unos buenos años... qué tiempos!!
Responder Con Cita
  #18  
Antiguo 07-08-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por Decanato Ver Mensaje
Muchas gracias ermendalenda, poniendo el código del país delante del VAT me ha ido perfecto, y con el 02. Y una cosa más, ya que lo comentas, y a título de curiosidad: si utilizase el 04 que dices que se lo traga todo, qué efecto puede tener??? Porque estoy tentado de utilizarlo y quitarme de historias, siempre que no me genere ningún marrón.
Hombre, si son empresas que suelwn estar haciendo exportaciones mejoe 02, pero yo al por menor xon dacruras pequeñas a clientes normalmente locales, para 3 añ mes que vienen de fuwra todo al 04. Pero puedes hacer por programa que si nl te da validez en wl vies meterlo en el 04, ya lo que quieras arriesgar.el 04 identificador que tenga en su pais, y de momento no estan verificando nada más, pero no te puedo asegurar que sea siempre así.
Responder Con Cita
  #19  
Antiguo 07-08-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Hombre, si son empresas que suelwn estar haciendo exportaciones mejoe 02, pero yo al por menor xon dacruras pequeñas a clientes normalmente locales, para 3 añ mes que vienen de fuwra todo al 04. Pero puedes hacer por programa que si nl te da validez en wl vies meterlo en el 04, ya lo que quieras arriesgar.el 04 identificador que tenga en su pais, y de momento no estan verificando nada más, pero no te puedo asegurar que sea siempre así.
Ok, gracias!!!
Responder Con Cita
  #20  
Antiguo 08-08-2025
ISCOPYME ISCOPYME is offline
Miembro
 
Registrado: jun 2004
Posts: 20
Poder: 0
ISCOPYME Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Te paso un ejemplo de una factura con varias líneas EXENTAS

Código:
<?xml version="1.0" encoding="utf-8"?>
<sum:RegFactuSistemaFacturacion xmlns:ds="http://www.w3.org/2000/09/xmldsig#"  
xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"  
xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd"> 
	<sum:RegistroFactura>
		<sum1:RegistroAlta>
			<sum1:IDVersion>1.0</sum1:IDVersion>
			<sum1:IDFactura>
				<sum1:IDEmisorFactura>99999910G</sum1:IDEmisorFactura>
				<sum1:NumSerieFactura>SERIE-3</sum1:NumSerieFactura>
				<sum1:FechaExpedicionFactura>21-07-2025</sum1:FechaExpedicionFactura>
			</sum1:IDFactura>
			<sum1:NombreRazonEmisor>EMPRESA PRUEBAS</sum1:NombreRazonEmisor>
			<sum1:TipoFactura>F1</sum1:TipoFactura>
			<sum1:DescripcionOperacion>articulo exento E6</sum1:DescripcionOperacion>
			<sum1:Destinatarios>
				<sum1:IDDestinatario>
					<sum1:NombreRazon>el corte ingles</sum1:NombreRazon>
					<sum1:NIF>A28017895</sum1:NIF>
				</sum1:IDDestinatario>
			</sum1:Destinatarios>
			<sum1:Desglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E1</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>400.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>02</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E3</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>200.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E4</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>300.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
				<sum1:DetalleDesglose>
					<sum1:Impuesto>01</sum1:Impuesto>
					<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
					<sum1:OperacionExenta>E6</sum1:OperacionExenta>
					<sum1:BaseImponibleOimporteNoSujeto>100.00</sum1:BaseImponibleOimporteNoSujeto>
				</sum1:DetalleDesglose>
			</sum1:Desglose>
			<sum1:CuotaTotal>0.00</sum1:CuotaTotal>
			<sum1:ImporteTotal>1000.00</sum1:ImporteTotal>
			<sum1:Encadenamiento>
				<sum1:RegistroAnterior>
					<sum1:IDEmisorFactura>99999910G</sum1:IDEmisorFactura>
					<sum1:NumSerieFactura>SERIE-2</sum1:NumSerieFactura>
					<sum1:FechaExpedicionFactura>18-07-2025</sum1:FechaExpedicionFactura>
					<sum1:Huella>6D64A280EB0690419449C68E2E6F4577813B70E1CD3B5A5EE3DCF730118D1AB8</sum1:Huella>
				</sum1:RegistroAnterior>
			</sum1:Encadenamiento>
			<sum1:SistemaInformatico>
				<sum1:NombreRazon>Mi empresa S.L.</sum1:NombreRazon>
				<sum1:NIF>11111111X</sum1:NIF>
				<sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
				<sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
				<sum1:Version>1.0</sum1:Version>
				<sum1:NumeroInstalacion>55555555555555</sum1:NumeroInstalacion>
				<sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
				<sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
				<sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
			</sum1:SistemaInformatico>
			<sum1:FechaHoraHusoGenRegistro>2025-07-21T08:24:04Z</sum1:FechaHoraHusoGenRegistro>
			<sum1:NumRegistroAcuerdoFacturacion/>
			<sum1:IdAcuerdoSistemaInformatico/>
			<sum1:TipoHuella>01</sum1:TipoHuella>
			<sum1:Huella>16021AB2329D491F1507DEEF23805AC7ADA9D0B6D9214E3074E2896C87535BC0</sum1:Huella>
			<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="Signature-30f2e625-4b94-4a85-8eee-59ce46143107">
				....
			</ds:Signature>
		</sum1:RegistroAlta>
	</sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>
La factura tiene tres líneas exentas con los tipos E6 (100€), E3 (200€) y E4 (300€)
También tiene una lúnea exenta no deducible (400€) y una línea de SUPLIDOS (500€)

Buenos días. Me surgen varias duras :

- Disculpadme, pero no veo la línea de suplidos en el xml y me interesa saber cómo quedaría el xml con suplidos.
- ¿ Alguien tiene un ejemplo de xml con retencíon ?

Muchas gracias de antemano.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Facturas rectificativas a para anular facturas aceptadas parcialmente victor03 Registros de Facturacion y Eventos (XML) 6 31-05-2025 10:28:27
que tipo de datos utilizar para guardar cualquier tipo de archivo jeremiselxi MS SQL Server 2 08-12-2014 19:30:00
No se puede convertir variable de tipo null a tipo integer. JairoC Varios 5 30-11-2011 15:43:11
Tabla de Facturas vs Detalles de Facturas magnu9 Conexión con bases de datos 9 27-07-2007 17:27:37
Campos calculados, facturas y detalles de facturas. Letty Conexión con bases de datos 7 07-11-2003 11:19:44


La franja horaria es GMT +2. Ahora son las 16:13:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi