Ver Mensaje Individual
  #133  
Antiguo 12-02-2025
Avatar de bmfranky
bmfranky bmfranky is offline
Miembro
 
Registrado: may 2024
Ubicación: Gandia, Valencia
Posts: 862
Reputación: 3
bmfranky Va por buen camino
Cita:
Empezado por seccion_31 Ver Mensaje
bueno en el caso de verifactu en ese xml de envio no ira solamente 1 factura, pueden ir docenas.

Pienso que lo ideal a parte de quizas guardarlo en disco en una carpeta, con un nombre serializado, seria incluirlo en una tabla con un codigo y desde la factura(s) enlazarlo, con dos campos binarios, uno para el envio y otro la respuesta.

Saludos !
Hola, pero puedes perfectamente guardar solo el XML de la factura, no hace faltya que sea del envio completo, es mas lo que se guarda en el no verifactu es exactamente eso , solo el nodo RegistroAlta, por ejemplo.
Código:
<sum1:RegistroAlta xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
    <sum1:IDVersion>1.0</sum1:IDVersion>
    <sum1:IDFactura>
        <sum1:IDEmisorFactura>89890001K</sum1:IDEmisorFactura>
        <sum1:NumSerieFactura>12345678-G66</sum1:NumSerieFactura>
        <sum1:FechaExpedicionFactura>03-02-2025</sum1:FechaExpedicionFactura>
    </sum1:IDFactura>
    <sum1:NombreRazonEmisor>certificado uno telematicas</sum1:NombreRazonEmisor>
    <sum1:Subsanacion>N</sum1:Subsanacion>
    <sum1:RechazoPrevio>N</sum1:RechazoPrevio>
    <sum1:TipoFactura>R3</sum1:TipoFactura>
    <sum1:TipoRectificativa>I</sum1:TipoRectificativa>
    <sum1:FacturasRectificadas>
        <sum1:IDFacturaRectificada>
            <sum1:IDEmisorFactura>89890001K</sum1:IDEmisorFactura>
            <sum1:NumSerieFactura>12345600-G66</sum1:NumSerieFactura>
            <sum1:FechaExpedicionFactura>01-04-2024</sum1:FechaExpedicionFactura>
        </sum1:IDFacturaRectificada>
    </sum1:FacturasRectificadas>
    <sum1:FechaOperacion>03-02-2025</sum1:FechaOperacion>
    <sum1:DescripcionOperacion>fecha entrega</sum1:DescripcionOperacion>
    <sum1:Destinatarios>
        <sum1:IDDestinatario>
            <sum1:NombreRazon>certificado dos telematicas</sum1:NombreRazon>
            <sum1:NIF>89890002E</sum1:NIF>
        </sum1:IDDestinatario>
    </sum1:Destinatarios>
    <sum1:Desglose>
        <sum1:DetalleDesglose>
            <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
            <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
            <sum1:TipoImpositivo>4</sum1:TipoImpositivo>
            <sum1:BaseImponibleOimporteNoSujeto>10</sum1:BaseImponibleOimporteNoSujeto>
            <sum1:CuotaRepercutida>0.4</sum1:CuotaRepercutida>
        </sum1:DetalleDesglose>
        <sum1:DetalleDesglose>
            <sum1:ClaveRegimen>01</sum1:ClaveRegimen>
            <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
            <sum1:TipoImpositivo>21</sum1:TipoImpositivo>
            <sum1:BaseImponibleOimporteNoSujeto>100</sum1:BaseImponibleOimporteNoSujeto>
            <sum1:CuotaRepercutida>21</sum1:CuotaRepercutida>
        </sum1:DetalleDesglose>
        <sum1:DetalleDesglose>
            <sum1:ClaveRegimen>05</sum1:ClaveRegimen>
            <sum1:CalificacionOperacion>S1</sum1:CalificacionOperacion>
            <sum1:TipoImpositivo>10</sum1:TipoImpositivo>
            <sum1:BaseImponibleOimporteNoSujeto>100</sum1:BaseImponibleOimporteNoSujeto>
            <sum1:CuotaRepercutida>10</sum1:CuotaRepercutida>
        </sum1:DetalleDesglose>
    </sum1:Desglose>
    <sum1:CuotaTotal>41.4</sum1:CuotaTotal>
    <sum1:ImporteTotal>241.4</sum1:ImporteTotal>
    <sum1:Encadenamiento>
        <sum1:RegistroAnterior>
            <sum1:IDEmisorFactura>89890001K</sum1:IDEmisorFactura>
            <sum1:NumSerieFactura>12345677-G33</sum1:NumSerieFactura>
            <sum1:FechaExpedicionFactura>15-04-2024</sum1:FechaExpedicionFactura>
            <sum1:Huella>C9AF4AF1EF5EBBA700350DE3EEF12C2D355C56AC56F13DB2A25E0031BD2B7ED5</sum1:Huella>
        </sum1:RegistroAnterior>
    </sum1:Encadenamiento>
    <sum1:SistemaInformatico>
        <sum1:NombreRazon>CERTIFICADO UNO TELEMATICAS</sum1:NombreRazon>
        <sum1:NIF>89890001K</sum1:NIF>
        <sum1:NombreSistemaInformatico>NombreSistemaInformatico</sum1:NombreSistemaInformatico>
        <sum1:IdSistemaInformatico>77</sum1:IdSistemaInformatico>
        <sum1:Version>1.0.03</sum1:Version>
        <sum1:NumeroInstalacion>383</sum1:NumeroInstalacion>
        <sum1:TipoUsoPosibleSoloVerifactu>S</sum1:TipoUsoPosibleSoloVerifactu>
        <sum1:TipoUsoPosibleMultiOT>N</sum1:TipoUsoPosibleMultiOT>
        <sum1:IndicadorMultiplesOT>N</sum1:IndicadorMultiplesOT>
    </sum1:SistemaInformatico>
    <sum1:FechaHoraHusoGenRegistro>2025-02-03T14:30:00+01:00</sum1:FechaHoraHusoGenRegistro>
    <sum1:TipoHuella>01</sum1:TipoHuella>
    <sum1:Huella>FF954378B64ED331A9B2366AD317D86E9DEC1716B12DD0ACCB172A6DC4C105AA</sum1:Huella>


Este es el ejemplo de la aeat.


Y de la respuesta lo mismo , puedes deserializar los nodosde la respuesta por separado y almacenar solo el resultado de ese nodo en particular.
Seleccionas el nodo correspondiente a tu factura.
Código:
<RespuestaLinea>
<IDFactura>
<IDEmisorFactura>89890001K</IDEmisorFactura>
<NumSerieFactura>12345677-G33</NumSerieFactura>
<FechaExpedicionFactura>15-04-2024</FechaExpedicionFactura>
</IDFactura>
<EstadoRegistro>AceptadoConErrores</EstadoRegistro>
<CodigoErrorRegistro>2004</CodigoErrorRegistro>
<DescripcionErrorRegistro>El valor del campo FechaHoraHusoGenRegistro debe ser la fecha actual del sistema de la AEAT, admitiéndose un margen de error de: 120 segundos.</DescripcionErrorRegistro>
</RespuestaLinea>
__________________
Uno se alegra de ser útil. (Isaac Asimov)