España: Normativa sancionadora sistemas informáticos
Re: España: Normativa sancionadora sistemas informáticos
Hola a todos,
Hoy he estado viendo un webminar de SAGE, que tengo algún cliente que tienen su solución, porque como ya os he comentado anteriormente, nosotros nos dedicamos sobre todo a mantenimiento de hardware, y algún que otra aplicación que hemos desarrollado, y me ha llamado la atención que han comentado que el software debe estar certificado por AEAT.
Y ahí es donde viene mi pregunta, ¿Sabéis como se debe hacer ese certificado para los programas de facturación estén legales con la AEAT? NO vale solo que pueden enviar la factura a Veri*Factu sino que también debe estar certificado.
Porque si nos ponemos a desarrollar el envio y después no lo podemos certificar, vamos a perder el tiempo.
Gracias.
Hoy he estado viendo un webminar de SAGE, que tengo algún cliente que tienen su solución, porque como ya os he comentado anteriormente, nosotros nos dedicamos sobre todo a mantenimiento de hardware, y algún que otra aplicación que hemos desarrollado, y me ha llamado la atención que han comentado que el software debe estar certificado por AEAT.
Y ahí es donde viene mi pregunta, ¿Sabéis como se debe hacer ese certificado para los programas de facturación estén legales con la AEAT? NO vale solo que pueden enviar la factura a Veri*Factu sino que también debe estar certificado.
Porque si nos ponemos a desarrollar el envio y después no lo podemos certificar, vamos a perder el tiempo.
Gracias.
- VictorCasajuana
- Posts: 269
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Has thanked: 1 time
- Contact:
Re: España: Normativa sancionadora sistemas informáticos
En algunos foros se ha dicho esto de la certificación, pero no he visto ningún documento oficial de la AEAT que lo indique. Si alguien lo encuentra que lo publique por favor.Garbi wrote:Hola a todos,
Hoy he estado viendo un webminar de SAGE, que tengo algún cliente que tienen su solución, porque como ya os he comentado anteriormente, nosotros nos dedicamos sobre todo a mantenimiento de hardware, y algún que otra aplicación que hemos desarrollado, y me ha llamado la atención que han comentado que el software debe estar certificado por AEAT.
Y ahí es donde viene mi pregunta, ¿Sabéis como se debe hacer ese certificado para los programas de facturación estén legales con la AEAT? NO vale solo que pueden enviar la factura a Veri*Factu sino que también debe estar certificado.
Porque si nos ponemos a desarrollar el envio y después no lo podemos certificar, vamos a perder el tiempo.
Gracias.
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
- VictorCasajuana
- Posts: 269
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Has thanked: 1 time
- Contact:
Re: España: Normativa sancionadora sistemas informáticos
Respuesta de hacienda:
La certificación del cumplimiento de un Sistema Informático de Facturación se realizará a través de declaraciones responsables incluidas en los SIF
por lo que no hay que preocuparse por esto.
La certificación del cumplimiento de un Sistema Informático de Facturación se realizará a través de declaraciones responsables incluidas en los SIF
por lo que no hay que preocuparse por esto.
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
Re: España: Normativa sancionadora sistemas informáticos
Victor podria explicar a que se refiere eso y como se hace.VictorCasajuana wrote:Respuesta de hacienda:
La certificación del cumplimiento de un Sistema Informático de Facturación se realizará a través de declaraciones responsables incluidas en los SIF
por lo que no hay que preocuparse por esto.
Re: España: Normativa sancionadora sistemas informáticos
En la documentación al respecto de VERIFACTU, no recuerdo que documento, se especifica que datos deben constar en la declaración responsable.Garbi wrote:Victor podria explicar a que se refiere eso y como se hace.
Qué es?
Pues un documento (en un A4 cabe) en donde indicamos que nuestro software cumple con los requisitos para 'ser' VERIFACTU; debe estar fácilmente accesible en nuestro software.
Yo pondré un PDF en la opción del menú 'Acerca'; creo que será suficiente.
Supongo que sirve para dar publicidad (en el 2026 nadie se acordará de este documento), y que el cliente esté tranquilo con el software que ha pagado.
Si tu software no cumple con los requisitos VERIFACTU te van a sancionar independientemente de esa declaración; si además no has redactado y no muestras esa declaración en el software te sancionaran por eso también.
Un Saludo
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Re: España: Normativa sancionadora sistemas informáticos
Hola a todos,
Estoy haciendo pruebas de envío del XML a VERIFACTU.
Lo estoy haciendo con curl.exe mediante un bucle a la espera de recibir y grabar la información en un fichero; con 'n' lanzamientos como máximo, cuando detecto el fichero dejo de enviar.
El caso es que siempre debo lanzar el envío 2 veces, a la primera no capturo nada y a la segunda si.
Cómo están haciendo Ustedes el envío de su XML a VERIFACTU?
Yo no tengo conocimiento de como hacerlo mediante código propio y por eso lo hago con esta utilidad externa.
Muchas gracias,
Estoy haciendo pruebas de envío del XML a VERIFACTU.
Lo estoy haciendo con curl.exe mediante un bucle a la espera de recibir y grabar la información en un fichero; con 'n' lanzamientos como máximo, cuando detecto el fichero dejo de enviar.
El caso es que siempre debo lanzar el envío 2 veces, a la primera no capturo nada y a la segunda si.
Cómo están haciendo Ustedes el envío de su XML a VERIFACTU?
Yo no tengo conocimiento de como hacerlo mediante código propio y por eso lo hago con esta utilidad externa.
Muchas gracias,
Un Saludo
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
- Julio Cepeda
- Posts: 66
- Joined: Wed Oct 12, 2005 6:58 pm
Re: España: Normativa sancionadora sistemas informáticos
Tengo un problema al generar el hash con el ejemplo que viene en la documentación de la Agencia Tributaria.
Lo hago utilizando todo en una cadena continua de caracteres
FWrite( nMan, Upper( HB_SHA256( "IDEmisorFactura=89890001K&NumSerieFactura=12345678/G33&FechaExpedicionFactura=01-01-2024&TipoFactura=F1&CuotaTotal=12.35&ImporteTotal=123.45&Huella=&FechaHoraHusoGenRegistro=2024-01-01T19:20:30+01:00" )))
Me da el resultado del ejemplo de la AEAT
3C464DAF61ACB827C65FDA19F352A4E3BDC2C640E9E9FC4CC058073F38F12F60
Si utilizo variables
LOCAL aCampo := { "IDEmisorFactura", ;
"NumSerieFactura", ;
"FechaExpedicionFactura", ;
"TipoFactura", ;
"CuotaTotal", ;
"ImporteTotal", ;
"Huella", ;
"FechaHoraHusoGenRegistro" }
LOCAL aDatos := { "89890001K", "12345678/G33", "01-01-2024", "F1", "12.35", "123.45", "", "20240101T19:20:30+01:00" }
FOR nI := 1 TO 8
IF nI < 8
cCadena += aCampo[ nI ] + Chr( 61 ) + aDatos[ nI ] + Chr( 38 )
Else
cCadena += aCampo[ nI ] + Chr( 61 ) + aDatos[ nI ]
EndIf
NEXT
FWrite( nMan, cCadena )
El resultado en totalmente distinto.
26760D0A3DCA72374C31149DAFF7133729EA2BE897819BAD382B4DA6E82B7E98
No lo entiendo.
Llevo varios días intentándolo de todas las maneras que conozco y no me funciona.
Si algún compañero sabe la razón estaría muy agradecido de que me indicara cómo hacerlo.
Gracias
Lo hago utilizando todo en una cadena continua de caracteres
FWrite( nMan, Upper( HB_SHA256( "IDEmisorFactura=89890001K&NumSerieFactura=12345678/G33&FechaExpedicionFactura=01-01-2024&TipoFactura=F1&CuotaTotal=12.35&ImporteTotal=123.45&Huella=&FechaHoraHusoGenRegistro=2024-01-01T19:20:30+01:00" )))
Me da el resultado del ejemplo de la AEAT
3C464DAF61ACB827C65FDA19F352A4E3BDC2C640E9E9FC4CC058073F38F12F60
Si utilizo variables
LOCAL aCampo := { "IDEmisorFactura", ;
"NumSerieFactura", ;
"FechaExpedicionFactura", ;
"TipoFactura", ;
"CuotaTotal", ;
"ImporteTotal", ;
"Huella", ;
"FechaHoraHusoGenRegistro" }
LOCAL aDatos := { "89890001K", "12345678/G33", "01-01-2024", "F1", "12.35", "123.45", "", "20240101T19:20:30+01:00" }
FOR nI := 1 TO 8
IF nI < 8
cCadena += aCampo[ nI ] + Chr( 61 ) + aDatos[ nI ] + Chr( 38 )
Else
cCadena += aCampo[ nI ] + Chr( 61 ) + aDatos[ nI ]
EndIf
NEXT
FWrite( nMan, cCadena )
El resultado en totalmente distinto.
26760D0A3DCA72374C31149DAFF7133729EA2BE897819BAD382B4DA6E82B7E98
No lo entiendo.
Llevo varios días intentándolo de todas las maneras que conozco y no me funciona.
Si algún compañero sabe la razón estaría muy agradecido de que me indicara cómo hacerlo.
Gracias
Re: España: Normativa sancionadora sistemas informáticos
Julio,
Extraído de tu post:
IDEmisorFactura=89890001K&NumSerieFactura=12345678/G33&FechaExpedicionFactura=01-01-2024&TipoFactura=F1&CuotaTotal=12.35&ImporteTotal=123.45&Huella=&FechaHoraHusoGenRegistro=2024-01-01T19:20:30+01:00
Generado por tu For-Next:
IDEmisorFactura=89890001K&NumSerieFactura=12345678/G33&FechaExpedicionFactura=01-01-2024&TipoFactura=F1&CuotaTotal=12.35&ImporteTotal=123.45&Huella=&FechaHoraHusoGenRegistro=20240101T19:20:30+01:00
Quizás esté ahí:
2024-01-01T19:20:30+01:00 <<<<>>>> 20240101T19:20:30+01:00
Por otro lado, hay unos caracteres no permitidos, no recuerdo si '/' es uno de ellos.
Seguimos.
Extraído de tu post:
IDEmisorFactura=89890001K&NumSerieFactura=12345678/G33&FechaExpedicionFactura=01-01-2024&TipoFactura=F1&CuotaTotal=12.35&ImporteTotal=123.45&Huella=&FechaHoraHusoGenRegistro=2024-01-01T19:20:30+01:00
Generado por tu For-Next:
IDEmisorFactura=89890001K&NumSerieFactura=12345678/G33&FechaExpedicionFactura=01-01-2024&TipoFactura=F1&CuotaTotal=12.35&ImporteTotal=123.45&Huella=&FechaHoraHusoGenRegistro=20240101T19:20:30+01:00
Quizás esté ahí:
2024-01-01T19:20:30+01:00 <<<<>>>> 20240101T19:20:30+01:00
Por otro lado, hay unos caracteres no permitidos, no recuerdo si '/' es uno de ellos.
Seguimos.
Un Saludo
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
- VictorCasajuana
- Posts: 269
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Has thanked: 1 time
- Contact:
Re: España: Normativa sancionadora sistemas informáticos
Página 12:Garbi wrote:Victor podria explicar a que se refiere eso y como se hace.VictorCasajuana wrote:Respuesta de hacienda:
La certificación del cumplimiento de un Sistema Informático de Facturación se realizará a través de declaraciones responsables incluidas en los SIF
por lo que no hay que preocuparse por esto.
https://www.boe.es/boe/dias/2024/10/28/ ... -22138.pdf
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?
- Julio Cepeda
- Posts: 66
- Joined: Wed Oct 12, 2005 6:58 pm
Re: España: Normativa sancionadora sistemas informáticos
Muchas gracias FiveWiDi.
No entiendo, a pesar de que puede ser que esté utilizando caracteres no permitidos, la cuestión es que le paso a la función los mismos caracteres, primero en una cadena seguida y continua entre dobles comillas y después en la misma cadena de caracteres pero compuesta por la suma de cadenas de caracteres y variables. No se qué puede pasar.
No entiendo, a pesar de que puede ser que esté utilizando caracteres no permitidos, la cuestión es que le paso a la función los mismos caracteres, primero en una cadena seguida y continua entre dobles comillas y después en la misma cadena de caracteres pero compuesta por la suma de cadenas de caracteres y variables. No se qué puede pasar.
Re: España: Normativa sancionadora sistemas informáticos
Como complemento a la info facilitada por VictorCasajuana puedes ver lo que contestan de este tema en las FAQVictorCasajuana wrote:Página 12:Garbi wrote:Victor podria explicar a que se refiere eso y como se hace.VictorCasajuana wrote:Respuesta de hacienda:
La certificación del cumplimiento de un Sistema Informático de Facturación se realizará a través de declaraciones responsables incluidas en los SIF
por lo que no hay que preocuparse por esto.
https://www.boe.es/boe/dias/2024/10/28/ ... -22138.pdf
https://sede.agenciatributaria.gob.es/S ... sable.html
Re: España: Normativa sancionadora sistemas informáticos
Julio,Julio Cepeda wrote:Muchas gracias FiveWiDi.
No entiendo, a pesar de que puede ser que esté utilizando caracteres no permitidos, la cuestión es que le paso a la función los mismos caracteres, primero en una cadena seguida y continua entre dobles comillas y después en la misma cadena de caracteres pero compuesta por la suma de cadenas de caracteres y variables. No se qué puede pasar.
Yo creo que el problema lo tienes en 'FechaHoraHusoGenRegistro'.
Yo utilizo esta función que creo que la encontré en este foro:
Code: Select all | Expand
FUNCTION hb_VerifactuHuella( cNIF, ;
cNumSerieFacturaEmisor, ;
dFechaExpedicionFactura, ;
cTipoFactura, ;
nCuotaTotal, ;
nImporteTotal, ;
cHuellaRegistroAnterior, ;
cFechaHoraHusoGenRegistro ;
)
// Torna una array de 2 posicions:
// 1- cadena a on es calcula la 'Huella'.
// 2- la 'Huella'
local c := ""
local h := {=>}
Local cHuella := ""
/*
h['Nif'] := "B1234567"
h['NumSerieFacturaEmisor'] := "AB-123456"
h['FechaExpedicionFactura'] := hb_dtoc( date(), "dd-mm-yyyy" )
h['TipoFactura'] := "F1"
h['CuotaTotal'] := ltrim( str(261.61, 12, 2) )
h['ImporteTotal'] := ltrim( str(1507.36, 12, 2) )
h['HuellaRegistroAnterior'] := "ZmY2MDgxMzc2ZWIyMTI4ZDFiMDMyMDlkMTAyNmQ4ZDVmZGExMWJkYWRiMThjZTNkYjE4ODExZDg3MDUwZTNjMQ=="
h['FechaHoraHusoGenRegistro'] := hb_TtoS( hb_datetime() )
*/
/*
h['Nif'] := "IDEmisorFactura=" + "89890001K"
h['NumSerieFacturaEmisor'] := "&NumSerieFactura=" + "12345679/G34"
h['FechaExpedicionFactura'] := "&FechaExpedicionFactura=" + "01-01-2024"
h['TipoFactura'] := "&TipoFactura=" + "F1"
h['CuotaTotal'] := "&CuotaTotal=" + "12.35"
h['ImporteTotal'] := "&ImporteTotal=" + "123.45"
h['HuellaRegistroAnterior'] := "&Huella=" + "3C464DAF61ACB827C65FDA19F352A4E3BDC2C640E9E9FC4CC058073F38F12F60"
h['FechaHoraHusoGenRegistro'] := "&FechaHoraHusoGenRegistro=" + "2024-01-01T19:20:35+01:00"
*/
h['Nif'] := "IDEmisorFactura=" + ( cNIF )
h['NumSerieFacturaEmisor'] := "&NumSerieFactura=" + ( cNumSerieFacturaEmisor )
h['FechaExpedicionFactura'] := "&FechaExpedicionFactura=" + hb_dtoc( dFechaExpedicionFactura, "dd-mm-yyyy" )
h['TipoFactura'] := "&TipoFactura=" + ( cTipoFactura )
h['CuotaTotal'] := "&CuotaTotal=" + Alltrim( TransForm( nCuotaTotal, "999999999999.99" ) ) // ltrim( str(nCuotaTotal, 12, 2) )
h['ImporteTotal'] := "&ImporteTotal=" + Alltrim( TransForm( nImporteTotal, "999999999999.99" ) ) // ltrim( str(nImporteTotal, 12, 2) )
h['HuellaRegistroAnterior'] := "&Huella=" + cHuellaRegistroAnterior
h['FechaHoraHusoGenRegistro'] := "&FechaHoraHusoGenRegistro=" + cFechaHoraHusoGenRegistro // hb_TtoS( tFechaHoraHusoGenRegistro )
hb_heval( h, {|k,v,i| c += v} ) // | key, value, index |
c := hb_StrToUTF8( c )
cHuella := ( hb_sha256( c ) )
cHuella := Upper( cHuella )
Return { c, cHuella }
/* ************************************************************************************** */
(Yo trabajo con fechas y horas en formato Date() y Time(), no utilizo TimeStamp)
Code: Select all | Expand
/* *********************************************************************************** */
FUNCTION FechaHoraHuso( dDate, cTime )
Local cDataHoraHuso := ""
cDataHoraHuso := hb_dtoc( dDate, "yyyy-mm-dd" )
cDataHoraHuso := cDataHoraHuso + "T" + cTime
cDataHoraHuso := cDataHoraHuso + If( lHorariestiu( dDate ), "+02:00", "+01:00" )
Return cDataHoraHuso
/* *********************************************************************************** */
A ver si te sirve.
Un Saludo
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
Carlos G.
FiveWin 24.02 + Harbour 3.2.0dev (r2403071241), BCC 7.7 Windows 10
- Julio Cepeda
- Posts: 66
- Joined: Wed Oct 12, 2005 6:58 pm
Re: España: Normativa sancionadora sistemas informáticos
Muchas gracias Carlos. He estado probando anteriormente con una función muy parecida a la que me has pasado que creo recordar que la escribió Quim Ferrer, y no lo hacía como lo haces tu. Voy a probar y te digo. Gracias de nuevo y un saludo.
Re: España: Normativa sancionadora sistemas informáticos
Hola a todos.
Ya estoy volviendo un poco a la normalidad, (aún me queda mucho barro por sacar del garaje) pero poco a poco se va haciendo todo. Eso si, es muy cansado, parece el día de la marmota, espero no les ocurra a nadie de vosotros nunca. Tienes un sensación de desatención que te derrota. Hay tal cantidad de afectados que la ayuda no puede llegar a todos, pero la vida continua, no te deja hacer un parón.
Quisiera me pudieran explicar, yo diría que como empezar:
Yo las pruebas que he hecho es haciendo a mano el fichero xml.
Agradecería me explicarais como saber cual la estructura correcta del fichero antes de enviar, porque creo que aún están haciendo cambios.
Como crean el fichero .xml para dar una factura de alta mediante código. Ya me habéis dicho que es lo más sencillo, pero es que no tengo ni idea ni la cabeza para ir investigando, agradecería cual ayuda.
Se que estoy pidiendo tiempo vuestro del que no disponéis mucho, pero es que nunca he utilizado fichero xml en mis desarrollos y no quiero estar haciendo programación que después no sirva.
Espero haberme explicado bien.
Ya estoy volviendo un poco a la normalidad, (aún me queda mucho barro por sacar del garaje) pero poco a poco se va haciendo todo. Eso si, es muy cansado, parece el día de la marmota, espero no les ocurra a nadie de vosotros nunca. Tienes un sensación de desatención que te derrota. Hay tal cantidad de afectados que la ayuda no puede llegar a todos, pero la vida continua, no te deja hacer un parón.
Quisiera me pudieran explicar, yo diría que como empezar:
Yo las pruebas que he hecho es haciendo a mano el fichero xml.
Agradecería me explicarais como saber cual la estructura correcta del fichero antes de enviar, porque creo que aún están haciendo cambios.
Como crean el fichero .xml para dar una factura de alta mediante código. Ya me habéis dicho que es lo más sencillo, pero es que no tengo ni idea ni la cabeza para ir investigando, agradecería cual ayuda.
Se que estoy pidiendo tiempo vuestro del que no disponéis mucho, pero es que nunca he utilizado fichero xml en mis desarrollos y no quiero estar haciendo programación que después no sirva.
Espero haberme explicado bien.
- VictorCasajuana
- Posts: 269
- Joined: Wed Mar 28, 2018 4:38 pm
- Location: Vinaròs
- Has thanked: 1 time
- Contact:
Re: España: Normativa sancionadora sistemas informáticos
Hola Garbi.Garbi wrote:Hola a todos.
Ya estoy volviendo un poco a la normalidad, (aún me queda mucho barro por sacar del garaje) pero poco a poco se va haciendo todo. Eso si, es muy cansado, parece el día de la marmota, espero no les ocurra a nadie de vosotros nunca. Tienes un sensación de desatención que te derrota. Hay tal cantidad de afectados que la ayuda no puede llegar a todos, pero la vida continua, no te deja hacer un parón.
Quisiera me pudieran explicar, yo diría que como empezar:
Yo las pruebas que he hecho es haciendo a mano el fichero xml.
Agradecería me explicarais como saber cual la estructura correcta del fichero antes de enviar, porque creo que aún están haciendo cambios.
Como crean el fichero .xml para dar una factura de alta mediante código. Ya me habéis dicho que es lo más sencillo, pero es que no tengo ni idea ni la cabeza para ir investigando, agradecería cual ayuda.
Se que estoy pidiendo tiempo vuestro del que no disponéis mucho, pero es que nunca he utilizado fichero xml en mis desarrollos y no quiero estar haciendo programación que después no sirva.
Espero haberme explicado bien.
Ánimo con lo que te ha tocado pasar. Conozco a gente que está limpiando y lo que me cuentan es muy duro.
El esquema del fichero xml ya está en la versión 1.0, por lo que si sufre cambios no serán muy grandes ( supongo )
En este enlace puedes ver todos los campos y a que corresponden cada uno de ellos: https://www.agenciatributaria.es/AEAT.d ... acion.html
Referente a montar el xml, en este hilo se han explicado varias formas, la mía no la puedo aportar ya que utilizo una librería externa ( xilkat ) por lo que mi código no os funcionará.
Salud!
--------
¿ Y porque no ?
¿ And why not ?
¿ Y porque no ?
¿ And why not ?