Foros del Web » Programación para mayores de 30 ;) » .NET »

Factura electroncia sat mexico

Estas en el tema de Factura electroncia sat mexico en el foro de .NET en Foros del Web. hola hugo, que libre utilizaste para poder utilizar MD5CryptoServiceProvider().ComputeHash(CadenaUTF8) ;???...

  #61 (permalink)  
Antiguo 26/07/2010, 19:07
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Factura electroncia sat mexico

hola hugo, que libre utilizaste para poder utilizar MD5CryptoServiceProvider().ComputeHash(CadenaUTF8) ;???
  #62 (permalink)  
Antiguo 26/07/2010, 19:39
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Factura electroncia sat mexico

gracias por compartir sus experiencias
  #63 (permalink)  
Antiguo 27/07/2010, 12:31
 
Fecha de Ingreso: junio-2010
Mensajes: 23
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Factura electroncia sat mexico

Imports System.Security.Cryptography
  #64 (permalink)  
Antiguo 27/07/2010, 17:27
 
Fecha de Ingreso: julio-2010
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Buenas,

Alguien podria facilitarme el XML correspondiente a la cadena original:
||A|1|2005-09-02T16:30:00|1|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20|200|1|pieza|Charola metálica|150|150|IVA|52.5||

Ya que en la pagina del sat se tiene una para otra cadena:

||2.0|ABCD|2|03-05-2010T14:11:36|49|2008|INGRESO|UNA SOLA EXHIBICIÓN|
2000.00|00.00|2320.00|PAMC660606ER9|CONTRIBUYENTE PRUEBASEIS PATERNOSEIS
MATERNOSEIS|PRUEBA SEIS|6|6|PUEBLA CENTRO|PUEBLA|PUEBLA|PUEBLA||MÉXICO|
72000|CAUR390312S87|ROSA MARÍA CÁLDERON URIEGAS|TOPOCHICO|52|
JARDINES DEL VALLE|NUEVO LEÓN|MEXICO|95465|1.00|SERVICIO|01|
ASESORIA FISCAL Y ADMINISTRATIVA|2000.00|IVA|16.00|320.00||

la cual segun yo tiene un error por contener un doble pipe.

Hasta donde se, requiero el xml para el validador por lo que agradeceria me lo hicieran llegar.


mi correo: iar99@hot...
Gracias.
  #65 (permalink)  
Antiguo 28/07/2010, 08:28
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Factura electroncia sat mexico

Hugo tienen la rutina para generar el archivo pem desde c#? gracias

Cita:
Iniciado por HugoLuna Ver Mensaje
Hola a todos, yo tambien estoy trabajando en un proyecto de generacion de facturas electronicas, en Sinaloa.

Ya pude generar la digestion MD5 gracias al codigo que publico Oscargf, lo converti a c# y me funciona perfectamente.

Por aqui los seguire molestando y publicando lo que vaya realiazndo esperando les sirva de algo

Hice una clase:

public class EncriptaMD5
{
public static string Codificar(string input)
{
byte[] CadenaUTF8;
byte[] tmpHash;
//convierte en UTF8
CadenaUTF8 = Encoding.UTF8.GetBytes(input);
//crea el hash
tmpHash = new MD5CryptoServiceProvider().ComputeHash(CadenaUTF8) ;
// lo pasa a una variable string mediante la funcion ByteArrayToString
int i;
StringBuilder sOutput = new StringBuilder(tmpHash.Length);
for (i = 0; i < tmpHash.Length; i++)
{
sOutput.Append(tmpHash[i].ToString("x2"));
}
return sOutput.ToString();
}
}

la cual se hace referencia asi:

string x;
string Digestion;

x = "||2.0|A|1|2009-08-16T16:30:00|1|2009|ingreso|Una sola exhibición|350.00|5.25|397.25|ISP900909Q88|Industr ias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20.00|200|1|pieza|Charola metálica|150.00|150|IVA|15.00|52.50||";

Digestion = EncriptaMD5.Codificar(x);
  #66 (permalink)  
Antiguo 28/07/2010, 08:53
 
Fecha de Ingreso: febrero-2009
Mensajes: 67
Antigüedad: 15 años, 1 mes
Puntos: 3
De acuerdo Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Ivan_A_R Ver Mensaje
Buenas,

Alguien podria facilitarme el XML correspondiente a la cadena original:
||A|1|2005-09-02T16:30:00|1|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20|200|1|pieza|Charola metálica|150|150|IVA|52.5||

Ya que en la pagina del sat se tiene una para otra cadena:

||2.0|ABCD|2|03-05-2010T14:11:36|49|2008|INGRESO|UNA SOLA EXHIBICIÓN|
2000.00|00.00|2320.00|PAMC660606ER9|CONTRIBUYENTE PRUEBASEIS PATERNOSEIS
MATERNOSEIS|PRUEBA SEIS|6|6|PUEBLA CENTRO|PUEBLA|PUEBLA|PUEBLA||MÉXICO|
72000|CAUR390312S87|ROSA MARÍA CÁLDERON URIEGAS|TOPOCHICO|52|
JARDINES DEL VALLE|NUEVO LEÓN|MEXICO|95465|1.00|SERVICIO|01|
ASESORIA FISCAL Y ADMINISTRATIVA|2000.00|IVA|16.00|320.00||

la cual segun yo tiene un error por contener un doble pipe.

Hasta donde se, requiero el xml para el validador por lo que agradeceria me lo hicieran llegar.


mi correo: iar99@hot...
Gracias.
revisa en este mismo tema en en la pagina 2
puse el codigo xml de la primer cadena original que indicas

la segunda cadena que corresponde al xml de muestra del sat no contiene errores
los doble pipi van al inicio y al final de cada cadena
  #67 (permalink)  
Antiguo 28/07/2010, 10:43
 
Fecha de Ingreso: febrero-2009
Mensajes: 67
Antigüedad: 15 años, 1 mes
Puntos: 3
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Oscargf Ver Mensaje
Imports System.Security.Cryptography
que tal oscar
ya tengo el proceso que genera el sello utilizando el openssl desde el vb.net

el detalle es que no se me hace tan funcional tener que instalar el openssl en cada maquina
y hacer la llamada por medio del shell
al parecer todos los estan haciendo por medio del exe del openssl

tu lo realizaste de alguna otra manera, o tienes idea de alguna dll que pueda ayudarme a generar el sello.
  #68 (permalink)  
Antiguo 28/07/2010, 15:05
 
Fecha de Ingreso: julio-2010
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Sello Digital

Cita:
Iniciado por thebman Ver Mensaje
Pues bien en el post anterior generamos nuestra digestion MD5 en un archivo md5.txt es imoprtante editar el archivo y borrar la parte de MD5(C:\cadena.txt)=
Para que nuestro archivo solo quede con la pura digestion la cual es:
8aa2b617944427353697e694a2e35a07

Bueno ahora tenemos que generar el sello digital apartir de la digestion pero antes de esto tenemos que convertir nuestros archivos .key y .cer a .pem para su correcto procesamiento.

Para hacer esto nos vamos a la aplicacion Openssl y dentro de los certificados que descargamos usaremos solo un archivo .key y la clave privada.

Archivo:
aaa010101aaa_CSD_01.key

Instruccion para generar nuestro archivo .pem:

openssl.exe pkcs8 -inform DER -in aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out aaa010101aaa_CSD_01.key.pem

Una ves ejecutada esta instruccion tendremos nuestro nuevo archivo:

aaa010101aaa_CSD_01.key.pem

El cual usaremos para generar nuestro sello tambien dentro del Openssl

openssl dgst -sign aaa010101aaa_CSD_01.key.pem md5.txt | openssl enc -base64 -A > sello.txt

Y obtendremos el siguiente sello en su respectivo archivo sello.txt:

iIMz487EGyt6zCFjvcFNvHeOKgKMMc5y1py+QJrIvCmWbbxV43 k2xi6Q23p/Wee31vqUzYH0fbO0yBOvkDtiMejjdCOHPzmLvMkzfAzr919j6t bJOiODlgb7bisEdUkrjRrw+FfwQsPldsfHW6gq3K/fFGT6tTB7gqHP6a44ix0=
Sigo los mismos pasos tal cual (copy paste) pero el sello me da:
cLBps3/cBUFelW/uxxNmKGvxThUva3AjvppfCxioTBlgqttkrV0yjPvRmA2592l7W QfwN1iXCQT4eyRtblXQre37a+EV4+vGuJD5Oah6ED1U/sVP2ak53nH31RhnQQeQN8NV2TtpjKQaNn64doKwVg9SGDn8Ppk pzlPBiqH5164=

alguna idea del porque? el MD5 me da: 8aa2b617944427353697e694a2e35a07
  #69 (permalink)  
Antiguo 28/07/2010, 17:51
 
Fecha de Ingreso: julio-2010
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Beak Ver Mensaje
revisa en este mismo tema en en la pagina 2
puse el codigo xml de la primer cadena original que indicas

la segunda cadena que corresponde al xml de muestra del sat no contiene errores
los doble pipi van al inicio y al final de cada cadena
Gracias Beak, ya lo grabe... y a lo que me referia de la cadena de muestra es que tiene un doble pipe entre Puebla y Mexico (lo marque en negrillas pero no se nota mucho), de todos modos he intentado con los 2 ejemplos y sigo sin poder generar un sello valido.

con la cadena original: ||2.0|ABCD|2|2010-05-03T14:11:36|49|2008|ingreso|UNA SOLA EXHIBICIÓN|2000.00|0.00|2320.00|PAMC660606ER9|CONT RIBUYENTE PRUEBASEIS PATERNOSEIS MATERNOSEIS|PRUEBA SEIS|6|6|PUEBLA CENTRO|PUEBLA|PUEBLA|PUEBLA|MÉXICO|72000|CAUR39031 2S87|ROSA MARÍA CALDERÓN UIRIEGAS|TOPOCHICO|52|JARDINES DEL VALLE|NUEVO LEON|México|95465|1.00|Servicio|01|Asesoria Fiscal y administrativa|2000.00|2000.00|IVA|16.00|320.00|32 0.00||

puedo generar el MD5:
aafed315ea78f540e078204c1a804911

y el sello:
02syS5s/SN3wrlrBwOBm7hJgxacOAu+M1DXQ720oBOyWgJktngJyHIqC5I g/S0viaNppGg+zWOoWA3Z9TasNSCP7YO9ic2CdGEj7P3i063dyqC 21UxkfsG7Vd9G3zXa9oBP6aDngGl1fyWF5fmzKP3dIzsRSq3mm wVvomOqpUko=

mismo que copio y pego en el xml, asi como el numero de certificado (ya que se esta usando el 10001200000000022517) y lo grabo. ingreso el xml ya con estos nuevos datos y asi como el archivo del certificado aaa010101aaa_CSD_01.cer en la pagina del sat (https://www.consulta.sat.gob.mx/SICOFI_WEB/ModuloECFD_Plus/ValidadorComprobantes/Validador.html) y me dice que el sello no es valido

a alguien le da el mismo sello con estos datos?


De igual modo con la cadena original:
||A|1|2005-09-02T16:30:00|1|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Monterrey|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|10|Caja|Vasos decorados|20|200|1|pieza|Charola metálica|150|150|IVA|52.5||

Llego al MD5:
8aa2b617944427353697e694a2e35a07

Pero al sello:

L79OF7mi7arHiP9zmKXfWrXM8bqqHz3Vn3zVjlcLD9tMCUFj8E J8gN1FbDs3I9g3QvizFTJPvhFWQgssEJDhtWShWz4R4WaDpGFm rEYw7o1qPrf48yPLqqlkDbYRTanT3WaBqkxB6z0Yh0g0I1GzGG wZgVnBWOF+euOevN9zIC0=

esto usando las siguientes instrucciones:
openssl pkcs8 -inform DER -in C:\OpenSSLGnuWin32\bin\aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out C:\OpenSSLGnuWin32\bin\aaa010101aaa_CSD_01.key.pem

openssl dgst -sign C:\OpenSSLGnuWin32\bin\aaa010101aaa_CSD_01.key.pem C:\OpenSSLGnuWin32\bin\MD5.txt | openssl enc -base64 -A > C:\OpenSSLGnuWin32\bin\SelloB64.txt

Última edición por Ivan_A_R; 29/07/2010 a las 12:16
  #70 (permalink)  
Antiguo 29/07/2010, 12:02
 
Fecha de Ingreso: julio-2010
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Tengo una duda canijo, en el ejemplo del SAT, el resultado de digestionar la cadena original formateada a UTF-8 por MD5 es: 03abe73de4ca428816de4af6f6f737a7

y a ti te resultó:

8aa2b617944427353697e694a2e35a07

mm desde ahí no estará errónea la cosa???
  #71 (permalink)  
Antiguo 29/07/2010, 12:25
 
Fecha de Ingreso: julio-2010
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Otra duda otra duda, alguien sabe cómo lleno los nodos Complemento que pide la cadena original?????
  #72 (permalink)  
Antiguo 29/07/2010, 21:51
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Hola Amigos, de antemano mil gracias por su ayuda

Un favor

El numero de certificado es: 10001200000000022517

cuando lo tomo del .cer.pem lo muestra en formato hexadecimal 3130303021323030303030303232353137 ,como lo puedo comvertir al numero real

Gracias
  #73 (permalink)  
Antiguo 30/07/2010, 10:22
 
Fecha de Ingreso: febrero-2009
Mensajes: 67
Antigüedad: 15 años, 1 mes
Puntos: 3
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por mcastilloz Ver Mensaje
hola me pare muy bien el codigo pero que referencia utilizaste? por que yo no he podido traer la libreria MD5CryptoServices
utiliza esta
Imports System.Security.Cryptography

para sacar el numero de certificado
  #74 (permalink)  
Antiguo 31/07/2010, 05:49
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Beak Ver Mensaje
estoy generando el xml desde visual
apenas estoy generando la estructura pero el validador me da este mensaje

Se presentaron los siguientes errores al validar la estructura del comprobante C:\factura2.xml
Error: cvc-complex-type.3.2.2: Attribute 'Fecha' is not allowed to appear in element 'Comprobante'.
Error: cvc-complex-type.3.2.2: Attribute 'Sello' is not allowed to appear in element 'Comprobante'.
Error: cvc-complex-type.3.2.2: Attribute 'Subtotal' is not allowed to appear in element 'Comprobante'.
Error: cvc-complex-type.4: Attribute 'fecha' must appear on element 'Comprobante'.
Error: cvc-complex-type.4: Attribute 'sello' must appear on element 'Comprobante'.
Error: cvc-complex-type.4: Attribute 'subTotal' must appear on element 'Comprobante'.
Error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'emisor'. One of '{"http://www.sat.gob.mx/cfd/2":Emisor}' is expected.
Error: cvc-complex-type.3.2.2: Attribute 'Descripcion' is not allowed to appear in element 'Concepto'.
Error: cvc-complex-type.3.2.2: Attribute 'Importe' is not allowed to appear in element 'Concepto'.
Error: cvc-complex-type.4: Attribute 'descripcion' must appear on element 'Concepto'.
Error: cvc-complex-type.4: Attribute 'importe' must appear on element 'Concepto'.
Error: cvc-complex-type.3.2.2: Attribute 'Impuesto' is not allowed to appear in element 'Traslado'.
Error: cvc-complex-type.3.2.2: Attribute 'Importe' is not allowed to appear in element 'Traslado'.
Error: cvc-complex-type.4: Attribute 'impuesto' must appear on element 'Traslado'.
Error: cvc-complex-type.4: Attribute 'importe' must appear on element 'Traslado'.

al parecer esos elementos no esta permitidos en el elemento comprabante, es lo que entiendo
pero en el anexo 20 dice que si pueden ir, de hecho el xml de prueba del sat los tiene

pongo a continuacion el contenido de mi xml y el contenido del xml de prueba del sat
si alguien ya lo genero desde visual puede decirme si me falta algo

Código:
<?xml version="1.0" encoding="utf-8"?>
<Comprobante version="2.0" serie="ADBC" folio="1" Fecha="2010-06-07T18:20:50" Sello="aquivaelsello" noCertificado="10001200000000022517" 
Subtotal="200.00" total="232.00" noAprobacion="49" anoAprobacion="2008" 
formaDePago="UNA SOLA EXHIBICIÓN" descuento="0.00" metodoDePago="EFECTIVO" tipoDeComprobante="ingreso" xsi:schemaLocation="http://www.sat.gob.mx/cfd/2 http://www.sat.gob.mx/sitio_internet/cfd/2/cfdv2.xsd" xmlns="http://www.sat.gob.mx/cfd/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<emisor nombre="Pepito grillo S.A. de C.V." RFC="PGR991223SDF">
<DomicilioFiscal calle="Insurgentes" noExterior="45" Colonia="San Federico" Municipio="Benito Juarez" estado="DF" pais="Mexico" codigoPostal="51200" />
</emisor>
<receptor nombre="nombreRec" RFC="RFCRec"><Domicilio calle="calle" noExterior="122" noInterior="3-X" Colonia="San Simon" Localidad="G.A.M" Referencia="Tultitlan" estado="Distrito Federal" pais="Mexico" codigoPostal="52100" />
</receptor>
<Conceptos>
<Concepto cantidad="1.00" unidad="servicio" noIdentificacion="01" Descripcion="Asesoria en factura electronica" valorUnitario="200.00" Importe="200.00" />
</Conceptos>
<Impuestos totalImpuestosTrasladados="32.00">
<Traslados>
<Traslado Impuesto="IVA" Importe="32.00" tasa="16.00" />
</Traslados>
</Impuestos>
</Comprobante>

Código:
<?xml version="1.0" encoding="UTF-8"?>
<Comprobante serie="ABCD" version="2.0" folio="2" fecha="2010-05-03T14:11:36" sello="uMdBnVYNkXyaLDCHNDCtcrrPZQMEnoXu9dQTVJcEAzaDlvatxHaSh9W7C36yVjALzylWq/f1Aq3BiFxxFtGCwVC7F5AMornrBUT6Cm8xXHiwKjwLH2py33j1QCGAgrHxjJ1hcrLzq+33nAn46C7hBgj93V9LJvyGW7BSKN2E9+E=" 
noCertificado="20001000000100000377" subTotal="2000.00" total="2320.00" 
noAprobacion="49" anoAprobacion="2008" formaDePago="UNA SOLA EXHIBICIÓN" 
descuento="0.00" metodoDePago="EFECTIVO" tipoDeComprobante="ingreso" xsi:schemaLocation="http://www.sat.gob.mx/cfd/2 http://www.sat.gob.mx/sitio_internet/cfd/2/cfdv2.xsd " xmlns="http://www.sat.gob.mx/cfd/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Emisor rfc="PAMC660606ER9" nombre="CONTRIBUYENTE PRUEBASEIS PATERNOSEIS MATERNOSEIS">
    <DomicilioFiscal calle="PRUEBA SEIS" noExterior="6" noInterior="6" colonia="PUEBLA CENTRO" localidad="PUEBLA" municipio="PUEBLA" estado="PUEBLA" pais="MÉXICO" codigoPostal="72000"/>
  </Emisor>
  <Receptor rfc="CAUR390312S87" nombre="ROSA MARÍA CALDERÓN UIRIEGAS">
    <Domicilio calle="TOPOCHICO" noExterior="52" colonia="JARDINES DEL VALLE" estado="NUEVO LEON" pais="México" codigoPostal="95465"/>
  </Receptor>
  <Conceptos>
    <Concepto cantidad="1.00" unidad="Servicio" noIdentificacion="01" descripcion="Asesoria Fiscal y administrativa" valorUnitario="2000.00" importe="2000.00"/>
  </Conceptos>
  <Impuestos totalImpuestosTrasladados="320.00">
    <Traslados>
      <Traslado impuesto="IVA" importe="320.00" tasa="16.00"/>
    </Traslados>
  </Impuestos>
</Comprobante>

Debes de Respetar mayusculas y minusculas, espacios comillas, formatos, etc
ejemplo

Tu tienes/ el formato indica

Impuesto / impuesto
Subtotal / subTotal
Fecha / fecha
emisor / Emisor

En fin tienes que respetar todas las reglas del xsd y del anexo 20

En tu XML:

xsi:schemaLocation="http://www.sat.gob.mx/cfd/2 http://www.sat.gob.mx/sitio_internet/cfd/2/cfdv2.xsd" xmlns="http://www.sat.gob.mx/cfd/2"

En el Ejemplo:

xsi:schemaLocation="http://www.sat.gob.mx/cfd/2 http://www.sat.gob.mx/sitio_internet/cfd/2/cfdv2.xsd{aqui va un espacio}" xmlns="http://www.sat.gob.mx/cfd/2"

Saludos
  #75 (permalink)  
Antiguo 01/08/2010, 13:58
 
Fecha de Ingreso: julio-2010
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Mictlantecuhtli Ver Mensaje
Tengo una duda canijo, en el ejemplo del SAT, el resultado de digestionar la cadena original formateada a UTF-8 por MD5 es: 03abe73de4ca428816de4af6f6f737a7

y a ti te resultó:

8aa2b617944427353697e694a2e35a07

mm desde ahí no estará errónea la cosa???
El ejemplo del SAT esta mal, ademas de tener doble pipe a media cadena no pude nunca llegar al md5 que muestran, pero ya en la pagina del validador si me coincide el md5 de la cadena original, pero el sello me lo marca como no valido
  #76 (permalink)  
Antiguo 02/08/2010, 08:54
 
Fecha de Ingreso: febrero-2009
Mensajes: 67
Antigüedad: 15 años, 1 mes
Puntos: 3
Respuesta: Factura electroncia sat mexico

muchas gracias tanori, ya lo revise punto por punto con el anexo 20 y funciono,
el ejemplo del sat si me funciona, tuve problemas al principio con el ejemplo del sat pero copiando la cadena original y formateandola a utf8 sin bom con el notepad++ se solucionaron.
  #77 (permalink)  
Antiguo 02/08/2010, 16:15
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

utiliza esta
Imports System.Security.Cryptography

para sacar el numero de certificado

Disculpa no entiendo el codigo este es de openssl, vb, c.

yo estoy utilizando visual fox, una ayudadita mas por favor
  #78 (permalink)  
Antiguo 03/08/2010, 16:41
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

thebman,oscargf,bchely Muchas gracias por todas sus aportaciones a un servidor
le han servido de mucho, se les agradece.

Yo tuve problemas para que la pagina del SAT me validara mi archivo xml

Comentarios :

para lograr obtener un xml que si me validó el SAT

tuve que hacer lo sig.

A.- el sello que se obtiene despues de ejecutar los comandos

1.- openssl -md5 -sign archivo.key.pem -out sello.txt cadena_original.txt
2.- openssl enc -base64 -in sello.txt -out sello_D.txt

lei el archivo sello_D.txt y le tube que eliminar los enter y retornos de carro

antes de agregar el sello al archivo XML

con :

sello = Microsoft.VisualBasic.Replace(sello_D, Chr(10), "")
sello = Microsoft.VisualBasic.Replace(sello_D, Chr(13), "")

B.- para grabar el archivo con la cadena usaba :

WriteAllText(archivo, cadena_original)

e incluso especifique la codificacion :

WriteAllText(archivo, cadena_original, System.Text.Encoding.UTF8)

pero nomas no , asi que grabe mi cadena de la sig. manera :


Dim objeto As IO.StreamWriter

objeto = IO.File.CreateText(archivo)

objeto.Write(cadena_original)

objeto.Close()


con estas 2 consideraciones logre que mi archivo xml fuera validado correctamente!!!

Abusando de su amabilidad ¿saben como se tiene que usar la hoa de estilos ?,

en la pagina del SAT :

http://www.sat.gob.mx/nuevo.html

pude validar mi archivo XML

pero el SAT tiene esta otra pagina :

https://www.consulta.sat.gob.mx/SICOFI_WEB/ModuloECFD_Plus/ValidadorComprobantes/ValidadorComprobantes.html

y aqui no puedo validar mi archivo XML ya que aparece el sig. error :

Debe cargar la última version(1.0) del esquema definido por el SAT

y en la parte de abajo de la ventana donde nos da el status de la validación
donde vienen los requerimientos :

dice deberá contar con la version del estandar electronico XSD de validacion de forma y sintanxis.
  #79 (permalink)  
Antiguo 05/08/2010, 14:01
 
Fecha de Ingreso: agosto-2010
Mensajes: 2
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Hola a todos, primero que nada quiero agradecer a todos los programadores que estan participando en el tema porque gracias a ustedes he logrado avanzar mucho en esto de la factura electronica.

Bien ahora aportare yo algo que descubri, alguno de ustedes ya sabra como llenar la propiedad certificado del elemento Comprobante, pero para elque no sepa aqui pongo el comando para calcular ese dato

openssl enc -base64 -in aaa010101aaa_CSD_06.cer -out Certificado.txt

esto les generara una cadena muy larguchona a la que le deben quitar los saltos de linea y pegarla dentro del xml despues de la propiedad noCerticificado segun el anexo 20. quedando mas o menos asi

certificado="MIIDg...bla bla bla...Our7LbjcxU="

este dato sirve para que el validador del sat no pida el certificado para validar el CFD, solo le ponen el xml y el validador podra procesar el CFD. Esto le facilitara la existencia al receptor del CFD.
  #80 (permalink)  
Antiguo 05/08/2010, 15:09
 
Fecha de Ingreso: julio-2010
Mensajes: 10
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Alfredo_ : Para evitar que tu archivo sea generado con saltos de linea agrega a tu codigo el parametro -A de este modo

openssl enc -base64 -in sello.txt -out sello_D.txt
openssl enc -base64 -A -in sello.txt -out sello_D.txt

El parametro -A te genera la salida en una sola linea, asi te evitas la modificacion posterior
  #81 (permalink)  
Antiguo 05/08/2010, 17:48
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Ivan_A_R Ver Mensaje
Alfredo_ : Para evitar que tu archivo sea generado con saltos de linea agrega a tu codigo el parametro -A de este modo

openssl enc -base64 -in sello.txt -out sello_D.txt
openssl enc -base64 -A -in sello.txt -out sello_D.txt

El parametro -A te genera la salida en una sola linea, asi te evitas la modificacion posterior
Muchas gracias Ivan_A_R, lo voy a hacer.

DUDA.- Alguien ya genero el archivo HTML O PDF para tener mas prsentable el archivo XML ?.

tengo duda sobre como indicarle en el archivo .XSL que agregue la cadena original.
tengo entendido que seria con xsl:apply-imports o xls:include pero no tengo mucha idea. alguien sabe como ?
  #82 (permalink)  
Antiguo 05/08/2010, 22:41
 
Fecha de Ingreso: junio-2004
Ubicación: Los Cabos, B.C.S.
Mensajes: 2
Antigüedad: 19 años, 9 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Hola,a todo estoy trabajando con facturación electronica, ya puse el modulo que puso Hugo Luna, pero de ahi no encuentro la forma de encriptar con RSACryptoServiceProvider con la llave para generar el sello, alguien que me pueda ayudar?... Gracias
  #83 (permalink)  
Antiguo 09/08/2010, 15:12
 
Fecha de Ingreso: agosto-2010
Mensajes: 1
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Oyes amigo como solucionaste ese problema
  #84 (permalink)  
Antiguo 09/08/2010, 15:39
 
Fecha de Ingreso: agosto-2010
Mensajes: 2
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Digestion MD5

Hola la verdad es que entre tanta informacion ya estoy muy confundida, para empesar no se como llamar el openssl desde vb.net a caso se instala o algo asi?
ojala pudieras eharme una mano porqe necesito hacer un sistema de estos y la verdad estoy muy perdida y aparte soy nueva programando, te lo agradecere mucho, un saludo!!
  #85 (permalink)  
Antiguo 09/08/2010, 15:50
 
Fecha de Ingreso: agosto-2010
Mensajes: 1
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Oscargf Ver Mensaje
Gracias spycyn69
probé lo de la pausa y funciona.

Estoy investigando por otro camino: crear el sello en vb sin openssl
El problema que tengo es que hay que convertir la llave a xml
¿alguien sabe como?
Yo obtuve el xml con opensslkey
  #86 (permalink)  
Antiguo 09/08/2010, 23:36
 
Fecha de Ingreso: octubre-2009
Mensajes: 46
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Factura electroncia sat mexico

alguien me puede ayudar a encontrar el error en mis sentencias. La verdad es que esto mas facil no puede estar, es copiar y pegar pero simplemente no me da un sello valido.

utilizo esta cadena

Dim strCadena As String = "||2.0|A|12|2010-06-16T12:03:07|1|2009|ingreso|Una sola exhibición|17000|0|19720|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Nuevo Léon|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|2|pieza|PC- GENERICA|5000|10000|1|KGS|PC- AVANZADA|7000|7000|IVA|16.00|2720|2720||"

me devuelve la digestion correcta: 66e41da54d31b94c5cc08da087b127b3

genero mi certificado:

Shell("c:\OpenSSL\bin\openssl.exe pkcs8 -inform DER -in C:\aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out C:\aaa010101aaa_CSD_01.key.pem")

y luego utilizo esta comando para generar el sello

Shell("C:\OpenSSL\bin\openssl dgst -sign C:\aaa010101aaa_CSD_01.key.pem C:\md5.txt | openssl enc -base64 -A > C:\sello.txt

quisiera que me aclararan lso temrinos
el primer parametro es mi certificado, el segundo el fichero con el resultado de la digestion y luego al final el fichero que se generara con el sello.

y el resultado que obtengo es:

s3M7mxj1QE98rfaVZ7f4p/n22WeCSpZVZ1iAJ82DjOSf868toPPn7/5D4t5ArRl8fJBWbmIDxylrIubBvtp7UHV/5pzAtC1ASvM3Ex1+H3s58IGhjA9/S8Po34rECPq1aKBZnWyuvuAqJiv7v4XQb5xJp66r476TuvZf2p 4XXVw=

y asi sucesivamente con cada cadena que pruebo.

les agradeceria que me dijeran que estoy haciendo mal.
  #87 (permalink)  
Antiguo 10/08/2010, 16:10
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Hola colegas, miren yo tambien me encuentro realizando una aplicación web ASP para CFd, estoy tratando de utilizar solamente puras librerias de .Net en vez de OpenSSl y asi, mis dudillas son:

1.- sigo sin entender para que se tiene que sacar un archivo.pem? exactamente que contiene o cual es la diferencia del archivo original?

2.- la cadena HASH... se debe encryptar con el algoritmo RSA, utilizando la Private Key... al leer el arhcivo .cer si obtengo dicha propiedad, pero resulta que realmente se debe utilizar la Private Key de archivo.key? ya me hice bolas con ese punto jeje

Agradezco su ayuda!
animo a todos, que ya faltan solo unos cuantos meses pa ke arranque esto
saludos!
  #88 (permalink)  
Antiguo 10/08/2010, 21:00
 
Fecha de Ingreso: mayo-2010
Mensajes: 34
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Que tal grupo.... ya habia logrado validar un xml en la pagina del SAT pero esto lo hice de forma manual.... ahora genero el xml desde C# y sorpresa.... me aparece como no valido..... Revise linea por linea ambos archivos y no encuentro diferencias...

GRacias.

Última edición por javalos532; 10/08/2010 a las 21:07
  #89 (permalink)  
Antiguo 11/08/2010, 09:51
 
Fecha de Ingreso: agosto-2010
Mensajes: 10
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por elcorreodeyamil Ver Mensaje
Hola que tal.
Los felicito a todos por su gran esfuerzo para mantener este tema.
Actualmente quiero implementar la generacion de facturas electronicas con mi papa. Estoy usando C#.

Siguiendo los pasos mencionados, con la cadena original

||2.0|A|12|2010-06-16T12:03:07|1|2009|ingreso|Una sola exhibición|17000|0|19720|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Nuevo Léon|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|2|pieza|PC- GENERICA|5000|10000|1|KGS|PC- AVANZADA|7000|7000|IVA|16.00|2720|2720||
Obtengo la siguiente digestion, usando la instruccion

C:\OpenSSL-Win32\bin\openssl.exe dgst -MD5 C:\SAT\cadena.txt > C:\SAT\md5.txt

66e41da54d31b94c5cc08da087b127b3

2.- Genere el archivo aaa010101aaa_CSD_01.key.pem usando el comando
C:\OpenSSL-Win32\bin\openssl.exe pkcs8 -inform DER -in aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out aaa010101aaa_CSD_01.key.pem

3.-Generé el sello a partir de este aaa010101aaa_CSD_01.key.pem recien creado, con esta instruccion.
C:\OpenSSL-Win32\bin\openssl.exe dgst -sign aaa010101aaa_CSD_01.key.pem md5.txt | C:\OpenSSL-Win32\bin\openssl.exe enc -base64 -A > sello.txt

pero el sello generado es
c6fuSHh67Y+anPQI65vNkFUvlKrj0DxgUD21MGsr+HAsNxRhK9 l2y41xyTH/4YUk61tgCxgrwknqzi8gd2M9ZKdjJiABEAOOPbp6N7M3+ZOUHI n5S1YL5qKP38QtaMQN5K6asOcMxuLJAyrto/yl/nHfrd0jWrssT+2fUcr+x6Y=

Es decir, nada de lo que les ha salido a ustedes.
Me pueden auxiliar a determinar en que la estoy regando :D? Mil gracias, y que gané Mexico a Argentina :D
Estimado Elcorreodeyamil:

Ando ahora, como tú estuviste hace algunas semanas, tratando de obtener el sello digital correcto.

Me llamó la atención lo que tú experimentaste, ya que describiste las instrucciones que utilizaste, que si bien al principio no te resultó, lo lograste con la aportación hecha de bchely.

He tomado tu caso como guía, incluso imitando los mismos nombres de carpetas, misma cadena original, mismo método de digestión (es cual me sale correcto) mismas instrucciones de openssl empleando la corrección de bchely… en fin mismo todo sin embargo no obtengo el mismo sello

Para mayor claridad pongo las instrucciones que estoy empleando considerando la misma cadena original:

||2.0|A|12|2010-06-16T12:03:07|1|2009|ingreso|Una sola exhibición|17000|0|19720|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Nuevo Léon|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|2|pieza|PC- GENERICA|5000|10000|1|KGS|PC- AVANZADA|7000|7000|IVA|16.00|2720|2720||

1- Digestión con …
C:\OpenSSL-Win32\bin\openssl.exe dgst -MD5 C:\SAT\cadena.txt > C:\SAT\md5.txt
Obteniendo 66e41da54d31b94c5cc08da087b127b3. Hasta aquí bien.

2- Generar archivo aaa010101aaa_CSD_01.key.pem usando…
C:\OpenSSL-Win32\bin\openssl.exe pkcs8 -inform DER -in aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out aaa010101aaa_CSD_01.key.pem

3- Sellar usando …
C:\OpenSSL-Win32\bin\openssl.exe dgst -sign aaa010101aaa_CSD_01.key.pem md5.txt cadena.txt | C:\OpenSSL-Win32\bin\openssl.exe enc -base64 -A > sello.txt

Pero el sello obtenido es
T4Si7egKNKn8v4h1g6TgMH8vfQAIyHWwKUKbkkDZ/l67dAFu4LKCXESFrq2FVZBD7jQrBh0lmlaW37Xd4dP9dMKlHvd hfZDXd6zHbqEmmx9QlD48gY0odf/Ccw+mK+MwUJP9uZ4Uk6u1vd0PPwhFnOqXXq5ffR23/GQ0hV16u4u7vwXyCAWwqpluAvt21HUnbm2QIxCqo/JulTzgq/FdjD3xSRKJlLFAvoF6Rg3q31S60r98hQ+hZqOmB50zOnKkQB0d 9Ktf/g3TOROCO6FKMRvykkLkXkfVPlo+xY6Xm2mthDXL8RbBFhdn



Dónde estará el glitch???

Agradeceré enormemente tus observaciones, o si de plano me pones un copy-paste de las instrucciones de openssl que utilizaste.

Gracias mil
  #90 (permalink)  
Antiguo 11/08/2010, 12:57
 
Fecha de Ingreso: octubre-2009
Mensajes: 46
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Factura electroncia sat mexico

Cita:
Iniciado por Signals Ver Mensaje
Estimado Elcorreodeyamil:

Ando ahora, como tú estuviste hace algunas semanas, tratando de obtener el sello digital correcto.

Me llamó la atención lo que tú experimentaste, ya que describiste las instrucciones que utilizaste, que si bien al principio no te resultó, lo lograste con la aportación hecha de bchely.

He tomado tu caso como guía, incluso imitando los mismos nombres de carpetas, misma cadena original, mismo método de digestión (es cual me sale correcto) mismas instrucciones de openssl empleando la corrección de bchely… en fin mismo todo sin embargo no obtengo el mismo sello

Para mayor claridad pongo las instrucciones que estoy empleando considerando la misma cadena original:

||2.0|A|12|2010-06-16T12:03:07|1|2009|ingreso|Una sola exhibición|17000|0|19720|ISP900909Q88|Industrias del Sur Poniente, S.A. de C.V.|Alvaro Obregón|37|3|Col. Roma Norte|México|Cuauhtémoc|Distrito Federal|México|06700|Pino Suarez|23|Centro|Nuevo Léon|Monterrey|Nuevo Léon|México|95460|CAUR390312S87|Rosa María Calderón Uriegas|Topochico|52|Jardines del Valle|Monterrey|Monterrey|Nuevo León|México|95465|2|pieza|PC- GENERICA|5000|10000|1|KGS|PC- AVANZADA|7000|7000|IVA|16.00|2720|2720||

1- Digestión con …
C:\OpenSSL-Win32\bin\openssl.exe dgst -MD5 C:\SAT\cadena.txt > C:\SAT\md5.txt
Obteniendo 66e41da54d31b94c5cc08da087b127b3. Hasta aquí bien.

2- Generar archivo aaa010101aaa_CSD_01.key.pem usando…
C:\OpenSSL-Win32\bin\openssl.exe pkcs8 -inform DER -in aaa010101aaa_CSD_01.key -passin pass:a0123456789 -out aaa010101aaa_CSD_01.key.pem

3- Sellar usando …
C:\OpenSSL-Win32\bin\openssl.exe dgst -sign aaa010101aaa_CSD_01.key.pem md5.txt cadena.txt | C:\OpenSSL-Win32\bin\openssl.exe enc -base64 -A > sello.txt

Pero el sello obtenido es
T4Si7egKNKn8v4h1g6TgMH8vfQAIyHWwKUKbkkDZ/l67dAFu4LKCXESFrq2FVZBD7jQrBh0lmlaW37Xd4dP9dMKlHvd hfZDXd6zHbqEmmx9QlD48gY0odf/Ccw+mK+MwUJP9uZ4Uk6u1vd0PPwhFnOqXXq5ffR23/GQ0hV16u4u7vwXyCAWwqpluAvt21HUnbm2QIxCqo/JulTzgq/FdjD3xSRKJlLFAvoF6Rg3q31S60r98hQ+hZqOmB50zOnKkQB0d 9Ktf/g3TOROCO6FKMRvykkLkXkfVPlo+xY6Xm2mthDXL8RbBFhdn



Dónde estará el glitch???

Agradeceré enormemente tus observaciones, o si de plano me pones un copy-paste de las instrucciones de openssl que utilizaste.

Gracias mil
Hola

Eso mismo ando buscando yo desde hace par de dias. La verdad es que ya he probado y probado, hasta cambie de pc para ver si tenia algo que ver con el openssl. La verdad es que no entiendo como a unos les da bien y a otros no. La explicacion, algo estamso haciendo mal, pero que rayos sera??

Puedes poner el resultado de tu archivo aaa010101aaa_CSD_01.key.pem, pues es de las unicas cosas que me falta probar.

-----BEGIN RSA PRIVATE KEY-----
MIICXgIBAAKBgQDD0ltQNthUNUfzq0t1GpIyapjzOn1W5fGM5G/pQyMluCzP9YlV
AgBjGgzwYp9Z0J9gadg3y2ZrYDwvv8b72goyRnhnv3bkjVRKlu s6LDc00K7Jl23U
YzNGlXn5+i0HxxuWonc2GYKFGsN4rFWKVy3Fnpv8Z2D7dNqsVy T5HapEqwIDAQAB
AoGAeYXvEx2mLMQQDgDsyBSgS9dpafCPXkE/IR+W79yxUDQ24yvOeUnPsbC1/OxH
VfapIa0t+JoqylIjp8JNG3jZv/kXhCIg/aI6rZcfRZdvAgAOMMdRmpY/UOiOMWre
xjWWJ9EQPz+zIZwh5MCos8yCPnJukMtGKKdlUiFYWopI+gECQQ DuaQF/eGegQ1uX
Z3FzR563b67FUvmIlEcX2D2O4kjBpOVUZndHNntWhZsIEcK730 MBy9AEBVyECewK
PJZyzZcBAkEA0kT1B0FnxoLLWQqC7oxDmonvC9J+tGokkmpQWz PHAbW6hMHUlOLo
LYzfu/XaHgDpuSz7qgG0pYjQuYIr05VnqwJBAMNKmMOGKbyJ8JkRT0mT PVwdzBgv
Y+CRNbs+kw5cJiUZohGE7egTpOy2/MubYNzsgcMS5Q6mJaazSfsIrmTULAECQQC/
wpOT4lo5995rfeKamuCsd07CgV18O7DOtpZCFp5POOS5Xev5PF Zx9B+20yfwZPTC
I/v/tz6AGJ4CEGzXsVGxAkEAtonciHAJQfAd+R6JpyyAtYxH0U38Mn 83q6nK7d7a
AhSMRTX70s61F2owSDkg/aWR3jmI5CbhUcYPdsbMpH830A==
-----END RSA PRIVATE KEY-----

Etiquetas: factura, mexico, sat
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 39 personas




La zona horaria es GMT -6. Ahora son las 15:38.