Yo uso C++ Builder pero para el caso es lo mismo, tengo también una versión muy antigua, anterior a Delphi 5, imagínate :-) lo que hago es generar el XML a pelo en un string, lo guardo en disco y luego lo envío con una llamada a system del curl.
Te adjunto varios XML, de una factura ordinaria, simplificada y rectificativa, así como del comando curl.
Hay mas variaciones, distintos tipos de IVA/IGIC, exentas, rectificativa de una simplificada, envíos masivos, etc. Pero jugando con estos ejemplos los puedes ir viendo, de todas formas, en esta web hay infinidad de ejemplos.
Un saludo.
Factura ordinaria:
Código:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<RegFactuSistemaFacturacion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
<Cabecera>
<ObligadoEmision xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<NombreRazon>XXXXXXX</NombreRazon>
<NIF>XXXXXXX</NIF>
</ObligadoEmision>
<RemisionVoluntaria xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<Incidencia>N</Incidencia>
</RemisionVoluntaria>
</Cabecera>
<RegistroFactura>
<RegistroAlta xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<IDVersion>1.0</IDVersion>
<IDFactura>
<IDEmisorFactura>XXXXXXX</IDEmisorFactura>
<NumSerieFactura>A00000045</NumSerieFactura>
<FechaExpedicionFactura>28-10-2024</FechaExpedicionFactura>
</IDFactura>
<NombreRazonEmisor>INFOCERDA SL</NombreRazonEmisor>
<Subsanacion>N</Subsanacion>
<RechazoPrevio>N</RechazoPrevio>
<TipoFactura>F1</TipoFactura>
<DescripcionOperacion>VENTA DE MERCADERIAS</DescripcionOperacion>
<FacturaSimplificadaArt7273>N</FacturaSimplificadaArt7273>
<FacturaSinIdentifDestinatarioArt61d>N</FacturaSinIdentifDestinatarioArt61d>
<Macrodato>N</Macrodato>
<Destinatarios>
<IDDestinatario>
<NombreRazon>XXXXXXXXXXXXXXXXXX</NombreRazon>
<NIF>XXXXXXXX</NIF>
</IDDestinatario>
</Destinatarios>
<Cupon>N</Cupon>
<Desglose>
<DetalleDesglose>
<Impuesto>01</Impuesto>
<ClaveRegimen>01</ClaveRegimen>
<CalificacionOperacion>S1</CalificacionOperacion>
<TipoImpositivo>21.00</TipoImpositivo>
<BaseImponibleOimporteNoSujeto>8.26</BaseImponibleOimporteNoSujeto>
<CuotaRepercutida>1.74</CuotaRepercutida>
</DetalleDesglose>
</Desglose>
<CuotaTotal>1.74</CuotaTotal>
<ImporteTotal>10.00</ImporteTotal>
<Encadenamiento>
<RegistroAnterior>
<IDEmisorFactura>XXXXXXXX</IDEmisorFactura>
<NumSerieFactura>B00000028</NumSerieFactura>
<FechaExpedicionFactura>28-10-2024</FechaExpedicionFactura>
<Huella>CBC7B59D1EA619EA5C1E16AA69243AF4402FC2ECE6E8A7208D7DEFDB76C5878B</Huella>
</RegistroAnterior>
</Encadenamiento>
<SistemaInformatico>
<NombreRazon>Infocerda SL</NombreRazon>
<NIF>B04430534</NIF>
<NombreSistemaInformatico>TPVComercio</NombreSistemaInformatico>
<IdSistemaInformatico>01</IdSistemaInformatico>
<Version>3.18</Version>
<NumeroInstalacion>B04430534-011</NumeroInstalacion>
<TipoUsoPosibleSoloVerifactu>S</TipoUsoPosibleSoloVerifactu>
<TipoUsoPosibleMultiOT>S</TipoUsoPosibleMultiOT>
<IndicadorMultiplesOT>N</IndicadorMultiplesOT>
</SistemaInformatico>
<FechaHoraHusoGenRegistro>2024-10-28T20:46:14+01:00</FechaHoraHusoGenRegistro>
<TipoHuella>01</TipoHuella>
<Huella>86D7BC03C87C951B926E0C9914EA970F2DC0449DE03EDFD11531FFDF84EE9347</Huella>
</RegistroAlta>
</RegistroFactura>
</RegFactuSistemaFacturacion>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Factura simplificada:
Código:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<RegFactuSistemaFacturacion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
<Cabecera>
<ObligadoEmision xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<NombreRazon>xxxxxxxx</NombreRazon>
<NIF>xxxxxxxxx</NIF>
</ObligadoEmision>
<RemisionVoluntaria xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<Incidencia>N</Incidencia>
</RemisionVoluntaria>
</Cabecera>
<RegistroFactura>
<RegistroAlta xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<IDVersion>1.0</IDVersion>
<IDFactura>
<IDEmisorFactura>xxxxxxxx</IDEmisorFactura>
<NumSerieFactura>B00000028</NumSerieFactura>
<FechaExpedicionFactura>28-10-2024</FechaExpedicionFactura>
</IDFactura>
<NombreRazonEmisor>xxxxxxx</NombreRazonEmisor>
<Subsanacion>N</Subsanacion>
<RechazoPrevio>N</RechazoPrevio>
<TipoFactura>F2</TipoFactura>
<DescripcionOperacion>VENTA DE MERCADERIAS</DescripcionOperacion>
<FacturaSimplificadaArt7273>N</FacturaSimplificadaArt7273>
<FacturaSinIdentifDestinatarioArt61d>N</FacturaSinIdentifDestinatarioArt61d>
<Macrodato>N</Macrodato>
<Cupon>N</Cupon>
<Desglose>
<DetalleDesglose>
<Impuesto>01</Impuesto>
<ClaveRegimen>01</ClaveRegimen>
<CalificacionOperacion>S1</CalificacionOperacion>
<TipoImpositivo>21.00</TipoImpositivo>
<BaseImponibleOimporteNoSujeto>8.26</BaseImponibleOimporteNoSujeto>
<CuotaRepercutida>1.74</CuotaRepercutida>
</DetalleDesglose>
</Desglose>
<CuotaTotal>1.74</CuotaTotal>
<ImporteTotal>10.00</ImporteTotal>
<Encadenamiento>
<RegistroAnterior>
<IDEmisorFactura>xxxxxxx</IDEmisorFactura>
<NumSerieFactura>B00000027</NumSerieFactura>
<FechaExpedicionFactura>28-10-2024</FechaExpedicionFactura>
<Huella>EC962FAE28B4D8473909CE7FADC04C487FD57B678EDE0CCBD0D320C5A97A55B7</Huella>
</RegistroAnterior>
</Encadenamiento>
<SistemaInformatico>
<NombreRazon>Infocerda SL</NombreRazon>
<NIF>B04430534</NIF>
<NombreSistemaInformatico>TPVComercio</NombreSistemaInformatico>
<IdSistemaInformatico>01</IdSistemaInformatico>
<Version>3.18</Version>
<NumeroInstalacion>B04430534-011</NumeroInstalacion>
<TipoUsoPosibleSoloVerifactu>S</TipoUsoPosibleSoloVerifactu>
<TipoUsoPosibleMultiOT>S</TipoUsoPosibleMultiOT>
<IndicadorMultiplesOT>N</IndicadorMultiplesOT>
</SistemaInformatico>
<FechaHoraHusoGenRegistro>2024-10-28T18:56:13+01:00</FechaHoraHusoGenRegistro>
<TipoHuella>01</TipoHuella>
<Huella>CBC7B59D1EA619EA5C1E16AA69243AF4402FC2ECE6E8A7208D7DEFDB76C5878B</Huella>
</RegistroAlta>
</RegistroFactura>
</RegFactuSistemaFacturacion>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Factura rectificativa:
Código:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<RegFactuSistemaFacturacion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
<Cabecera>
<ObligadoEmision xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<NombreRazon>EMPRESA</NombreRazon>
<NIF>XXXXXXXXX</NIF>
</ObligadoEmision>
<RemisionVoluntaria xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<Incidencia>N</Incidencia>
</RemisionVoluntaria>
</Cabecera>
<RegistroFactura>
<RegistroAlta xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<IDVersion>1.0</IDVersion>
<IDFactura>
<IDEmisorFactura>XXXXXXXXX</IDEmisorFactura>
<NumSerieFactura>2-1520</NumSerieFactura>
<FechaExpedicionFactura>17-05-2024</FechaExpedicionFactura>
</IDFactura>
<NombreRazonEmisor>EMPRESA</NombreRazonEmisor>
<TipoFactura>R4</TipoFactura>
<TipoRectificativa>I</TipoRectificativa>
<FacturasRectificadas>
<IDFacturaRectificada>
<IDEmisorFactura>XXXXXXXXX</IDEmisorFactura>
<NumSerieFactura>4-182</NumSerieFactura>
<FechaExpedicionFactura>10-05-2024</FechaExpedicionFactura>
</IDFacturaRectificada>
</FacturasRectificadas>
<DescripcionOperacion>Prueba</DescripcionOperacion>
<Destinatarios>
<IDDestinatario>
<NombreRazon>EMPRESA SOFTWARE</NombreRazon>
<NIF>XXXXXXXX</NIF>
</IDDestinatario>
</Destinatarios>
<Desglose>
<DetalleDesglose>
<Impuesto>03</Impuesto>
<ClaveRegimen>01</ClaveRegimen>
<CalificacionOperacion>S1</CalificacionOperacion>
<TipoImpositivo>7</TipoImpositivo>
<BaseImponibleOimporteNoSujeto>-100</BaseImponibleOimporteNoSujeto>
<CuotaRepercutida>-7</CuotaRepercutida>
</DetalleDesglose>
</Desglose>
<CuotaTotal>-7</CuotaTotal>
<ImporteTotal>-107</ImporteTotal>
<Encadenamiento>
<RegistroAnterior>
<IDEmisorFactura>XXXXXXXX</IDEmisorFactura>
<NumSerieFactura>2-1520</NumSerieFactura>
<FechaExpedicionFactura>17-05-2024</FechaExpedicionFactura>
<Huella>00BA687E2E0056A3F931B830F2C8776D6BDBBF905A494D9B0EE87F61A9A1A420</Huella>
</RegistroAnterior>
</Encadenamiento>
<SistemaInformatico>
<NombreRazon>DESARROLLADOR</NombreRazon>
<NIF>XXXXXXXX</NIF>
<NombreSistemaInformatico>HFocused.es</NombreSistemaInformatico>
<IdSistemaInformatico>01</IdSistemaInformatico>
<Version>0.1.2</Version>
<NumeroInstalacion>12</NumeroInstalacion>
<TipoUsoPosibleSoloVerifactu>S</TipoUsoPosibleSoloVerifactu>
<TipoUsoPosibleMultiOT>N</TipoUsoPosibleMultiOT>
<IndicadorMultiplesOT>N</IndicadorMultiplesOT>
</SistemaInformatico>
<FechaHoraHusoGenRegistro>2024-10-30T17:48:40Z</FechaHoraHusoGenRegistro>
<TipoHuella>01</TipoHuella>
<Huella>EDDA0CEA231B287982B059ACE4BC2C7C5B0BDD1C09F7DF8D2D9F4924253392E0</Huella>
</RegistroAlta>
</RegistroFactura>
</RegFactuSistemaFacturacion>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Comando curl:
Código:
curl.exe --connect-timeout 30 -m 30 -k -L -d "@d:\tmp\E1-2-1621.xml" -o d:\tmp\E1-2-1621R.xml --cert-type P12 --cert d:\tmp\Certificado.pfx:passcert https://prewww1.aeat.es/wlpl/TIKE-CONT/ws/SistemaFacturacion/VerifactuSOAP