FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Cita:
Por tanto la definición del SHA-256 ya indican que son 64 digitos en hexadecimal. Entiendo que no hay duda |
#2
|
|||
|
|||
Cita:
Por supuesto el hash es solo en un sentido y es indescifrable(teoricamente ya qur tenemos los futuros quantum que los 256 se los van a comer con patatas y te generarán en un futuro multiples posibles textos descifrados que serviran de referencia para romper el cifrado y dar posibles resultados con tecnología inversa. ya estan trabajando en nuevos protocolos de cifrado) El sha256=256bits 256bits=64caracteres hexadecimales=32caracteres ascii Última edición por ermendalenda fecha: 02-08-2022 a las 19:45:08. |
#3
|
|||
|
|||
Cita:
|
#4
|
|||
|
|||
Soap
Código:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ds="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd" xmlns:sf="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd"> <soapenv:Header/> <soapenv:Body> <ds:AltaFactuSistemaFacturacion> <sf:Cabecera> <sf:IDVersion>?</sf:IDVersion> <sf:ObligadoEmision> <sf:NombreRazon>?</sf:NombreRazon> <sf:NIF>?</sf:NIF> <!--Optional:--> <sf:NombreRazonRepresentante>?</sf:NombreRazonRepresentante> <!--Optional:--> <sf:NIFRepresentante>?</sf:NIFRepresentante> </sf:ObligadoEmision> </sf:Cabecera> <!--1 to 1000 repetitions:--> <ds:RegistroAltaFacturas> <ds:RegistroFacturacion> <sf:PeriodoLiquidacion> <sf:Ejercicio>?</sf:Ejercicio> <sf:Periodo>?</sf:Periodo> </sf:PeriodoLiquidacion> <sf:IDFactura> <sf:IDEmisorFactura> <sf:NIF>?</sf:NIF> </sf:IDEmisorFactura> <sf:NumSerieFacturaEmisor>?</sf:NumSerieFacturaEmisor> <sf:FechaExpedicionFacturaEmisor>?</sf:FechaExpedicionFacturaEmisor> </sf:IDFactura> <sf:TipoFactura>?</sf:TipoFactura> <!--Optional:--> <sf:TipoRectificativa>?</sf:TipoRectificativa> <!--Optional:--> <sf:FacturasRectificadas> <!--1 to 1000 repetitions:--> <sf:IDFacturaRectificada> <sf:NumSerieFacturaEmisor>?</sf:NumSerieFacturaEmisor> <sf:FechaExpedicionFacturaEmisor>?</sf:FechaExpedicionFacturaEmisor> </sf:IDFacturaRectificada> </sf:FacturasRectificadas> <!--Optional:--> <sf:FacturasSustituidas> <!--1 to 1000 repetitions:--> <sf:IDFacturasSustituida> <sf:NumSerieFacturaEmisor>?</sf:NumSerieFacturaEmisor> <sf:FechaExpedicionFacturaEmisor>?</sf:FechaExpedicionFacturaEmisor> </sf:IDFacturasSustituida> </sf:FacturasSustituidas> <!--Optional:--> <sf:ImporteRectificacion> <sf:BaseRectificada>?</sf:BaseRectificada> <sf:CuotaRectificada>?</sf:CuotaRectificada> <!--Optional:--> <sf:CuotaRecargoRectificado>?</sf:CuotaRecargoRectificado> </sf:ImporteRectificacion> <!--Optional:--> <sf:FechaOperacion>?</sf:FechaOperacion> <!--Optional:--> <sf:NumRegistroAcuerdoFacturacion>?</sf:NumRegistroAcuerdoFacturacion> <!--Optional:--> <sf:NumRegistroAcuerdoSistemaInformatico>?</sf:NumRegistroAcuerdoSistemaInformatico> <sf:DescripcionOperacion>?</sf:DescripcionOperacion> <!--Optional:--> <sf:RefExterna>?</sf:RefExterna> <!--Optional:--> <sf:FacturaSimplificadaArticulos7.2_7.3>?</sf:FacturaSimplificadaArticulos7.2_7.3> <!--Optional:--> <sf:FacturaSinIdentifDestinatarioArticulo6.1.d>?</sf:FacturaSinIdentifDestinatarioArticulo6.1.d> <!--Optional:--> <sf:Macrodato>?</sf:Macrodato> <!--Optional:--> <sf:EmitidaPorTercerosODestinatario>?</sf:EmitidaPorTercerosODestinatario> <!--Optional:--> <sf:Tercero> <sf:NombreRazon>?</sf:NombreRazon> <!--You have a CHOICE of the next 2 items at this level--> <sf:NIF>?</sf:NIF> <sf:IDOtro> <!--Optional:--> <sf:CodigoPais>?</sf:CodigoPais> <sf:IDType>?</sf:IDType> <sf:ID>?</sf:ID> </sf:IDOtro> <!--Optional:--> <sf:NIFRepresentante>?</sf:NIFRepresentante> </sf:Tercero> <!--Optional:--> <sf:Contraparte> <sf:NombreRazon>?</sf:NombreRazon> <!--You have a CHOICE of the next 2 items at this level--> <sf:NIF>?</sf:NIF> <sf:IDOtro> <!--Optional:--> <sf:CodigoPais>?</sf:CodigoPais> <sf:IDType>?</sf:IDType> <sf:ID>?</sf:ID> </sf:IDOtro> <!--Optional:--> <sf:NIFRepresentante>?</sf:NIFRepresentante> </sf:Contraparte> <sf:Desglose> <!--1 to 10 repetitions:--> <sf:DetalleDesglose> <sf:ClaveRegimen>?</sf:ClaveRegimen> <!--Optional:--> <sf:CalificacionOperacion>?</sf:CalificacionOperacion> <!--Optional:--> <sf:OperacionExenta>?</sf:OperacionExenta> <!--Optional:--> <sf:TipoImpositivo>?</sf:TipoImpositivo> <sf:BaseImponibleOimporteNoSujeto>?</sf:BaseImponibleOimporteNoSujeto> <!--Optional:--> <sf:BaseImponibleACoste>?</sf:BaseImponibleACoste> <!--Optional:--> <sf:CuotaRepercutida>?</sf:CuotaRepercutida> <!--Optional:--> <sf:TipoRecargoEquivalencia>?</sf:TipoRecargoEquivalencia> <!--Optional:--> <sf:CuotaRecargoEquivalencia>?</sf:CuotaRecargoEquivalencia> </sf:DetalleDesglose> </sf:Desglose> <sf:ImporteTotal>?</sf:ImporteTotal> <!--Optional:--> <sf:EntidadSucedida> <sf:NombreRazon>?</sf:NombreRazon> <sf:NIF>?</sf:NIF> </sf:EntidadSucedida> <sf:EncadenamientoFacturaAnterior> <sf:IDEmisorFacturaAnterior> <sf:NIF>?</sf:NIF> </sf:IDEmisorFacturaAnterior> <sf:NumSerieFacturaAnterior>?</sf:NumSerieFacturaAnterior> <sf:FechaExpedicionFacturaAnterior>?</sf:FechaExpedicionFacturaAnterior> <sf:HuellaFacturaAnterior>?</sf:HuellaFacturaAnterior> </sf:EncadenamientoFacturaAnterior> <sf:SistemaInformatico> <sf:NombreRazon>?</sf:NombreRazon> <!--You have a CHOICE of the next 2 items at this level--> <sf:NIF>?</sf:NIF> <sf:IDOtro> <!--Optional:--> <sf:CodigoPais>?</sf:CodigoPais> <sf:IDType>?</sf:IDType> <sf:ID>?</sf:ID> </sf:IDOtro> <sf:IdSistemaInformatico>?</sf:IdSistemaInformatico> <sf:Version>?</sf:Version> <sf:NumeroInstalacion>?</sf:NumeroInstalacion> <sf:TipoUsoSistema>?</sf:TipoUsoSistema> </sf:SistemaInformatico> </ds:RegistroFacturacion> <ds:DatosControl> <sf:Huella>?</sf:Huella> <sf:TipoHash>?</sf:TipoHash> <sf:FechaGenRegistro>?</sf:FechaGenRegistro> <sf:HoraGenRegistro>?</sf:HoraGenRegistro> <sf:HusoHorarioGenRegistro>?</sf:HusoHorarioGenRegistro> <!--Optional:--> <sf:Incidencia>?</sf:Incidencia> </ds:DatosControl> </ds:RegistroAltaFacturas> </ds:AltaFactuSistemaFacturacion> </soapenv:Body> </soapenv:Envelope> |
#5
|
|||
|
|||
Cita:
Estoy probando de esta manera a ver si consigo algo: Código:
procedure TForm2.Button1Click(Sender: TObject); var regFact : FacturasEmitidasType; result : Array_Of_RespuestaExpedidaType; arrayfacturas : Array_Of_FacturasEmitidasType; begin regFact := FacturasEmitidasType.Create; regFact.RegistroFacturacion := RegistroFacturacionType.create; regFact.DatosControl := DatosControlType.Create; regFact.RegistroFacturacion.PeriodoLiquidacion := PeriodoLiquidacion.Create; regFact.RegistroFacturacion.PeriodoLiquidacion.Ejercicio := '22'; try SetLength(arrayfacturas, 1); arrayfacturas[0] := regFact; Result := GetsfSOAP(true, '', HTTPRIO1).AltaFactuSistemaFacturacion(arrayfacturas); finally // Elimino todos los objetos creados regFact.Destroy; end; end; |
#6
|
|||
|
|||
Cita:
Te lo puedes descargar gratititamente y generar en un momento, lo vas a ver rápido pero tambien hay muchos tutoriales si lo buscas en Google Yo he cambiado los prefijos que me había generado que no me gusta mucho que ponga sum: sum1: ... Es una lástima que uan no haya puesto la referencia del servicio web (Res) de pruebas. Por eso te da error |
#7
|
|||
|
|||
Cita:
El problema viene después para el envío de la petición, que me temo que desde Delphi 2007 voy a tener problemas con el certificado. ¿Verdad? |
#8
|
|||
|
|||
Cálculo del HASH para el segmento <DatosControl>
Cita:
Aunque no desarrollo en Delphi, estuve por estos lares en su día para el tema del SII, y para actualizar mis ERP's con la nueva normativa para Veri*Factu os estoy siguiendo. He visto el ejemplo, y para probar el hash, he copiado y pegado el Segmento <RegistroFacturacion>/</RegistroFacturacion>: <RegistroFacturacion> <PeriodoLiquidacion> <Ejercicio>2022</Ejercicio> <Periodo>3T</Periodo> </PeriodoLiquidacion> <IdFactura> <IdEmisorFactura> <NIF>00000006Y</NIF> </IdEmisorFactura> <NumSerieFacturaEmisor>84.2.1.2566</NumSerieFacturaEmisor> <FechaExpedicionFacturaEmisor>31/07/2022</FechaExpedicionFacturaEmisor> </IdFactura> <TipoFactura>F2</TipoFactura> <FechaOperacion>31/07/2022</FechaOperacion> <DescripcionOperacion>VENTA MINORISTA</DescripcionOperacion> <Desglose> <DetalleDesglose> <ClaveRegimen>01</ClaveRegimen> <CalificacionOperacion>S1</CalificacionOperacion> <TipoImpositivo>4.00</TipoImpositivo> <BaseImponibleOimporteNoSujeto>1.00</BaseImponibleOimporteNoSujeto> <CuotaRepercutida>0.04</CuotaRepercutida> </DetalleDesglose> </Desglose> <ImporteTotal>1.04</ImporteTotal> <EncadenamientoFacturaAnterior> <IDEmisorFacturaAnterior>00000006Y</IDEmisorFacturaAnterior> <NumSerieFacturaAnterior>84.2.1.2565</NumSerieFacturaAnterior> <FechaExpedicionFacturaAnterior>31/07/2022</FechaExpedicionFacturaAnterior> <HuellaFacturaAnterior>9yYI6U89U3IUIQE345EUGWEBsd7EKFCBP9trtYUJSD0JFFKJKrtthAuysfadfWPE</HuellaFacturaAnterior> </EncadenamientoFacturaAnterior> <SistemaInformatico> <NombreRazon>SISTEMAS INFORMATICOS TPV</NombreRazon> <NIF>00000006Y</NIF> <IdSistemaInformatico>IDENTIFICADOR AEAT XXXX</IdSistemaInformatico> <Version>46.243.1</Version> <NumeroInstalacion>45</NumeroInstalacion> <TipoUsoSistema>01</TipoUsoSistema> </SistemaInformatico> </RegistroFacturacion> con espacios de identación y sin el \r\n de la etiqueta de cierre final en un archivo y he guardado, y usando sha256 (tengo cygwin64 instalado) he calculado el hash256 del archivo, y a mi me da el digest: c35917cbb3e483ed07e36db77c5f8c28790623751ced3cc6e67ba6e6c443fa0c y no: 005948F5A441A56ABF584804036409719AB89892608FD708BAB8AE5088C896AD como en el ejemplo mostrado en el foro. He probado también quitando las 2 líneas vacias antes y depués de la etiqueta: </EncadenamientoFacturaAnterior> y tampoco me sale el mismo HASH. Se ha de computar sin RC's ni LF's o sin los espacios de identación ? Muchas gracias por vuestra labor de documentación ... No hay nada en internet mejor que este foro ... Un Saludo. Última edición por usr3010 fecha: 27-02-2023 a las 18:47:17. |
#9
|
|||
|
|||
Cita:
Con lo cual se me ocurre que estas copiando y pegando desde un explorador de Internet, el cual formatea esos datos y les introduce otros caracteres. Saludos |
#10
|
|||
|
|||
Gracias por tu respuesta.
Lo revisaré. De todos modos, leyendo el foro he encontrado gente que parece tener problemas con la generación de los XML's. Yo estaba igual cuando al SII, y descubrí el SOAP-UI. Es una app gratuita que puedes bajar e instalar, y a partir de un WSDL te genera los XMLS's para cada método contenido en el WSDL. Así pude ver la estructura de cada XML para cada tipo de solicitud y ya decides si quieres usar la clase implementada en tu lenguaje o bien lo generas "a mano" mapeando los valores pedidos en cada tag con valores de los registros de la BBDD. Es la herramienta que usé para conocer las estructuras de los archivos XML para el SII en 2017. Os adjunto una imagen de la interfaz del Soap-UI. Lo mejor que tiene es que puedes firmar las peticiones (archivos XML) antes de enviarlos al Servidor del Web Service de mil formas y con mil configuraciones (Certificado Digital a usar, Tipo de Cifrado, Tipo de Canonicalización, Tipo de Seguridad (Oasis, etc)) y ejecutar, una vez has puesto datos válidos en el XML de la petición, la llamada al WebService y ver la respuesta recibida del WebService para esa petición . Para aquellos que teneis problemas con los XML os recomiendo que os instaleís esta herramienta y la trasteeis. Os ayudará mucho a conocer y comprender el funcionamiento de los WEB Services, firmado de XML's, etc ... Un Saludo. |
#11
|
|||
|
|||
Muy buenas...
Llevo tiempo alejado de este post porque veo que la web oficial de Veri-Factu en la web de Hacienda no se actualiza creo que desde Julio de 2022, y todo sigue en la versión 0.1. Entiendo que por ahora lo único que podemos hacer es generar los XML, pero aún no hay ningún sitio al que enviarlos, ni información sobre el Código QR, etc. no? El problema es que leí hace poco que tienen pensado empezar el periodo voluntario en Julio de este año, y eso es dentro 3 meses. ¿Van a sacar la información, el webservice, etc. 10 días antes? O me estoy perdiendo algo? Después de haber estado peleando durante meses para TicketBAI esto ya no me asusta tanto, pero claro, de ahí a trabajar con prisas va un mundo... Me llama la atención el "mecanismo de control de flujo", que te dice cuánto tienes que esperar para volver a hacer un envío... Esto sí que no lo había visto nunca |
#12
|
||||
|
||||
Bueno... todo el invento de los ivas+re nuevos lo hicieron con 2 días de antelación así que siempre se pueden superar.
__________________
Be water my friend. |
#13
|
|||
|
|||
Cita:
Menudo fin de semana de fin de año me pasé por culpa de eso |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Hijo de Informáticos | gluglu | Humor | 3 | 13-03-2007 11:05:35 |
Adictos informaticos ... | Trigger | Humor | 2 | 11-10-2004 12:18:32 |
Nosotros los Informáticos | Trigger | Humor | 1 | 10-10-2004 14:58:09 |
Patrón de los Informáticos. | obiwuan | Varios | 20 | 10-09-2003 14:44:54 |
Chistes Informaticos | jhonny | Humor | 2 | 11-08-2003 21:59:09 |
|