Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-03-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
He conseguido crear un XAdES-EPES para TicketBAI con AutofirmaCommandLine, pero no puedo ponerlo porque no tengo permiso para poner enlaces ni imágenes (el ejemplo contiene enlaces a w3.org y batuz.eus)

Si algún moderador fuera tan amable...
Responder Con Cita
  #2  
Antiguo 31-03-2021
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.672
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por Galaxian Ver Mensaje
He conseguido crear un XAdES-EPES para TicketBAI con AutofirmaCommandLine, pero no puedo ponerlo porque no tengo permiso para poner enlaces ni imágenes (el ejemplo contiene enlaces a w3.org y batuz.eus)
Si algún moderador fuera tan amable...

Puedes poner, por ejemplo: ttp://.......

Y luego un moderador añadirá la h del principio.
Responder Con Cita
  #3  
Antiguo 01-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
Con un certificado PFX:

Cita:
AutoFirmaCommandLine.exe sign -i FicheroSinFirmar.xml -o FicheroFirmado.xml -store pkcs12:nombre_certificado.pfx -password password_certificado -filter nombre_certificado.pfx -format xades -xml -config "format=XAdES Enveloped\npolicyIdentifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf\npolicyIdent ifierHash=Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es=\npolicyIdentifierHashAlgorithm=http://www.w3.org/2001/04/xmlenc#sha256\npolicyQualifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf"
Con certificado en el almacén de Windows:

Cita:
AutoFirmaCommandLine.exe sign -i FicheroSinFirmar.xml -o FicheroFirmado.xml -store windows -alias NombreDescriptivo -format xades -xml -config "format=XAdES Enveloped\npolicyIdentifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf\npolicyIdent ifierHash=Quzn98x3PMbSHwbUzaj5f5KOpiH0u8bvmwbbbNkO9Es=\npolicyIdentifierHashAlgorithm=http://www.w3.org/2001/04/xmlenc#sha256\npolicyQualifier=https://www.batuz.eus/fitxategiak/batuz/ticketbai/sinadura_elektronikoaren_zehaztapenak_especificaciones_de_la_firma_electronica_v1_0.pdf"
Los enlaces están sin el https (batuz), http (w3) ni www (todos)

Si se escoge el método del almacén de windows, hay que asegurarse de que no haya más de un certificado con el mismo nombre en el campo 'Nombre descriptivo' del almacén. Este valor puede cambiarse desde el menú secundario -> 'Propiedades' para asegurarse de que se va a escoger el definido en el comando.

Última edición por Neftali [Germán.Estévez] fecha: 06-04-2021 a las 18:11:54. Razón: Añadir links al mensaje
Responder Con Cita
  #4  
Antiguo 06-04-2021
Pau Haro Pau Haro is offline
Miembro
 
Registrado: mar 2021
Posts: 13
Poder: 0
Pau Haro Va por buen camino
Envio de TicketBAI Batuz

Buenas,

Llevo ya 1 semana intentando enviar el LROE de Bizkaia al servidor utilizando Java, pero no consigo nada mas que Error 400. Os dejo mi petición a continuación, si me pudierais echar una mano se agradecería, "creo que mi error esta en como estoy enviando el GZIP al servidor":

Headers:
Código:
con.setRequestProperty("Accept-Encoding", "gzip");
con.setRequestProperty("Content-Encoding", "gzip");
con.setRequestProperty("Content-Length ",String.valueOf(Files.readAllBytes(comprimitBizkaia.toPath()).length));
con.setRequestProperty("Content-Type", "application/octet-stream");
con.setRequestProperty("eus-bizkaia-n3-version", "1.0");
con.setRequestProperty("eus-bizkaia-n3-content-type", "application/xml");
con.setRequestProperty("eus-bizkaia-n3-data", jsonHeader);
con.setRequestMethod("POST");
jsonHeader:
Cita:
{
"con":"LROE",
"apa":"1.1",
"inte":{
"nif":"xxxxxxxxxx",
"nrs":"xxxxxxxxxxx"
},
"drs":{
"mode":"240",
"ejer":"2021"
}
}
Como envio el XML comprimido:
Código:
String foo = new String(Files.readAllBytes(Paths.get("/LROE_Bizkaia.xml")));
ByteArrayOutputStream baos = new ByteArrayOutputStream();

try (GZIPOutputStream gzos = new GZIPOutputStream(baos)) {
     gzos.write(foo.getBytes("UTF-8"));
}

byte[] fooGzippedBytes = baos.toByteArray();

OutputStream os = con.getOutputStream();
os.write(fooGzippedBytes);
os.flush();

con.connect();

Gracias!
Responder Con Cita
  #5  
Antiguo 06-04-2021
Pau Haro Pau Haro is offline
Miembro
 
Registrado: mar 2021
Posts: 13
Poder: 0
Pau Haro Va por buen camino
Buenas,

Tengo una duda, en el documento Especificaciones del envío masivo del LROE 1.0.6 de Batuz, aparece en el apartado (5.1.1 Envío de la información) :
Cita:
Es requisito utilizar un certificado electrónico para realizar la petición al servicio de entradas,
certificado con el que se autentica al presentador del envío. El presentador puede ser el propio
obligado tributario o una persona que actúe en su nombre.
▪ Dicho certificado debe incluirse en la petición https que se realice al servicio de entrada
y se utiliza como base del servicio para la identificación y uso.
▪ Los tipos de certificados admitidos para los envíos de los LROE son los siguientes:
o Certificado de persona física.
BATUZ- LROE
Batuz_LROE_Especificaciones_Envío_Masivo_V1_0_6.docx
26/02/2021 14/44
o Certificado de representante de entidad.
o Sello de empresa.
o Sello de autónomo.
o Certificado de dispositivo (debe estar censado para el obligado tributario en
DFB/BFA)
El certificado al que se refiere, es el mismo que usamos para firmar el XML que enviamos a Guipuzkoa por ejemplo, verdad?

Y para enviar-lo se supone que lo tenemos que usar para el SSL como en Guipuzkoa?

Gracias.
Responder Con Cita
  #6  
Antiguo 11-04-2021
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.235
Poder: 24
keys Va por buen camino
El tema de los certificados es igual en Bizkaia que en Gipuzkoa.
Responder Con Cita
  #7  
Antiguo 12-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
Todo hecho y funcionando a la perfección con la librería de Chilkat: gestión de certificados, firma, compresión, envío y recepción de la respuesta mediante REST). Además de más completa, eficiente y fácil de usar, es mucho más barata que la Secure Black Box (unos 250€ al cambio una licencia perpetua).

Ahí queda eso.
Responder Con Cita
  #8  
Antiguo 19-04-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 132
Poder: 6
tejano Va por buen camino
Buenos días Galaxian,
He probado la línea de comando que has mandado para el Autofirmacommandline y la verdad que has hecho un gran trabajo, pero no me funciona.
En cambio si se hace eso mismo en los parámetros del Autofirma (Programa instalado) y se genera el archivo, si que funciona bien.
Has probado a enviar el fichero con el Autofirmacommandline con resultado satisfactorio?
Gracias de antemano.
Responder Con Cita
  #9  
Antiguo 19-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
Buenos días Galaxian,
He probado la línea de comando que has mandado para el Autofirmacommandline y la verdad que has hecho un gran trabajo, pero no me funciona.
En cambio si se hace eso mismo en los parámetros del Autofirma (Programa instalado) y se genera el archivo, si que funciona bien.
Has probado a enviar el fichero con el Autofirmacommandline con resultado satisfactorio?
Gracias de antemano.
Sí, es lo primero que hice, pero dada su lentitud (unos 3 segundos por firma) opté por una solución integrada en el programa.
Responder Con Cita
  #10  
Antiguo 22-04-2021
benjy.sr benjy.sr is offline
Registrado
 
Registrado: nov 2007
Posts: 3
Poder: 0
benjy.sr Va por buen camino
Parece que pude

O al menos eso creo, en la respuesta obtengo un escueto OK, pero en el memo no aparece nada, sale vacío. ¿Hay alguna forma de consultar en el entorno de pruebas las facturas enviadas para asegurarme que se ha enviado correctamente?


Este es el código una vez generado el fichero comprimido
Código Delphi [-]

  RequestBody:= TFileStream.Create(ficheroComprimido, fmOpenRead);
  NetHTTPClient1.SecureProtocols:= [THTTPSecureProtocol.TLS12];
  NetHTTPClient1.CustomHeaders['Accept-Encoding'] := 'gzip';
  NetHTTPClient1.CustomHeaders['Content-Encoding'] := 'gzip';
  NetHTTPClient1.CustomHeaders['Content-Type'] := 'application/octet-stream';
  NetHTTPClient1.CustomHeaders['eus-bizkaia-n3-version'] := '1.0';
  NetHTTPClient1.CustomHeaders['eus-bizkaia-n3-content-type'] := 'application/xml';

  //Formamos los parametros json de entrada
  json:='{"con": "LROE", "apa": "1.1", "inte": {"nif": "XXXXXXXXX","nrs": "PRUEBA","ap1": "APELLIDO1","ap2": "APELLIDO2"},"drs": {"mode": "140","ejer": "2021"}}';
  NetHTTPClient1.CustomHeaders['eus-bizkaia-n3-data']:= json;

  Url:='ttps://pruesarrerak.bizkaia.eus/N3B4000M/aurkezpena';  

  ResponseStreamString:= TStringStream.Create;
  try
    AResponse:= NetHTTPClient1.Post(url,RequestBody); //,ResponseStreamString,nil);
  finally
    ResponseStreamString.Free;
  end;
  Memo1.Text:= aResponse.ContentAsString(TEncoding.UTF8);

Última edición por Neftali [Germán.Estévez] fecha: 22-04-2021 a las 10:41:26.
Responder Con Cita
  #11  
Antiguo 22-04-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.441
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
Cita:
Empezado por benjy.sr Ver Mensaje
O al menos eso creo, en la respuesta obtengo un escueto OK

Creo que la respuesta que debes obtener es un XML similar al de TicketBAI.

Aquí están los esquemas del 140/240
Aquí ficheros de ejemplo del 140/240 tanto de peticiones como de respuestas



Te subo algunos ficheros de ejemplo de respuestas.

Código PHP:
<ns2:LROEPF140IngresosConFacturaConSGAltaRespuesta xmlns:ns2="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PF_140_1_1_Ingresos_ConfacturaConSG_AltaRespuesta_V1_0_1.xsd">
   <
Cabecera>
      <
Modelo>140</Modelo>
      <
Capitulo>1</Capitulo>
      <
Subcapitulo>1.1</Subcapitulo>
      <
Operacion>A00</Operacion>
      <
Version>1.0</Version>
      <
Ejercicio>2022</Ejercicio>
      <
ObligadoTributario>
         <
NIF>79732487C</NIF>
         <
ApellidosNombreRazonSocial>ARRIOLA LEJARDI ANE</ApellidosNombreRazonSocial>
      </
ObligadoTributario>
   </
Cabecera>
   <
DatosPresentacion>
      <
FechaPresentacion>28-04-2020 16:56:29</FechaPresentacion>
      <
NIFPresentador>79732487C</NIFPresentador>
   </
DatosPresentacion>
   <
Registros>
      <
Registro>
         <
Identificador>
            <
IDFactura>
               <
SerieFactura>A2022</SerieFactura>
               <
NumFactura>0399</NumFactura>
               <
FechaExpedicionFactura>06-05-2022</FechaExpedicionFactura>
            </
IDFactura>
         </
Identificador>
         <
SituacionRegistro>
            <
EstadoRegistro>Correcto</EstadoRegistro>
         </
SituacionRegistro>
      </
Registro>
      <
Registro>
         <
Identificador>
            <
IDFactura>
               <
SerieFactura>A2022</SerieFactura>
               <
NumFactura>0400</NumFactura>
               <
FechaExpedicionFactura>12-05-2022</FechaExpedicionFactura>
            </
IDFactura>
         </
Identificador>
         <
SituacionRegistro>
            <
EstadoRegistro>Correcto</EstadoRegistro>
         </
SituacionRegistro>
      </
Registro>
   </
Registros>
</
ns2:LROEPF140IngresosConFacturaConSGAltaRespuesta
__________________
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: 03-05-2021 a las 13:59:12.
Responder Con Cita
  #12  
Antiguo 22-04-2021
Noe277 Noe277 is offline
Miembro
 
Registrado: jul 2017
Posts: 162
Poder: 10
Noe277 Va por buen camino
Firma de software

Buenas a todos,

Tras leer el foro continuo sin entender el tema de tener que firmar el software ni del proceso.
Entiendo que necesito un certificado, e mirado en izenpe y tienen un apartado para certificados de aplicación o firma de código. ¿De estos dos cual es el adecuado?
Una vez conseguido tengo que meterlo en la aplicación ("Alguna pista") pero mi pregunta es que a efectos del fichero tiketbai en que me afecta.
¿En el fichero no va nada de este certificado no? Esto solo es a efectos de la documentación y de complicarnos un poco mas la vida no?

¿Para firmar el fichero con un certificado de representante es suficiente?
Responder Con Cita
  #13  
Antiguo 23-04-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 6
Galaxian Va por buen camino
Cita:
Empezado por Noe277 Ver Mensaje
Buenas a todos,

Tras leer el foro continuo sin entender el tema de tener que firmar el software ni del proceso.
Entiendo que necesito un certificado, e mirado en izenpe y tienen un apartado para certificados de aplicación o firma de código. ¿De estos dos cual es el adecuado?
Una vez conseguido tengo que meterlo en la aplicación ("Alguna pista") pero mi pregunta es que a efectos del fichero tiketbai en que me afecta.
¿En el fichero no va nada de este certificado no? Esto solo es a efectos de la documentación y de complicarnos un poco mas la vida no?

¿Para firmar el fichero con un certificado de representante es suficiente?
Para firmar el software tienes que usar un certificado de firma de código. La firma del software en si se suele realizar con la herramienta de Microsoft "SignTool" que viene en los SDK de Windows. Las instrucciones necesarias las suele proporcionar el proveedor del certificado ya que no es lo mismo que el certificado esté en el almacén de Windows, en un archivo pfx o en un dispositivo criptográfico.

A efectos del TicketBAI, la firma del software no afecta para nada. El XML de TBAI hay que firmarlo con un certificado de persona física si el declarante es autónomo o profesional, o de representación si es una sociedad, siendo este certificado el que se usa para el envío de los datos a las Haciendas forales.

Espero que esto te haya aclarado un poco las cosas.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
SII -Nuevo sistema de la Agencia Tributaria española de envío de datos vía Webservice newtron Internet 3716 19-01-2026 20:01:34
Como utilizar la ayuda del nuevo Sistema Operativo gluglu Humor 3 24-09-2007 09:39:05
Aplicacion Agencia De Viajes ArdiIIa Varios 9 20-01-2007 16:49:53
El Vasco Aguirre Al González La Taberna 5 26-05-2006 09:22:28
Microsoft ha lanzado su nuevo sistema operativo DarkByte Humor 0 25-01-2004 09:21:14


La franja horaria es GMT +2. Ahora son las 20:30:19.


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