Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   TICKET BAI (TicketBAI); Nuevo sistema de la Agencia Tributaria del Pais Vasco (https://www.clubdelphi.com/foros/showthread.php?t=94264)

chenech 28-03-2022 12:28:40

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 546260)
Revisa que no estés generando el fichero con la codificación incorrecta (UTF8 sin BOM), lo del Byte 1 es sospehoso en ese sentido.
La correcta es UTF8.
De todas formas te adjunto un XML sin firmar.

Muchas gracias Germán, tenia dos errores, uno en la cabecera, solucionado con el ejemplo que has enviado, muchas gracias.
El otro era en los parámetros de AutoFirma, que he visto en otros post ejemplos y ya me funciona.
Mil gracias.

joselugrk 28-03-2022 16:32:14

Solucionado
 
Cita:

Empezado por ermendalenda (Mensaje 546233)
La verdad que no he llegado ahí, pero parece que no corresponde llo que estas poniendo en <FiltroConsultaIngresosConSG> con lo pone en el xsd de la definición correctamente:
<complexType name="FiltroConsultaIngresosConFacturaType">
<sequence>
<element name="Destinatario" type="tiposcomplejos:DocumentoType" minOccurs="0"/>
<element name="CabeceraFactura" type="tiposconsulta:CabeceraFacturaConsultaType" minOccurs="0"/>
<element name="Epigrafe" type="tiposbasicos:stringMax7Digits" minOccurs="0"/>
<element name="Estado" type="enum:EstadoRegistroConsultaEnum" minOccurs="0"/>
<element name="NumPaginaConsulta" type="tiposbasicos:intPositiveType"/>
</sequence>
</complexType>

Hola Ermendalenda,

Al final el problema era que estaba llamando a la a la URI de alta, modificación y anulación y debía ser a la de consulta:
https://pruesarrerak.bizkaia.eus/N3B4001M/kontsulta

Saludos y muchas gracias,
Joselu

Irreo 28-03-2022 17:09:54

Cita:

Empezado por Alkavanyatur (Mensaje 546224)
Hola

Estoy desarrollando un solución para TBAI y me he encontrado con un problemilla que quizás no tiene solución.

Lo comento por si a alguien le ha pasado lo mismo.

Los tiempos de respuesta de la llamada a generar la factura para obtener el QR son de aproximadamente 2 segundos en desarrollo. Por las características del negocio en el que me muevo es posible que se realicen 1000 operaciones por minuto o incluso más.

Las facturas tienen que ser secuenciales. Así que este problema limita totalmente ya que es imposible que funcione a esa velocidad.


¿Ideas? Decir que me he quedado sin conexión a internet cuando se de la casuística? :D


No sé si te servirá, pero yo hago lo siguiente:
- Lo primero de todo genero el registro de factura vacío, con solo el número, y fecha y hora de expedición.
- Genero un registro en la "cola" de facturas para ese ID.
- Empiezo a procesar los datos enviados (factura, líneas detalle, etc.)
- Actualizo la tabla de factura con los datos definitivos, guardo las líneas de factura en otra tabla etc.
- Genero XML, QR, etc...


La instrucción SQL que utilizo genera el número y actualiza al mismo tiempo por lo que nunca se van a repetir. Tengo una tabla de "configuración" donde guardo el último número para cada CIF y serie (son dos empresas).

Código PHP:

$sql "UPDATE tb_config ".
    
" SET factura_siguiente = (@factura_siguiente := factura_siguiente) + 1 ".
    
" WHERE id_serie = ".fQuote($eDb->real_escape_string($seriesId));
fQuery($sql);

$sql "SELECT @factura_siguiente AS factura_siguiente";
$rsNextInvoice fQuery($sql); 

Es decir, podrías por un lado hacer una llamada para simplemente generar la factura y obtener su ID, y después seguir haciendo tus cosas, y en principio ya da igual que tardes 2 segundos, porque si otro proceso va a generar otra factura, se le asignará el siguiente número.

Irreo 28-03-2022 17:28:47

EDIT: Solucionado, explicación abajo

Buenas tardes,

A ver si alguien puede arrojarme algo de luz, porque tengo delante una pared y estoy dando palos de ciego.

Tengo ya funcionando el proceso de generar una factura, el XML y el QR.

Me he puesto con el tema de enviar a Hacienda, y por ahora he conseguido que me llegue el aviso de "001 - no se ha usado certificado de cliente".

- He generado un certificado de dispositivo usando la web de Izenpe (es gratuito).
- Se ha creado un P12, que he convertido a PEM y CRT con open_ssl, y lo he subido a Plesk.
- El certificado no puedo usarlo directamente en un dominio porque dice que "la conexión no es segura".
- Para probar a enviar algo firmado, me he descargado el Autofirma y he firmado usando ese certificado P12. En principio parece que OK.
- Al intentar subir por PHP este XML, me dice que no se ha usado certificado SSL.

En sí, el dominio desde el que envío los datos, tiene un certificado Let's Encrypt que funciona correctamente, pero no sé si esto se llega a usar o detectar.

He estado mirando diferentes opciones, y he visto que desde PHP se puede especificar qué fichero quieres usar como certificado.

Por un lado he probado esto:

Código PHP:

    // XML a Hacienda
    
$opts = array(
        
"ssl" => array(
            
"local_cert" => "/var/www/vhosts/xx/bai.pem",
            
"locak_pk" => "/var/www/vhosts/xx/bai_key.pem",
            
"passphrase" => "xxxxxx",
            
"allow_self_signed"    => true,
            
"cafile" =>'/var/www/vhosts/xxx/bai.pem',
            
"capath" =>'/var/www/vhosts/xxx/',
            
"verify_peer" => false
        
),
        
"http" => array (
            
"method" => "POST",
            
"header" =>
              
"Accept-language: es\r\n".
              
"Content-type: application/xml;charset=UTF-8\r\n",
            
"content" => $xml
        
)
    );
    
$context stream_context_create($opts);

    
$haciendaResult file_get_contents($eHaciendaUrlfalse$context); 

Decir que he estado jugando poniendo y quitando parámetros "local_pk", "ca_file", etc... sin resultado satisfactorio. He puesto el último ejemplo usado.

El error es este:

Código:

<br />
<b>Warning</b>:  file_get_contents(): Unable to set private key file `/var/www/vhosts/xxx/dkbai.pem' in <b>/var/www/vhosts/xxx/api/factura/index.php</b> on line <b>730</b><br />
<br />
<b>Warning</b>:  file_get_contents(): Failed to enable crypto in <b>/var/www/vhosts/xxx/api/factura/index.php</b> on line <b>730</b><br />
<br />
<b>Warning</b>:  file_get_contents(tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta): Failed to open stream: operation failed in <b>/var/www/vhosts/xxx/api/factura/index.php</b> on line <b>730</b><br />

Después he probado con CURL:

Código PHP:

$ch curl_init();

curl_setopt($chCURLOPT_SSL_VERIFYHOST2);
curl_setopt($chCURLOPT_CAINFO'/var/www/vhosts/xxx/bai.pem');

curl_setopt($chCURLOPT_URL$eHaciendaUrl);
curl_setopt($chCURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($chCURLOPT_HEADER0);
curl_setopt($chCURLOPT_POST1);
curl_setopt($chCURLOPT_SSH_PRIVATE_KEYFILE'/var/www/vhosts/xxx/bai_key.pem');
curl_setopt($chCURLOPT_SSLCERT'/var/www/vhosts/xxx/bai.pem');
curl_setopt($chCURLOPT_SSLCERTPASSWD"xxxxxx");
curl_setopt($chCURLOPT_POSTFIELDS$xml);
curl_setopt($chCURLOPT_FOLLOWLOCATION0);
curl_setopt($chCURLOPT_REFERER$eHaciendaUrl);
curl_setopt($chCURLOPT_RETURNTRANSFER1);
curl_setopt ($chCURLOPT_VERBOSE 1);

curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse);

$ch_result curl_exec($ch); 

Y el resultado es el siguiente:

Código:

58unable to load client key: -8178 (SEC_ERROR_BAD_KEY)
Básicamente, no solo no tengo ni idea de qué está pasando o cómo solucionarlo. Ni siquiera se si voy bien encaminado intentando enviar así los XML.

¿Alguien me ilumina un poco el camino?

Entiendo que quizás es algún problema con el fichero de la Key, pero no me hago idea el qué...

Gracias!
Saludos.

EDIT: SOLUCIONADO!!

El problema era el comando que utilicé para convertir el P12 en PEM. Un usuario de Stackoverflow dice que se le solucionó con este comando:

Código:

openssl pkcs12 -in keyname.p12 -out keyname.pem -nodes -clcerts
Y me ha servido al parecer, porque ahora el error es Hacienda es "004", de que falta algún campo, etc.... pero yo diría que el primer obstáculo ya sido sorteado.

edari 29-03-2022 09:23:37

Cita:

Empezado por thinkows (Mensaje 546210)
Hola, te adjunto en el zip ejemplos de cada tipo, yo he enviado a Guipuzkoa y Alava sin problemas.
Un Saludo


Gracias thinkows.


Luegop para subir tambié sería con curl como se hace con las altas de facturas?


Gracias de nuevo.

chenech 29-03-2022 23:08:54

Servidor de Alava en pruebas
 
Buenas tardes, alguien puede enviar al servidor de Alava de pruebas?
Siempre me da error 002 de que no coincide la estructura con el XSD, he intentado incluso enviar los de la página de ellos de ejemplos y siempre da el mismo mensaje, desde SoapUI da el mismo error por lo que deduzco que es un problema de su servicio?
Gracias...

Ya funciona, tuvo que ser algo puntual ...

pulido 30-03-2022 18:51:12

Buenas tardes:

Estoy intentado enviar en fichero XML al servidor de pruebas de Alava y no lo consigo.

¿Alguien puede subir el código fuente que usa para enviar el fichero XML a Álava?

Gracias

chenech 31-03-2022 02:36:39

Convertir Delphi a C o C++
 
Alquien sabe o puede convertir este código copiado de anteriores post a C o C++? gracias
Código:

const
  CRC8_Table: array[0..255] of Byte = (
    $00, $07, $0E, $09, $1C, $1B, $12, $15,
    $38, $3F, $36, $31, $24, $23, $2A, $2D,
    $70, $77, $7E, $79, $6C, $6B, $62, $65,
    $48, $4F, $46, $41, $54, $53, $5A, $5D,
    $E0, $E7, $EE, $E9, $FC, $FB, $F2, $F5,
    $D8, $DF, $D6, $D1, $C4, $C3, $CA, $CD,
    $90, $97, $9E, $99, $8C, $8B, $82, $85,
    $A8, $AF, $A6, $A1, $B4, $B3, $BA, $BD,
    $C7, $C0, $C9, $CE, $DB, $DC, $D5, $D2,
    $FF, $F8, $F1, $F6, $E3, $E4, $ED, $EA,
    $B7, $B0, $B9, $BE, $AB, $AC, $A5, $A2,
    $8F, $88, $81, $86, $93, $94, $9D, $9A,
    $27, $20, $29, $2E, $3B, $3C, $35, $32,
    $1F, $18, $11, $16, $03, $04, $0D, $0A,
    $57, $50, $59, $5E, $4B, $4C, $45, $42,
    $6F, $68, $61, $66, $73, $74, $7D, $7A,
    $89, $8E, $87, $80, $95, $92, $9B, $9C,
    $B1, $B6, $BF, $B8, $AD, $AA, $A3, $A4,
    $F9, $FE, $F7, $F0, $E5, $E2, $EB, $EC,
    $C1, $C6, $CF, $C8, $DD, $DA, $D3, $D4,
    $69, $6E, $67, $60, $75, $72, $7B, $7C,
    $51, $56, $5F, $58, $4D, $4A, $43, $44,
    $19, $1E, $17, $10, $05, $02, $0B, $0C,
    $21, $26, $2F, $28, $3D, $3A, $33, $34,
    $4E, $49, $40, $47, $52, $55, $5C, $5B,
    $76, $71, $78, $7F, $6A, $6D, $64, $63,
    $3E, $39, $30, $37, $22, $25, $2C, $2B,
    $06, $01, $08, $0F, $1A, $1D, $14, $13,
    $AE, $A9, $A0, $A7, $B2, $B5, $BC, $BB,
    $96, $91, $98, $9F, $8A, $8D, $84, $83,
    $DE, $D9, $D0, $D7, $C2, $C5, $CC, $CB,
    $E6, $E1, $E8, $EF, $FA, $FD, $F4, $F3);


function Calculate_CRC8(Cadena: String):String;
var
  data: TArray;
  len, i: Integer;
  crc: byte;
begin
  data := TEncoding.UTF8.GetBytes(Cadena);
  len := Length(data);
  crc := 0;

  for i := 0 to len-1 do
    crc := CRC8_Table[(crc xor data[i]) and $FF];

  Result := Format('%.*d', [3, (crc and $FF)]);
end;


Neftali [Germán.Estévez] 31-03-2022 08:50:12

Cita:

Empezado por pulido (Mensaje 546316)
Estoy intentado enviar en fichero XML al servidor de pruebas de Alava y no lo consigo.
¿Alguien puede subir el código fuente que usa para enviar el fichero XML a Álava?

Hola buenos días, veo que es tu primer post. Bienvenido.
Tendrías que intentar explicar un poco mejor (o con más detalles) cual es el problema.

Te recomiendo que leas la guía de estilo de los foros.

No comentas qué componentes estás usando.
No comentas qué lenguaje (podemos suponer que es Delphi, pero como rara excepción en este hilo hay gente que está programando en varios lenguajes).
Podrías añadir el código que estás utilizando, para que los demás vean si hay algíun error.

Dentro de este mismo hilo, hay un mensaje que repopila códigos que han colocado los usuarios sobre los diferentes pasos del proceso, en diferentes lenguajes y con diferentes componentes. Échale un vistazo:
https://www.clubdelphi.com/foros/sho...&postcount=436

Mlopez 31-03-2022 11:15:01

Servidor Alava de pruebas
 
Buenos días,
Ya teníamos implementado el proceso de enviar facturas al TBAI de Alava y en las últimas pruebas de la semana pasada se enviaban correctamente y nos las aceptaba con "Recibido" sin avisos de errores, pero hoy al retomar otra parte de las pruebas, cualquier envío que hacemos nos está devolviendo error en la firma:

008 - 034 Validar Firma Factura / Error al validar la firma: Error en la verificación de firma

cuando estamos enviando con el mismo certificado y proceso de firma y además al comprobar el fichero firmado con el validador de izenpe nos dice que es correcto.

A alguien más le ha empezado a ocurrir esto? sabéis si han cambiado algo de la validación/verificación de la firma?

Un saludo.

edari 31-03-2022 11:36:33

Cita:

Empezado por Mlopez (Mensaje 546326)
Buenos días,
Ya teníamos implementado el proceso de enviar facturas al TBAI de Alava y en las últimas pruebas de la semana pasada se enviaban correctamente y nos las aceptaba con "Recibido" sin avisos de errores, pero hoy al retomar otra parte de las pruebas, cualquier envío que hacemos nos está devolviendo error en la firma:

008 - 034 Validar Firma Factura / Error al validar la firma: Error en la verificación de firma

cuando estamos enviando con el mismo certificado y proceso de firma y además al comprobar el fichero firmado con el validador de izenpe nos dice que es correcto.

A alguien más le ha empezado a ocurrir esto? sabéis si han cambiado algo de la validación/verificación de la firma?

Un saludo.


Acabo de probar subir a pruebas y me funciona correctamente

Neftali [Germán.Estévez] 31-03-2022 11:54:03

Cita:

Empezado por Mlopez (Mensaje 546326)
Ya teníamos implementado el proceso de enviar facturas al TBAI de Alava y en las últimas pruebas de la semana pasada se enviaban correctamente y nos las aceptaba con "Recibido" sin avisos de errores, pero hoy al retomar otra parte de las pruebas, cualquier envío que hacemos nos está devolviendo error en la firma:

008 - 034 Validar Firma Factura / Error al validar la firma: Error en la verificación de firma

cuando estamos enviando con el mismo certificado y proceso de firma y además al comprobar el fichero firmado con el validador de izenpe nos dice que es correcto.

Sé que hay determinadas validaciones que van cambiando, incluso que las van activando y desactivando en pruebas dependiendo de determinados factores.
Algunas relacionadas con la firma han estado inactivas durante periodos de tiempo (imagino que por temas de desarrollo suyo).

Puedes poner un fichero tal y como lo estás enviando (eliminando datos como licencia,...) y le echamos un vistazo a ver si vemos algo raro...

chenech 31-03-2022 12:12:36

Delphi a C++ Builder
 
Por si le sirve de ayuda a alguien, converido de Delphi a C++ Builder el calculo del crc8.

Código:

#define CRC8_INIT_VALUE 0x0000
#define CRC8_XOR_VALUE 0x0000
unsigned char __fastcall TForm138::CRC8Checksum(unsigned char *data, int length)
{
        unsigned char crc8table[256] =
        {
                0x00, 0x07, 0x0E, 0x09, 0x1C, 0x1B, 0x12, 0x15,
                0x38, 0x3F, 0x36, 0x31, 0x24, 0x23, 0x2A, 0x2D,
                0x70, 0x77, 0x7E, 0x79, 0x6C, 0x6B, 0x62, 0x65,
                0x48, 0x4F, 0x46, 0x41, 0x54, 0x53, 0x5A, 0x5D,
                0xE0, 0xE7, 0xEE, 0xE9, 0xFC, 0xFB, 0xF2, 0xF5,
                0xD8, 0xDF, 0xD6, 0xD1, 0xC4, 0xC3, 0xCA, 0xCD,
                0x90, 0x97, 0x9E, 0x99, 0x8C, 0x8B, 0x82, 0x85,
                0xA8, 0xAF, 0xA6, 0xA1, 0xB4, 0xB3, 0xBA, 0xBD,
                0xC7, 0xC0, 0xC9, 0xCE, 0xDB, 0xDC, 0xD5, 0xD2,
                0xFF, 0xF8, 0xF1, 0xF6, 0xE3, 0xE4, 0xED, 0xEA,
                0xB7, 0xB0, 0xB9, 0xBE, 0xAB, 0xAC, 0xA5, 0xA2,
                0x8F, 0x88, 0x81, 0x86, 0x93, 0x94, 0x9D, 0x9A,
                0x27, 0x20, 0x29, 0x2E, 0x3B, 0x3C, 0x35, 0x32,
                0x1F, 0x18, 0x11, 0x16, 0x03, 0x04, 0x0D, 0x0A,
                0x57, 0x50, 0x59, 0x5E, 0x4B, 0x4C, 0x45, 0x42,
                0x6F, 0x68, 0x61, 0x66, 0x73, 0x74, 0x7D, 0x7A,
                0x89, 0x8E, 0x87, 0x80, 0x95, 0x92, 0x9B, 0x9C,
                0xB1, 0xB6, 0xBF, 0xB8, 0xAD, 0xAA, 0xA3, 0xA4,
                0xF9, 0xFE, 0xF7, 0xF0, 0xE5, 0xE2, 0xEB, 0xEC,
                0xC1, 0xC6, 0xCF, 0xC8, 0xDD, 0xDA, 0xD3, 0xD4,
                0x69, 0x6E, 0x67, 0x60, 0x75, 0x72, 0x7B, 0x7C,
                0x51, 0x56, 0x5F, 0x58, 0x4D, 0x4A, 0x43, 0x44,
                0x19, 0x1E, 0x17, 0x10, 0x05, 0x02, 0x0B, 0x0C,
                0x21, 0x26, 0x2F, 0x28, 0x3D, 0x3A, 0x33, 0x34,
                0x4E, 0x49, 0x40, 0x47, 0x52, 0x55, 0x5C, 0x5B,
                0x76, 0x71, 0x78, 0x7F, 0x6A, 0x6D, 0x64, 0x63,
                0x3E, 0x39, 0x30, 0x37, 0x22, 0x25, 0x2C, 0x2B,
                0x06, 0x01, 0x08, 0x0F, 0x1A, 0x1D, 0x14, 0x13,
                0xAE, 0xA9, 0xA0, 0xA7, 0xB2, 0xB5, 0xBC, 0xBB,
                0x96, 0x91, 0x98, 0x9F, 0x8A, 0x8D, 0x84, 0x83,
                0xDE, 0xD9, 0xD0, 0xD7, 0xC2, 0xC5, 0xCC, 0xCB,
                0xE6, 0xE1, 0xE8, 0xEF, 0xFA, 0xFD, 0xF4, 0xF3
        };
        unsigned char crc = CRC8_INIT_VALUE;
        while(length--)
                crc = crc8table[crc ^ *data++];
        return crc ^= CRC8_XOR_VALUE;
}
//---------------------------------------------------------------------------

Cita:

Empezado por chenech (Mensaje 546318)
Alquien sabe o puede convertir este código copiado de anteriores post a C o C++? gracias
Código:

const
  CRC8_Table: array[0..255] of Byte = (
    $00, $07, $0E, $09, $1C, $1B, $12, $15,
    $38, $3F, $36, $31, $24, $23, $2A, $2D,
    $70, $77, $7E, $79, $6C, $6B, $62, $65,
    $48, $4F, $46, $41, $54, $53, $5A, $5D,
    $E0, $E7, $EE, $E9, $FC, $FB, $F2, $F5,
    $D8, $DF, $D6, $D1, $C4, $C3, $CA, $CD,
    $90, $97, $9E, $99, $8C, $8B, $82, $85,
    $A8, $AF, $A6, $A1, $B4, $B3, $BA, $BD,
    $C7, $C0, $C9, $CE, $DB, $DC, $D5, $D2,
    $FF, $F8, $F1, $F6, $E3, $E4, $ED, $EA,
    $B7, $B0, $B9, $BE, $AB, $AC, $A5, $A2,
    $8F, $88, $81, $86, $93, $94, $9D, $9A,
    $27, $20, $29, $2E, $3B, $3C, $35, $32,
    $1F, $18, $11, $16, $03, $04, $0D, $0A,
    $57, $50, $59, $5E, $4B, $4C, $45, $42,
    $6F, $68, $61, $66, $73, $74, $7D, $7A,
    $89, $8E, $87, $80, $95, $92, $9B, $9C,
    $B1, $B6, $BF, $B8, $AD, $AA, $A3, $A4,
    $F9, $FE, $F7, $F0, $E5, $E2, $EB, $EC,
    $C1, $C6, $CF, $C8, $DD, $DA, $D3, $D4,
    $69, $6E, $67, $60, $75, $72, $7B, $7C,
    $51, $56, $5F, $58, $4D, $4A, $43, $44,
    $19, $1E, $17, $10, $05, $02, $0B, $0C,
    $21, $26, $2F, $28, $3D, $3A, $33, $34,
    $4E, $49, $40, $47, $52, $55, $5C, $5B,
    $76, $71, $78, $7F, $6A, $6D, $64, $63,
    $3E, $39, $30, $37, $22, $25, $2C, $2B,
    $06, $01, $08, $0F, $1A, $1D, $14, $13,
    $AE, $A9, $A0, $A7, $B2, $B5, $BC, $BB,
    $96, $91, $98, $9F, $8A, $8D, $84, $83,
    $DE, $D9, $D0, $D7, $C2, $C5, $CC, $CB,
    $E6, $E1, $E8, $EF, $FA, $FD, $F4, $F3);


function Calculate_CRC8(Cadena: String):String;
var
  data: TArray;
  len, i: Integer;
  crc: byte;
begin
  data := TEncoding.UTF8.GetBytes(Cadena);
  len := Length(data);
  crc := 0;

  for i := 0 to len-1 do
    crc := CRC8_Table[(crc xor data[i]) and $FF];

  Result := Format('%.*d', [3, (crc and $FF)]);
end;



Neftali [Germán.Estévez] 31-03-2022 12:25:59

Cita:

Empezado por chenech (Mensaje 546330)
Por si le sirve de ayuda a alguien, converido de Delphi a C++ Builder el calculo del crc8.

Gracias. ^\||/
Añadido al hilo de recopilación de códigos:
https://www.clubdelphi.com/foros/sho...231#post540231

Mlopez 31-03-2022 12:57:56

1 Archivos Adjunto(s)
Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 546329)
Sé que hay determinadas validaciones que van cambiando, incluso que las van activando y desactivando en pruebas dependiendo de determinados factores.
Algunas relacionadas con la firma han estado inactivas durante periodos de tiempo (imagino que por temas de desarrollo suyo).

Puedes poner un fichero tal y como lo estás enviando (eliminando datos como licencia,...) y le echamos un vistazo a ver si vemos algo raro...

Ok, subo el fichero xml firmado de una de las últimas pruebas que nos da fallo en la firma, pero editado para eliminar datos de licencia y nifs que van con **** por lo que si se intenta validar la firma de este fichero da error, pero por si como dice echándole un vistazo al fichero y su estructura detectas algo raro.
Gracias.

Neftali [Germán.Estévez] 31-03-2022 15:59:21

Busca en la documentación el valor para esto:
Cita:

<xades:SigPolicyHash>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>d69VEBc4ED4QbwnDtCA2JESgJiw+rwzfutcaSl5gYvM=</ds:DigestValue>
</xades:SigPolicyHash>
Es posible que el valor correcto sea: iOgvkX7/yHIDRRiPy/LYQ0UUn7QV8/11D1BFbs8yMuQ=

https://www.clubdelphi.com/foros/sho...postcount=1534

thinkows 31-03-2022 18:27:18

Envio Curl
 
Cita:

Empezado por edari (Mensaje 546278)
Gracias thinkows.


Luegop para subir tambié sería con curl como se hace con las altas de facturas?


Gracias de nuevo.

Hola, yo el envío lo hago con las librerías chilckat.....pero he visto varios hilos y ejemplos de envió con CURL.

Suerte y Salud.

Sistel 31-03-2022 19:14:16

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 546335)
Busca en la documentación el valor para esto:
Es posible que el valor correcto sea: iOgvkX7/yHIDRRiPy/LYQ0UUn7QV8/11D1BFbs8yMuQ=
https://www.clubdelphi.com/foros/sho...postcount=1534

Hola,

Álava cambió hace poco su política de firma (ahora se permite certificado de dispositivo en arquitecturas de firma en servidor).
La URL de la política de firma es la misma: https://ticketbai.araba.eus/tbai/sinadura/
Pero el hash ha cambiado. Hash de la política de Firma: d69VEBc4ED4QbwnDtCA2JESgJiw+rwzfutcaSl5gYvM=

Lo podéis ver en https://web.araba.eus/es/hacienda/ti...tacion-tecnica

Saludos

Sistel 31-03-2022 19:35:05

Por cierto, la política de firma de Gipuzkoa también cambió (por el mismo tema).
El nuevo hash es: vSe1CH7eAFVkGN0X2Y7Nl9XGUoBnziDA5BGUSsyt8mg=
Podéis ver en https://www.gipuzkoa.eus/es/web/ogas...on-y-normativa

Saludos

edari 01-04-2022 09:13:54

Cita:

Empezado por thinkows (Mensaje 546338)
Hola, yo el envío lo hago con las librerías chilckat.....pero he visto varios hilos y ejemplos de envió con CURL.

Suerte y Salud.




Las liberias de chilckat yo no las puedo usar. Cuando termine de preparar los xml cogeré la misma idea que usé para el curl a ver si tenemos suerte.


Gracias de nuevo ^\||/

Buen día


La franja horaria es GMT +2. Ahora son las 03:48:47.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi