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

Tema Cerrado
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-09-2024
adolfogonza adolfogonza is offline
Registrado
 
Registrado: mar 2024
Posts: 3
Poder: 0
adolfogonza Va por buen camino
Dudas proceso envio facturas

Hola a todos,
Me he apuntado a este foro, ya que sois todos fantasticos al intentar ayudar a muchos de nosotros con vuestros comentarios y conocimiento.
Soy programador desde hace mas de 45 años, vamos que soy de la vieja escuela, tengo un programa de facturacion funcionando desde hace mas de 24 años, hecho en visual basic 6, y veo que tengo que adaptarme a las nuevas normativas o morir en el intento.
Me gustaria si alguno de vosotros, me podria dar el proceso para enviar los archivos xml a la web de pruebas.
La porgramacion en php y los comandos web no los domino mucho y me hago un poco de lio con todo esto.
No necesito que sea exhaustivo, pero si los pasos mas importantes.
muchas gracias por este foro, la verdad, me estais aclarando mucho la situacion.
Ya os podrian poner a algunos de vosotros a organizar y gestionar estos temas, me parece, que los de la adiminstracion no lo tienen tan claro.
Por cierto, para mas inri, soy de navarra, alguien sabe que sistema se va a usar en navarra y cuando?
  #2  
Antiguo 27-09-2024
antoine0 antoine0 is offline
Miembro
 
Registrado: oct 2021
Posts: 260
Poder: 5
antoine0 Va por buen camino
Siento por estar fuera del asunto. Se puede mover en distinto hilo si hay mejor ubicación (gracias, moderadores).

Cita:
Empezado por adolfogonza Ver Mensaje
Soy programador desde hace mas de 45 años, vamos que soy de la vieja escuela, tengo un programa de facturacion funcionando desde hace mas de 24 años, hecho en visual basic 6, y veo que tengo que adaptarme a las nuevas normativas o morir en el intento.
Me gustaria si alguno de vosotros, me podria dar el proceso para enviar los archivos xml a la web de pruebas.
Tengo una clase VBA7 que he usado desde un par de años para proyectos SII, que gestiona la comunicación con SOAP. No la he probado con Veri*factu, pero no creo que siga distinta al nivel del SOAP.
No tengo experiencia con VB6 (usaba TP cuando era VB3 y después prefiero Delphi a VB4+, con perdón) pero tengo entendido que es muy compatible con VBA, una vez habrás quitado las comandas del pre-procesador (#const/if etc.)

El uso básico es algo como:
Código:
Dim svc As WebServiceSOAP
'...
    Set svc = New WebServiceSOAP
'...
  On Error GoTo Abrir_Error
    svc.Certificado = nif ' una cadena con p.e. el NIF del usuario que comunica, para seleccionar el certificado; cualquier parte del asunto del certificado vale
    svc.Abrir urlDelWSDL
'...
  On Error GoTo Comunica_Error
    svc.Envia xmlTransacción ' el XML que Hacienda espera, completo con el sobre SOAP
    Debug.Assert svc.RespuestaDisponible
'    Debug.Print svc.CabecerasRespuesta
'    Debug.Print svc.TextoRespuesta
   gestiona( svc.respuesta ) ' gestiona el contenido devuelto por Hacienda
'...
    Set svc = Nothing
Creo que está suficientemente documentada, pero por supuesto si hay interrogaciones por favor preguntar. Usará el certificado del usuario. Si alguien sabe poner en forma el código VB para resaltar los keywords, por favor actuar.
Archivos Adjuntos
Tipo de Archivo: zip WebServiceSOAP.zip (3,7 KB, 32 visitas)
  #3  
Antiguo 28-09-2024
jalvar28 jalvar28 is offline
Miembro
 
Registrado: jun 2024
Posts: 15
Poder: 0
jalvar28 Va por buen camino
No se validan los encadenamientos correctamente

Buenos días.
Estoy enviado facturas y todo ok.
El tema es que veo que se traga todos los encadenamientos, le ponga lo que le ponga me dice que factura correcta ¿Alguien ha notado esto? ¿No lo están validando aún?

encadenamientoFacturaAnterior.IDEmisorFactura = cifEmisor;
encadenamientoFacturaAnterior.NumSerieFactura = NumSerieFacturaAnterior ;//numero factura anterior
encadenamientoFacturaAnterior.FechaExpedicionFactura = FechaFacturaAnterior;//fecha factura anterior
encadenamientoFacturaAnterior.Huella = HuellaFacturaAnterior;//huella registro anterior
  #4  
Antiguo 28-09-2024
jlmoli_67 jlmoli_67 is offline
Miembro
 
Registrado: feb 2024
Posts: 125
Poder: 3
jlmoli_67 Va por buen camino
Buenas,

No te dice aceptada con errores y te hace referencia al hash? En las pruebas que hice ayer asi me lo reflejaba.

un saludo
  #5  
Antiguo 28-09-2024
jalvar28 jalvar28 is offline
Miembro
 
Registrado: jun 2024
Posts: 15
Poder: 0
jalvar28 Va por buen camino
Te lo explico con ejemplo:

- Registro la factura 0001/2024 correctamente (utilizando PrimerRegistroCadenaType).

- Luego registro la factura 0002/2024 e indico que la anterior es la 0001/2024 (completando los campos correspondientes en EncadenamientoFacturaAnteriorType), y el sistema me lo valida correctamente.

- Posteriormente, intento registrar la factura 0003/2024 e indico, nuevamente, que la factura anterior es la 0001/2024 (utilizando los mismos datos en EncadenamientoFacturaAnteriorType), pero el sistema también lo valida como correcto, cuando en realidad debería haber detectado que la factura previa debió ser la 0002/2024.

No estoy seguro si estoy cometiendo algún error o si es el sistema el que no está validando correctamente la secuencia de encadenamiento de facturas.

- Además, si en el campo EncadenamientoFacturaAnteriorType incluyo una factura que nunca ha sido añadida al sistema, junto con una huella anterior generada aleatoriamente por una IA, también me indica que la factura es correcta. Creo que aún no se está validando correctamente. Si pueden probarlo, agradecería que me lo confirmaran.

var encadenamientoFacturaAnterior = new EncadenamientoFacturaAnteriorType();
encadenamientoFacturaAnterior.IDEmisorFactura = cifEmisor;
encadenamientoFacturaAnterior.NumSerieFactura = "00001/Pepito/2024";//numero factura nunca añadida anteriormente
encadenamientoFacturaAnterior.FechaExpedicionFactura = "02-02-2024";//fecha factura anterior
encadenamientoFacturaAnterior.Huella = "7F3D68A9B8C39A1D29C7B4F54E6FA318CBD26317F02C89DF1A6477E3952D8F3E";//huella generada por ia
  #6  
Antiguo 28-09-2024
xevi xevi is offline
Miembro
 
Registrado: feb 2024
Posts: 69
Poder: 3
xevi Va por buen camino
Lo que yo si he notado es que puedes enviar TANTOS registros como quieras como PrimerRegistro

<sum1:Encadenamiento>
<sum1:PrimerRegistro>S</sum1:PrimerRegistro>
</sum1:Encadenamiento>


Eso tampoco es normal, ya que SOLAMENTE debería de existir un registo PrimerRegistro
A partir de ahí, si, he visto que si no le pongo correctamente la Huella y la correspondiente HuellaAnterior, lo Acepta con errores
Como si envias un registro que no esté calculado correctamente el ImporteTotal con las sumas de las bases... Lo Acepta con errores

Luego a partir de ahí es donde entra el hacer registros de Subsanación de errores... otro tema!!!
  #7  
Antiguo 28-09-2024
jlmoli_67 jlmoli_67 is offline
Miembro
 
Registrado: feb 2024
Posts: 125
Poder: 3
jlmoli_67 Va por buen camino
Pienso que si creas dos facturas, la 1 y la 3 , encadenadas correctamente y las envias secuencialmente porque no existe la nº 2 realmente el proceso es correcto pero llevas razon, deberia , pienso yo de avisar de que la 2 no existe, no es asi????? Hay que probarlo porque en ese caso ya te digo yo quien va a perder el tiempo en anulaciones.

En las pruebas que hice ayer, si el hash esta mal porque lo refiero a otra factura entonces si lo detecta pero realmente este caso no lo he probado.
  #8  
Antiguo 28-09-2024
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 662
Poder: 18
espinete Va camino a la fama
Diferencias con TicketBAI

Estoy empezando a darle caña a VeriFactu y veo que hay algunas diferencias con respecto a TicketBAI que me gustaría que me confirmaran, por si me estoy equivocando con el procedimiento...

Para TicketBAI, el procedimiento es el siguiente:

1. Generar el XML (por ejemplo, factura.xml)
2. Firmar el XML (por ejemplo, factura-firmada.xml)
3. Realizar el envío del archivo, firmando también el envío (yo uso el evento NetHTTPClient1NeedClientCertificate del componente TNetHTTPClient)

Pero según entiendo, con VeriFactu (al menos por ahora) no hay que firmar el XML, sino únicamente *el envío*.

Con VeriFactu creo entender que el procedimiento es este:
1. Generar la(s) Factura(s) (no veo forma de obtener el XML de UNA factura concreta)
2. Generar el XML del envío, que contiene la(s) factura(s)
3. Realizar el envío, firmando el envío con el certificado

¿Es correcto?

No veo la forma de obtener el XML de la factura antes de hacer el envío. Solo al enviarla, con el evento HTTPRIO1BeforeExecutedel componente THTTPRIO
No sé si es posible usar el componente TNetHTTPClient, aunque esto lo de menos ya que me da igual que funcione uno u otro.
Al no tener que firmar el XML de la factura, entiendo que no hace falta lo de las políticas de firma, SigPolicyID, SigPolicyHash, r_SigPolicyURI, etc. que sí eran necesarios en TicketBAI

¿Podría alguien confirmarme esto antes de seguir empeñado en hacerlo como en TicketBAI?
  #9  
Antiguo 30-09-2024
yeyo yeyo is offline
Miembro
 
Registrado: abr 2010
Posts: 24
Poder: 0
yeyo Va por buen camino
buenos dias. ¿hay que darse de alta en la web de la aeat para utilizar el entorno de pruebas? ¿como/dónde? es que no encuentro nada al respecto (web de la aeat) y lo que me encuentro siempre es un lío. Gracias!!
  #10  
Antiguo 30-09-2024
pablog2k pablog2k is offline
Miembro
 
Registrado: may 2017
Posts: 241
Poder: 10
pablog2k Va por buen camino
Cita:
Empezado por yeyo Ver Mensaje
buenos dias. ¿hay que darse de alta en la web de la aeat para utilizar el entorno de pruebas? ¿como/dónde? es que no encuentro nada al respecto (web de la aeat) y lo que me encuentro siempre es un lío. Gracias!!
según han comentado aqui, tú subes el xml con un certificado válido a la plataforma de pruebas y ya está....
  #11  
Antiguo 30-09-2024
yeyo yeyo is offline
Miembro
 
Registrado: abr 2010
Posts: 24
Poder: 0
yeyo Va por buen camino
muchas gracias pablog2k!!!
Tema Cerrado


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
Hijo de Informáticos gluglu Humor 3 13-03-2007 11:05:35
Adictos informaticos ... Trigger Humor 2 11-10-2004 12:18:32
Nosotros los Informáticos Trigger Humor 1 10-10-2004 14:58:09
Patrón de los Informáticos. obiwuan Varios 20 10-09-2003 14:44:54
Chistes Informaticos jhonny Humor 2 11-08-2003 21:59:09


La franja horaria es GMT +2. Ahora son las 18:58:48.


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