![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Necesito ejemplos XML de alta de subsanación y consulta
Buenos días,
Tengo un par de preguntas. El alta de subsanación debe ser un registro nuevo, con el campo de subsanación con valor "S", pero, ¿debe referenciarse la factura que se quiere subsanar de alguna forma o poniendo el mismo numSerieFactura ya valdría? y, a parte, ¿el resto de campos que no pertenecen a los que se quieran subsanar deberían de ser los mismos que tiene la factura que se quiere subsanar? Por otro lado, no encuentro ningún ejemplo de cómo se debe generar el xml para consultar a la AEAT, sí que he visto el esquema, pero no he encontrado dentro de este hilo un ejemplo XML de la consulta. Si alguien me muestra un ejemplo de como quedaría un XML de un alta de subsanación y de una consulta, sería de gran ayuda para continuar desarrollando todo lo que se nos ha venido encima... ![]() |
|
#2
|
||||
|
||||
|
Cita:
Por eso no se referencia a la factura original, porque realmente se envía toda de nuevo. Ellos ven la marca de "S" y buscarán la que tengan con el mismo número, fecha, serie,... Si puedo mañana te adjunto unos ejemplos
__________________
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. |
|
#3
|
||||
|
||||
|
Este es el registro de alta:
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>-31</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>29-04-2025</sum1:FechaExpedicionFactura>
</sum1:IDFactura>
<sum1:NombreRazonEmisor>CERTIFICADO FISICA PRUEBAS</sum1:NombreRazonEmisor>
<sum1:TipoFactura>F1</sum1:TipoFactura>
<sum1:DescripcionOperacion>Articulo 1</sum1:DescripcionOperacion>
<sum1:Destinatarios>
<sum1:IDDestinatario>
<sum1:NombreRazon>ENDESA</sum1:NombreRazon>
<sum1:NIF>A95758389</sum1:NIF>
</sum1:IDDestinatario>
</sum1:Destinatarios>
<sum1:Desglose>
<sum1:DetalleDesglose>
<sum1:Impuesto>01</sum1:Impuesto>
<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
<sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
<sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
<sum1:BaseImponibleOimporteNoSujeto>456.84</sum1:BaseImponibleOimporteNoSujeto>
<sum1:CuotaRepercutida>95.94</sum1:CuotaRepercutida>
</sum1:DetalleDesglose>
</sum1:Desglose>
<sum1:CuotaTotal>95.94</sum1:CuotaTotal>
<sum1:ImporteTotal>552.78</sum1:ImporteTotal>
<sum1:Encadenamiento>
<sum1:RegistroAnterior>
<sum1:IDEmisorFactura>99999910G</sum1:IDEmisorFactura>
<sum1:NumSerieFactura>-30</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>16-04-2025</sum1:FechaExpedicionFactura>
<sum1:Huella>7BCB28990186F367C674E9B049D5B45F54729DE507BCBF3EE69491822811ACC9</sum1:Huella>
</sum1:RegistroAnterior>
</sum1:Encadenamiento>
<sum1:SistemaInformatico>
<sum1:NombreRazon>MI empresa</sum1:NombreRazon>
<sum1:NIF>XXXXXXXXXX</sum1:NIF>
<sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
<sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
<sum1:Version>1.0.0.0</sum1:Version>
<sum1:NumeroInstalacion>12345678</sum1:NumeroInstalacion>
<sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
<sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
<sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
</sum1:SistemaInformatico>
<sum1:FechaHoraHusoGenRegistro>2025-04-29T06:26:22Z</sum1:FechaHoraHusoGenRegistro>
<sum1:NumRegistroAcuerdoFacturacion></sum1:NumRegistroAcuerdoFacturacion>
<sum1:IdAcuerdoSistemaInformatico></sum1:IdAcuerdoSistemaInformatico>
<sum1:TipoHuella>01</sum1:TipoHuella>
<sum1:Huella>9DDB20B106890C01F1410246FA33942FDCC4A49AD933B7F3D9AE971A639E5185</sum1:Huella>
...
</sum1:RegistroAlta>
</sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>
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>-31</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>29-04-2025</sum1:FechaExpedicionFactura>
</sum1:IDFactura>
<sum1:NombreRazonEmisor>CERTIFICADO FISICA PRUEBAS</sum1:NombreRazonEmisor>
<sum1:Subsanacion>S</sum1:Subsanacion>
<sum1:TipoFactura>F1</sum1:TipoFactura>
<sum1:DescripcionOperacion>Articulo 1</sum1:DescripcionOperacion>
<sum1:FacturaSimplificadaArt7273>S</sum1:FacturaSimplificadaArt7273>
<sum1:Destinatarios>
<sum1:IDDestinatario>
<sum1:NombreRazon>ENDESA</sum1:NombreRazon>
<sum1:NIF>A95758389</sum1:NIF>
</sum1:IDDestinatario>
</sum1:Destinatarios>
<sum1:Desglose>
<sum1:DetalleDesglose>
<sum1:Impuesto>01</sum1:Impuesto>
<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
<sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
<sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
<sum1:BaseImponibleOimporteNoSujeto>456.84</sum1:BaseImponibleOimporteNoSujeto>
<sum1:CuotaRepercutida>95.94</sum1:CuotaRepercutida>
</sum1:DetalleDesglose>
</sum1:Desglose>
<sum1:CuotaTotal>95.94</sum1:CuotaTotal>
<sum1:ImporteTotal>552.78</sum1:ImporteTotal>
<sum1:Encadenamiento>
<sum1:RegistroAnterior>
<sum1:IDEmisorFactura>99999910G</sum1:IDEmisorFactura>
<sum1:NumSerieFactura>-31</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>29-04-2025</sum1:FechaExpedicionFactura>
<sum1:Huella>9DDB20B106890C01F1410246FA33942FDCC4A49AD933B7F3D9AE971A639E5185</sum1:Huella>
</sum1:RegistroAnterior>
</sum1:Encadenamiento>
<sum1:SistemaInformatico>
<sum1:NombreRazon>MI empresa</sum1:NombreRazon>
<sum1:NIF>XXXXXXXXXX</sum1:NIF>
<sum1:NombreSistemaInformatico>MiERP</sum1:NombreSistemaInformatico>
<sum1:IdSistemaInformatico>04</sum1:IdSistemaInformatico>
<sum1:Version>1.0.0.0</sum1:Version>
<sum1:NumeroInstalacion>12345678</sum1:NumeroInstalacion>
<sum1:TipoUsoPosibleSoloVerifactu>N</sum1:TipoUsoPosibleSoloVerifactu>
<sum1:TipoUsoPosibleMultiOT>S</sum1:TipoUsoPosibleMultiOT>
<sum1:IndicadorMultiplesOT>S</sum1:IndicadorMultiplesOT>
</sum1:SistemaInformatico>
<sum1:FechaHoraHusoGenRegistro>2025-04-29T06:26:28Z</sum1:FechaHoraHusoGenRegistro>
<sum1:NumRegistroAcuerdoFacturacion></sum1:NumRegistroAcuerdoFacturacion>
<sum1:IdAcuerdoSistemaInformatico></sum1:IdAcuerdoSistemaInformatico>
<sum1:TipoHuella>01</sum1:TipoHuella>
<sum1:Huella>85225DAAB0AD8EA824B035BC810BC368FE21506E4D15D756F94142D3B59BF1FC</sum1:Huella>
...
</sum1:RegistroAlta>
</sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>
__________________
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. Última edición por Neftali [Germán.Estévez] fecha: 06-06-2025 a las 09:47:05. |
|
#4
|
|||
|
|||
|
Perfecto, así ya me aseguro de que lo esté haciendo bien. Muchas Gracias.
![]() |
|
#5
|
|||
|
|||
|
Puf, pues yo de momento aún no he llegado al tema de la subsanación (más que nada porque como se supone que no puedo modificar las facturas, no se que puedo subsanar) , pero asi como lo tengo montado para mi será un desastre, porque yo tengo la huella grabada en la factura, asi como la huella anterior. Y no puedo reconstruir la huella, porque la siguiente factura que se hizo, tiene la huella de esa factura como huella anterior. Entonces no se como lo voy a solucionar.
¿Esto solo afectaria a la subsanacion? Es decir, en casos de generar factura de abono, rectificativa y demás, como tendría otra factura, no habria problema con la huella, no ? Vaya marrón nos ha caido con todo esto. |
|
#6
|
|||
|
|||
|
Cita:
|
|
#7
|
|||
|
|||
|
Cita:
Es que la huella no debería ir en la tabla de Facturas, sino en una tabla aparte de Registros de Facturacion. Ten en cuenta que una factura puede tener más de un registro de facturación (si se subsana, si se anula...). Como lo tienes montado no veo la manera de que te funcione correctamente. Yo te aconsejaría que crees la tabla y lo orientes por ahí. Y si quieres (yo lo hago) guardas en al factura la última (que no la única) huella de la factura a modo informativo. En cuanto a lo de subsanar, deberías controlarlo. Ten en cuenta que se te puede dar el caso de que el envío te devuelva un error que haya que subsanar (cuando la factura entra aceptado con errores). No tienes que cambiar nada en la factura pero igualmente tienes que crear un registro nuevo de subsanación. Y lo mismo si quieres anularla |
|
#8
|
||||
|
||||
|
Cita:
1 factura tienes 1..N registros de facturación (lo habitual será 1, pero al modificar la factura o borrarla, puedes crear otros). Y pasas la huella actual y la anterior a esa nueva entidad (Registro de facturación). En el registro de Facturación debes tener la referencia a la factura a la que pertenece.
__________________
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. |
|
#9
|
|||
|
|||
|
Cita:
Aunque imagino que a estas alturas ya lo habrás resuelto, aquí te adjunto cómo realizo las consultas (por ahora, sólo en calidad de "Emisor"). Te muestro el código en DataFlex, pero es muy fácil de comprender. Código:
// Componer el XML de la consulta
// Nota: Hay más posibles filtros opcionales pero incluyo solo lo básico
Get Create (RefClass(cComXml)) to hoXml
Set ComTag of hoXml to "soapenv:Envelope"
Get ComAddAttribute of hoXml "xmlns:soapenv" "....schemas.xmlsoap.org/soap/envelope/" to iSuccess
Get ComAddAttribute of hoXml "xmlns:sfLRC" gsVerifactu_ConsultaLR to iSuccess
Get ComAddAttribute of hoXml "xmlns:sf" ".....agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd" to iSuccess
Send ComUpdateChildContent to hoXml "soapenv:Header" ""
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:Cabecera|sf:IDVersion" gsIDVersionEsquema_Verifactu
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:Cabecera|sf:ObligadoEmision|sf:NombreRazon" (Trim(EMPRESAS.NOMBRE))
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:Cabecera|sf:ObligadoEmision|sf:NIF" EMPRESAS.NIF
If (sNifConsultar <> '') Begin
// ToDo: El campo "NombreRazon" del Destinatario no es obligatorio si se facilita el NIF
// ....prewww1.aeat.es/wlpl/TIKE-CONT/SvTikeEmitidasQuery
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:Cabecera|sf:Destinatario|sf:NIF" sNifConsultar
End
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:FiltroConsulta|sfLRC:PeriodoImputacion|sf:Ejercicio" sEjercicio
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:FiltroConsulta|sfLRC:PeriodoImputacion|sf:Periodo" sPeriodo
If (sNumserieFtra <> '') Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:FiltroConsulta|sfLRC:NumSerieFactura" sNumserieFtra
If (sDesdeFecha <> '') Begin
If (sDesdeFecha = sHastaFecha) Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:FiltroConsulta|sfLRC:FechaExpedicionFactura|sf:FechaExpedicionFactura" sDesdeFecha
Else Begin
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:FiltroConsulta|sfLRC:FechaExpedicionFactura|sf:RangoFechaExpedicion|sf:Desde" sDesdeFecha
Send ComUpdateChildContent to hoXml "soapenv:Body|sfLRC:ConsultaFactuSistemaFacturacion|sfLRC:FiltroConsulta|sfLRC:FechaExpedicionFactura|sf:RangoFechaExpedicion|sf:Hasta" sHastaFecha
End
End
Get ComGetXml of hoXml to sSoapRequestBody
Send Destroy of hoXml
Antonio PD: Disculpa, pero aún no tengo permiso para poner URLs ![]() |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Consulta sobre "Ejemplo de Alta/Anulación de factura, envío HTTPRIO" | mnc2 | Envío de registros y sus respuestas | 7 | 21-02-2025 14:45:17 |
| Necesito XML de mas de un registro de alta | Rja750 | Registros de Facturacion y Eventos (XML) | 6 | 20-02-2025 10:08:15 |
| Error 3002 en subsanacion | ermendalenda | Errores (relacionados con al AEAT) | 5 | 14-11-2024 10:59:55 |
| Necesito ejemplos sobre OOP (Programación orientada a objetos) | brenda | OOP | 5 | 30-04-2007 22:31:58 |
| necesito ver ejemplos de instaladores que utilicen el Alias y el BDe | JClink | Conexión con bases de datos | 1 | 02-02-2006 01:47:37 |
|