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)

Ramon88 28-09-2021 12:04:13

Cita:

Empezado por ermendalenda (Mensaje 543152)
Estoy pensando que como estemos escaneando el servicio continuamente van a ser miles de conexiones a la vez. Buff. Eso va a ser contraproducente.


Pues somos pocos... Hay paises que todos utilizan el mismo servicio!
Tienen que estar preparados para lo que se les viene, que no lo estarán, estoy seguro.


Hace unos años implanté la factura electronica en costa rica, y después de mucho tiempo, parece que ahora empieza a funcionar mejor, y aun así, aun siguen teniendo fallos y caidas raras.

Lo peor de todo, explicale a un cliente que el error que aparece no es tu software, si no hacienda... y sabes que hay un fallo por que tus clientes empiezan a llamarte como locos, entras en el facebook de Hacienda y todo el mundo esta quejandose, entonces respiras y dices, vale, no soy yo solo... a los dias lanzan comunicado de caida general o algo por el estilo.
Es una auténtica locura.

Band 28-09-2021 12:52:30

Cita:

Empezado por Ramon88 (Mensaje 543155)
Pues somos pocos... Hay paises que todos utilizan el mismo servicio!
Tienen que estar preparados para lo que se les viene, que no lo estarán, estoy seguro.


Hace unos años implanté la factura electronica en costa rica, y después de mucho tiempo, parece que ahora empieza a funcionar mejor, y aun así, aun siguen teniendo fallos y caidas raras.

Lo peor de todo, explicale a un cliente que el error que aparece no es tu software, si no hacienda... y sabes que hay un fallo por que tus clientes empiezan a llamarte como locos, entras en el facebook de Hacienda y todo el mundo esta quejandose, entonces respiras y dices, vale, no soy yo solo... a los dias lanzan comunicado de caida general o algo por el estilo.
Es una auténtica locura.


Pues con lo tercermundistas que somos aquí, ya nos podemos ir agarrando los... lo que tengáis a mano :D

ermendalenda 28-09-2021 13:15:16

Cita:

Empezado por Ramon88 (Mensaje 543155)
Pues somos pocos... Hay paises que todos utilizan el mismo servicio!
Tienen que estar preparados para lo que se les viene, que no lo estarán, estoy seguro.


Hace unos años implanté la factura electronica en costa rica, y después de mucho tiempo, parece que ahora empieza a funcionar mejor, y aun así, aun siguen teniendo fallos y caidas raras.

Lo peor de todo, explicale a un cliente que el error que aparece no es tu software, si no hacienda... y sabes que hay un fallo por que tus clientes empiezan a llamarte como locos, entras en el facebook de Hacienda y todo el mundo esta quejandose, entonces respiras y dices, vale, no soy yo solo... a los dias lanzan comunicado de caida general o algo por el estilo.
Es una auténtica locura.

Yo tengo claro que voy a dejar el servicio de envío en segundo plano y con un pequeño algoritmo de reintentos. Si no funciona un día ya funcionará. Haré comprobaciones de que si la caída es por que no hay Internet le dejaré un número de facturas limitadas ampliables por clave si veo que el problema se alarga y no es un intento de hacer trampas.
Pero todo lo que pueda automatizar para quitarme llamadas lo tengo claro. Calidad de vida primero.

ermendalenda 28-09-2021 13:26:11

Cita:

Empezado por Band (Mensaje 543156)
Pues con lo tercermundistas que somos aquí, ya nos podemos ir agarrando los... lo que tengáis a mano :D

Madre mía. Es mejor no empezar hasta el primer día obligatorio para ahorrarnos malos ratos.

Ramon88 28-09-2021 18:28:24

Alguien podría pasarme un xml de la anulacion de guipuzcoa? me esta dando error para variar :mad:
Código:

<?xml version="1.0" encoding="utf-8" standalone="no"?><T:AnulaTicketBai xmlns:T="urn:ticketbai:anulacion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ticketbai:anulacion anula_ticketBaiV12.xsd ">
  <Cabecera>
    <IDVersionTBAI>1.2</IDVersionTBAI>
  </Cabecera>
  <IDFactura>
    <Emisor>
      <NIF>B46648192</NIF>
      <ApellidosNombreRazonSocial>Optica Vision S.L.</ApellidosNombreRazonSocial>
    </Emisor>
    <CabeceraFactura>
      <SerieFactura>TB-2021-S</SerieFactura>
      <NumFactura>59271</NumFactura>
      <FechaExpedicionFactura>27-09-2021</FechaExpedicionFactura>
    </CabeceraFactura>
  </IDFactura>
  <HuellaTBAI>
    <Software>
      <LicenciaTBAI>TBAIGIPRE00000000242</LicenciaTBAI>
      <EntidadDesarrolladora>
        <NIF>B46648192</NIF>
      </EntidadDesarrolladora>
      <Nombre>Optiplus</Nombre>
      <Version>1.0</Version>
    </Software>
  </HuellaTBAI>
</T:AnulaTicketBai>


ermendalenda 28-09-2021 19:09:30

Cita:

Empezado por Ramon88 (Mensaje 543164)
Alguien podría pasarme un xml de la anulacion de guipuzcoa? me esta dando error para variar :mad:
Código:

<?xml version="1.0" encoding="utf-8" standalone="no"?><T:AnulaTicketBai xmlns:T="urn:ticketbai:anulacion" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ticketbai:anulacion anula_ticketBaiV12.xsd ">



  <Cabecera>
    <IDVersionTBAI>1.2</IDVersionTBAI>
  </Cabecera>
  <IDFactura>
    <Emisor>
      <NIF>B46648192</NIF>
      <ApellidosNombreRazonSocial>Optica Vision S.L.</ApellidosNombreRazonSocial>
    </Emisor>
    <CabeceraFactura>
      <SerieFactura>TB-2021-S</SerieFactura>
      <NumFactura>59271</NumFactura>
      <FechaExpedicionFactura>27-09-2021</FechaExpedicionFactura>
    </CabeceraFactura>
  </IDFactura>
  <HuellaTBAI>
    <Software>
      <LicenciaTBAI>TBAIGIPRE00000000242</LicenciaTBAI>
      <EntidadDesarrolladora>
        <NIF>B46648192</NIF>
      </EntidadDesarrolladora>
      <Nombre>Optiplus</Nombre>
      <Version>1.0</Version>
    </Software>
  </HuellaTBAI>
</T:AnulaTicketBai>


A mi me cuesta un huevo cada tipo, yo creo que entra dentro de la normalidad:D


<?xml version="1.0" encoding="UTF-8"?>
<T:AnulaTicketBai xmlns:T="urn:ticketbai:anulacion" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd">
<Cabecera>
<IDVersionTBAI>1.2</IDVersionTBAI>
</Cabecera>
<IDFactura>
<Emisor>
<NIF>00000006y</NIF>
<ApellidosNombreRazonSocial>LA MAMMA</ApellidosNombreRazonSocial>
</Emisor>


<CabeceraFactura>
<SerieFactura>F.Simp.156.1</SerieFactura>
<NumFactura>197</NumFactura>
<FechaExpedicionFactura>11-09-2021</FechaExpedicionFactura>
</CabeceraFactura>
</IDFactura>

<HuellaTBAI>
<Software>
<LicenciaTBAI>TBAIPRUEBA</LicenciaTBAI>
<EntidadDesarrolladora>
<NIF>00000006Y</NIF>
</EntidadDesarrolladora>
<Nombre>SOFTTPV</Nombre>
<Version>1.0.2313</Version>
</Software>
<NumSerieDispositivo>MAC:ECF4BB2E79CA</NumSerieDispositivo>
</HuellaTBAI>
</T:AnulaTicketBai>

No veo mucha diferencia solo la cabecera, sobre todo esta parte:
xsi:schemaLocation="urn:ticketbai:anulacion anula_ticketBaiV12.xsd "
ademas del espacio al final

unomasmas 28-09-2021 19:28:10

Cita:

Empezado por ermendalenda (Mensaje 543148)
Fijaos que en el siguiente Identificador:
TBAI-00000006Y-270921-i8l17Dnn7IdR/-231

Hay una barra "/" en la firma, en el caracter numero 13
i8l17Dnn7IdR/

En este caso, si generaramos el QR(el dibujo) tal cual, no funcionaria la URL,
para que funcionara tendriamos que convertir el caracter "/" al código URI(Codigo URL, el que se genera en las direcciones cuando escribimos)


Yo lo que hago es que siempre paso la firma a codigo URI(URL)
https://batuz.eus/QRTBAI/?id=TBAI-00...&i=2.70&cr=041


Ahora vamos a lo del CR:

1.Generamos el identificador:
TBAI-00000006Y-270921-i8l17Dnn7IdR/-
2.Calculamos el CRC8
231

3.Generamos El identificador TBAI
TBAI-00000006Y-270921-i8l17Dnn7IdR/-231

4.Generamos el QR y le agregamos el mismo CRC8(aunque parezca extraño)
https://batuz.eus/QRTBAI/?id=TBAI-00...&nf=527&i=2.70

5.Calculamos el segundo CRC8, pero esta vez a partir del codigo generado anterior con el URI o URIS que hayas querido (aún más extraño, pero es la normativa)
041
https://batuz.eus/QRTBAI/?id=TBAI-00...&i=2.70&cr=041

Y listo
(Lo que si hay quee tener claro que el identificador tiene que estar escrito en la factura con su barra "/" aunque en el QR esté traducida la barra...

Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 543150)
Dentro de este mismo hilo, en esta página (páginas 30, 31 y 32) ya tratamos el tema de los caractres especiales.

Por si le quieres echar un vistazo.

Gracias a ambos. Me pongo con ello :-)

Tengo que disculparme nuevamente por preguntar algo que ya está en el foro pero si lo vi, cuando lo viese (os prometo que he pasado todas las páginas) no me di cuenta; creí que este era un tema que ya tenía resuelto; de hecho, publiqué (todo orgulloso) la clase que había hecho pensando que ya estaba completa pero (para no variar) siempre hay algún detalle que hay que afinar. :-(

Muchas gracias.

ermendalenda 28-09-2021 21:02:35

Cita:

Empezado por unomasmas (Mensaje 543166)
Gracias a ambos. Me pongo con ello :-)

Tengo que disculparme nuevamente por preguntar algo que ya está en el foro pero si lo vi, cuando lo viese (os prometo que he pasado todas las páginas) no me di cuenta; creí que este era un tema que ya tenía resuelto; de hecho, publiqué (todo orgulloso) la clase que había hecho pensando que ya estaba completa pero (para no variar) siempre hay algún detalle que hay que afinar. :-(

Muchas gracias.

Sin problema, a mi también se me pasan cosas.

unomasmas 28-09-2021 23:41:41

Cita:

Empezado por ermendalenda (Mensaje 543148)
Código:

Codigo_uri=TEXT_TO_codigo_uri(texto_origen)
FUNCTION TEXT_TO_codigo_uri(bufo)

    For a = 1 To Len(bufo)
        sql_buff = Mid(bufo, a, 1)
        sql_buff = LTrim(Hex(Asc(sql_buff)))
        If Len(sql_buff) = 1 Then
            sql_buff = "0" & sql_buff
        End If
        TEXT_TO_codigo_uri = TEXT_TO_codigo_uri & "%" & sql_buff
       
    Next
END FUNCTION


Con .Net se hace con una línea (https://docs.microsoft.com/en-us/dot...capedatastring):
Código:

private string GetURLEncodedString(string inputString)
{
    string result = Uri.EscapeDataString(inputString);
    return result;
}


ermendalenda 29-09-2021 07:03:59

Cita:

Empezado por unomasmas (Mensaje 543170)
Con .Net se hace con una línea (https://docs.microsoft.com/en-us/dot...capedatastring):
Código:

private string GetURLEncodedString(string inputString)
{
    string result = Uri.EscapeDataString(inputString);
    return result;
}


Sí y con php. Yo tengo que crearme un montón de funciones. Pero es que tengo un software bestial en vb y para pasarlo a net es una locura. Algún día me animaré. Cuando en Windows ya no se pueda ejecutar, jeje

ermendalenda 29-09-2021 08:52:20

Cita:

Empezado por ermendalenda (Mensaje 543165)
A mi me cuesta un huevo cada tipo, yo creo que entra dentro de la normalidad:D


<?xml version="1.0" encoding="UTF-8"?>
<T:AnulaTicketBai xmlns:T="urn:ticketbai:anulacion" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd">
<Cabecera>
<IDVersionTBAI>1.2</IDVersionTBAI>
</Cabecera>
<IDFactura>
<Emisor>
<NIF>00000006y</NIF>
<ApellidosNombreRazonSocial>LA MAMMA</ApellidosNombreRazonSocial>
</Emisor>


<CabeceraFactura>
<SerieFactura>F.Simp.156.1</SerieFactura>
<NumFactura>197</NumFactura>
<FechaExpedicionFactura>11-09-2021</FechaExpedicionFactura>
</CabeceraFactura>
</IDFactura>

<HuellaTBAI>
<Software>
<LicenciaTBAI>TBAIPRUEBA</LicenciaTBAI>
<EntidadDesarrolladora>
<NIF>00000006Y</NIF>
</EntidadDesarrolladora>
<Nombre>SOFTTPV</Nombre>
<Version>1.0.2313</Version>
</Software>
<NumSerieDispositivo>MAC:ECF4BB2E79CA</NumSerieDispositivo>
</HuellaTBAI>
</T:AnulaTicketBai>

No veo mucha diferencia solo la cabecera, sobre todo esta parte:
xsi:schemaLocation="urn:ticketbai:anulacion anula_ticketBaiV12.xsd "
ademas del espacio al final

Supongo que también has tenido en cuenta que las anulaciones se envian a otra url:
https://tbai-prep.egoitza.gipuzkoa.e...uras/anulacion

ermendalenda 29-09-2021 10:05:56

Duda factura rectificativa
 
A ver si me explico:

Hago una factura rectificativa, como sabeis hay 2 formas, por sustituccion o por diferencias.
Yo lo hago por mas claridad por diferencias, con lo cual hago referencia a la factura rectificada y pongo en negativo el producto devuelto.
Tengo preguntas que creo que están ya documentadas, pero no las encuentro:
*Me pregunto si necesito corregir posteriormente otro producto de la la factura inicial,
¿puedo crear otra rectificativa sobre la misma factura principal?


*se puede crear una rectificativa de una rectificativa?¿O mejor crear una rectificativa sobre la prinicipal para hacer lo contrario?,o la opcion es mejor anularla?

rci 29-09-2021 10:48:37

Nuevas validaciones Gipuzkoa
 
Hola, estoy revisando el fichero de validaciones publicado recientemente (20/09/2021) e implementando controles previos en nuestro programa para que ya no se genere una factura que al ser enviada provocaría un rechazo (según el documento, porqué todavía no están totalmente desarrolladas ni activas).
https://www.gipuzkoa.eus/documents/2...rsion+1_0.pdf/

Pero no sé si son específicas de Gipuzkoa y solo tengo que hacerlas en caso de usuarios que envíen a Gipuzkoa o puedo hacerlo en todos los casos.

Por ejemplo la validación que provoca el código de error 1146, está dentro del apartado SUJETOS • DESTINATARIOS • IDDESTINATARIO • IDOTRO y el texto dice:
Cita:

Cuando el IDType sea •02• (NIF-IVA), los dos primeros caracteres del ID deben coincidir con el campo CodigoPais indicado
El IDType 02 lo uso en intracomunitarias, por lo que entiendo que tengo que controlar que cuando un usuario de nuestro programa haga una factura intracomunitaria, el NIF del destinatario tenga los dos primeros caracteres igual que el código de país.

¿Cómo lo hacéis vosotros? hacéis este control previo o dejáis que falle (cuando activen esta validación) y luego el usuario tenga que rectificar o Subsanar/Modificar (con zuzendu)?

¿Lo hacéis para todas las diputaciones?

Muchas gracias

Noe277 29-09-2021 10:56:41

Cita:

Empezado por ermendalenda (Mensaje 543177)
A ver si me explico:

Hago una factura rectificativa, como sabeis hay 2 formas, por sustituccion o por diferencias.
Yo lo hago por mas claridad por diferencias, con lo cual hago referencia a la factura rectificada y pongo en negativo el producto devuelto.
Tengo preguntas que creo que están ya documentadas, pero no las encuentro:
*Me pregunto si necesito corregir posteriormente otro producto de la la factura inicial,
¿puedo crear otra rectificativa sobre la misma factura principal?


*se puede crear una rectificativa de una rectificativa?¿O mejor crear una rectificativa sobre la prinicipal para hacer lo contrario?,o la opcion es mejor anularla?


Yo entiendo por la ley de la factura que si es por diferencias puedes hacer varias facturas de rectificación. Por sustitución no tiene sentido hacer varias porque se pone la 2 en lugar de la primera. Y a tu pregunta yo todo sobre la principal lo de la rectificativa de la rectificativa no dice en ningún sitio que no lo puedas hacer pero a mi personalmente me parece un lio de gestión. Tampoco la anularía para mi si seria una rectificación del total que este invento raro de la anulación lo han pensado para los tickets pero para mi a nivel de factura completa me parece que solo se puede aplicar siempre y cuando la factura no la tenga el cliente y sea al momento de crearla, fiscalmente para los clientes que estén fuera del territorio es un rollo.

Noe277 29-09-2021 11:02:20

Cita:

Empezado por rci (Mensaje 543178)
Hola, estoy revisando el fichero de validaciones publicado recientemente (20/09/2021) e implementando controles previos en nuestro programa para que ya no se genere una factura que al ser enviada provocaría un rechazo (según el documento, porqué todavía no están totalmente desarrolladas ni activas).
https://www.gipuzkoa.eus/documents/2...rsion+1_0.pdf/

Pero no sé si son específicas de Gipuzkoa y solo tengo que hacerlas en caso de usuarios que envíen a Gipuzkoa o puedo hacerlo en todos los casos.

Por ejemplo la validación que provoca el código de error 1146, está dentro del apartado SUJETOS • DESTINATARIOS • IDDESTINATARIO • IDOTRO y el texto dice:
El IDType 02 lo uso en intracomunitarias, por lo que entiendo que tengo que controlar que cuando un usuario de nuestro programa haga una factura intracomunitaria, el NIF del destinatario tenga los dos primeros caracteres igual que el código de país.

¿Cómo lo hacéis vosotros? hacéis este control previo o dejáis que falle (cuando activen esta validación) y luego el usuario tenga que rectificar o Subsanar/Modificar (con zuzendu)?

¿Lo hacéis para todas las diputaciones?

Muchas gracias


los códigos de error son distintos según la diputación. Yo por experiencia del SII hago la comprobación y no les dejo continuar, les obligo a meter el país y luego lo compruebo el código del niva. Mis usuarios no introducían el país en muchos casos, nosotros intentamos controlar todo antes del envió para evitar errores. El niva es un numero para operaciones con intracomunitarios se han tenido que dar de alta en el ROI\VIES. En el caso de los extracomunitarios también necesitas el pais

Noe277 29-09-2021 11:09:28

Se me plantea una duda.
No tengo internet y hago lo siguiente:
Genero Factura 1
Genero Factura 2 encadenada con la 1
Genero Factura 3 encadenada con la 2

Las facturas están creadas el xml encadenadas y firmadas
Luego tengo internet las envió y me rechaza la 2.

No se que hacer en este caso puesto que la 2 es rechazada y la 3 me va a decir error de encadenamiento.

rci 29-09-2021 11:14:20

Muchas gracias Noe277


Cita:

Empezado por Noe277 (Mensaje 543180)
los códigos de error son distintos según la diputación.


Si pero no he encontrado esta validación en las otras diputaciones. Por eso no se si hacerlo para todas.



Cita:

Empezado por Noe277 (Mensaje 543180)
Yo por experiencia del SII hago la comprobación y no les dejo continuar, les obligo a meter el país y luego lo compruebo el código del niva.

...
El niva es un numero para operaciones con intracomunitarios se han tenido que dar de alta en el ROI\VIES. En el caso de los extracomunitarios también necesitas el pais


¿Como compruebas si el código es correcto? Tenemos implementada una comprobación para NIF nacional pero si el país es distinto de ES no validamos el código.:confused:


Muchas gracias

rci 29-09-2021 11:21:49

Zuzendu
 
Cita:

Empezado por Noe277 (Mensaje 543181)
Se me plantea una duda.
No tengo internet y hago lo siguiente:
Genero Factura 1
Genero Factura 2 encadenada con la 1
Genero Factura 3 encadenada con la 2

Las facturas están creadas el xml encadenadas y firmadas
Luego tengo internet las envió y me rechaza la 2.

No se que hacer en este caso puesto que la 2 es rechazada y la 3 me va a decir error de encadenamiento.


Según tengo entendido, tendrás que ver porqué se ha rechazado la 2 y actuar en consequencia:
* si es por fallo de internet o que el servicio de la agencia no esté disponible, volver a enviar cuando funcione
* si es por error en el xml o error en los datos de la factura tendras que utilizar el nuevo servicio zuzendu, con la opción subsanar o modificar dependiendo del caso.



El aviso de encadenamiento de la 3 si que saldrá pero yo entiendo que no pasa nada si despues se envia la 2, via normal o via zuzendu.


Esto en el caso de Araba y Gipuzkoa, pero estamos a la espera de la publicación oficial de zuzendu y su puesta en marcha...
Para Bizkaia creo que debes enviarla por otro servicio "SIN software garante" o algo así (Disculpa la inexactitud)


Espero ayudarte

Noe277 29-09-2021 11:22:39

Cita:

Empezado por rci (Mensaje 543182)
Muchas gracias Noe277





Si pero no he encontrado esta validación en las otras diputaciones. Por eso no se si hacerlo para todas.






¿Como compruebas si el código es correcto? Tenemos implementada una comprobación para NIF nacional pero si el país es distinto de ES no validamos el código.:confused:


Muchas gracias


Yo lo pondría para todas es algo necesario para cualquier esquema xml y sino controlan ahora lo aran. en cuanto a validar el código en la documentación en algún lado tiene que venir la relación de paises y códigos. En la aeat pueden encontrar esa relación se llaman códigos Alpha2 pero mejor que los mires con la documentación de tbai porque en algun pais existen diferencias.

edari 29-09-2021 11:31:16

Buenas días de nuevo,
Haciendo la primera prueba con Alava me devuelve "error 12 AVISO: Dispositivo de facturación remitente no registrado"

Esto entiendo que será por no poner el campo "NumSerieDispositivo" que en la documentación viene definiodo como opcional. De la misma manera en Guipuzoa me funciona correctamente.

¿Alguna idea?

Gracias por adelantado

rci 29-09-2021 11:39:30

Cita:

Empezado por Noe277 (Mensaje 543184)
Yo lo pondría para todas es algo necesario para cualquier esquema xml y sino controlan ahora lo aran. en cuanto a validar el código en la documentación en algún lado tiene que venir la relación de paises y códigos. En la aeat pueden encontrar esa relación se llaman códigos Alpha2 pero mejor que los mires con la documentación de tbai porque en algun pais existen diferencias.


Me refiero a validar el numero de indentificación del cliente extranjero, no del país. No validamos si es un documento de identificación valido en el país X...
No se si lo haceis o no y como.




Muchas gracias

thinkows 29-09-2021 11:45:24

Validaciones
 
Cita:

Empezado por Noe277 (Mensaje 543184)
Yo lo pondría para todas es algo necesario para cualquier esquema xml y sino controlan ahora lo aran. en cuanto a validar el código en la documentación en algún lado tiene que venir la relación de paises y códigos. En la aeat pueden encontrar esa relación se llaman códigos Alpha2 pero mejor que los mires con la documentación de tbai porque en algun pais existen diferencias.

A cuento de las validaciones, explicaré mi caso :

Envío un ticket a Guipuzkoa resultado "00" todo correcto (entiendo que no están haciendo validaciones de negocio)

Envío un ticket con el mismo artículo, cantidad y precio unitario a Araba y resultado "00" pero con avisos de negocio, soy incapaz de ver donde está el error, les he enviado email y todavía no me han respondido,
adjunto parte del xml del ticket y la respuesta de Araba para ver si alguna alma caritativa me da luz ...

Entiendo que los precios unitarios hay que expresarlos con 8 decimales y Bases Imponible, Totales de línea de detalle y totales factura con 2 decimales :

XML DEL TICKET :

<Factura>
<CabeceraFactura>
<SerieFactura>T1</SerieFactura>
<NumFactura>202135178</NumFactura>
<FechaExpedicionFactura>28-09-2021</FechaExpedicionFactura>
<HoraExpedicionFactura>10:28:33</HoraExpedicionFactura>
<FacturaSimplificada>S</FacturaSimplificada>
</CabeceraFactura>
<DatosFactura>
<FechaOperacion>28-09-2021</FechaOperacion>
<DescripcionFactura>Venta Artículos Jardineria</DescripcionFactura>
<DetallesFactura>
<IDDetalleFactura>
<DescripcionDetalle>09705540 PLAT JARDINERA INIEZIONE 40 CM ANTRACITA</DescripcionDetalle>
<Cantidad>1.00</Cantidad>
<ImporteUnitario>1.44628095</ImporteUnitario>
<Descuento>0.00</Descuento>
<ImporteTotal>1.75</ImporteTotal>
</IDDetalleFactura>
</DetallesFactura>
<ImporteTotalFactura>1.75</ImporteTotalFactura>
<Claves>
<IDClave>
<ClaveRegimenIvaOpTrascendencia>01</ClaveRegimenIvaOpTrascendencia>
</IDClave>
</Claves>
</DatosFactura>
<TipoDesglose>
<DesgloseFactura>
<Sujeta>
<NoExenta>
<DetalleNoExenta>
<TipoNoExenta>S1</TipoNoExenta>
<DesgloseIVA>
<DetalleIVA>
<BaseImponible>1.45</BaseImponible>
<TipoImpositivo>21.00</TipoImpositivo>
<CuotaImpuesto>0.30</CuotaImpuesto>
</DetalleIVA>
</DesgloseIVA>
</DetalleNoExenta>
</NoExenta>
</Sujeta>
</DesgloseFactura>
</TipoDesglose>
</Factura>



RESPUESTA DE ARABA :

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <ns2:TicketBaiResponse xmlns:ns2="http://ticketbai.eus">
- <Salida>
<IdentificadorTBAI>TBAI-B58292129-280921-BLWk4BZyFqKA+-033</IdentificadorTBAI>
<FechaRecepcion>28-09-2021 10:28:32</FechaRecepcion>
<Estado>00</Estado>
<Descripcion>Recibido</Descripcion>
<Azalpena>Jasota</Azalpena>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>71-AVISO: Error validación de negocio [Importe total incorrecto en línea de detalle]</Descripcion>
<Azalpena>71-OHARRA: Errorea gertatu da negozioa balidatzean [Xehetasun lerroko guztizko zenbatekoa okerra da]</Azalpena>
</ResultadosValidacion>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>74-AVISO: Error validación de negocio [Línea de desglose: Cuota del impuesto errónea]</Descripcion>
<Azalpena>74-OHARRA: Errorea gertatu da negozioa balidatzean [Banakapen lerroa: zerga kuota okerra da]</Azalpena>
</ResultadosValidacion>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>78-AVISO: Error va lidación de negocio [Sumatorio detalle no coincide con el sumatorio desglose]</Descripcion>
<Azalpena>78-OHARRA: Errorea gertatu da negozioa balidatzean [Xehetasun batukaria ez dator bat banakapen batukariarekin]</Azalpena>
</ResultadosValidacion>
</Salida>
</ns2:TicketBaiResponse>


Gracias de antemano :o:o

ermendalenda 29-09-2021 11:46:31

Cita:

Empezado por Noe277 (Mensaje 543179)
Yo entiendo por la ley de la factura que si es por diferencias puedes hacer varias facturas de rectificación. Por sustitución no tiene sentido hacer varias porque se pone la 2 en lugar de la primera. Y a tu pregunta yo todo sobre la principal lo de la rectificativa de la rectificativa no dice en ningún sitio que no lo puedas hacer pero a mi personalmente me parece un lio de gestión. Tampoco la anularía para mi si seria una rectificación del total que este invento raro de la anulación lo han pensado para los tickets pero para mi a nivel de factura completa me parece que solo se puede aplicar siempre y cuando la factura no la tenga el cliente y sea al momento de crearla, fiscalmente para los clientes que estén fuera del territorio es un rollo.

Graciass Noe277

ermendalenda 29-09-2021 12:00:46

Cita:

Empezado por Noe277 (Mensaje 543184)
Yo lo pondría para todas es algo necesario para cualquier esquema xml y sino controlan ahora lo aran. en cuanto a validar el código en la documentación en algún lado tiene que venir la relación de paises y códigos. En la aeat pueden encontrar esa relación se llaman códigos Alpha2 pero mejor que los mires con la documentación de tbai porque en algun pais existen diferencias.


Me pasa lo mismo, si alguien conoce algún validador completo se agradeceria.
Tiene que haber algún php o algún servicio webservice para validarlos, me suena de haberlo escuchado a algun asesor fiscal.

Noe277 29-09-2021 12:19:03

Cita:

Empezado por ermendalenda (Mensaje 543189)
Me pasa lo mismo, si alguien conoce algún validador completo se agradeceria.
Tiene que haber algún php o algún servicio webservice para validarlos, me suena de haberlo escuchado a algun asesor fiscal.

No están validando que el numero sea correcto ósea FR0000444 sea correcto sino k el Pais + el numero = X longitud. Eso depende del pais yo he realizado pruebas y no me lo tira para atrás si el numero es incorrecto solo me a pasado si numero de caracteres no coincide . En la aeat existe un webservice para poder comprobar los dnis españoles y existe un apartado para comprobar los Nivas me imagino que a posteriori este servicio también estará en el webservice

Ramon88 29-09-2021 12:25:25

Cita:

Empezado por ermendalenda (Mensaje 543174)
Supongo que también has tenido en cuenta que las anulaciones se envian a otra url:
https://tbai-prep.egoitza.gipuzkoa.e...uras/anulacion

Si, incluso he copiado tu xml y me da el mismo error que en el mio:
Código:

Error: El fichero de anulación TicketBAI no cumple el esquema XSD. Detalle del error: cvc-complex-type.2.4.b: The content of element 'T:AnulaTicketBai' is not complete. One of '{"http://www.w3.org/2000/09/xmldsig#":Signature}' is expected.
Estoy capullo, acabo de ver que estaba subiendo el fichero no firmado....

Grost 29-09-2021 12:42:15

Estado de la factura TicketBAI
 
Antes de nada muchas gracias a todos por toda la información que tenéis recopilada en el foro, una maravilla.
Me ha surgido una duda y me gustaría saber comentárosla.
¿Hay alguna manera de saber el estado en el que está la factura en la diputación?
¿Hay alguna llamada que, indicando el identificadorTBAI te diga el estado en el qué esta la factura? Si ya está tramitada, si esta todo OK o si hay algún error.

Muchas gracias y siento si ya habéis contestado a esto pero no lo he encontrado.

Ramon88 29-09-2021 12:43:02

Cita:

Empezado por Grost (Mensaje 543194)
Antes de nada muchas gracias a todos por toda la información que tenéis recopilada en el foro, una maravilla.
Me ha surgido una duda y me gustaría saber comentárosla.
¿Hay alguna manera de saber el estado en el que está la factura en la diputación?
¿Hay alguna llamada que, indicando el identificadorTBAI te diga el estado en el qué esta la factura? Si ya está tramitada, si esta todo OK o si hay algún error.

Muchas gracias y siento si ya habéis contestado a esto pero no lo he encontrado.


Con el QR ?

Grost 29-09-2021 12:45:57

Cita:

Empezado por Ramon88 (Mensaje 543195)
Con el QR ?

¿Pero con el QR te dice si es incorrecta?

Es decir, tú puedes tener el QR pero que todavía no esté tramitada por la diputación.

A mi me gustaría saber si hay alguna función donde mandándole el identificador de la factura me diga si está todo OK y poder dar por cerrada esa factura.

Gracias.

ermendalenda 29-09-2021 12:59:48

Cita:

Empezado por thinkows (Mensaje 543187)
A cuento de las validaciones, explicaré mi caso :

Envío un ticket a Guipuzkoa resultado "00" todo correcto (entiendo que no están haciendo validaciones de negocio)

Envío un ticket con el mismo artículo, cantidad y precio unitario a Araba y resultado "00" pero con avisos de negocio, soy incapaz de ver donde está el error, les he enviado email y todavía no me han respondido,
adjunto parte del xml del ticket y la respuesta de Araba para ver si alguna alma caritativa me da luz ...

Entiendo que los precios unitarios hay que expresarlos con 8 decimales y Bases Imponible, Totales de línea de detalle y totales factura con 2 decimales :

XML DEL TICKET :

<Factura>
<CabeceraFactura>
<SerieFactura>T1</SerieFactura>
<NumFactura>202135178</NumFactura>
<FechaExpedicionFactura>28-09-2021</FechaExpedicionFactura>
<HoraExpedicionFactura>10:28:33</HoraExpedicionFactura>
<FacturaSimplificada>S</FacturaSimplificada>
</CabeceraFactura>
<DatosFactura>
<FechaOperacion>28-09-2021</FechaOperacion>
<DescripcionFactura>Venta Artículos Jardineria</DescripcionFactura>
<DetallesFactura>
<IDDetalleFactura>
<DescripcionDetalle>09705540 PLAT JARDINERA INIEZIONE 40 CM ANTRACITA</DescripcionDetalle>
<Cantidad>1.00</Cantidad>
<ImporteUnitario>1.44628095</ImporteUnitario>
<Descuento>0.00</Descuento>
<ImporteTotal>1.75</ImporteTotal>
</IDDetalleFactura>
</DetallesFactura>
<ImporteTotalFactura>1.75</ImporteTotalFactura>
<Claves>
<IDClave>
<ClaveRegimenIvaOpTrascendencia>01</ClaveRegimenIvaOpTrascendencia>
</IDClave>
</Claves>
</DatosFactura>
<TipoDesglose>
<DesgloseFactura>
<Sujeta>
<NoExenta>
<DetalleNoExenta>
<TipoNoExenta>S1</TipoNoExenta>
<DesgloseIVA>
<DetalleIVA>
<BaseImponible>1.45</BaseImponible>
<TipoImpositivo>21.00</TipoImpositivo>
<CuotaImpuesto>0.30</CuotaImpuesto>
</DetalleIVA>
</DesgloseIVA>
</DetalleNoExenta>
</NoExenta>
</Sujeta>
</DesgloseFactura>
</TipoDesglose>
</Factura>



RESPUESTA DE ARABA :

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <ns2:TicketBaiResponse xmlns:ns2="http://ticketbai.eus">
- <Salida>
<IdentificadorTBAI>TBAI-B58292129-280921-BLWk4BZyFqKA+-033</IdentificadorTBAI>
<FechaRecepcion>28-09-2021 10:28:32</FechaRecepcion>
<Estado>00</Estado>
<Descripcion>Recibido</Descripcion>
<Azalpena>Jasota</Azalpena>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>71-AVISO: Error validación de negocio [Importe total incorrecto en línea de detalle]</Descripcion>
<Azalpena>71-OHARRA: Errorea gertatu da negozioa balidatzean [Xehetasun lerroko guztizko zenbatekoa okerra da]</Azalpena>
</ResultadosValidacion>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>74-AVISO: Error validación de negocio [Línea de desglose: Cuota del impuesto errónea]</Descripcion>
<Azalpena>74-OHARRA: Errorea gertatu da negozioa balidatzean [Banakapen lerroa: zerga kuota okerra da]</Azalpena>
</ResultadosValidacion>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>78-AVISO: Error va lidación de negocio [Sumatorio detalle no coincide con el sumatorio desglose]</Descripcion>
<Azalpena>78-OHARRA: Errorea gertatu da negozioa balidatzean [Xehetasun batukaria ez dator bat banakapen batukariarekin]</Azalpena>
</ResultadosValidacion>
</Salida>
</ns2:TicketBaiResponse>


Gracias de antemano :o:o

Hola a ver si esto te ayuda en algo:
El servicio REST de Araba comprueba que el NIF emisor del fichero TicketBAI sea un contribuyente alavés. Y si se tratade una persona física, además se comprueba que esté dado de alta en IAE (Impuesto de actividades económicas)
En el caso de que no se cumplan esas condiciones en el entorno de pruebas, se dará un aviso:
“AVISO: NIF emisor no es correcto, no es contribuyente alavés o no está registrado en IAE”.

Fuente : https://geo.araba.eus/documents/1050...=1631880445798

Por otro lado me crea dudas y yo hago un control sobre estas cosas:
Yo vigilaria el uso de letras acentuadas que te pueden dar algún problema
Y en el caso del campo <descuento>0.00... si es 0 no ponerlo

sobre los errores del importe total, no se si puede ser por lo del descuento a 0.00 o por que ese cliente no sea alaves o por que tenga recargo de equivalencia o por que como está dado de alta ccomo un operador intracomunitario tenga que marcar algo diferente.

ermendalenda 29-09-2021 13:07:57

Cita:

Empezado por edari (Mensaje 543185)
Buenas días de nuevo,


Haciendo la primera prueba con Alava me devuelve "error 12 AVISO: Dispositivo de facturación remitente no registrado"


Esto entiendo que será por no poner el campo "NumSerieDispositivo" que en la documentación viene definiodo como opcional. De la misma manera en Guipuzoa me funciona correctamente.


¿Alguna idea?


Gracias por adelantado


En caso de utilizar un certificado de dispositivo para las pruebas:
Una de las primeras validaciones que va a realizar el servicio REST es la comprobación de que el certificado con el que se realiza el envío es válido.
En caso de utilizar un certificado de dispositivo para realizar el envío, se comprobará que esté registrado en un censo de certificados de dispositivo.
Si el certificado de dispositivo no está registrado, el servicio dará un aviso:
“AVISO: Dispositivo de facturación remitente no registrado”.
Este aviso no es bloqueante para hacer las pruebas. Pero para evitarlo, puede enviar un mail a [email protected], indicando en el asunto del correo el texto “Pruebas TicketBAI: Nombre Empresa / Categoría: Certificados” y aportando la siguiente información: -El NIF emisor de los ficheros TicketBAI -El nº de serie del certificado de dispositivo

FUENTE:
https://geo.araba.eus/documents/1050...=1631880445798

Noe277 29-09-2021 13:08:52

Cita:

Empezado por thinkows (Mensaje 543187)
A cuento de las validaciones, explicaré mi caso :

Envío un ticket a Guipuzkoa resultado "00" todo correcto (entiendo que no están haciendo validaciones de negocio)

Envío un ticket con el mismo artículo, cantidad y precio unitario a Araba y resultado "00" pero con avisos de negocio, soy incapaz de ver donde está el error, les he enviado email y todavía no me han respondido,
adjunto parte del xml del ticket y la respuesta de Araba para ver si alguna alma caritativa me da luz ...

Entiendo que los precios unitarios hay que expresarlos con 8 decimales y Bases Imponible, Totales de línea de detalle y totales factura con 2 decimales :

XML DEL TICKET :

<Factura>
<CabeceraFactura>
<SerieFactura>T1</SerieFactura>
<NumFactura>202135178</NumFactura>
<FechaExpedicionFactura>28-09-2021</FechaExpedicionFactura>
<HoraExpedicionFactura>10:28:33</HoraExpedicionFactura>
<FacturaSimplificada>S</FacturaSimplificada>
</CabeceraFactura>
<DatosFactura>
<FechaOperacion>28-09-2021</FechaOperacion>
<DescripcionFactura>Venta Artículos Jardineria</DescripcionFactura>
<DetallesFactura>
<IDDetalleFactura>
<DescripcionDetalle>09705540 PLAT JARDINERA INIEZIONE 40 CM ANTRACITA</DescripcionDetalle>
<Cantidad>1.00</Cantidad>
<ImporteUnitario>1.44628095</ImporteUnitario>
<Descuento>0.00</Descuento>
<ImporteTotal>1.75</ImporteTotal>
</IDDetalleFactura>
</DetallesFactura>
<ImporteTotalFactura>1.75</ImporteTotalFactura>
<Claves>
<IDClave>
<ClaveRegimenIvaOpTrascendencia>01</ClaveRegimenIvaOpTrascendencia>
</IDClave>
</Claves>
</DatosFactura>
<TipoDesglose>
<DesgloseFactura>
<Sujeta>
<NoExenta>
<DetalleNoExenta>
<TipoNoExenta>S1</TipoNoExenta>
<DesgloseIVA>
<DetalleIVA>
<BaseImponible>1.45</BaseImponible>
<TipoImpositivo>21.00</TipoImpositivo>
<CuotaImpuesto>0.30</CuotaImpuesto>
</DetalleIVA>
</DesgloseIVA>
</DetalleNoExenta>
</NoExenta>
</Sujeta>
</DesgloseFactura>
</TipoDesglose>
</Factura>



RESPUESTA DE ARABA :

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <ns2:TicketBaiResponse xmlns:ns2="http://ticketbai.eus">
- <Salida>
<IdentificadorTBAI>TBAI-B58292129-280921-BLWk4BZyFqKA+-033</IdentificadorTBAI>
<FechaRecepcion>28-09-2021 10:28:32</FechaRecepcion>
<Estado>00</Estado>
<Descripcion>Recibido</Descripcion>
<Azalpena>Jasota</Azalpena>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>71-AVISO: Error validación de negocio [Importe total incorrecto en línea de detalle]</Descripcion>
<Azalpena>71-OHARRA: Errorea gertatu da negozioa balidatzean [Xehetasun lerroko guztizko zenbatekoa okerra da]</Azalpena>
</ResultadosValidacion>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>74-AVISO: Error validación de negocio [Línea de desglose: Cuota del impuesto errónea]</Descripcion>
<Azalpena>74-OHARRA: Errorea gertatu da negozioa balidatzean [Banakapen lerroa: zerga kuota okerra da]</Azalpena>
</ResultadosValidacion>
- <ResultadosValidacion>
<Codigo>010</Codigo>
<Descripcion>78-AVISO: Error va lidación de negocio [Sumatorio detalle no coincide con el sumatorio desglose]</Descripcion>
<Azalpena>78-OHARRA: Errorea gertatu da negozioa balidatzean [Xehetasun batukaria ez dator bat banakapen batukariarekin]</Azalpena>
</ResultadosValidacion>
</Salida>
</ns2:TicketBaiResponse>


Gracias de antemano :o:o

Esto es un problema de ellos habrá que decirles, el caso es que creo que esta en el redondo.
1 x 1,446 también da error pero 1, 44 lo hace bien. 1,45 también hace mal el problema es como redondean.

ermendalenda 29-09-2021 13:23:26

Cita:

Empezado por Noe277 (Mensaje 543200)
Esto es un problema de ellos habrá que decirles, el caso es que creo que esta en el redondo.
1 x 1,446 también da error pero 1, 44 lo hace bien. 1,45 también hace mal el problema es como redondean.

aún no he enviado a Araba, pero no creo que trunquen el resultado de decimales, lo lógico es redondear.:eek: Me sorprenderia muchisimo

Noe277 29-09-2021 13:28:53

Cita:

Empezado por ermendalenda (Mensaje 543201)
aún no he enviado a Araba, pero no creo que trunquen el resultado de decimales, lo lógico es redondear.:eek: Me sorprenderia muchisimo

1,45 * 0,21 = 0,3045 Si redondeas aquí depende como lo hagas puede dar 0,30 o 0,31.
De todas maneras con independencia de esto yo es una consulta que hice en batuz porque el redondeo de las líneas no tiene que ser igual al de las bases (Matemáticamente)y me dijeron que iban a dejar una diferencia de 1 o 2 céntimos.

ermendalenda 29-09-2021 13:30:58

Cita:

Empezado por Noe277 (Mensaje 543202)
1,45 * 0,21 = 0,3045 Si redondeas aquí depende como lo hagas puede dar 0,30 o 0,31.
De todas maneras con independencia de esto yo es una consulta que hice en batuz porque el redondeo de las líneas no tiene que ser igual al de las bases (Matemáticamente)y me dijeron que iban a dejar una diferencia de 1 o 2 céntimos.

Hombre claro si barres para adentro redondean el iva siempre al alza, pero no es lo lógico.:D

Noe277 29-09-2021 13:33:18

Cita:

Empezado por ermendalenda (Mensaje 543203)
Hombre claro si barres para adentro redondean el iva siempre al alza, pero no es lo lógico.:D

100% convencida de que están poniendo 0.31

ermendalenda 29-09-2021 13:35:20

Cita:

Empezado por Noe277 (Mensaje 543204)
100% convencida de que están poniendo 0.31

No, si ya me estoy dando cuenta, pero vaya tela de cara dura tienen, esto es la queja del abuelete de que ctmo a ctmo alguien está haciendo caja

ermendalenda 29-09-2021 13:44:31

Cita:

Empezado por Noe277 (Mensaje 543204)
100% convencida de que están poniendo 0.31


La cuenta es facil.
Empresa mediana: 600.000 Facturas simplificadas(Tiquets) trimestre
Aprox. la mitad del calculo del Importe de IVA tendra decimales de menor o igual a 0.004999, si todos se redondean a 0.01 ingresan 3000 euros más al trimestre.
Aunque habria que concretar mas el redondeo que hacen.

thinkows 29-09-2021 15:17:16

Validaciones
 
Cita:

Empezado por ermendalenda (Mensaje 543198)
Hola a ver si esto te ayuda en algo:
El servicio REST de Araba comprueba que el NIF emisor del fichero TicketBAI sea un contribuyente alavés. Y si se tratade una persona física, además se comprueba que esté dado de alta en IAE (Impuesto de actividades económicas)
En el caso de que no se cumplan esas condiciones en el entorno de pruebas, se dará un aviso:
“AVISO: NIF emisor no es correcto, no es contribuyente alavés o no está registrado en IAE”.

Fuente : https://geo.araba.eus/documents/1050...=1631880445798

Por otro lado me crea dudas y yo hago un control sobre estas cosas:
Yo vigilaria el uso de letras acentuadas que te pueden dar algún problema
Y en el caso del campo <descuento>0.00... si es 0 no ponerlo

sobre los errores del importe total, no se si puede ser por lo del descuento a 0.00 o por que ese cliente no sea alaves o por que tenga recargo de equivalencia o por que como está dado de alta ccomo un operador intracomunitario tenga que marcar algo diferente.

Muchas gracias Ermendalenda, el caso es que ya envié un correo especificando que haría las pruebas con el nif de la empresa que es de BCN y me inscribieron el registro para poder hacerlo, miraré lo del descuento aunque no creo, porque en otras operaciones que mando 0.00 como descuento si que no tengo ningún problema :(:(

thinkows 29-09-2021 15:35:38

Validaciones
 
Cita:

Empezado por Noe277 (Mensaje 543204)
100% convencida de que están poniendo 0.31


Pues que simpáticos, porque la mayoría de mis clientes trabaja con IVA incluido (comercio minorista) y el preció del artículo es 1.75 si quito el iva a 8 decimales 1.44628099 si añado el iva+0.31 seran 1.76 y no será lo que el cliente pago con el ticket físico.

Estoy esperando su respuesta .....:(:(:(:(


Gracias a todos, un saludo


La franja horaria es GMT +2. Ahora son las 11:58:34.

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