Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Ley antifraude 2021 (VERIFACTU) - Programas informáticos (https://www.clubdelphi.com/foros/showthread.php?t=95235)

ermendalenda 20-10-2024 21:09:20

Cita:

Empezado por bmfranky (Mensaje 558449)
Una hora mas tarde... Sigue sin poderse enviar nada, soy al unico que le pasa??

Esta mañana me iba bien pero acabo de probar los envios ahora y el primer intento me ha tardado unos 2 minutos, como le tengo puesto el timeout en 300 me ha dejado. El segundo intento inmediato, es raro.

ermendalenda 20-10-2024 21:13:13

Cita:

Empezado por bmfranky (Mensaje 558445)
Hola, es el primer registro, lo has tenido en cuenta al generar la huella, no has de consignar datos, solo poner primer registro.


Puede poner el registro completo, para revisarlo?


Gracias bmfranky. Encontré el error, encapsule el nodo del "PrimerRegistro" dentro de registroanterior que en ese caso no hay que ponerlo.

[email protected] 20-10-2024 21:45:59

Cita:

Empezado por ermendalenda (Mensaje 558453)
Si la has enviado tal y como se vé es normal que te tire un error, la huella solo puede contener caracteres HEXADECIMALES, observo un espacio o caracter no visible antes del intro, intenta poner la huella sin intros ni espacios.


ETERNAMENTE AGRADECIDO por vuestra ayuda y cooperacion.
Ya he conseguido recibir la respuesta de la AEAT y me indica :

Código:

<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body Id="Body"><tikR:RespuestaRegFactuSistemaFacturacion xmlns:tik="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd" xmlns:tikR="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/RespuestaSuministro.xsd"><tikR:CSV>A-R8GVFMLPGQ5X9U</tikR:CSV><tikR:DatosPresentacion><tik:NIFPresentador>33461360V</tik:NIFPresentador><tik:TimestampPresentacion>20-10-2024 21:37:24</tik:TimestampPresentacion></tikR:DatosPresentacion><tikR:Cabecera><tik:ObligadoEmision><tik:NombreRazon>HECTOR RAFAEL RODRIGO SANCHEZ</tik:NombreRazon><tik:NIF>33461360V</tik:NIF></tik:ObligadoEmision></tikR:Cabecera><tikR:TiempoEsperaEnvio>60</tikR:TiempoEsperaEnvio><tikR:EstadoEnvio>ParcialmenteCorrecto</tikR:EstadoEnvio><tikR:RespuestaLinea><tikR:IDFactura><tik:IDEmisorFactura>33461360V</tik:IDEmisorFactura><tik:NumSerieFactura>2023</tik:NumSerieFactura><tik:FechaExpedicionFactura>02-10-2024</tik:FechaExpedicionFactura></tikR:IDFactura><tikR:Operacion><tik:TipoOperacion/></tikR:Operacion><tikR:EstadoRegistro>AceptadoConErrores</tikR:EstadoRegistro><tikR:CodigoErrorRegistro>2004</tikR:CodigoErrorRegistro><tikR:DescripcionErrorRegistro>El valor del campo FechaHoraHusoGenRegistro debe ser la fecha actual del sistema de la AEAT, admitiéndose un margen de error de: 120 segundos.</tikR:DescripcionErrorRegistro></tikR:RespuestaLinea></tikR:RespuestaRegFactuSistemaFacturacion>
</env:Body></env:Envelope>

El ultimo problema era que me insertaba un [CRLF] en medio de la huella, lo he quitado manualmente y al enviar de nuevo tal cual me ha respondido Aceptada con errores, ahora ya mas tranquiilo voy a ver porque añade esos carcatres raros y a continuacion intentar dar formato a la respuesta de AEAT.

[email protected] 20-10-2024 21:51:30

Cita:

Empezado por jguarda (Mensaje 558438)
Yo en mi sistema, para componer el nro de factura me baso en el año, de esta manera, cada nuevo ejercicio o año, el programa comienza con el nro 1 de factura, xq la serie por asi decirlo cambia. es decir.


ejercicio 2024 -> 2024.XXXXX1 donde XXXXX1 es el nro de factura, comenzando por el nro. 1. en cada ejercicio.

ejercicio 2025 -> 2025.XXXXX1

ejercicio 2026 -> 2026.XXXXX1


¿ que ocurre entonces con el encadenamiento ?.


supongo que la primera factura de cada ejercicio nuevo, se envia sin encadenamiento no ?, por asi decirlo, es como si empezara desde cero o como lo habeis implementado vosotros ??


He visto algun programa, que el nro de factura siempre va creciendo, es decir, si llevase 6-7 años usándolo puede estar por un nro de factura enorme ... independiente del ejercicio, esto para mi supone un follon de tres pares ... cambiaria toda la lógica del programa con lo q eso supone.

Es correcta tu for a de actuar, puedes empezar por el numero 1
,pero tienes que seguir encadenando con el último del año anterior, recuerda que el encadenamiento no es por serie es por orden cronológico, independientemente de la serie. Puedes encadenar 2 registros de series distintos y de distintos años.

Mi caso es el mismo, pero al mismo tiempo el cliente tiene una sola instalacion del VERI*FACTU pero ademas tiene definidas varias empresas, cada una de ellas tiene cada año por separado, siendo el mismo titular de las empresas y estan ubicadas en distintas poblaciones.
En este caso cada una de las empresas llevaria su propio control de facturas por separadl de las otras empresas.

???

ermendalenda 20-10-2024 21:58:03

Cita:

Empezado por [email protected] (Mensaje 558452)
Código:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd" xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<soapenv:Header/>
<soapenv:Body>
<sum:RegFactuSistemaFacturacion>
<sum1:Cabecera>
<sum1:ObligadoEmision>
<sum1:NombreRazon>HECTOR RAFAEL RODRIGO SANCHEZ</sum1:NombreRazon>
<sum1:NIF>33461360V</sum1:NIF>
</sum1:ObligadoEmision>
</sum1:Cabecera>
<sum:RegistroFactura>
<sum:RegistroAlta>
<sum1:IDVersion>1.0</sum1:IDVersion>
<sum1:IDFactura>
<sum1:IDEmisorFactura>33461360V</sum1:IDEmisorFactura>
<sum1:NumSerieFactura>2024</sum1:NumSerieFactura>
<sum1:FechaExpedicionFactura>15-10-2024</sum1:FechaExpedicionFactura>
</sum1:IDFactura>
<sum1:NombreRazonEmisor>HECTOR RAFAEL RODRIGO SANCHEZ</sum1:NombreRazonEmisor>
<sum1:TipoFactura>F1</sum1:TipoFactura>
<sum1:DescripcionOperacion>VENTA</sum1:DescripcionOperacion>
<sum1:Destinatarios>
<sum1:IDDestinatario>
<sum1:NombreRazon>VENTAS CONTADO</sum1:NombreRazon>
<sum1:NIF>19823568Y</sum1:NIF>
</sum1:IDDestinatario>
</sum1:Destinatarios>
<sum1:Desglose>
<sum1:DetalleDesglose>
<sum1:ClaveRegimen>01</sum1:ClaveRegimen>
<sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
<sum1:TipoImpositivo>21.00</sum1:TipoImpositivo>
<sum1:BaseImponibleOimporteNoSujeto>8.18</sum1:BaseImponibleOimporteNoSujeto>
<sum1:CuotaRepercutida>1.72</sum1:CuotaRepercutida>
</sum1:DetalleDesglose>
</sum1:Desglose>
<sum1:CuotaTotal>1.72</sum1:CuotaTotal>
<sum1:ImporteTotal>9.90</sum1:ImporteTotal>
<sum1:Encadenamiento>
<sum1:PrimerRegistro>S</sum1:PrimerRegistro>
</sum1:Encadenamiento>
<sum1:SistemaInformatico>
<sum1:NombreRazon>HECTOR RAFAEL RODRIGO SANCHEZ</sum1:NombreRazon>
<sum1:NIF>33461360V</sum1:NIF>
<sum1:NombreSistemaInformatico>GESTION COMERCIAL</sum1:NombreSistemaInformatico>
<sum1:IdSistemaInformatico>A1</sum1:IdSistemaInformatico>
<sum1:Version>5.1.531.1443</sum1:Version>
<sum1:NumeroInstalacion>001</sum1:NumeroInstalacion>
<sum1:TipoUsoPosibleSoloVerifactu>S</sum1:TipoUsoPosibleSoloVerifactu>
<sum1:TipoUsoPosibleMultiOT>N</sum1:TipoUsoPosibleMultiOT>
<sum1:IndicadorMultiplesOT>N</sum1:IndicadorMultiplesOT>
</sum1:SistemaInformatico>
<sum1:FechaHoraHusoGenRegistro>2024-10-19T10:01:06+02:00</sum1:FechaHoraHusoGenRegistro>
<sum1:TipoHuella>01</sum1:TipoHuella>
<sum1:Huella>8C4F00D6E814A06990BDA2F30CA26CE3 9D8C043767CFA0BD293436238793067A</sum1:Huella>
</sum:RegistroAlta>
</sum:RegistroFactura>
</sum:RegFactuSistemaFacturacion>
</soapenv:Body>
</soapenv:Envelope>

Despues de hacer los distintos cambios que me habeis indicado, sigue dando el mismo error : Valor o tipo incorrecto del campo.: Huella

<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body Id="Body"><tikR:RespuestaRegFactuSistemaFacturacion xmlns:tik="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd" xmlns:tikR="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/RespuestaSuministro.xsd"><tikR:Cabecera><tik:ObligadoEmision><tik:NombreRazon>HECTOR RAFAEL RODRIGO SANCHEZ</tik:NombreRazon><tik:NIF>33461360V</tik:NIF></tik:ObligadoEmision></tikR:Cabecera><tikR:TiempoEsperaEnvio>60</tikR:TiempoEsperaEnvio><tikR:EstadoEnvio>Incorrecto</tikR:EstadoEnvio><tikR:RespuestaLinea><tikR:IDFactura><tik:IDEmisorFactura>33461360V</tik:IDEmisorFactura><tik:NumSerieFactura>2024</tik:NumSerieFactura><tik:FechaExpedicionFactura>15-10-2024</tik:FechaExpedicionFactura></tikR:IDFactura><tikR:Operacion><tik:TipoOperacion/></tikR:Operacion><tikR:EstadoRegistro>Incorrecto</tikR:EstadoRegistro><tikR:CodigoErrorRegistro>1100</tikR:CodigoErrorRegistro><tikR:DescripcionErrorRegistro>Valor o tipo incorrecto del campo.: Huella</tikR:DescripcionErrorRegistro></tikR:RespuestaLinea></tikR:RespuestaRegFactuSistemaFacturacion>
</env:Body></env:Envelope>

Con los datos de este xml, si no los has cambiado para presentarlos aquí la huella se calcula sobre este string:
IDEmisorFactura=33461360V&NumSerieFactura=2024&FechaExpedicionFactura=15-10-2024&TipoFactura=F1&CuotaTotal=1.72&ImporteTotal=9.90&FechaHoraHusoGenRegistro=2024-10-19T10:01:06+02:00
y el resultado del sha256 en Hexadecimal que tienes qu eponer en la huella es este:
D9AEC6BA1CA8988FE6184C630CF57B8D70B9CF71E4981E11DFEB185DC532F9D1

Puedes usar este link para probar los strings:
https://www.convertstring.com/es/Hash/SHA256

bmfranky 21-10-2024 08:06:27

Cita:

Empezado por [email protected] (Mensaje 558457)
Mi caso es el mismo, pero al mismo tiempo el cliente tiene una sola instalacion del VERI*FACTU pero ademas tiene definidas varias empresas, cada una de ellas tiene cada año por separado, siendo el mismo titular de las empresas y estan ubicadas en distintas poblaciones.
En este caso cada una de las empresas llevaria su propio control de facturas por separadl de las otras empresas.

???

Hola, si solo usa una instalacion para gestionar las facturas de todas las tiendas, ha de encadenarlas todas por tiempo, indistintamente de la serie generada o de la tienda para la que la genere, teniendo en cuenta que las facturas seran todas del mismo periodo impositivo.
El encadenamiento es por cada programa que use, SIF independiente.
Perdon , estoy asumiendo que son el mismo CIF, pero creo que aunque sean varios , es lo mismo, al encadenar , indicas a parte del numero de Serie-Factura, el CIF/NIf del "Obligado..."

ermendalenda 21-10-2024 09:01:59

Cita:

Empezado por bmfranky (Mensaje 558467)
Hola, si solo usa una instalacion para gestionar las facturas de todas las tiendas, ha de encadenarlas todas por tiempo, indistintamente de la serie generada o de la tienda para la que la genere, teniendo en cuenta que las facturas seran todas del mismo periodo impositivo.
El encadenamiento es por cada programa que use, SIF independiente.
Perdon , estoy asumiendo que son el mismo CIF, pero creo que aunque sean varios , es lo mismo, al encadenar , indicas a parte del numero de Serie-Factura, el CIF/NIf del "Obligado..."

Es correcto, excepto lo de encadenar lo del mismo CIF. distintos cifs distintos encadenamientos.

bmfranky 21-10-2024 09:09:57

Cita:

Empezado por ermendalenda (Mensaje 558468)
Es correcto, excepto lo de encadenar lo del mismo CIF. distintos cifs distintos encadenamientos.

Estais seguros?
Cuando consulte sobre el encadenamineto, no me dijeron nada de separar por CIFS/NIFS, lo unico que me indicaron esra la cronologia, sin mas.

ermendalenda 21-10-2024 09:14:55

Cita:

Empezado por bmfranky (Mensaje 558469)
Estais seguros?
Cuando consulte sobre el encadenamineto, no me dijeron nada de separar por CIFS/NIFS, lo unico que me indicaron esra la cronologia, sin mas.

Sí. cuando sea multiempresa todo separado, un mensaje claro constante de que empresa es la que se está trabajando, las bases de datos separadas, envios separados, todo separado, a ver si lo encuentro, pero era claro.

edari 21-10-2024 09:17:27

Buenos días de nuevo,


Alguno ha hecho una consulta xml para bajar y poder comprobar las facturas que están en Verifactu?


Supongo que se podrá pero no encuentro info de como montar el xml de la consulta...


Gracias

bmfranky 21-10-2024 09:19:43

Cita:

Empezado por edari (Mensaje 558471)
Buenos días de nuevo,


Alguno ha hecho una consulta xml para bajar y poder comprobar las facturas que están en Verifactu?


Supongo que se podrá pero no encuentro info de como montar el xml de la consulta...


Gracias

Hola, buenos dias.
Hasta donde he leido en la documentacion, de momento ni lo han contemplado, no existe ningun "Comando", para solicitarlo, ahunque desde el primer envio duplicado que tuve, pienso que seria una buena idea.

Neftali [Germán.Estévez] 21-10-2024 09:27:24

Cita:

Empezado por ermendalenda (Mensaje 558433)
Hola, creo que es importante que se ponga esto en el primer post. Puede que le "salve la vida" a más de uno que usa desarrollo antiguo, tipo vb 6.0 , delphis antiquísimos etc..


Gracias.
Por los detalles y la explicación.
Actualizo en mensaje#2

ermendalenda 21-10-2024 09:27:44

Registro duplicado
 
Buenas.
Es curioso que acepten los registros que ya se han enviado pero con errores, supongo que no tendrá efecto contable, he probado a enviarlo con el mismo numero serie y cambiandole fecha y ese no lo interpreta como duplicado, en realidad tiene sentido, por que si se nos han reiniciado los contadores lo aceptan ya que detectan que es un registro distinto, pero me preocupa que hacen cuando realmente es duplicado, por que más de una vez me va a pasar que se envie 2 veces por alguna incidencia.

bmfranky 21-10-2024 09:30:43

Cita:

Empezado por ermendalenda (Mensaje 558474)
Buenas.
Es curioso que acepten los registros que ya se han enviado pero con errores, supongo que no tendrá efecto contable, he probado a enviarlo con el mismo numero serie y cambiandole fecha y ese no lo interpreta como duplicado, en realidad tiene sentido, por que si se nos han reiniciado los contadores lo aceptan ya que detectan que es un registro distinto, pero me preocupa que hacen cuando realmente es duplicado, por que más de una vez me va a pasar que se envie 2 veces por alguna incidencia.

Lo curioso es que cuando compruebas el enlace del qr, con los datos de la segunda factura, veras que no la encuentra, sin embargo pones los datos de la primera y da ok, verificado varias veces, puesto que como programo en varios ordenadores diferentes, los numeros de factura enviados a veces se me han duplicado, sin embargo no da error , mas que al consultar el QR.:eek:
Teniendo en cuenta que varies las cantidades...

edari 21-10-2024 09:39:04

Cita:

Empezado por bmfranky (Mensaje 558472)
Hola, buenos dias.
Hasta donde he leido en la documentacion, de momento ni lo han contemplado, no existe ningun "Comando", para solicitarlo, ahunque desde el primer envio duplicado que tuve, pienso que seria una buena idea.


Eso me olía


Les voy a hacer la consulta a ver si se tiran al rollo...


Gracias

nuevo1234 21-10-2024 09:51:23

Cita:

Empezado por bmfranky (Mensaje 558394)
Me respondo a mi mismo, estan contestando con la nueva etiqueta vacia, pero no han tenido en cuenta que pueda estar vacia entonces al parsear vacio, da error.


Hola,

Parece que ya lo han solucionado. He hecho una prueba y ya no llega vacío

Saludos.

bmfranky 21-10-2024 10:07:27

Cita:

Empezado por nuevo1234 (Mensaje 558477)
Hola,

Parece que ya lo han solucionado. He hecho una prueba y ya no llega vacío

Saludos.

Gracias, por la info, hora de actualizar a la nueva version otra vez...

ermendalenda 21-10-2024 10:11:27

Otra curiosidad
 
Pues nada, sigo con las curiosidades, supongo que me voy a encontrar muchas, ya quye acabo de empezar.

Para el envio del primer registro se admiten 2 formatos de cálculo de huella, han estado avispados,
en el tramo del string entre ImporteTotal y FechaHoraHusoGenRegistro lo admiten con el campo Huella= vacio o sin el campo huellla, o sea admiten los 2 cálculos. Es una rareza pero bueno lo veo bien:
....&ImporteTotal=0.05&FechaHoraHusoGenRegistro=2024-10-20T20:54:34+02:00
....&ImporteTotal=0.05&Huella=&FechaHoraHusoGenRegistro=2024-10-20T20:54:34+02:00

ermendalenda 21-10-2024 10:17:10

Cita:

Empezado por ermendalenda (Mensaje 558470)
Sí. cuando sea multiempresa todo separado, un mensaje claro constante de que empresa es la que se está trabajando, las bases de datos separadas, envios separados, todo separado, a ver si lo encuentro, pero era claro.

Preguntas y respuestas:
Pr'
En un sistema Verifactu, en los lotes de envío se incluirán facturas de diferentes empresas usuarias del SIF? o cada lote solo puede incluir facturas de la misma empresa usuaria?
Respuesta:

Todos los registros de facturación que se envién en el lote deben ser del mismo obligado.


En estaa respuesta no dice nada de que el encadenamiento sea distinto pero es de lógica. Y lo he visto por otro lado, sigo buscando.

ermendalenda 21-10-2024 10:20:31

Aquí está, en preguntas y respuestas tambíen, hay varios comentarios al respecto, la idea es clara un encadecamiento por cada obligado y SIF:Los registros de facturación se deben encadenar dentro de cada SIF, para un mismo obligado tributario, es decir, debe
existir una única cadena por cada par distinto de (obligado tributario ; SIF). La trazabilidad se materializa mediante el
encadenamiento que el SIF realiza de los registros de facturación, es decir, se circunscribe al SIF. Una vez encadenados
debidamente y generados (y firmados / remitidos a la AEAT), el reglamento y la orden no entran en lo que se haga
posteriormente con los registros de facturación generados (como su posible envío a otros sistemas con idea de utilizarlos
para otros fines), más allá de exigir su conservación, legibilidad y accesibilidad a futuro


La franja horaria es GMT +2. Ahora son las 13:52:35.

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