Página 1 de 2
Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 4:18 pm
por javiercillo
Viene del tema
http://www.validacfd.com/phpbb3/viewtop ... 2&start=50
Al timbrar en Edicom un XML con complemento local ISH devuelve error que el xml no ha sido sellado timbrado correctamente. Al consultar al Pac sugirió :
que removiera el namespace del complemento porque que ya ha sido definido. Si se remueve el complemento el xml es timbrado sin error alguno.
Como puedo hacer eso en la clase CFD?, esto no le ha sucedido a alguien antes de los que timbran con ese complemento ISH?
Adjunto el XML rechazado.
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 4:53 pm
por Dado
OK, antes que nada una disculpa por hacerte mover el tema para aca, pero basicamente necesitaba saber que tipo de codigo usabas, si codigo fuente en Delphi o libreria dll.
Bueno, te comentaba que el namespace es obligatorio, ademas de necesario.
Pero estoy seguro que tratar de convencer a Edicom de esto no va a ser facil.
Y tampoco la solucion.
Lo unico que se me ocurre es borrar directamente el dato DESPUES DE PEGARLO.
Deja hago una prueba en mi codigo y mas adelante te paso la respuesta, por cierto NO INTENTES QUITARLO de la unidad ImpLocal.obj
pd. nop, no habian reportado este detalle anteriormente, lo bueno es que aqui andamos corrigiendo cualquier detalle que se presente. saludos.
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 6:28 pm
por javiercillo
Gracias. Si te sirve de referencia este es el código que utilizo para agregar el impuesto
Antes de este código se están asignando los demás impuestos.
ImpuestoLocal.ClearData;
with ImpuestoLocal.Datos do
begin
TotaldeTraslados := sTotaldeTraslados;
TotaldeRetenciones := '0.00';
with TrasladosLocales.Add do
begin
ImpLocTrasladado := sImpLocTrasladado;
TasadeTraslado := sTasadeTraslado;
Importe := sImporteImpstoLocal;
end;
end;
ImpuestoLocal.InsertaComplemento(CFD);
Como veras no es nada del otro mundo
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 8:15 pm
por Dado
Nop, no es nada del otro mundo.....casi.
Sabes cual es la dificultad? que el namespace es un dato "sagrado", incluso una vez que lo insertas DELPHI NO PERMITE ELIMINARLO
Incluso hay toda un conjunto de instrucciones dedicadas especialmente para el manejo del namespace, por desgracia NO HAY NADA PARA BORRARLO.
Pero siempre hay una solucion por supuesto, a la "brute force".
Código: Seleccionar todo
CFD.LoadFromString(AnsiReplaceStr(CFD.Datos.XML,
'implocal:ImpuestosLocales xmlns:implocal="http://www.sat.gob.mx/implocal"',
'implocal:ImpuestosLocales'));
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 8:39 pm
por javiercillo
Gracias.
¿Esta código que hace o donde lo ubico?
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 8:52 pm
por Dado
Pues hace lo que pide el PAC, remueve el namespace del complemento.
Usalo despues de agregarle el complemento del impuesto local
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 9:00 pm
por javiercillo
Ya lo implementé justo después de
ImpuestoLocal.InsertaComplemento(CFD);
CFD.LoadFromString(AnsiReplaceStr(CFD.Datos.XML,'implocal:ImpuestosLocales xmlns:implocal="
http://www.sat.gob.mx/implocal"','implo ... tosLocales'));
y ya remueve correctamente el namespace. Sin embargo, el PAC sigue regresando error de sellado incorrecto.
Me informaron también esto, para lo que pueda servir:
"Se ha modificado el control de duplicados de timbres, por exigencia del SAT. Ahora se realiza sobre el HASH de la cadena original en lugar de sobre el HASH del documento que haciamos anteriormente.
El proceso queda así:
* Dos índices primarios: RFC - HASHDOC, RFC - HASHCAD. Si falla cualquiera de los dos, NO se timbra.
* Se intenta recuperar el comprobante timbrado por HASHDOC o Si coincide con el de la BD se devuelve o Si no coincide, devuelve el error ''307:Ya se ha timbrado un documento <xx> con la misma cadena original <yyy>''.
"
Re: Error de timbrado Edicom con Complemento local
Publicado: Mié Ago 17, 2011 10:07 pm
por Dado
Pues "estoy en blanco", tu XML lo he validado en tres distintos validadores y marca correcto.
El PAC menciona que hay que quitarle el namespace (cosa que no deberia ser, pero bueno, por cumplir requisitos) y aun quitandolo dice que no esta bien el sello.
Lo que mencionas mas adelante se refiere a cuando YA HA SIDO TIMBRADO e intentas volver a timbrar EL MISMO DOCUMENTO cosa que en nuestro caso no aplica ya que no tenemos ni siquiera un timbre.
Lo unico que se me ocurre es que me pases por mail tu Usuario y Clave de Edicom para hacer pruebas, claro que las haria en el ambiente de prueba y no de produccion para no afectarte en nada.
Re: Error de timbrado Edicom con Complemento local
Publicado: Jue Ago 18, 2011 10:42 am
por javiercillo
Listo, ya te lo envié por correo.
Gracias por tu valioso apoyo.
Re: Error de timbrado Edicom con Complemento local
Publicado: Jue Ago 18, 2011 2:24 pm
por Dado
Listo, ya hice pruebas y aqui esta mi conclusion : EDICOM TIENE UN PROBLEMA CON SU SISTEMA (o de otra forma que nos diga como quiere el complemento....)
Al enviar varias pruebas descubri que NO PUEDO HACER QUE EDICOM RECONOZCA EL COMPLEMENTO IMPLOCAL.
Le envie un CFDI "normal" con complemento implocal y su sello EL CUAL HA SIDO VALIDADO EN 3 VALIDADORES DISTINTOS y Edicom es el unico que me marca que el sello es invalido.
Despues le envie EL MISMO CFDI PERO sin considerar el complemento implocal para la creacion del sello Y EDICOM LO TIMBRO SIN PROBLEMAS pero lo que mas me sorprende es que LE BORRA EL COMPLEMENTO, LO DESAPARECE !! (*)
(*) Adjunto los XML que envie y recibi para su analisis
Lo que me lleva a la conclusion que para Edicom *mi* complemento simplemente no esta bien, ya intente muchas combinaciones de namespace, schemalocation, xsi tanto en el complemento como en el encabezado Y NO LOGRO HACER QUE EDICOM LO RECONOZCA
Puedo seguir adivinando pero lo mejor es preguntarle a Edicom como quiere los namespace (si es que ese es el problema)
NOTA, el XML que fue timbrado mediante la API TAMPOCO LO ACEPTA cuando lo enviamos por webservice, quiero suponer que SON DOS SISTEMAS INDEPENDIENTES Y QUE CADA UNO TIENE SUS PROPIAS REGLAS.