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 02-09-2021
Sistel Sistel is offline
Miembro
 
Registrado: nov 2019
Ubicación: Bilbao
Posts: 484
Poder: 7
Sistel Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Aquí lo dejo, le tengo puesto un timeout que si quereis lo podeis quitar pero, si el servidor sta caido no se queda tanto tiempo esperando.Es inmediato y funciona de p.m.

La llamada al firmador.php:
curl --connect-timeout 3 http://.../firmador.php --data-binary @C:\....\...\factura_sin_firmar.xml -o C:\firmada.xml.xsig -D C:\...cabecera_respuesta.txt



Añadir al firmador.php:
//Capturar fichero en una variable
$xml=file_get_contents("php://input");

//Datos certificado
$cal_cert="369258";
$dir_cert = ($_SERVER['DOCUMENT_ROOT'].'/certs/Ciudadano.pfx' );
/Declaracion firmador
$fac = new Firmador();
//Firma según Comunidad
$xmlF = $fac -> firmar($dir_cert,$cal_cert, $xml,"BIZ");
// Devuelve Fichero firmado a la llamada curl o como lo querais capturar
echo $xmlF;


Saludos
Hola ermendalenda,

Muchas gracias por compartirlo.
Muy pero que muy interesante.

También podrías hacer que el servidor cree el XML, lo firme a continuación, cree el código TBAI, cree el código QR y envíe el XML firmado a Hacienda Foral.
Así la máquina que factura se desentiende de todo lo relativo a TicketBAI.
Sólo envía los datos de la factura al servidor y recibe los códigos TBAI y QR para añadirlos en el documento de la factura.

Saludos
Responder Con Cita
  #2  
Antiguo 02-09-2021
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.761
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por Sistel Ver Mensaje
Hola ermendalenda,

Muchas gracias por compartirlo.
Muy pero que muy interesante.

También podrías hacer que el servidor cree el XML, lo firme a continuación, cree el código TBAI, cree el código QR y envíe el XML firmado a Hacienda Foral.
Así la máquina que factura se desentiende de todo lo relativo a TicketBAI.
Sólo envía los datos de la factura al servidor y recibe los códigos TBAI y QR para añadirlos en el documento de la factura.

Saludos
De hecho venden apis con lo que comentas y ya hacen el control de envíos etc..
Por ejemplo https://www.kubibai.com/es

Última edición por ermendalenda fecha: 02-09-2021 a las 13:02:28.
Responder Con Cita
  #3  
Antiguo 02-09-2021
Sistel Sistel is offline
Miembro
 
Registrado: nov 2019
Ubicación: Bilbao
Posts: 484
Poder: 7
Sistel Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
De hecho venden apis con lo que comentas y ya hacen el control de envíos etc..
Por ejemplo https://www.kubibai.com/es
Hola ermendalenda,

No los conocía.
Parece que estos colegas hacen algo parecido a lo mío (servicio online TicketBAI).
Gracias por la información.

Saludos
Responder Con Cita
  #4  
Antiguo 02-09-2021
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.761
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por Sistel Ver Mensaje
Hola ermendalenda,

No los conocía.
Parece que estos colegas hacen algo parecido a lo mío (servicio online TicketBAI).
Gracias por la información.

Saludos
La empresa BINOVO te montan una api en un equipo Windows 10 o Linux en la Red local tb.
Esas 2 son las que conozco.
Responder Con Cita
  #5  
Antiguo 03-09-2021
Ramon88 Ramon88 is offline
Miembro
 
Registrado: ago 2021
Posts: 157
Poder: 5
Ramon88 Va por buen camino
El fichero de alta TicketBAI no cumple el esquema XSD

Hola,



No puedo avanzar, tengo este error y no consigo ver donde esta el fallo... El validador que utilizo me dice que esta todo correcto...
Alguien podría decirme algun validador de xml o como puedo saber donde esta el fallo?

He contactado con ellos pero no contestan.


Un saludo.
Responder Con Cita
  #6  
Antiguo 03-09-2021
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.761
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por Ramon88 Ver Mensaje
Hola,



No puedo avanzar, tengo este error y no consigo ver donde esta el fallo... El validador que utilizo me dice que esta todo correcto...
Alguien podría decirme algun validador de xml o como puedo saber donde esta el fallo?

He contactado con ellos pero no contestan.


Un saludo.
Hola ramon88, no conozco ningún validador que te diga exactamente donde está el fallo en todos los caso, te paso los 2 que tengo del foro a ver si tienes suerte
Http://tools.chilkat.io/xmlDsigVerif...#generatedCode
Https://web.uanataca.com/pe/servicio...ma-electronica
Responder Con Cita
  #7  
Antiguo 03-09-2021
Ramon88 Ramon88 is offline
Miembro
 
Registrado: ago 2021
Posts: 157
Poder: 5
Ramon88 Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Hola ramon88, no conozco ningún validador que te diga exactamente donde está el fallo en todos los caso, te paso los 2 que tengo del foro a ver si tienes suerte

Gracias por la info!

La de Chilkat no funciona el enlace y la de uanataca es para validar que la firma esté correcta?
No le veo mucho sentido a validar que la firma sea correcta, una vez este todo correctamente realizado la firma siempre debe de ser correcta...


Es que hay algo que se me escapa, he leido en este tema, que hay que poner datos de la factura anterior, pero en el XML de ejemplo no veo ningu sitio donde indiquen esto!
Estoy muy perdido!!
Responder Con Cita
  #8  
Antiguo 03-09-2021
bilbur bilbur is offline
Miembro
 
Registrado: dic 2019
Posts: 62
Poder: 7
bilbur Va por buen camino
Cita:
Empezado por Ramon88 Ver Mensaje
Hola,



No puedo avanzar, tengo este error y no consigo ver donde esta el fallo... El validador que utilizo me dice que esta todo correcto...
Alguien podría decirme algun validador de xml o como puedo saber donde esta el fallo?

He contactado con ellos pero no contestan.


Un saludo.
Puede ser que en tu xml no utilices las etiquetas correctas y/u obligatorias
Repasa y comprueba inclusi las mayúsculas
Es posible que en la respuesta te den mas pistas



Ya nos dices
Responder Con Cita
  #9  
Antiguo 03-09-2021
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.761
Poder: 7
ermendalenda Va por buen camino
Preguntas fiscales:
1)
Emito una factura (Normal o de canje de simplificadas que tienen obligatoriamente los datos de cliente) con un cif de cliente y por lo que sea tiene un dato erroneo. No consigo enviarlo a hacienda dando error, además de que no consigo el cif correcto del cliente por que es extranjero y no puedo arreglarla apropiadamente...

Con lo cual en la(s) siguiente(s) facturas teno un encadenamiento a una factura erronea, que posiblemente nunca se envie por este procedimiento, se produce un envio con rotura de encadenamiento y salto de numeración.

¿Hay alguna forma de informar esto?
Por otro lado, el programa debe informar de que hay que hacer o ¿es responsabilidad del usuario/empresa que usa el programa saberlo?


2)
Me piden una factura (Completa) y posteriormente su envio por correo, es necesario ndicar (Duplicado?).
Yo es que lo de "Duplicado" lo veo una gilipollez con el tema de los escaneos o en el momento que mandas un pdf (el original).

3)
Para el canje de facturas simplificadas.
¿Tengo que invalidar fisicamente estos "tiquets" o basta con hacer referencia en la factura de canje?


4)Creo que este punto ya se discutido pero no he llegado a ninguna conclusión.
Supongoo que se puede vender en el mismo tiquets productos de 2 actividades, ejemplo Bazar y panaderia.
Esta contemplado en TicketBai?
Vaya putada como esté cotemplado.
Responder Con Cita
  #10  
Antiguo 04-09-2021
unomasmas unomasmas is offline
Miembro
 
Registrado: dic 2019
Posts: 194
Poder: 7
unomasmas Va por buen camino
Cita:
Empezado por Ramon88 Ver Mensaje
Hola,

No puedo avanzar, tengo este error y no consigo ver donde esta el fallo... El validador que utilizo me dice que esta todo correcto...
Alguien podría decirme algun validador de xml o como puedo saber donde esta el fallo?

He contactado con ellos pero no contestan.


Un saludo.

¿El texto completo es el de "Error: El fichero de alta TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.b: The content of element 'T:TicketBai' is not complete. One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected" que creo que comentamos en otro post? Si sí, estás enviando sin firmar el fichero. A mi me contestaron y resulta que firmaba el fichero, lo validaba y después enviaba el fichero antes de la firma. Claro, daba este error y no lo entendía porque no me daba cuenta de que en el momento de escribir el stream a enviar utilizaba el fichero sin firmar en vez de utilizar el ya firmado...


Si no es ese el error, dinos exactamente cuál es. Supongo que tu resultado también especifique la razón de que no cumpla el esquema.



Creo que tú utilizas C#. Te paso mi clase para validar por si te sirve

Código:
public class Validaciones
{
    private bool isValid { get; set; }
    private string noValidInformation { get; set; }

    public bool ValidaXmlFactura(string xmlFile)
    {
        try
        {
            isValid = true;
            // Ficheros xsd ubicados en la raíz del ejecutable
            string xsdFile = @"ticketBaiV1-2.xsd";
            string xsdFile2 = @"xmldsig-core-schema.xsd";

            var path = new Uri(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().CodeBase)).LocalPath;
            XmlSchemaSet schema = new XmlSchemaSet();
            schema.Add("urn:ticketbai:emision", path + "\\" + xsdFile);
            schema.Add("http://www.w3.org/2000/09/xmldsig#", path + "\\" + xsdFile2);

            using (XmlReader rd = XmlReader.Create(xmlFile))
            {
                XDocument doc = XDocument.Load(rd);
                doc.Validate(schema, ValidationCallBack);
            }

            if (!isValid)
            {
                MessageBox.Show(noValidInformation.TrimEnd(Environment.NewLine.ToCharArray()), 
                    System.Reflection.MethodBase.GetCurrentMethod().Name, 
                    System.Windows.Forms.MessageBoxButtons.OK, 
                    System.Windows.Forms.MessageBoxIcon.Error);
            }
            return isValid;
        }
        catch (Exception ex)
        {
            //isValid = false; no need to say isValid=false as it returns false
            MessageBox.Show(ex.Message, 
                System.Reflection.MethodBase.GetCurrentMethod().Name, 
                System.Windows.Forms.MessageBoxButtons.OK, 
                System.Windows.Forms.MessageBoxIcon.Error);
            return false;
        }
    }

    private void ValidationCallBack(object sender, ValidationEventArgs e)
    {
        noValidInformation += string.Format("+ {0}: {1}", e.Severity.ToString(), e.Message) + Environment.NewLine;
        isValid = false;
    }
}
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 15:38:32.


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