![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Cita:
Puedes ampliar un poco la informacion que comentas crear etiquetas/prefijos de los espacios de nombres ??? Podria adjuntar el xml completo, pero me sabe mal por el resto de componente del club Puedo hacertelo llegar por otro lado Gracias |
|
#2
|
|||
|
|||
|
Cita:
Te dejo una prueba de Factura simplificada (Creo que está a la última versión, no he podido comprobar si ha habido modificaciones, estoy un pelin liado estas ultimas semanas) Código PHP:
Si te fijas, en el segundo nodo se definen los prefijos/etiquetas para hacer referencia a los xsd y despues en cada nodo se pone simplemente la etiqueta que corresponda según el nodo, ya que cada nodo puede ser de un esquema(xsd) distinto, aqu'i defino 2 etiquetas "sum" y "sum1" Claro, esto en lenguajes actuales, practicamente no hay ni que saberlo, ya que se define todo muy automático, pero entiendo que estás escribiendo a pelo los xmls. Última edición por ermendalenda fecha: 19-10-2024 a las 11:14:58. |
|
#3
|
|||
|
|||
|
Cita:
Agradecido por tu tiempo. Tomo nota de los prefijos/etiquetas que me indicas y voy a cambiarlo. Tal como entiendes estoy montando a PELO los xmls. He pasado una prueba con el xml que me aadjunta y aleluya HA FUNCIONADO e imagino que ha llegado a la AEAT por la respuesta que me indican de error. Te lo adjunto : <?xml version="1.0" encoding="UTF-8"?> <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"> <env:Body><env:Fault><faultcode>env:Server</faultcode> <faultstring>Codigo[20009]. UNSUCCESSFUL EXECUTION CAUSED BY AN UNAVAILABLE RESOURCE. REASON 00C90081, TYPE OF RESOURCE 00000210, AND RESOURCE NAME DBTCCSOR.TSTCCSOR.00000001. SQLCODE=-904, SQLSTATE=57011, DRIVER=4.33.43 </faultstring> </env:Fault> </env:Body> </env:Envelope> Donde puedo averiguar lo que significan estos errores y los pasos a seguir. Gracias Rodrigo |
|
#4
|
|||
|
|||
|
Cita:
Pero con autoafirma.exe si puedes investigar, aunque tun pelin complicado y no se si se ajustará a los tiempos que necesitas para las generaciones. La otra opción es que compras alguna función api/dll para estas cosas, hay un par de ellas que son adaptables a casi cualquier software de desarrollo antiguo Última edición por ermendalenda fecha: 19-10-2024 a las 11:58:48. |
|
#5
|
|||
|
|||
|
Cita:
sURL is string = NoSpace(VERIFACTU_ENDPOINT) sResult is string = "" HTTPCertificate(sCertificadoSeleccionado) IF HTTPRequest(sURL,"","",sRequest) = False THEN Error("ERROR:"+CR+CR+ErrorInfo()) ELSE sResult = HTTPGetResult(httpResult) fSaveText(XTMP+"RESPUESTA ENVIO XML.TXT",sResult) Info("OK HTTPREQUEST",sUbicacion,"",sResult) END Como ves, indico cual es el ENDPOINT : VERIFACTU_ENDPOINT is string = "https://prewww1.aeat.es/wlpl/TIKE-CONT/ws/SistemaFacturacion/VerifactuSOAP" sNombre_del_endpoint_es is string = "SistemaVerifactuPruebas" adjunto el certificado a la peticion y realizo una peticion HTTPREQUEST a la url de hacienda y recibo la respuesta. Esta forma de realizar la peticion la tengo implementada en el SII desde hace años y actualmente esta funcionando perfectamente. Me reitero, gracias por dedicarme tu tiempo, ya que he adelantado mucho, ahora falta interpretar la respuesta de la AEAT Voy a ver el tema de la firma y el hash de la firma Rodrigo |
|
#6
|
||||
|
||||
|
Enviar a pelo xml en c#
Cita:
Cita:
byte[] Program.certificado , esta variable contiene el certificado usado para firmar la conexion string Program.passcertificado, esta variable contiene la clave del certificado [CODE C#] /// <summary> /// Llama a al web service de la AEAT para el VeriFactu seleccionado. /// </summary> /// <param name="url">Url destino.</param> /// <param name="action">Acción a ejecutar.</param> /// <param name="xmlDocument">Documento soap xml.</param> /// <returns>Devuelve la respuesta.</returns> protected static string Call(string url, string action, XmlDocument xmlDocument) { HttpWebRequest webRequest = CreateWebRequest(url, action); X509Certificate2 certificate = new X509Certificate2(Program.certificado, Program.passcertificado); // Aqui se carga el certificado, yo lo almaceno en la base de datos, pero podriai s cargarlo desde un archivo var tiempo = certificate.SubjectName; if (certificate == null) throw new ArgumentNullException( "Certificate is null. Maybe serial number in configuration was wrong."); if (certificate.NotAfter < DateTime.Now) throw new ArgumentNullException( $"Certificate is out of date. NotAfter: {certificate.NotAfter}."); webRequest.ClientCertificates.Add(certificate); using (Stream stream = webRequest.GetRequestStream()) { xmlDocument.Save(stream); } HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse(); string statusDescription = response.StatusDescription; Stream dataStream = response.GetResponseStream(); string responseFromServer; using (StreamReader reader = new StreamReader(dataStream)) { responseFromServer = reader.ReadToEnd(); reader.Close(); dataStream.Close(); response.Close(); } return responseFromServer; } [/code] |
|
#7
|
|||
|
|||
|
Cita:
Te sería muy complicado poner ecomo quedaria formado el xml empaquetado, buff ojalá. |
|
#8
|
||||
|
||||
|
Como queda en el envio
Cita:
Código:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header />
<soapenv:Body>
<RegFactuSistemaFacturacion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
<Cabecera xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<ObligadoEmision>
<NombreRazon>Mi taller s.l.</NombreRazon>
<NIF>mi nif</NIF>
</ObligadoEmision>
<RemisionVoluntaria>
<FechaFinVeriFactu />
<Incidencia>N</Incidencia>
</RemisionVoluntaria>
</Cabecera>
<RegistroFactura xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
<RegistroAlta>
<IDVersion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">1.0</IDVersion>
<IDFactura xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<IDEmisorFactura>Mi nif</IDEmisorFactura>
<NumSerieFactura>VC1-24-100001</NumSerieFactura>
<FechaExpedicionFactura>19/10/2024</FechaExpedicionFactura>
</IDFactura>
<NombreRazonEmisor xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">Mi Taller</NombreRazonEmisor>
<TipoFactura xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">F2</TipoFactura>
<FechaOperacion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">19-10-2024</FechaOperacion>
<DescripcionOperacion xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">Venta de materiales servidos cliente contado.</DescripcionOperacion>
<Desglose xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<DetalleDesglose>
<ClaveRegimen>01</ClaveRegimen>
<CalificacionOperacion>S1</CalificacionOperacion>
<TipoImpositivo>21.00</TipoImpositivo>
<BaseImponibleOimporteNoSujeto>133.45</BaseImponibleOimporteNoSujeto>
<CuotaRepercutida>28.02</CuotaRepercutida>
</DetalleDesglose>
</Desglose>
<CuotaTotal xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">28.02</CuotaTotal>
<ImporteTotal xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">161.47</ImporteTotal>
<Encadenamiento xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<PrimerRegistro>S</PrimerRegistro>
</Encadenamiento>
<SistemaInformatico xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<NombreRazon>yo mismo</NombreRazon>
<NIF>mi nif</NIF>
<NombreSistemaInformatico>Facturas Taller 2024</NombreSistemaInformatico>
<IdSistemaInformatico>A1</IdSistemaInformatico>
<Version>5.1.4.222</Version>
<NumeroInstalacion>001</NumeroInstalacion>
<TipoUsoPosibleSoloVerifactu>S</TipoUsoPosibleSoloVerifactu>
<TipoUsoPosibleMultiOT>N</TipoUsoPosibleMultiOT>
<IndicadorMultiplesOT>N</IndicadorMultiplesOT>
</SistemaInformatico>
<FechaHoraHusoGenRegistro xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">2024-10-19T13:04:40+02:00</FechaHoraHusoGenRegistro>
<TipoHuella xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">01</TipoHuella>
<Huella xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">F4C7FAA3D9FF0CF50DD50139224840BFC91A514878EFC34E193A7D6F6301B844</Huella>
</RegistroAlta>
</RegistroFactura>
</RegFactuSistemaFacturacion>
</soapenv:Body>
</soapenv:Envelope>
Perdonad el indentado, pero esta serializado, lo he separado para que se veamejor. |
|
#9
|
||||
|
||||
|
Cita:
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Hijo de Informáticos | gluglu | Humor | 3 | 13-03-2007 12:05:35 |
| Adictos informaticos ... | Trigger | Humor | 2 | 11-10-2004 13:18:32 |
| Nosotros los Informáticos | Trigger | Humor | 1 | 10-10-2004 15:58:09 |
| Patrón de los Informáticos. | obiwuan | Varios | 20 | 10-09-2003 15:44:54 |
| Chistes Informaticos | jhonny | Humor | 2 | 11-08-2003 22:59:09 |
|