Visual Basic.NET - Consumir Web Service Descarga Masiva

   
Vista:
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 12:45:49
Asi como se creó un grupo para llevar a cabo la descarga masiva de comprobantes desde el SAT por medio del web scrapping, ahora tenemos la necesidad de consumir un Web Service para llevar a cabo la misma tarea. Espero que otra vez expongamos nuestros puntos de vista y avances de lo que encontremos para llevar a buen término esta tarea.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 09/08/2018 17:06:37
Excelente, de momento dejo la documentación que ya se tiene (proporcionada por el SAT)
URLs

Autenticacion
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc

Solicitud
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/SolicitaDescargaService.svc

Verificación
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/VerificaSolicitudDescargaService.svc

Descarga
https://cfdidescargamasiva.clouda.sat.gob.mx/DescargaMasivaService.svc

Algunos compañeros han comentado que al parecer, han obtenido respuesta usando BasicHttpBinding, pero yo no he podido obtener respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 09/08/2018 18:22:23
Además, se supone que esto de la regresión al sistema anterior sin Captcha es momentáneo cierto?
en lo que nosotros terminamos de estudiar e implementar el webservice.

Y no dejar desprotegidos a los contribuyentes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Alejandro (10 intervenciones) el 09/08/2018 18:48:30
Es correcto, de hecho como comentario la descarga se limita a 2000 documentos por día para que lo tengan en consideración.

Por otro lado, el WS aún no está habilitado, al momento de realizar una llamada este regresa un error de que el request no pudo ser procesado debido a un error interno, por lo que con esto creo se puede confirmar que el servicio aún no está disponible.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 8
Ha aumentado su posición en 9 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Guillermo (27 intervenciones) el 09/08/2018 21:34:14
Buenas tardes, tampoco he podido obtener respuesta, probando la aplicación de microsip se me permite la descarga
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Lazz (3 intervenciones) el 09/08/2018 18:18:59
Perfecto, gracias por este nuevo enlace, en cuando tenga algo nuevo lo comparto por aquí.
Saludos colegas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 09/08/2018 19:01:22
Encontré esta Literatura de Microsoft, en mi caso voy a estudiarla:
https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/transport-security-with-certificate-authentication

Hasta donde sabemos no es un Webservice normal, hasta donde se ve un Webservice normal puede arrojar su definición y métodos WSDL
sin seguridad.

En este caso es un Webservice cifrado, es decir es necesario Autenticarse con un certificado X509, usando BasicHttpBinding.
Este tipo de Webservice son "WCF" o "Windows Communication Foundation", que es de lo que habla la liga que les comparto.


El caso es echar a andar ese Webservice con las herramientas que el SAT usa, o sea Visual con C# o NET.
Una vez teniendo un ejemplo funcional, ahora si podemos estudiarlo a fondo para ver como echarlo a andar en otros lenguajes

como Xojo, Python o JAVA, o Javascript por si alguno tiene un sistema desarrollado como aplicación web.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 20
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por EP (3 intervenciones) el 09/08/2018 19:07:06
Logré obtener una respuesta de "Certificado inválido" en el WS haciendo lo siguiente:

Generar web service en Visual Studio con WSDL en https://pruebacfdirecepcion.cloudapp.net/Seguridad/Autenticacion.svc/wsdl?singleWsdl.
(es el endpoint de prueba para los PACs, por ahí del 2011)

Luego:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public static void BypassCertificateError()
{
    ServicePointManager.ServerCertificateValidationCallback +=
 
        delegate (
            Object sender1,
            X509Certificate certificate,
            X509Chain chain,
            SslPolicyErrors sslPolicyErrors)
        {
            return true;
        };
}
 
static void Main(string[] args)
{
    var x = new ServiceReference1.AutenticacionClient();
    var certificate = new X509Certificate2("C:\\Users\\...\\prueba.pfx");
    Console.WriteLine(certificate.Thumbprint);
    x.ClientCredentials.ClientCertificate.Certificate = certificate;
    BypassCertificateError();
    x.Autentica();
}

El pfx se genera con

1
openssl pkcs12 -export -out prueba.pfx -inkey private.pem -in public.pem

Luego, interceptar el request con Fiddler y mandar un request muy parecido al endpoint de descarga masiva.

No he podido pasar de ahí.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 11/08/2018 06:08:42
EP
Hola


Probé tu código y me da este error.
022



Te paso este WeTransfer con mi código:
https://we.tl/LgfZVyziTK


¿Qué estaré haciendo mal?
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 18:30:02
Como referencia, y para entender un poco, está lo de Chilkat:

https://www.example-code.com/vbnet/soap_ws_security_usernametoken.asp
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 09/08/2018 19:07:42
Si ese Chilkat es muy bueno, yo también tomo mucha referencia de allí.
Solo que hasta donde alcanzo a entender, allí es para autenticarse con Usuario y contraseña no?

y en este caso, necesitamos aunetntificarnos con el CER y el KEY

En otros apartados de CHILKAT hablan de que se puede extraer el contenido del CER, usando la contraseña del certificado y también
hablan de extraer el Modulo RSA del Certificado y el KEY:

https://www.example-code.com/xojo/rsa_key_modulus.asp
y hay otro donde ponen como formar en base al CER y al KEY un PFX, pero desgraciadamente ese link está roto:
https://www.example-code.com/xojo/convert_cert_and_key_to_pem_and_pfx.asp


La cuestión es como inyectarle el certificado al Webservice

Según leo en el enlace de Microsoft, por eso es que Pide que añadas el Certificado al almacén local de Windows, por que lo vas a invocar mediante código.

1
2
3
4
5
6
// The client must specify a certificate trusted by the server.  
cc.ClientCredentials.ClientCertificate.SetCertificate(
    StoreLocation.CurrentUser,
    StoreName.My,
    X509FindType.FindBySubjectName,
    "contoso.com");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 19:50:52
"Según leo en el enlace de Microsoft, por eso es que Pide que añadas el Certificado al almacén local de Windows, por que lo vas a invocar mediante código."

Exacto, es lo que tambien expone el SAT con el primer código en C# que viene en la documentación que ofrece.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Cesar Aguilera (19 intervenciones) el 09/08/2018 19:41:52
Les comento que hoy por la mañana contacte al SAT y su respuesta fue la siguiente:

LUCERO : La respuesta es le comento que este aplicativo de Web Service, aun se esta trabajando en la instalación de este programa, por lo que aun no esta disponible, le invito a estar al pendiente, de los comunicados que se publiquen en cuanto este aplicativo entre en funcionamiento.

Así que por el momento no sabremos si estamos haciendo las cosas mal, adicional yo ya logro obtener esta respuesta:

La URL que ocupo es: https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc (No es WSDL) y el Request que envío es muy parecido al que tienen en el ejemplo que publicaron.

1
2
3
4
5
6
7
8
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body>
        <s:Fault>
            <faultcode xmlns:a="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">a:InvalidSecurity</faultcode>
            <faultstring xml:lang="en-US">An error occurred when verifying security for the message.</faultstring>
        </s:Fault>
    </s:Body>
</s:Envelope>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 21:31:33
Puedes postear tu request?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 07:55:24
Exacto, como es que haces tu Request, en Visual al querer agregar el SVC de autenticación como Referencia, da error
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 08:04:12
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 19:42:22
De acuerdo al SAT ya esta disponible el WS :(

https://www.youtube.com/watch?v=hy7VsYc0fwM
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Eduardo
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Eduardo (26 intervenciones) el 09/08/2018 21:12:33
Es correcto, durante la platica comentaron que ya estaban disponibles...ahora el problema es conectarnos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 09/08/2018 21:59:55
No, aun no están habilitados,ya que si lo estuvieran se podría crear la instancia en vez de estarlo haciendo como actualmente intentamos (httprequest), no queda mas que esperar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 23:18:25
Entonces por favor despejame de esta duda: Si hago una peticion a la url que dá el SAT, pero le modifico un caracter me devuelve esto:

https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacionx.svc
GET HTTP/2.0 404 Not Found <================================================
Host: cfdidescargamasivasolicitud.clouda.sat.gob.mx
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: es-AR,es;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate, br
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1

Y si hago la petición a la original de vuelve esto:

https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc
GET HTTP/2.0 400 Bad Request <================================================
Host: cfdidescargamasivasolicitud.clouda.sat.gob.mx
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: es-AR,es;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate, br
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1

Recalco lo que puso Gerardo:

Hasta donde sabemos no es un Webservice normal, hasta donde se ve un Webservice normal puede arrojar su definición y métodos WSDL sin seguridad.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Alejandro (10 intervenciones) el 09/08/2018 23:36:35
El error 400 lo obtienes porque como el mensaje lo dice (Bad Request) el request no fue exitoso ya que lo mas seguro es que no existe un método GET que no acepte parámetros pero pues tampoco acepta los famosos /wsdl o /wsdl?singleWsdl que son los tradicionales de WCF así que está mas complicado saber si realmente el servicio efectivamente está bien o el error 400 se debe a que tiene errores el portal, porque si hay respuesta por parte del servidor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Alejandro (34 intervenciones) el 09/08/2018 23:36:57
Hay diversos factores por los cuales podría aparecer el bad request, también como comento para poder consumir apropiadamente el web service es necesario poder crear la instancia de dicho objeto (en este caso cliente), ya que sin este cliente no es posible que se pueda obtener el token (iniciar sesion en el web service)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 09/08/2018 23:46:06
Exacto, ahora: ¿si no estuviera listo el WS por qué en la videoconferencia dijeron que ya estaba operando? Total que quedo en las mismas.

Lo de mandar la e.Firma pues no está complicado, es solo cuestión de registrarlo y, de acuerdo al código C# que dió el SAT, se recupera y se anexa. Si se dan cuenta, solo pide el certificado, no está pidiendo el pass del mismo, bueno eso es lo yo digo, ¿o el pass se agregará al ensobretado?. La cosa es que entre más le pienso más bolas me hago.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 20
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por EP (3 intervenciones) el 09/08/2018 23:50:52
Sí necesita ambas (en mi ejemplo puse como se carga de .pfx que combina .cer/.key) -- con la llave privada (el .key) se genera el sello digital (nodo Signature) y en el mismo request se manda el base64 de la pública (muy parecido a timbrado). Les mando un request ejemplo que pasó la barrera de BAD REQUEST y la de InvalidSecurity:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
    xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <s:Header>
        <o:Security mustUnderstand="true">
            <u:Timestamp u:Id="id-c5b5adcb-520e-4927-9865-723e4ce1ba9e">
                <u:Created>2018-08-09T00:30:10.811997Z</u:Created>
                <u:Expires>2018-08-09T00:35:10.811997Z</u:Expires>
            </u:Timestamp>
            <o:BinarySecurityToken u:Id="id-5f0f719e-3c41-4875-9bf4-fc7a03731b9e"
                    EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"
                    ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3">$BASE64_DEL_PEM</o:BinarySecurityToken>
            <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
                <SignedInfo>
                    <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                    <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
                    <Reference URI="#id-c5b5adcb-520e-4927-9865-723e4ce1ba9e">
                        <Transforms>
                            <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                        </Transforms>
                        <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                        <DigestValue>$HASH_SHA1</DigestValue>
                    </Reference>
                </SignedInfo>
                <SignatureValue>$SELLO_DIGITAL</SignatureValue>
                <KeyInfo>
                    <o:SecurityTokenReference>
                        <o:Reference ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" URI="#id-5f0f719e-3c41-4875-9bf4-fc7a03731b9e"/>
                    </o:SecurityTokenReference>
                </KeyInfo>
            </Signature>
        </o:Security>
    </s:Header>
    <s:Body>
        <Autentica xmlns="http://tempuri.org/"/>
    </s:Body>
</s:Envelope>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
sin imagen de perfil
Val: 7
Ha disminuido su posición en 5 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jose silvanomm@gmail.com (2 intervenciones) el 10/08/2018 01:18:40
Gracias por la aportacion, yo habia intentado un CustomBinding pero no queda igual que como propone el estandard de seguridad y como lo ocupa el SAT. El tuyo quedo mejor, solo que como otros ocupe un webservice diferente pero anteriormente usado por el SAT por mientras. No es el que esta por publicar el SAT de Autentica y el mensaje se compone un poco diferente. A mi tampoco me da identico casi al final del mensaje o mas bien de la cabecera el nodo de <To> y <Action> pero pienso que es por el contrato del nuevo webservice de Autentica quien si lo contendra y tendra los nuevos namespaces.O deberia ya tenerse el To y Action? saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 05:01:37
Pero que tiene de malo lo que publicó EP?

Hasta donde alcanzo a entender al pasarle un certificado y KEY valido a este WCF Webservice, debe de arrojarte ese XML y el BinarySecurityToken no?

que es el que pone:

1
<o:BinarySecurityToken u:Id="id-5f0f719e-3c41-4875-9bf4-fc7a03731b9e"

Y se supone que este token es el que se debe de pasar como argumento al Web service de Solicitud de descarga, junto con los datos que queramos obtener no?
como RFC que debe ser el mismo del del Certificado Digital, asi como el rango de facturas a obtener.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 7
Ha disminuido su posición en 5 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jose silvanomm@gmail.com (2 intervenciones) el 10/08/2018 18:21:45
Hola, no es que tenga algo de malo, sino como no estamos usando aun el nuevo webservice no se estan haciendo algunas cosas mas que se necesitan en la parte del header.

por ejemplo mirando a como dice el sat que debe ir el header pongo la imagen de su documentacion:
sat-request

en cambio tal y como la hace EP (siendo que estamos usando otro webservice del sat de autenticacion reciente, difernte , pero no el mismo de la descarga masiva que por obvias razones no esta disponible aun ), no se generan esos elementos en el header.
current-request


mirando el XML con el mismo Fiddler , si se parece al XML que pone el SAT en la documentacion, reitero es a nivel del header que hay que incluir cosas para que la respuesta tambien traga esos nodos, en programacion; similar a como se envia un ActionMethod se pueden enviar headers, aun no lo intento por falta de tiempo pero si tengo resultados los comparto, gracias

current-xml
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Alejandro (34 intervenciones) el 09/08/2018 23:52:44
Respuesta sencilla y corta a tu pregunta sobre lo que comenta el SAT: esta mintiendo, así mismo como muchas personas/empresas se quejaron de su nuevo portal porque tenían también demasiadas fallas (además del captcha). Solo hay que esperar a que el SAT realmente habilite los WS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Alejandro (10 intervenciones) el 09/08/2018 23:59:05
Si pide la contraseña, si utilizas la forma en la que pone el SAT de registrar el certificado en el store local le vas a tener que asignar la llave privada ya que solo de esa forma se podrá componer el x509Certificate2 de lo contrario solo le vas a pasar el certificado y te va a lanzar error de que el x509 no tiene llave privada.

En este caso recomiendo generar el pfx ya que ahí se combinan el cer y el key y con eso es mas fácil generar el objeto que requiere el llamado del WS además de que lo puedes utilizar sin necesidad de instalarlo en el store local y como comentan Aleks y el otro tocayo se tiene que poder acceder a los WSDL para poder generar los clientes sino, pues ni forma de poder utilizar los servicios.

Creo que este tema ya se traduce en esperar a que el SAT nos muestre primero los WSDL, porque ahorita el servidor retorna una diversidad de errores que no son claros y la mayoría son propios de WCF.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 05:18:48
Como crear el Paquete PFX del SAT en base al . CER y al .KEY del SAT:

https://blogs.sap.com/2013/01/05/como-crear-el-paquete-de-certificado-pfx/

OpenSSL de 64 Bits Light: http://slproweb.com/download/Win64OpenSSL_Light-1_1_0h.exe


OpenSSL de 32 Bits Light: http://slproweb.com/download/Win32OpenSSL_Light-1_1_0h.exe


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 06:04:54
Colegas, les comparto este video, es acerca de Como crear y Consumir un Servicio WCF (Windows Comunication Foundation) por medio de C# y Visual Studio .NET:

https://www.youtube.com/watch?v=yKwyhUruFc8

Para Consumir Web Service, Minuto 10:20
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Eduardo
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Eduardo (26 intervenciones) el 10/08/2018 06:13:07
Gerardo

Revisando el video, en el minuto 14:37 se muestra como en el cliente se importa la referencia al WS, le das la URL y Visual Studio detecta lo que expone el WS, con esta información te puede crear las clases automáticamente para que lo consumas.

El tema con el WS del SAT es que le das la URL y se genera un error, es como si en esta no hubiera un WS, por lo que existen dos posibilidades:

1. El SAT, configuro el WS para que oculte la definición de este, tal vez, temas de seguridad; de este punto no estamos seguros, eso solo una suposición.

2. En esa URL no exista un WS; en este caso, el SAT para quedar bien dice que ya está y da la URL, pero realmente no es un WS; nuevamente es una suposición.

Seguimos investigando...

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 06:44:10
Este manual para consumir WCF y leer Certificados luce mejor:

https://www.codeproject.com/Articles/18601/An-easy-way-to-use-certificates-for-WCF-security
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 07:07:05
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 07:36:25
Eso estaba viendo, lo mas probable es que cuando quieres referenciar el Servicio. SVC igual no te deja o te da error, porque quizás sea que a fuerza necesite las credenciales, o sea meterlas de otro modo.

Por otra parte si es posible cargar o popular un Objeto X509Certificate desde la ruta desde donde se encuentre, no es necesario cárgalo desde el almacen de Certificados de Windows, o sea si se puede pero es mejor asi.(Pienso yo)

Trato de ponerme en los zapatos de nuestros clientes, imagina que tengas que cargar al almacen de windows cada certificado, en el caso de un despacho contable, que una computadora esté atascada de certificados de N Clientes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 10/08/2018 12:37:45
Pues tienes 3 opciones: mantienes los certificados y contraseñas en el equipo para acceder a cada momento, cargarlos en el almacen o crear su pfx, como tú dices, pienso yo.

En cuanto a lo de si ya está o no disponible el WS saldremos de duda cuando algún PAC ofrezca el servicio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 16:09:51
Que horror, entonces si cabe esa posibilidad de que solo sea un servicio para los PAC, pues que engaño de parte del SAT, porque en su pagina hasta dice: "¿Quienes pueden usarlo?, Todas las personas Físicas y morales".

Al menos deberían, agregar: "Procedimiento accesible solo a P.A.C."
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 10/08/2018 16:34:43
JAJAJAJAJA... no, amigo, es solo un pensamiento negativo por la discución de que si está o no disponible el portal. En el video dicen que ya, pero la asesora "LUCERO" dice que no, así como puede ser una mentira la puesta en marcha del WS también sabemos del escaso conocimiento de los asesores en algunos temas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 19:15:45
Yo no diria que escaso, yo diría que NULO.

No se como a ustedes si les contestó esta chica Lucero, a mi siempre me mandan a la porra.
Los de Soporte tecnico me mandan a Atención Fiscal
y de Atención Fiscal a Soporte Técnico
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 10/08/2018 20:12:53
Hola chicos el único ws para probar está asi:


Dim autenticacion As New DESCARGA_MASIVA_WS.net.cloudapp.pruebacfdirecepcion.Autenticacion
autenticacion.ClientCertificates(X509Certificate2Collection)


¿Como generar el parametro X509Certificate2Collection con el archivo .cer y key?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 10/08/2018 22:31:40
Violeta

Se tienen que convertir los archivos .cer y .key a .pem y después estos se combinan para generar el .pfx

Yo lo hago de esta forma

Conviertes el archivo .key a .prm
C:\OpenSSL-Win32\bin\openssl x509 -inform DER -outform PEM -in C:\Proyectos\CerKey\CSI121206SP0.cer -pubkey -out C:\Proyectos\CerKey\CSI121206SP0Cer.pem
Aquí te pide la contraseña de la llave privada para que la captures.

Conviertes el archivo .cer a .prm
C:\OpenSSL-Win32\bin\openssl x509 -inform DER -outform PEM -in C:\Proyectos\CerKey\CSI121206SP0.cer -pubkey -out C:\Proyectos\CerKey\CSI121206SP0Cer.pem

Generamos el archivo .pfx
C:\OpenSSL-Win32\bin\openssl pkcs12 -export -inkey C:\Proyectos\CerKey\CSI121206SP0Key.pem -in C:\Proyectos\CerKey\CSI121206SP0Cer.pem -out C:\Proyectos\CerKey\CSI121206SP0.pfx
Aqui te va a pedir que captures la contraseña del pfx yo pongo la misma que la de la llave pribada .



var certificate = new X509Certificate2(@"C:\Proyectos\CerKey\CSI121206SP0.pfx","a12345678");


Espero te sirva .
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/08/2018 23:11:35
Violeta:

Y como Instancias el Servicio Web:
https://pruebacfdirecepcion.cloudapp.net/Seguridad/Autenticacion.svc/wsdl?singleWsdl


Tu pones:

Dim autenticacion As New DESCARGA_MASIVA_WS.net.cloudapp.pruebacfdirecepcion.Autenticacion
autenticacion.ClientCertificates(X509Certificate2Collection)


Saludos

Gerardo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 11/08/2018 01:25:21
El el IDE, VS Agregar Referencia->Servicio Web
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 11/08/2018 01:55:28
¿Halcón Divino, por qué repetiste la 1a y 2a instrucción?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 11/08/2018 02:36:59
Violeta, gracias por tu respuesta. Algo asi?:

016

017



O se debe de Añadir asi?
018
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 11/08/2018 02:57:51
Violeta.

Ya vi, tenias razón es Referencia WEB:
019
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 11/08/2018 03:44:57
Halcón Divino

Mira, asi es como yo creo mi certificado X509Certificate2:

1) Previamente uso las herramientas de OpenSSL para convertir el. CER a .PEM

2) Convertir el .KEY a .PEM

3) En base al CER.PEM y al KEY.PEM crear el .PFX nuevamente con las herramientas de OpenSSL

4) Creo una variable String, donde le digo la Ruta de mi certificado. PFX:
1
Dim Certificate As String = "C:\Users\Ger\Desktop\FIEL\cerfinal.pfx"

5) Creo una variable del tipo X509Certificate2 y asi le digo, donde está la ruta de mi certificado y su Respectiva Contraseña:
1
Dim cert As New X509Certificate2(Certificate, "miContraseñaDeCertificado")

6) Creo una variable del tipo x509CertificateCollection, asi:
1
Dim Certificados As New X509Certificate2Collection

7) 'Creo una variable de Colección de Certificados X509Certificate2Collection
1
2
Dim Certificados As New X509Certificate2Collection
        Certificados.Add(cert)

8) Hacer la siguiente referencia Web:
https://pruebacfdirecepcion.cloudapp.net/Seguridad/Autenticacion.svc/wsdl?singleWsdl

9)Una vez hecha la referencia Web, ahora Declarar la Variable Autenticaion asi:
1
Dim autenticacion As New WSAutentica.net.cloudapp.pruebacfdirecepcion.Autenticacio


Entonces, basado en lo que publicó Violeta, usar Autenticacion.ClientCertificates(Certificados)
del cual Certificados debería ser una variable del tipo x509Certificate2Collection


Pero cuando hago esto, Me arroja el siguiente error:
Demasiados argumentos para 'Public Overloads ReadOnly Property ClientCertificates As X509CertificateCollection'


¿Qué estaré haciendo mal?.

Por otra parte veo que de este modo si le puedo meter mi Certificado al WS:
1
autenticacion.ClientCertificates.Add(cert)




Saludos y Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 11/08/2018 04:10:28
Miren, asi queda la parte final de mi código.

Ya una vez cargado mi certificado x509 y mi colección de certificados x509.
Después uso el método Autentica y asi se ve mi código:
020


Y al Ejecutar mi código, este es el error que me da:
021
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 20
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por EP (3 intervenciones) el 11/08/2018 04:41:02
Checa el código que subí en mi primer mensaje -- viene un ejemplo completo, incluyendo el bypass de problemas de certificación. ¡Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 11/08/2018 15:21:45
Tienes razón en la 2da instrucción debería de ser el del certificado y por error repetí la de la key
La 2da. instrucción debería de haber puesto como Convertir el certificado en PEM
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 11/08/2018 15:32:12
EP

Vi tu rutina BypassCertificateError()
Veo que no se le pasa ningún parámetro.

Para que sirve esta rutina o cual es el objetico de esta ???
Porque no se le pasa ningún parámetro ???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 11/08/2018 17:51:36
Aquí esta bien clarito, Halcón Divino: https://msdn.microsoft.com/en-us/library/system.net.security.remotecertificatevalidationcallback%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

Además EP le respondió a Gerardo con:

"incluyendo el bypass de problemas de certificación"

Si no quieres tener la funcion como tal podrias pasar esta instrucción:

1
2
3
4
System.Net.ServicePointManager.ServerCertificateValidationCallback = Function(se As Object,
    cert As System.Security.Cryptography.X509Certificates.X509Certificate,
    chain As System.Security.Cryptography.X509Certificates.X509Chain,
    sslerror As System.Net.Security.SslPolicyErrors) True
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 11/08/2018 18:07:53
Gerardo, antes de la línea donde tienes marcado el error, pon esto:

1
System.Net.ServicePointManager.ServerCertificateValidationCallback = Function(se As Object, cert As System.Security.Cryptography.X509Certificates.X509Certificate, chain As System.Security.Cryptography.X509Certificates.X509Chain, sslerror As System.Net.Security.SslPolicyErrors) True
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 12/08/2018 00:20:37
Hola;

Que bien ya vamos avanzado!!

Como sería para crear el .pfx desde net?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 12/08/2018 01:53:32
Violeta

La verdad no se como se pudiera hacer desde .net es mas no se si se pudiera hacer

Pero yo lo aria de la siguiente manera

Con un programa yo cercaria o generatrix un archivo texto con las siguientes instrucciones de OpenSSL
Obiamente debes de tener instalado el OpenSSL en la PC donde corra.

1
2
3
4
5
6
7
8
9
Del C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0Cer.pem
Del C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0key.pem
Del C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0.pfx
 
C:\OpenSSL-Win32\bin\openssl x509  -inform DER -outform PEM -in C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0.cer -pubkey -out C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0Cer.pem
 
C:\OpenSSL-Win32\bin\openssl pkcs8 -in C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0.key  -inform DER -out C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0key.pem -passin pass:a12345678
 
C:\OpenSSL-Win32\bin\openssl pkcs12 -export -inkey C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0Key.pem -in C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0Cer.pem -out C:\Proyectos\CerKeyHerculesPFX\CSI121206SP0.pfx   -passout pass:a12345678

Ya que lo generes le pones un nombre al archivo … el que quieras por ejemplo generapfx pero con extension .bat no le pongas .txt


ya que este creado el archivo .bat lo corres con la siguiente instruction


1
System.Diagnostics.Process.Start("C:\ProyectosWeb\generapfx.bat");

No se cual sea el equivalented en VB.net ….. yo lo estoy poniendo en C#

Si te das cuenta la CONTRASEÑA de la llave privada y del pfx va inmersa en la instruction del openssl … asi que por el password no te preocupes va incluido en el comando del openssl


Espero te sirva.


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 12/08/2018 02:33:58
Aver si no estoy: Para consumir este WS (el "viejito") se necesitan las llaves de prueba que dió el SAT para ese fin, preguntas?

1) ¿Todavía las estará otorgando?, digo, porque si existe alguna de esa época ya no creo que sirva.

2) Si no se tienen esas llaves pues no se lograría avanzar más allá, entonces ¿cuál es el fin de estar probando con ese WS? Ya me perdí.

Por otro lado, con Chilkat podía generar el PFX pero NUNCA me concordó con el generado por Openssl. Los PPM sí son iguales los creados por por los2, pero al momento de generar el PFX los comparaba con el DOS-CMD: FC /B generadoporopenssl.pfx generadoporchilkat.pfx y nunca tuve éxito.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois Garcia (14 intervenciones) el 13/08/2018 01:23:40
Hola,

Yo uso una biblioteca llamada BouncyCastle. Se puede obtener como un Nuget Package. Te anexo el ejemplo para obtener el PFX a base del CER y KEY

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/// <summary>
/// Convierte un CER y un KEY en un PFX
/// </summary>
/// <param name="cerText">Certificado CER en base64</param>
/// <param name="keyText">llave privada KEY en base64</param>
/// <param name="keyPass">password de la llaveprivada</param>
/// <returns>el certificado pfx</returns>
public static byte[] CerKey2Pfx(string cerText, string keyText, string keyPass)
{
    try
    {
        byte[] pfxBytes = null;
 
        var certificado = new System.Security.Cryptography.X509Certificates.X509Certificate2(Convert.FromBase64String(cerText));
        var pllavePrivada = Org.BouncyCastle.Security.PrivateKeyFactory.DecryptKey(keyPass.ToCharArray(), Convert.FromBase64String(keyText));
 
        var certificadoBC = new Org.BouncyCastle.X509.X509Certificate(Org.BouncyCastle.Security.DotNetUtilities.FromX509Certificate(certificado).CertificateStructure);
        var acertificadoBC = new Org.BouncyCastle.Pkcs.X509CertificateEntry[1];
        acertificadoBC[0] = new Org.BouncyCastle.Pkcs.X509CertificateEntry(certificadoBC);
 
        var pfxStore = new Org.BouncyCastle.Pkcs.Pkcs12Store();
        pfxStore.SetKeyEntry("", new Org.BouncyCastle.Pkcs.AsymmetricKeyEntry(pllavePrivada), acertificadoBC);
        using (var pfxStream = new MemoryStream())
        {
            pfxStore.Save(pfxStream, keyPass.ToCharArray(), new Org.BouncyCastle.Security.SecureRandom());
            pfxBytes = pfxStream.ToArray();
        }
 
 
 
        var resultado = Org.BouncyCastle.Pkcs.Pkcs12Utilities.ConvertToDefiniteLength(pfxBytes, keyPass.ToCharArray());
 
        return resultado;
    }
    catch (Exception ex)
    {
        RegistraError(ex);
        return null;
    }
 
}

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 14/08/2018 00:03:14
Courtois Garcia

NuGET es como el Gestor de Paquetes apt-get de Debian pero para .NET verdad?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois García (14 intervenciones) el 14/08/2018 00:05:00
Así es.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 14/08/2018 00:38:46
Si gustas aquí tienes la DLL de BouncyCastle para que la integres a tu proyecto sin el rollo del NuGet:

https://drive.google.com/open?id=1Fkh1YPtVqY_PP0JWe6sijbUClS54Y02f
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por ile (2 intervenciones) el 14/08/2018 16:36:00
Buen día

Y ya les regresa algo el web service? a mi me regresa el certificado no es valido :S
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Alejandro (10 intervenciones) el 14/08/2018 16:41:07
Que tal ile, pues solo regresa errores, en mi caso, al realizar la prueba en estos momentos me sigue indicando que ocurrió un error interno en el servidor cosa que indica que el WS no puede ir mas allá cuando se ha autenticado, es como si no pudiera generar el token, a mi también me mandaba el error del certificado pero genere el PFX y problema resuelto, pero aún así no retorna una respuesta válida.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 14/08/2018 20:53:34
Colegas

De donde o como descargaron el .cer y .key de pruebas para generar el .pfx ???

Yo estoy usando el .cer y .key de la eFirma ede un cliente … pero igual me manda el mismo error que ustedes comentan.

Y las url de produccion que publico el SAT pues me marca que aun no estan activas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Alejandro (34 intervenciones) el 14/08/2018 22:37:47
Según tengo entendido el SAT jamás proporcionó ligas publicas de prueba y las ligas que publico siguen sin estar habilitadas, es por ello que no podrán obtener respuesta satisfactoria de las ligas que usan actualmente, no queda mas que esperar a que el SAT habilite las ligas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 14/08/2018 23:20:57
Pues no se los muchachos, pero en mi caso el CER y el KEY los estoy ocupando de una Firma Electrónica (FIEL o e.Firma)
y en base a ellos estoy generando el PFX con ayuda de OpenSSL.

y probando con la Url que les dieron a los PAC ya hace vario tiempo, porque las URL's "Productivas", siguen sin funcionar.


Tienen de "Productivas" lo que yo tengo de Biólogo Marino.


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por ile (2 intervenciones) el 15/08/2018 00:41:59
Es correcto, hasta ayer puede trabajar con el webservice "viejito", hoy ya no funcionó. Hable al SAT, confirmaron que el web service productivo no está habilitado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Francisco Javier fjv0410@gmail.com (1 intervención) el 15/08/2018 17:58:15
Hola Buen día, yo hable con un amigo de un PAC y me dijo que los web services si tienen un wsdl, solo que el estuvo "jugando" con la URL para agregar el ?wsdl y no me ha querido decir, si me dice como agregarla les comento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 17/08/2018 02:47:19
ojalá y sea cierto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 17/08/2018 19:47:10
Nada aun Francisco?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Consumir Web Service Descarga Masiva

Publicado por Agustin (1 intervención) el 21/08/2018 20:55:56
Buenas tardes, en la documentacion del web service dice que se tiene que crear un cliente de servicios web a partir de la URL, es posible esto ? tengo entendido que ya se estan consumiendo, en cada url que trato de genera el service reference al igual que con el wsdl.exe me marca un 400 bad request que ya todos sabemos, a menos que se pudiera en un lenguaje distinto yo lo trato de consumir en c#.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 21/08/2018 20:57:39
Sigue apareciendo el error HTTP ERROR 400, así que aun no es posible consumir los WS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 22/08/2018 00:48:48
Si en el WS tiene a
1
<serviceMetadata httpGetEnabled="false" />
, por lo que he leído, de esa forma no entrega nada, osea que estaría regresando el famoso error HTTP ERROR 400.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 22/08/2018 19:29:15
CocoLiso, pero esto es para ya usar el WebService el que publicó el SAT? y como le pasas ese parámetro?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 22/08/2018 19:30:50
Yo ya probé con:

?wsdl
/WSDL?SingleWSDL

y nada, alguna respuesta?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 22/08/2018 19:31:19
Gerardo el SAT es el que tiene que cambiar esa información en sus servicios, para que nosotros podamos hacer uso de los WS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 22/08/2018 19:59:09
Gracias Aleks.


Si ando leyendo eso al respecto, aunque tambien veo que a algunos creadores de Webservices, prefieren hacer esto ocultar la definción, haciendo esto, corrijanme porfavor si estoy equivocado, pero si es asi la cuestion sería como consumir el servicio si el dueño del webservice decide ocultar la Definción de sus servicios.?

https://social.msdn.microsoft.com/Forums/vstudio/en-US/a13b9968-b988-42b1-a149-1d82e7ae047c/how-to-disable-servicemetadata?forum=wcf
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 22/08/2018 22:31:42
Por eso me surgió el pensamiento si no es un privilegio que solo tendrán los PAC's. En el video diejeron que ya estaban funcionando los servicios, pero en una charla aparte la asesora dijo que no y por eso varios suponen que no funcionan porque les no les regresa nada. Creo que hay que mostrar un poquito más de humildad y no dar por asentado nada si no se conoce bien del tema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 22/08/2018 23:54:31
Pues yo en el canal del SAT vi un video de un proveedor suyo, estoy tratando de buscar el video, pero fue muy curioso porque el mismo SAT lo avalaba era un ERP contable que funciona con la nube y decían que aparte de hacer la contabilidad casi automática, aprendiendo de las primeras polillas que contabilizaba el contador, era capaz de bajar los XMLs directo del SAT y esto fue mas o menos al tiempo de lo del webservice.

Como dices CocoLiso quizás solo sea un privilegio para los PAC' o peor aun, solo para ese proveedor en particular, teniendo el cobijo personal del SAT, dejándonos a todos nosotros fuera.


O ustedes que opinan?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 23/08/2018 00:07:32
Gerardo, si no es mucha molestia, ¿podrías enfocarte en tratar de recordar ese video en donde sale el ERP? Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 23/08/2018 00:28:43
CocoLiso, encontré la liga, el Software se llama Gestionix, esta es la liga:


https://www.youtube.com/watch?v=homKXUoKOw0&index=8&list=PLH6Z1vsFvaeTaIXHs90Yp98OjiNxWmZ9d

fue de la ExpoContabilidad electrónica de 2015, pero será posible que si sea de sus privilegiados del SAT?
o como ven?


aunque quien sabe, porque también en ese mismo enlace aparecen Diverza y ContPAQ. mmmmm ta raro
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 23/08/2018 01:07:53
Me sugió la duda y quise investigar a ver que onda y me metí a la pagina de ellos a preguntar, no me dijeron mucho pero esto es lo que me respondieron:
Captura_de_pantalla_2018_08_22_a_la_s_18_02_42
Captura_de_pantalla_2018_08_22_a_la_s_18_02_52
Captura_de_pantalla_2018_08_22_a_la_s_18_03_05
Captura_de_pantalla_2018_08_22_a_la_s_18_03_17


Ojo, no estoy promocionando a nadie, para que no vayan a empezar con comentarios negativos, tanto a ustedes como a mi, nos interesa resolver esta nueva problemática y entre desarrolladores debemos apoyarnos, simplemente deseo saber a que nos estamos enfrentando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 23/08/2018 18:13:03
https://elconta.com/2018/08/08/webservice-descarga-masiva-de-xml-del-sat/#comment-62064
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 23/08/2018 19:49:16
Entonces ¿no están operativos los WS porque responde HTTP ERROR 400?

Gerardo, la conversación hubiese estado excelente en esos días en los que no se podía descargar de forma masiva, porque pues igual te dieron la respuesta afirmativa porque ahorita se se pude hacer como se venía haciendo. Gracias por tomarte el tiempo de buscar el video.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 24/08/2018 01:21:06
eso es cierto, no se me ocurrió, hubiera preguntado cuando estaban los captchas del SAT, porque ahorita cualquiera va a decirnos que jalan, pero porque usan el Webscrapping que varios venimos usando.

Por cierto, no se si alguien se le ocurrió en ese entonces, a mi si se me ocurrió, pero no tuve éxito.
No se si recuerdan que los PDFS no tenían captcha, para intervenir los XMLS haciendo webscrepping le sacamos el contenido a los objetos IMG btndescarga, en los PDFs tiene otro nombre, según yo muy sabroso, saque una lista de los PDFS como normalmente lo hago con los XMLs e incluso probé a descargar un XML solito en el navegador y pude hacerlo.


Pero o sorpresa, cuando quise descargar la lista entera con mis sockets, nada de nada, me descargo unos archivos medio raros, tipo XML con metadatos, donde decía que no tengo permiso para descargar esos archivos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Porfirio Cadena (1 intervención) el 24/08/2018 18:31:04
No esten especulando, hablen directamente al SAT y te dicen que el web service para descarga masiva aun no esta disponible, mintieron sobre la informacion del 06 de agosto que ya estaban funcionando, solo publicarón la documentacion, pero el Web Service no responde porque no funciona, ellos mismos te lo dicen ya no pierdan el tiempo ahorita con esto y dediquense a aventajarle a otros pendientes que tengan. Hasta el dia de hoy el servicio al que tenemos acceso todos los contribuyentes es al de la pagina del SAT y esta limitado a las 2,000 XML diarios ahorita nadie tiene un servicio adicional y quien lo diga es que solo esta mintiendo para vender.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 25/08/2018 00:28:16
Gracias Porfirio.

Es bueno escuchar eso, por lo menos a mi me da mas tranquilidad escuchar eso, no se si hablo por todos, pero en mi caso me ha llevado varios años de desarrollo mi app y si se siente horrible que quede truncado un proyecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Porfirio Cadena (1 intervención) el 25/08/2018 18:43:27
Yo les sugiero que sigan marcando al SAT por lo menos cada 2 dias para más informes, no dejen de marcar y presionar no se conformen con mi respuesta. Aunque muchas veces la gente de allá no sabe ni que decirte presionen y presionen aunque te pasen con 10 gentes distintas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 25/08/2018 21:32:53
Yo nunca he hablado al SAT porque según yo no hay soporte tipo TI para los desarrolladores.

Pero bueno …..No hay peor lucha que la que no se hace ........ Alguien que tenga el Tel. de Soporte del SAT o la url de Chat OnLine para comunicarme con ellos


Si me lo pudieran pasar


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 26/08/2018 00:14:32
JAJAJAJAJA.. Me hiciste el día HalconDivino, !en caliente pues! El caldo se toma caliente. En cuanto lo posteen ojalá que todos los que estamos aquí en el grupo nos lancemos para hacerle montón a HalconDivino.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Rafael
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Rafael (57 intervenciones) el 28/08/2018 16:52:39
LES COMENTO, ACABO DE HABLAR AL SAT Y ME TRANSFIRIERON A 4 DEPARTAMENTOS Y EN CADA UNO TUVE QUE EXPLICAR MI DUDA Y ERA DE REPETIRLO, PREGUNTANDO CUANDO REALMENTE ACTIVARÍAN LAS URL'S PARA EL SERVICIO DE DESCARGA MASIVA O WEB SERVICE, Y QUE LAS AUTORIDADES NO AN ACTIVADO HASTA NUEVO AVISO Y QUE ELLOS NO SABEN AUN, A SI ES QUE HAY QUE ESTAR AL PENDIENTE DE CUANDO ACTIVEN EL SERVICIO, PUES YA ESTÁN ENTERADOS, SALUDOS.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 29/08/2018 00:31:49
Gracias Rafael, por mantenernos al tanto.
Como mencionan los compañeros, mientras para no perder el tiempo podemos adelantarle a nuestros proyectos en otras áreas, para que cuando ya lo habiliten, ahora si podamos atacar ese problema hasta resolverlo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por eden (26 intervenciones) el 02/09/2018 01:07:24
Siempre cual fue la url del ws del SAT?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 04/09/2018 22:57:51
Del WS no esta disponible aún. y SAT hoy con fallas.


Que opinan de esta empresa, que dice puede descargar 10 mil XML por día.

Será cierto?

https://ibb.co/iL1xVK
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Jesús Valera (3 intervenciones) el 06/09/2018 01:38:47
Buen día, revisando las rutinas que ya se han publicado aquí, les comento que el sitio del SAT esta respondiendo sin limite de descargas, tal y como lo veníamos haciendo antes de las locuras de los captchas, solo tiene la limitante con los cancelados, ya que en el sitio ya no se proporcionan los links para el XML ni el acuse.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 06/09/2018 16:17:29
Buen día, a lo contrario de lo que mencionas aun se limita a solo 2000 comprobantes por día. Por otro lado la descarga de comprobantes Recibidos con estatus de cancelado nunca se han podido descargar. Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 06/09/2018 18:14:11
El SAT lo volvió a hacer, ahora para descargar 1 factura es necesario ingresar RFC, Contraseña y Captcha, del web service aun nada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 10/09/2018 16:46:59
https://kosmostek.com/pages/nueva-descarga-masiva-webservice-2018-del-sat
https://www.youtube.com/watch?v=q36FfC4nO7U
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 10/09/2018 18:52:59
JAJAJAJAJAJA... tómala, campeón!!! y los que decían y perjuraban: "No están disponibles porque regresa el ERROR 400" dónde están? JAJAJAJAJAJA...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 10/09/2018 18:56:39
Aun siguen sin estar habilitados los web services del SAT (los publicados en su pagina), hablando con ellos aun comentan que no están habilitados, en el post que comentan sobre su funcionamiento (que por cierto es un desconocido) seguramente es para hacer publicidad a su sitio, además también que no muestra como hace el login a la herramienta (que también esta en ingles la herramienta) y para serles sincero dudo que la información publicada sea verídica, tal vez la herramienta sea verdad y se este conectado pero a sus propios servicios, simplemente por el hecho de vender...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 10/09/2018 19:00:27
O puede ser "un compló" para fregar a la clase baja dándoles únicamente la documentación completa a "los mafiosillos del poder"? En fin. Que alguien salga de las dudas y le diga a uno de sus clientes que le compre un mes del servicio para ver si es o no verdad lo del video.

He dicho.

Saludos.

PD O no será Rafael (ralosoft), que ya consiguió descargarlos pero para no compartir como lo hizo se cambió nick? JAJAJAJAJAJA... mejor ya dejaré de fumar esa "hierbita verde milagrosa", creo que me está haciendo daño.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 6
Ha disminuido su posición en 8 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Roberto (1 intervención) el 10/09/2018 20:12:00
Leyendo en su blog creo que ya salió el peine:

Captura-de-pantalla-2018-09-10-a-las-12.35.55

Si solo permite 2000 por descargar ¿Que creen que este usando?
https://kosmostek.com/blogs/microsoft-dynamics-nav-descarga-masiva-de-cfdi-mexico/nueva-descarga-masiva-con-web-service-2018-del-sat
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 11/09/2018 01:40:16
Si, pero creo que estás pensando "erróneamente" ya que según lo que dice aquí:

"Existe la opción de almacenar sus CFDIs y que tenga posterior acceso a los CFDIs sin tener que esperar que se vuelvan a descargar, las descargas también se hacen por paquetes por lo que en lugar de descargar un CFDI a la vez se pueden recuperar en 10 segundos descargas de hasta 2000 cfdis en un paquete de 5 Mb que podrá almacenar en su disco duro y posteriormente descomprimir."

Esas descargas las haces desde su servidor una vez que tiene almacenados tus comprobantes, así que pues se acabó la privacidad de tus documentos.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anónimo (1 intervención) el 11/09/2018 03:26:56
Ya funciona el WS?
Alguien ya probó?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 12/09/2018 17:41:57
Encontre este codigo https://github.com/resuelve/sat-ws en el cual ya funciona la mayoria de los metodos del sat, solo cambiando los datos de los rfcs, certficiados, siguiendo estos pasos para con la fiel generar otro certificado para autenticarse en el ws del sat https://blogs.sap.com/2013/01/05/como-crear-el-paquete-de-certificado-pfx/
Me parece los web services estan activos solo para descarga me parece es igual que la pagina debes esperar un tiempo a que el sat te los genere, ya que el servidio que verfica la solicitud de descarga solo me regresa el estatus aceptada y no el de terminada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Callejero (2 intervenciones) el 12/09/2018 20:15:05
apis ese enlace no funciona ¿podrias compartir el codigo para que los miembros de la comunidad lo analicemos y ya poder hacer las implementaciones del WS?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 12/09/2018 20:50:02
Lamentablemente esta caída la url

https://github.com/resuelve/sat-ws

No se si tengas el código o programa para que lo compartas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 12/09/2018 23:47:18
Hola Apis,
¿Has intentado verificar la solicitud 24hrs después de la petición?
Con algún periodo corto por ejemplo un solo día, ¿Te sigue devolviendo que solo se acepto la solicitud?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 13/09/2018 01:21:20
Es lo que voy a hacer esperar las 24 o las 48 horas para la solicitud, si vi que esta caida la web, si gustas te comparto del código solo la parte del wsdl por correo de uno que si funciono un tiempo en c# donde si se generaron las clases para llamar a los servicios, ahorita me parece ese wsdl ya no esta activo y aunque he preguntado en el sat sobre el wsdl la mayoría de los de soporte no conocen nada sobre el wsdl. Ya con ese wsdl que si creo las clases aunque esta en c# espero te pueda servir y sobre ese programes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 13/09/2018 02:26:25
Hola que tal, por lo que veo se les filtro ese ambiente (UAT, comúnmente usado como "Pruebas" antes de subirlo a producción), afortunadamente pude descargar el código antes de que dieran de baja la liga, les comparto el código (es exactamente el mismo y no se le cambio absolutamente nada) http://facturacorporativa.com/portal/publico/sistema_recuperacion.zip, lo guarde en mi servidor, desafortunamente no he podido realizar descargas ya que me dice, Certificado Invalido error 305, no se si como lo hagan ahí este mal como realizan la firma, alguien que si le haya funcionado y pueda compartir su código?

Ojo, tuve que convertir el key y cer en pem y posteriormente a pfx
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 13/09/2018 04:16:12
ALEKS

Gracias

Pues deja revisarlo y analizarlo a ver que tan completo esta o cual es el alcance que le dieron y ver como complementarlo.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 13/09/2018 05:40:47
Hola aleks, el link de descarga de tu codigo no funciona si gustas te ayudo si pones tu codigo didsponible, puedes cambiar las urls de pruebas por las de producción, a mi también con las de urls de pruebas me decia eso de certificado invalido, lo cambie a las url de produccion y ya avance hasta el web service que verifica el estatus de la descarga.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 13/09/2018 05:46:48
Una disculpa apis, tuve que apagar el servidor porque hay tormenta eléctrica, pero dejo el link de Dropbox https://www.dropbox.com/s/sck72rnmnca0e82/sat-ws-master.zip?dl=0
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 13/09/2018 06:05:52
aqui dejo el link con lo que yo cambie al igual que tu funciona con un archivo pfx y no con la fiel del cliente https://drive.google.com/file/d/1aENWxpKXEp3o6SO0sSmvYtiCDQ24HiNb/view?usp=sharing
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 13/09/2018 16:42:05
Como lo pense debía esperar un dia para obtener la lista de ids, ya solo me falta el ultimo servicio no guarde los suficientes ids para pruebas y segun esta la documentacion solo están disponibles 72 horas y solo 2 intentos, hice los 2 intentos de descarga el ultimo servicio donde de acuerdo a mi certificado solo tenia un cfdi y luego ya me responde 404, igual voy a probar con otro que me de mas ids y generar mas de pruebas mas ya probaria hasta mañana ya que no tengo ids nuevos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 13/09/2018 16:47:03
Hola, resolviste el problema al guardar el archivo?
1
2
3
4
5
6
7
8
private void ProcessFile(Stream package)
{
    // Do something here
    var fileStream = File.Create("C:\\sat-output\\LAN7008173R5_" + new Random().Next(0, 1000000).ToString());
    package.Seek(0, SeekOrigin.Begin); ---->Error
    package.CopyTo(fileStream);
    fileStream.Close();
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 13/09/2018 16:55:16
En esa parte me quede, solo que ya no tengo ids para realizar mas pruebas iba a probar esto
1
2
3
4
5
6
7
8
private void ProcessFile(Stream package)
{
    using (System.IO.FileStream output = new System.IO.FileStream(@"d:\\docs\\arcvhivo" + new Random().Next(0, 1000000).ToString(), FileMode.Create))
    {
        package.CopyTo(output);
    }
 
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Callejero (2 intervenciones) el 13/09/2018 22:16:01
Compañeros

A quienes ya lograron tener acceso al web service ¿podrian compartir un poco con la comunidad?

- ¿Que URL utilizan, la que aparece en los XMLs, o la que proporciona el SAT?
- ¿Como generan el PFX, tal cual como aparece en el tutorial?
- A los que no usamos mucho C#, ¿podrian ayudarnos a generar una abstraccion con herramientas estandares?

Aqui en la oficina hemos probado con CURL, pero no logramos obtener respuesta

curl https://srvsolicituddescargamasteruat.cloudapp.net/Autenticacion/Autenticacion.svc --cert client.pem:contrasena --key key.pem --cacert ca.pem --insecure

Les agradecemos compañeros
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 14/09/2018 00:18:14
Que tal Colegas

La famosa eFirrma es la FIEL o es otro certificado ???
Por lo que estuve leyendo aquí en el foro con la FIEL se pueden autentificar ??? .... Es correcto ???


Las urls que vienen en el programa SAT-WS
https://srvsolicituddescargamasteruat.cloudapp.net/SolicitaDescargaService.svc
https://srvsolicituddescargamasteruat.cloudapp.net/VerificaSolicitudDescargaService.svc
https://srvdescargamasivatercerosuat.cloudapp.net/DescargaMasivaTercerosService.svc
https://srvsolicituddescargamasteruat.cloudapp.net/Autenticacion/Autenticacion.svc

Las cambiaron por las urls que vienen en la documentacion ????
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/SolicitaDescargaService.svc
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/VerificaSolicitudDescargaService.svc
https://cfdidescargamasiva.clouda.sat.gob.mx/DescargaMasivaService.svc


Les agradeceria sus respuestas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 14/09/2018 00:39:23
Hola! si las url que vienen en el app config las cambie por las del sat esas url supongo en algún momento estuvieron disponibles y con esa generaron el código del wsdl, por mas que pregunto en el sat no logro obtener las urls del wsdl nuevo alguno que si este activo

Con los archivos de la fiel, efirma, firma electronica avanzada segui este tutorial, esos se los pase al servicio de autenticar
https://blogs.sap.com/2013/01/05/como-crear-el-paquete-de-certificado-pfx/

Del codigo original ws-sat hay un codigo signature que todas las peticiones deben llevarlo, solo el primer servciio lo tiene
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 14/09/2018 06:45:00
Usando la FIEL (.cer .key y la contraseña) genere el archivo pfx con su contraseña y la cambie por la que venia en el programa.
Cambie el RFC que viene en el programa por el de la FIEL
Cambie las urls del archivo config por las correspondientes que vienen en la documentación

Y fue todo lo que le cambié … no le he hecho cambios a la logica

Lo que comentaba APIS de "" Del codigo original ws-sat hay un codigo signature que todas las peticiones deben llevarlo, solo el primer servciio lo tiene "" No aplique ninguna remediacion o cambio.

Al correr el programa creo yo que si se pudo AUTENTIFICAR porque llegó hasta la parte de Verificación

Me falla en este punto
En el estatus me dice que es una referencia NULL

ALGUNA IDEA DE PORQUE ME SALE ESTE ERROR ???

ERRORWS
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 14/09/2018 15:44:54
hola! esta en null porque ahi lo cambie a un do while, lo del signature va en cada request de cada servicio, hay que crear nuevos metodos signature para cada servicio
request.Signature = new Signer(path, password).GetSignature();
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 14/09/2018 16:08:12
He llegado al ultimo servicio ya no me marca error, pero ahora el archivo no se que extensión es, lo probe con xml nada, lo probe con pdf alguien ha logrado saber leer el archivo que regresa?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 14/09/2018 16:09:54
Es extensión .ZIP
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 14/09/2018 16:33:42
Apis
cuando tu dices "" esta en null porque ahi lo cambie a un do while, """


No te entiendo … quitaste la condicionante o a que te refieres ... la verdad no entiendo ???

Pudieras compartir esa parte que cambiaste para entender mejor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Desconocido (7 intervenciones) el 14/09/2018 16:39:35
Hola halcón, según tú ibas a analizar el código y contribuir con el mismo, desde mi punto de vista si no puedes validar un null di con toda confianza que te pasen el código funcionando porque no le entiendes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 14/09/2018 18:42:49
Hola Desconocido

Pues asi es ….ya analice el codigo … tan pronto pueda contribuir lo hare …..es mi mejor intencion tal como lo he hecho en anteriores ocaciones. como en la descarga del web scraping

Pudieras por fa... compartir esta parte del codigo te lo agradeceria.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 14/09/2018 23:53:52
Te marca error porque en esa parte aun no mandas llamar al servicio, por lo cual aún no tienes respuesta, ese servicio una vez que mandas la solicitud de descargar la información tarda en responder lo que he visto es al menos 24 horas, por lo cual ese while estaria esperando de 24 a 48 horas por lo cual igual creo es mejor quitar el while y guardar los ids en donde gustes e intentar con los ids generados por el servicio anterior al día siguiente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@gmail.com (74 intervenciones) el 15/09/2018 00:49:06
Ok.
Ahora ya entendí.

Hay que esperar horas ...Y reinventar con los mismos ids..



Apis. Gracia por tu respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

En lo personal ya logre autenticarme en el Web Service de Descarga Masiva del SAT con un Token de seguridad mediante FIEL implementando Java 8, AXIS 2 y Rampart para el Policy de seguridad bajo el estándar de Oasis, la tortura esta en que el Web Service no publica WSDL sin embargo si recibe solicitudes, además de que la documentación del SAT no detalla como crear una solicitud SOAP implementando con un Header de seguridad basado en W3C, la ventaja de este servicio es que te da hasta 200,000 CFDI's en una sola solicitud sin implementar cosas extrañas como un "Bot" que se autentique al portal del contribuyente con su FIEL o Contraseña y dé "miles de clic's" para descargar los CFDI además de tardado y a espensas de disponibilidad y carga del portal del SAT, además de que en algún momento volverán a habilitar los Captcha, en fin los primeros que lleguen a la meta serán los ganadores, hasta ahora solo conozco a tres empresas de tecnología que ya lograron consumir el servicio incluyéndome (costó una semana de batalla en las noches y sábado-domingo).

Aquí un ejemplo del Response en este preciso momento (omití el "número de serie" por seguridad de la FIEL implementada):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version='1.0' encoding='utf-8'?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
 <s:Header>
  <o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
   <u:Timestamp u:Id="_0">
    <u:Created>2018-08-30T03:15:19.449Z</u:Created>
    <u:Expires>2018-08-30T03:20:19.449Z</u:Expires>
   </u:Timestamp>
  </o:Security>
 </s:Header>
 <s:Body>
  <AutenticaResponse xmlns="http://DescargaMasivaTerceros.gob.mx"> <AutenticaResult>eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE1MzU1OTg5MTksImV4cCI6MTUzNTU5OTUxOSwiaWF0IjoxNTM1NTk4OTE5LCJpc3MiOiJMb2FkU29saWNpdHVkRGVjYXJnYU1hc2l2YVRlcmNlcm9zIiwiYWN0b3J0IjoiMzAzMDMwMzAzMTMwMzAzMDMwMzAzMDM0MzAzNTM0MzczNTMyMzkzOSJ9.iWNl9her3ZuLXE_iCEvljcJUBx8rhlAGONKjvaNmPaE%26wrap_subject%"AQUI VA EL NUMERO DE SERIE DE LA FIEL"</AutenticaResult>
  </AutenticaResponse>
 </s:Body>
</s:Envelope>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cancelación con Aceptación

Publicado por Apex Application | Software Development (3 intervenciones) el 15/09/2018 10:19:36
También tengo ya implementado los Web Services de cancelación con aceptacion, sin embargo aquí se requiere ser pac para autenticarse, tengo un servicio web intermedio que se auténtica y crea todas las solicitudes de cancelación, aceptación/rechazo, consulta de relacionados, todos firmados con el csd, ya no es necesario que el desarrollador los firme, en Java 8.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cancelación con Aceptación

Publicado por CocoLiso (43 intervenciones) el 15/09/2018 15:02:43
Bueno, Apex Application, se agradece mucho tu aporte. Gracias por participar, pero creo que te equivocaste de foro, aquí no es mercadolibre.com.mx.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Cancelación con Aceptación

Publicado por Apex Application | Software Development (3 intervenciones) el 15/09/2018 16:05:44
Bueno es que quieres todo gratis, todos estamos haciendo un esfuerzo, de eso se trata la competitividad, yo tengo la solución en java para aplicativos web y por lo que veo en el foro aquí se tiene más en. NET, no estoy peleado con ello yo inicié en esta tecnología y hasta ahora me agrada también, solo era un comentario pero tampoco soy una empresa Open Source, y claro que si alguien gusta acelerar su proceso de integración con gusto apoyo pero también pago sueldos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Cancelación con Aceptación

Publicado por CocoLiso (43 intervenciones) el 15/09/2018 20:30:17
Ningún problema con eso, amigo, créeme que te entiendo, pero la idea de formar este grupo SIEMPRE ha sido la de compartir el conocimiento. Desde el hilo anterior se hizo enfásis en que todo serían aportes, no ventas, para eso hay MUCHOS lugares donde se pueden ofrecer por ese motivo AMABLEMENTE bateamos a los que vienen a ofrecer sus servicios. En cuanto a lo de que actualmente sólo son 4 los que han encontrado la solución no tengas duda que pronto serán muchos más las que contaremos con ella, en lo personal he estado un poco alejado en la investigación por cuestiones de trabajo pero espero muy pronto volver a hacer pruebas.

Aprovecho para hacer un reconociento a HalconDivino, distinguido miembro de este selecto grupo, quien fué el que donó TODO su trabajo en cuanto a la generación de los xmls y sin el cual muchos estaríamos en tinieblas y aún sigue compartiendo sus logros.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 17/09/2018 05:04:14
Hola;

Siguiendo los pasos de @apis

1.-Crear el archivo pfx usando el cer y key de la FIEL con el cual se probara la descarga ws
2.-Modificando el Metodo Requester.SolicitudDescargaMasivaTercero con los valores del RFC de la descarga

Si me genera un token, pero al hacer el primer MakeRequest me lo manda vacio, por
tal motivo imprimir el codEstatus y me arroja un error 305

¿Como puedo solucionar este error?

Según documentación del SAT este error se debe a certificado invalido.
Captura-de-pantalla-2018-09-16-a-las-22.00.59

1
2
3
4
5
6
7
8
             // Make a request to download both, received invoices and issued ones
                Request request = new Request(path, password, token);
 
                string idIssuerRequest = request.MakeRequest(0).CodEstatus;
                string idReceivedRequest = request.MakeRequest(1).IdSolicitud;
 
                Console.WriteLine("Issued invoices request id = {0}", idIssuerRequest);
                Console.WriteLine("Received invoices request id = {0}", idReceivedRequest);


ERROR
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 17/09/2018 05:51:42
Violeta

No se si ya cambiaste las urls que vienen en el archivo config por las de la documentación del SAT que son estas
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/SolicitaDescargaService.svc
https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/VerificaSolicitudDescargaService.svc
https://cfdidescargamasiva.clouda.sat.gob.mx/DescargaMasivaService.svc

En cuanto al RFC yo hice un FIND REPLACE en toda la solución y creo que se substituye como en 4 o 6 lugares diferentes . No se si es en un mismo método o son mas. la verdad es que no recuerdo.
.
Y por ultimo APIS comentó lo siguiente """ Del codigo original ws-sat hay un codigo signature que todas las peticiones deben llevarlo, solo el primer servciio lo tiene """" que tambien deberias conciderarlo ..

Por otro lado hay que guardar los IDs generados para consultarlo posteriormente ... Apis comentó que pueden pasar horas para que la solicitud de descarga este lista.(Que es en este punto que estoy resolviendo ) Y volver a intentar pero con los IDs que ya guardaste.

Espero te sirva mis comentarios

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 17/09/2018 06:09:57
Muchas Gracias por tu respuesta Halcon Divino.

Lo único que no entiendo es:

"Y por ultimo APIS comentó lo siguiente """ Del codigo original ws-sat hay un codigo signature que todas las peticiones deben llevarlo, solo el primer servciio lo tiene """" que tambien deberias conciderarlo .."

Me puedes dar un ejemplo, please.


Y cual es la diferencia de estas lineas:?
string idIssuerRequest = request.MakeRequest(0).IdSolicitud;
string idReceivedRequest = request.MakeRequest(1).IdSolicitud;

//Si el parametro llama a 2 metodos con nombre diferente , pero con los mismo valores?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 17/09/2018 07:32:37
@apis

Tienes toda la razón , se debe crear un public Requester.SignatureType Signature() //Soluciona el error de sello mal formado
por cada tipo de Clase que ocupe signature.



//Ya voy en la parte de Solicitud Aceptada.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 17/09/2018 17:57:24
Hola chicos?

Como solucionaron este mensaje de errror:

Se ha excedido la cuota de tamaño máximo de los mensajes entrantes (65536). Para aumentar la cuota, use la propiedad MaxReceivedMessageSize en el elemento de enlace correspondiente.

1
2
3
4
5
6
7
8
9
foreach (var item in packages)
{
    Stream package;
    Downloader.RespuestaDescargaMasivaTerceros message = downloaderClient.Descargar(Request(item.ToString()), out package);
 
    if (message.CodEstatus == "5000")
        ProcessFile(package);
 
}


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 17/09/2018 18:26:12
¿Alguien sabe como trasladar la carpeta Connected Services o modificarla para VB.NET?

Sí, ya sé, obsoleto pero pues no me gustan los puntos y comas.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Cesar (54 intervenciones) el 17/09/2018 18:51:09
Hola.

Ese parametro lo modificas en tu archivo Config, en el binding de la referencia al servicio web.

Tambien te sugiero ampliar otros (estan marcados en la imagen).

1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Susy (1 intervención) el 17/09/2018 21:44:10
Alguien podria apoyarme, por fa...?

Ya genere tokens e ids para hacer pruebas como mencionan pero en donde o como hago la peticion? ayudenme por favor ya me duele la cabeza de tanto pensar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 18/09/2018 00:38:56
Susy

Una forma fasil de hacer las peticiones en forma diferida es haciendo lo siguiente

Comentaríza el Request …. para ya no solicitar nuevos Ids. … No tiene caso ya que vas a usar los anteriores previamente guardados.
//Request request = new Request(path, password, token);

Y substituye los ids por los que TU YA TIENES GUARDADOS


1
2
string idIssuerRequest = "ab956117-0f5a-4492-b776-660c4d1091d4"; // request.MakeRequest(0).IdSolicitud;
string idReceivedRequest = "c715d8a3-52c6-4b45-bb36-244fb07591da"; // request.MakeRequest(1).IdSolicitud;


El código quedaría así


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// Get the authentication token
Autentication autentication = new Autentication(path, password);
var token = autentication.AuthenticationToken();
if (token != null)
{
    Console.WriteLine("Autentication token = {0}", token);
 
    // Make a request to download both, received invoices and issued ones
    //Request request = new Request(path, password, token);
 
    string idIssuerRequest = "ab956117-0f5a-4492-b776-660c4d1091d4"; // request.MakeRequest(0).IdSolicitud;
    string idReceivedRequest = "c715d8a3-52c6-4b45-bb36-244fb07591da"; // request.MakeRequest(1).IdSolicitud;
 
    Console.WriteLine("Issued invoices request id = {0}", idIssuerRequest);
    Console.WriteLine("Received invoices request id = {0}", idReceivedRequest);
 
    // Verify the requests to know when the files are ready to download
    Verification verification = null;
    Verifier.RespuestaVerificaSolicitudDescMasTercero response = null;
 
    if (idIssuerRequest != null)
    {
        verification = new Verification(idIssuerRequest, token);
        response = verification.MakeRequest();
 
        // Download packages for issued invoices
        if (response.IdsPaquetes != null)
        {
            DownloadPackage download = new DownloadPackage(response.IdsPaquetes, token);
 
            download.MakeRequest();
        }
    }
 
    if (idReceivedRequest != null)
    {
        verification = new Verification(idReceivedRequest, token);
        response = verification.MakeRequest();
 
        // Download packages for received invoices
        if (response.IdsPaquetes != null)
        {
            DownloadPackage download = new DownloadPackage(response.IdsPaquetes, token);
            download.MakeRequest();
        }
    }
}
Console.ReadLine();


Espero te sirva .

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 18/09/2018 00:42:59
Hola apis, esto y checando el archivo que subiste, hasta donde estoy leyendo, le tengo que cambiar las URLs de prueba por las URL definitivas cierto, en cualquier en el proyecto donde las encuentre verdad?

Y desde luego cambiar el RFC, el directorio del Certificado y su contraseña.
Veo también que el certificado es P12, es lo mismo que PFX, por que lo acabo de generar con openSSL del mismo modo, solo que le puse extension P12 en vez de PFX.

Lo estaré probando para ver que tal va. Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 00:59:44
@Halcon Divino

Porque hacer la misma consulta 2 veces?

/request.MakeRequest(0).IdSolicitud;
request.MakeRequest(1).IdSolicitud;

El parametro 0 y 1 llaman na funcion identica.


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 18/09/2018 01:40:08
@Violeta, permíteme contestarte, porque el primero es para obtener el ID de las emitidas y el segundo para el de las recibidas.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 18/09/2018 01:41:32
@Gerardo, amigo, no hay necesidad de cambiarle la extensión.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 01:44:22
Gracias @cocoliso

No habia notado el cambio de emisor y receptor..

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 02:15:53
@cocoliso

Lograste solucionar este problema:

Estoy en la parte donde se descargan los packages pero me manda este error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 02:16:14
@cocoliso @halcon divino @publicogral

Lograste solucionar este problema:

Estoy en la parte donde se descargan los packages pero me manda este error.


Ayuda please!!
Captura-de-pantalla-2018-09-17-a-las-19.15.15
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de CocoLiso
Val: 28
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (17 intervenciones) el 18/09/2018 02:33:06
@Violeta, soy nuevo en C#, entonces sí estoy batallando un poco, todavía no llego a eso. Ahora, humildemente, te pido ayuda para solventar este problema:


error

Saludos.

PD Ya estoy enviando los ID que guardé ayer.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 02:40:21
Solucion; @cocoliso

Antes de ir por IdsPaquetes, verifica su CodigoEstatus que este en solicitud Aceptada y que IdsPaquetes no sea nulo.

SI IdsPaquetes es nullo significa que el SAT aún no atiende tu solicitud. (tarda de 12 a 48 horas)-

CodEstatus = 5000
y
response.IdsPaquetes !=null
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 18/09/2018 03:10:41
CocoLiso

Yo lo resolvi de esta manera

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public Verifier.RespuestaVerificaSolicitudDescMasTercero MakeRequest()
{
    Verifier.VerificaSolicitudDescargaServiceClient verifierClient = new Verifier.VerificaSolicitudDescargaServiceClient();
 
    //X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);
    //requesterClient.ClientCredentials.ClientCertificate.Certificate = cert;
 
    Verifier.RespuestaVerificaSolicitudDescMasTercero response = null;
    using (new OperationContextScope(verifierClient.InnerChannel))
    {
        // Add a HTTP Header to an outgoing request
        HttpRequestMessageProperty requestMessage = new HttpRequestMessageProperty();
        requestMessage.Headers["Authorization"] = "WRAP access_token=\"" + token + "\"";
        OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = requestMessage;
 
        // Verify the process until the request is ready
        response = verifierClient.VerificaSolicitudDescarga(Request());
        int Estado = response.EstadoSolicitud;
        while (Estado != 3)
        {
            response = verifierClient.VerificaSolicitudDescarga(Request());
            Estado = response.EstadoSolicitud;
 
            if (Estado > 3 || Estado == 0)
            {
                break;
            }
        }
    }
 
    return response;
}


Estado = 0 // Token no valido
Estado = 1 // Aceptada
Estado = 2 // En Proceso
Estado = 3 // Terminada
Estado = 4 // Error
Estado = 5 // Rechazada
Estado = 6 // Vencida

Por otro lado tienes que crear el Metodo SignatureVerifier() y SignatureDownloader() adentro de la clase Signer

Quedando de esta manera la clase

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
using System.Security.Cryptography.X509Certificates;
 
namespace sat_ws
{
    class Signer
    {
        string path, password;
 
        public Signer(string path, string password)
        {
            this.path = path;
            this.password = password;
        }
 
        public Requester.SignatureType Signature()
        {
            X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);
            Requester.SignatureType signature = new Requester.SignatureType();
            signature.SignedInfo = new Requester.SignedInfoType();
            signature.SignedInfo.CanonicalizationMethod = new Requester.CanonicalizationMethodType();
            signature.SignedInfo.CanonicalizationMethod.Algorithm = "Algorithm";
            signature.SignedInfo.SignatureMethod = new Requester.SignatureMethodType();
            signature.SignedInfo.SignatureMethod.Algorithm = "Algorithm";
            signature.SignedInfo.Reference = new Requester.ReferenceType
            {
                DigestMethod = new Requester.DigestMethodType
                { Algorithm = "Algorithm" },
                DigestValue = cert.GetCertHash()
            };
            signature.SignatureValue = cert.GetPublicKey();
            signature.KeyInfo = new Requester.KeyInfoType
            {
                X509Data = new Requester.X509DataType
                {
                    X509IssuerSerial = new Requester.X509IssuerSerialType
                    {
                        X509IssuerName = cert.IssuerName.Name,
                        X509SerialNumber = cert.GetSerialNumberString()
                    },
                    X509Certificate = cert.RawData
                }
            };
            return signature;
        }
 
 
        public Verifier.SignatureType SignatureVerifier()
        {
            X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);
            Verifier.SignatureType signature = new Verifier.SignatureType();
            signature.SignedInfo = new Verifier.SignedInfoType();
            signature.SignedInfo.CanonicalizationMethod = new Verifier.CanonicalizationMethodType();
            signature.SignedInfo.CanonicalizationMethod.Algorithm = "Algorithm";
            signature.SignedInfo.SignatureMethod = new Verifier.SignatureMethodType();
            signature.SignedInfo.SignatureMethod.Algorithm = "Algorithm";
            signature.SignedInfo.Reference = new Verifier.ReferenceType
            {
                DigestMethod = new Verifier.DigestMethodType
                { Algorithm = "Algorithm" },
                DigestValue = cert.GetCertHash()
            };
            signature.SignatureValue = cert.GetPublicKey();
            signature.KeyInfo = new Verifier.KeyInfoType
            {
                X509Data = new Verifier.X509DataType
                {
                    X509IssuerSerial = new Verifier.X509IssuerSerialType
                    {
                        X509IssuerName = cert.IssuerName.Name,
                        X509SerialNumber = cert.GetSerialNumberString()
                    },
                    X509Certificate = cert.RawData
                }
            };
            return signature;
        }
 
 
        public Downloader.SignatureType SignatureDownloader()       {
            X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);
            Downloader.SignatureType signature = new Downloader.SignatureType();
            signature.SignedInfo = new Downloader.SignedInfoType();
            signature.SignedInfo.CanonicalizationMethod = new Downloader.CanonicalizationMethodType();
            signature.SignedInfo.CanonicalizationMethod.Algorithm = "Algorithm";
            signature.SignedInfo.SignatureMethod = new Downloader.SignatureMethodType();
            signature.SignedInfo.SignatureMethod.Algorithm = "Algorithm";
            signature.SignedInfo.Reference = new Downloader.ReferenceType
            {
                DigestMethod = new Downloader.DigestMethodType
                { Algorithm = "Algorithm" },
                DigestValue = cert.GetCertHash()
            };
            signature.SignatureValue = cert.GetPublicKey();
            signature.KeyInfo = new Downloader.KeyInfoType
            {
                X509Data = new Downloader.X509DataType
                {
                    X509IssuerSerial = new Downloader.X509IssuerSerialType
                    {
                        X509IssuerName = cert.IssuerName.Name,
                        X509SerialNumber = cert.GetSerialNumberString()
                    },
                    X509Certificate = cert.RawData
                }
            };
            return signature;
        }
 
 
    }
}

Y estos 2 nuevos metodos SignatureVerifier() y SignatureDownloader() los tienes que llamar en cada request tal como lo dijo APIS


1
2
3
4
5
6
7
8
9
10
11
12
13
14
private Verifier.VerificaSolicitudDescargaMasivaTercero Request()
{
    string path, password;
    path = @"C:\FielHerculesPFX\CSI121206SP0.pfx";
    password = "23456789";
 
    Verifier.VerificaSolicitudDescargaMasivaTercero request = new Verifier.VerificaSolicitudDescargaMasivaTercero();
    request.IdSolicitud = id;
    request.RfcSolicitante = "CSI121206SP0";
 
    request.Signature = new Signer(path, password).SignatureVerifier();
 
    return request;
}


1
2
3
4
5
6
7
8
9
10
11
12
private Downloader.PeticionDescargaMasivaTerceros Request(string packageId)
{
    string path, password;
    path = @"C:\FielHerculesPFX\CSI121206SP0.pfx";
    password = "23456789";
 
    Downloader.PeticionDescargaMasivaTerceros request = new Downloader.PeticionDescargaMasivaTerceros();
    request.IdPaquete = packageId;
    request.RfcSolicitante = "CSI121206SP0";
    request.Signature = new Signer(path, password).SignatureDownloader();
    return request;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 18/09/2018 03:30:39
Ya estoy en la Descatga pero me marca este error


ErrorDescarga


Modifique el config de esta manera en el nodo bindings


1
2
3
4
5
6
7
8
9
10
11
<bindings>
    <basicHttpBinding>
        <binding name="basicHttp"
                 allowCookies="true"
                 maxReceivedMessageSize="20000000"
                 maxBufferSize="20000000"
                 maxBufferPoolSize="20000000">
                 <readerQuotas maxDepth="32"
                               maxArrayLength="200000000"
                               maxStringContentLength="200000000"/>
        </binding>



PERO AUN ASI ME FALLA CON EL MISMO ERROR


Como solucionaron este error ???

Alguna idea de como resolverlo ???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 03:42:50
Se soluciona el el app.config

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<bindings>
  <basicHttpBinding>
    <binding name="BasicHttpBinding_ISolicitaDescargaService" maxBufferSize="1073741824"
      maxReceivedMessageSize="1073741824">
      <security mode="Transport" />
    </binding>
    <binding name="BasicHttpBinding_IVerificaSolicitudDescargaService" maxBufferSize="1073741824"
      maxReceivedMessageSize="1073741824">
      <security mode="Transport" />
    </binding>
    <binding name="BasicHttpBinding_IDescargaMasivaTercerosService" maxBufferSize="1073741824"
      maxReceivedMessageSize="1073741824">
      <security mode="Transport" />
    </binding>
    <binding name="BasicHttpBinding_IAutenticacion" maxBufferSize="1073741824"
      maxReceivedMessageSize="1073741824">
      <security mode="TransportWithMessageCredential">
        <message clientCredentialType="Certificate" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 03:52:53
@Halcon Divino

Lograste solucionar este error?


Captura-de-pantalla-2018-09-17-a-las-19.15.15
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 18/09/2018 04:46:25
Violeta

Gracias !!! …… Si me funciono lo del app.config

Pero ya estoy igual que tu

El programa me falla EXACTAMENTE en la misma INSTRUCCION que a ti con el mismo ERROR


package.Seek(0, SeekOrigin.Begin);

Estoy checando en google a ver si encuentro alguna solucion .


Alguien del grupo que ya lo haya solucionado ???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 18/09/2018 05:36:40
También debes cambiar el parametro del signature, lo que comentaron tambien en post previos de modificar el achivo app.config para permitir un tamaño mas grande en la respuesta del web service, en un post previo habia compartido como obtener el archivo repito el codigo, es un zip por lo cual con otro paquete nuget para archivos zip lo pueden descomprimir

1
2
3
4
5
6
7
8
private void ProcessFile(Stream package)
{
    using (System.IO.FileStream output = new System.IO.FileStream(@"d:\\docs\\arcvhivo.zip" ), FileMode.Create))
    {
        package.CopyTo(output);
 
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 18/09/2018 05:39:06
El problema de EL METODO ESPECIFICADO NO ES COMPATIBLE lo solucione comentarizando la linea

// package.Seek(0, SeekOrigin.Begin);
supongo que esta instrucción lo que hace es indicarle al apuntador que se posicione al inicio del paquete.
pero por lo que leí en google da a entender que ya es obsoleto este método


Además al nombre del archivo le puse extensión zip

var fileStream = File.Create("C:\\sat-output\\CSI121206SP0_" + new Random().Next(0, 1000000).ToString() + ".zip");

El método quedo de esta manera


1
2
3
4
5
6
7
8
9
10
private void ProcessFile(Stream package)
{
    // Do something here
    var fileStream = File.Create("C:\\sat-output\\CSI121206SP0_" + new Random().Next(0, 1000000).ToString() + ".zip");
 
    //   package.Seek(0, SeekOrigin.Begin);
 
    package.CopyTo(fileStream);
    fileStream.Close();
}


Finalmente ya pude descargar el archivo zip con todos los xml solo procedí a descomprimirlo y ya me arrojo todos los xml
Solo me falta verificar que sean todos los xml.


Pero por la gran cantidad de xml creo que todo esta correcto.

Bueno .... Ya mañana le doy una repasada a la aplicacion y se las posteo ya con todos los cambios y agregados que le hice.


Gracias Grupo por el apoyo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 18/09/2018 05:48:35
@Halcon Divino

Gracias por tus contribuciones.


He notado tambien otro error comun al autenticar:

1
2
3
Excepción no controlada del tipo 'System.ServiceModel.Security.MessageSecurityException' en mscorlib.dll
 
Información adicional: La marca de tiempo de seguridad no es válida porque la hora de creación ('2018-09-18T03:47:39.529Z') es una hora futura. La hora actual es '2018-09-18T03:42:26.647Z' y el sesgo de reloj permitido es '00:05:00'.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 18/09/2018 13:45:58
@Violeta, ¿y si intentarás retrasando la hora de la PC?

@HalconDivino, pues ¿qué se puede decir, otra vez gracias? creo que ya está muy trillado eso para con tu persona. Una vez más te dedicaste a "masticar" el codigo para otorgarlo "papilla". Un botoncito más para los que dudaban de tu capacidad y bondad. Avísenle a los 4 que ya tenían la solución para que los agreguen a la lista de la competitividad.

Por mi parte a seguirme peleando con los ";".

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 18/09/2018 16:39:44
Gracias CocoLiso!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 18/09/2018 17:28:04
De nada amigo.

Olvidé agradecer a la figura principal de este hilo que, sin duda, fué @apis, ya que gracias a él se pudo dar con la forma de cómo consumir esos servicios que de otra manera hubiera sido muy difícil.

@Violeta, gracias amiga por la ayuda brindada.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 18/09/2018 20:22:28
Una preguntota, ¿cuanto tiempo tarda en cambiar de solicitud aceptada?
Supongo que si no cambia de solicitud aceptada no se puede descargar ¿cierto?

Porque si se deja el while tendrán que pasar horas (supongo) hasta que se puedan descargar esos archivos

Corrijanme si me equivoco

Por cierto, gracias a todos por sus avances :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 18/09/2018 20:43:38
Aleks

HOLA que tal !!!!

¿cuanto tiempo tarda en cambiar de solicitud aceptada?
R... Yo hice 4 solicitudes para unos 100 XML se tardo al rededor de 5 minutos .. Para 1,000 XML se tardo entre 15 a 20 minutos y supongo que cuando sean 20,000 XML pues se debe de tardar mas … de hecho en la aplicación de WebSrcaping también se tarda en descargar 1,000 o 4,000 XML hasta horas ….No los descarga en 3 minutos.....No se, ya que todo mundo haga uso del WS pues quizás se tarde mas en contestar..


Supongo que si no cambia de solicitud aceptada no se puede descargar ¿cierto?

R.. Es correcto el Estado debe de ser 3 para indicar que esta TERMINADA .



Porque si se deja el while tendrán que pasar horas (supongo) hasta que se puedan descargar esos archivos

R... Mi experiencia fue que al ciclarte en el Whiler para esperar a que te de el Estatus 3 va a tronar primero. … No dura ni 5 minutos y te manda un error . Es demasiado ciclaje, a menos que pongas algún SLEEP de 3 minutos para no consumir recursos.... .
En algunos casos manda algun error de excpcion y en otras te manda el valor de 0 en el Estado Token ya no es valido.
Aparentemente el Token solo tiene unos minutos de duración.


Este programa es un PROTOTIPO habria que partirlo en cuando menos 2 aplicaciones mucho mas amigables y funcionales.
Una que haga la peticion de Solicitud de los XML a descrgar y guardar los IDs
Y la Otra que verifique si ya esta terminada la solicitud con los IDs que se guardaron y de ser asi que la descrge el ZIP de lo contrario que mande un mensje de favor de reintentar mas tarde.

Mas o menos algo por el estilo.


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 18/09/2018 20:50:40
Hola que tal Halcon,

Muchas gracias por tus comentarios, entonces no queda mas que esperar, porque realmente no se cuantas facturas sean (ya pasaron mas de 20 min para la primera petición)

Yo ya pude hacer una interfase un poco mas amigable, si llega a funcionar, les adjunto el proyecto ya para que cada quien haga los cambios que guste.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 19/09/2018 03:57:01
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 19/09/2018 06:25:54
@Gerardo

Es un error diferente ese no me ha salido.

Alguno de ustedes tiene un snippet para generar el pfx desde .net? vb o c#

Y en cuanto al tiempo de descarga de los paquetes, en mis pruebas tarda de 0 a 12 horas con paquetes maximos de 5000.

Saludos chicos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois García (14 intervenciones) el 19/09/2018 06:34:34
Hola,

Sí te interesa el 13 de agosto les puse en este hilo como generar un pfx a partir de el cer, key y la clave privada. Está en C# usando Bouncy Castle el cual puedes obtener con Nuget.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 19/09/2018 06:54:55
@Courtois García

Si recuerdo tu post...


Pero me parece que publicaste la DLL, no tienes una guia de como usar esa libreria?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 19/09/2018 15:53:36
Aquí les dejo la url de descarga de la aplicación ya actualizada con todos los cambios y agregados que se le hicieron
Solo seria que le cambien el RFC y el Archivo PFX ...En teoría con eso debería de funcionar.
Y Cambiar el rango de fecha inicial y final.

Espero les sirva


https://drive.google.com/file/d/1MLlXK8FKykn-l4Z2SW_8VXqU8K9PqVoZ/view?usp=sharing


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 19/09/2018 17:13:23
Así como Halcón Divino pone su proyecto, yo también aporto el mío https://www.dropbox.com/s/11xcnh1vvfsevrp/PruebaRecuperarFacturas.zip?dl=0

-Tiene una simple interfas grafica
-Se debe elegir archivo pfx, ingresar rfc y contraseña
-Puedes crear peticiones (por rango de fechas emitidas o recibidas)
-Guarda las peticiones en un archivo xml
-Se pueden ver las peticiones y si se da click en descargar cambia el estado dependiendo lo que responda el sat

Espero que les sea de ayuda y gracias por todas sus aportaciones.
Pueden hacer los cambios que gusten
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois Garcia (14 intervenciones) el 19/09/2018 17:16:23
Hola,

La documentación de la biblioteca está en línea en el sitio (https://www.bouncycastle.org/csharp/index.html). Es algo confusa, lo que puse es la implementación de la biblioteca para que a partir de tu CER, tu KEY y tu contraseña puedas obtener el PFX. Te anexo un ejemplo de cómo podrías consumirla.

El escenario sería el siguiente: Tienes el CER, KEY y contraseña en algún repositorio.

1) Obtienes el arreglo de bytes de tu CER. Esto puede ser desde un repositorio o archivo físico
2) Conviertes el CER a una cadena en codificación base 64

1
2
3
4
5
6
7
8
public static string ObtenCertificado(string emisorRfc)
{
    using (var unidadTrabajo1 = new UnidadTrabajo())
    {
        var sello = unidadTrabajo1.Sello.Buscar(r => r.RFC == emisorRfc).FirstOrDefault();
        return Convert.ToBase64String(sello.Certificado);
    }
}

3) Obtienes el KEY de la misma forma que obtuviste el CER en base64
1
2
3
4
5
6
7
8
public static string ObtenKey(string emisorRfc)
{
    using (var unidadTrabajo1 = new UnidadTrabajo())
    {
        var sello = unidadTrabajo1.Sello.Buscar(r => r.RFC == emisorRfc).FirstOrDefault();
        return Convert.ToBase64String(sello.Llave);
    }
}

4) Una vez con el CER, KEY y tu contraseña, puedes llamar la función que comenté:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
public static byte[] CerKey2Pfx(string cerText, string keyText, string keyPass)
{
    try
    {
        byte[] pfxBytes = null;
 
        var certificado = new System.Security.Cryptography.X509Certificates.X509Certificate2(Convert.FromBase64String(cerText));
        var pllavePrivada = Org.BouncyCastle.Security.PrivateKeyFactory.DecryptKey(keyPass.ToCharArray(), Convert.FromBase64String(keyText));
 
        var certificadoBC = new Org.BouncyCastle.X509.X509Certificate(Org.BouncyCastle.Security.DotNetUtilities.FromX509Certificate(certificado).CertificateStructure);
        var acertificadoBC = new Org.BouncyCastle.Pkcs.X509CertificateEntry[1];
        acertificadoBC[0] = new Org.BouncyCastle.Pkcs.X509CertificateEntry(certificadoBC);
 
        var pfxStore = new Org.BouncyCastle.Pkcs.Pkcs12Store();
        pfxStore.SetKeyEntry("", new Org.BouncyCastle.Pkcs.AsymmetricKeyEntry(pllavePrivada), acertificadoBC);
        using (var pfxStream = new MemoryStream())
        {
            pfxStore.Save(pfxStream, keyPass.ToCharArray(), new Org.BouncyCastle.Security.SecureRandom());
            pfxBytes = pfxStream.ToArray();
        }
 
 
        var resultado = Org.BouncyCastle.Pkcs.Pkcs12Utilities.ConvertToDefiniteLength(pfxBytes, keyPass.ToCharArray());
 
        return resultado;
    }
    catch (Exception ex)
    {
        RegistraError(ex);
        return null;
    }
 
}

5) El PFX te lo regresa como un arreglo de bytes, sin embargo si necesitas mandarlo como cadena en base64 podrías hacer lo mismo que se hizo para el CER o KEY, "Convert.ToBase64String('El PFX')".

Si en determinado caso necesitan la biblioteca "BouncyCastle.Crypto.dll" se las puedo enviar vía correo electrónico, ya que en este momento como no soy miembro del foro no puedo adjuntar archivos.

Espero que sea de utilidad.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 19/09/2018 18:10:19
@Violeta, en un comentario que puse el 18 de agosto puse la liga a la dll de bouncycastle para que lo descargaran, la repito para que te evites la molestia de buscarla.

https://drive.google.com/open?id=1Fkh1YPtVqY_PP0JWe6sijbUClS54Y02f

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 19/09/2018 18:19:15
@Cocoliso eso fue sarcasmo?

Tu sabes que solo se le da clic al nickname y te manda a todos sus post.
--------------------------------

Que opinan de Chilkat?

para hacer el pfx


Es una libreria de paga cierto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 19/09/2018 20:51:03
@Violeta, de ninguna manera, me disculpo si dí a denotar eso.

En cuanto a lo de Chilkat ya está gratis esa dll, pero al menos a mí me pareció mas compacta la de BouncyCastle, pero si gustas aquí te dejo el enlace para ChilkatDotNet4.dll 32-bits NetFramework 4 https://drive.google.com/open?id=1PMhOoZ9zu-Vi5JxpL4XDiR4enNduTb2g.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anonimo (6 intervenciones) el 19/09/2018 21:07:10
Hola

Alguien a revisado el limite de descarga que menciona el SAT.

Código: 5002
Mensaje: Se agotó las solicitudes de por vida.
Descripción: Para el caso de descarga de tipo CFDI, se tiene un límite máximo para solicitudes con los mismos parámetros (Fecha inicial, Fecha Final, RfcEmisor, RfcReceptor).

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 19/09/2018 21:25:38
el sat tiene varios limites de solo descargar un cierto número de cfdis al dia por metadata te permite descargar mas y esa parecer ser otra restriccion de que hay un limite en el número de solicitudes con los mismos parámetros creo yo para evitar saturar al servidor limita la descarga
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois Garcia courtoisgarcia@gmail.com (14 intervenciones) el 19/09/2018 21:37:50
Hola Violeta,


Me atreví a modificar la aplicación de Alekz (espero no haber sido atrevido) e implementar cómo sería la autenticación por PFX y/o CER/KEY. ¿Cómo se los hago llegar?

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anonimo (6 intervenciones) el 19/09/2018 21:38:57
Gracias @Apis

En sus pruebas han intentado descargar un paquete con parámetros que ya han utilizado, osea que después de las 72 hrs de vigencia del paquete intentar mandar las mismos parámetros para descargar el paquete otra vez.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 19/09/2018 21:59:53
@Courtois Garcia

Hay varias formas.

-Adjuntar archivos aqui
-Dropbox
-Drive

Etc

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 19/09/2018 22:16:11
@Courtois Garcia


Intente pasar el código a VB NET

Pero hast aqui llegue, creo que tendre que usar C#

1
2
3
4
5
6
7
8
9
10
11
12
Dim cer As String = Convert.ToBase64String(IO.File.ReadAllBytes(pathcer))
Dim key As String = Convert.ToBase64String(IO.File.ReadAllBytes(pathkey))
Dim keyBytes As Byte() = Convert.FromBase64String(pathkey)
 
Dim certificado = New System.Security.Cryptography.X509Certificates.X509Certificate2(cer)
Dim pllavePrivada = Org.BouncyCastle.Security.PrivateKeyFactory.DecryptKey(keypass.ToCharArray(), keyBytes)
 
Dim certificadoBC = New Org.BouncyCastle.X509.X509Certificate(Org.BouncyCastle.Security.DotNetUtilities.FromX509Certificate(certificado).CertificateStructure)
 
//ERROR
Dim acertificadoBC As Org.BouncyCastle.X509.X509Certificate = Org.BouncyCastle.Pkcs.X509CertificateEntry[1]
acertificadoBC(0) = New Org.BouncyCastle.Pkcs.X509CertificateEntry(certificadoBC)

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois García courtoisgarcia@gmail.com (14 intervenciones) el 19/09/2018 22:20:52
Hola @Violeta,

Te dejo el vínculo de DropBox.

https://www.dropbox.com/sh/r2xz6x3gs6g8f9m/AAACSRWyA0y7Ccx_g4LW55Zna?dl=0

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 19/09/2018 22:35:21
@ Courtois García

Disculpa mi ignorancia pero cual fue tu modificación al proyecto?

Aqui?

1
2
3
4
5
6
7
8
9
10
11
string path, password;
if (args.Length == 0)
{
    path = @"C:\FielHerculesPFX\CSI121206SP0.pfx";
    password = "23456789";
}
else
{
    path = args[0];
    password = args[1];
}

Yo pense que te referias a crear el archivo PFX a partir de un cer+key+passkey

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois Garcia courtoisgarcia@gmail.com (14 intervenciones) el 19/09/2018 22:40:56
Hola,

Antes que nada espero no haber sobrepasado los límites al modificar el proyecto. La modificación no es muy grande, se agregó a la interface la posibilidad de operar usando el PFX (que ya tenías) más la posibilidad de usar el CER, KEY y contraseña. Así mismo modifiqué las clases agregando un campo denominado "_pfxBytes" el cual tiene el PFX cuando se genera a través del método "CerKey2Pfx" de la clase BouncyCastle para no estar regenerando el PFX en cada petición.

Cabe mencionar que el proyecto que modifiqué es el publicado por @Alekz. Si consideran conveniente también lo puedo poner en el proyecto de Halcón Divino.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 20/09/2018 00:12:22
Aquí les dejo la url de descarga del programa que convierte el Certificado y la Llave Privada a Formato PFX usando la librería de CHILKAT
Es un programa de consola en Framework 4.5 en C#


https://drive.google.com/file/d/1VdKXZPT9cKHszxGczaFrLWs7LWGhjodG/view?usp=sharing

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 20/09/2018 01:00:08
¿@Violeta dices que ya pasaste la mayor parte del proyecto a VB.NET, podrías pasármelo, por favor?

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 20/09/2018 04:25:01
@CocoLiso
Solo hacia pruebas con CerKey2Pfx pero no pude terminarla.

Es mejor trabajarla en C#

Pero el código que compartio @Courtois Garcia si funciona.


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Jesús Valera Durán (3 intervenciones) el 20/09/2018 16:01:31
En mi caso me funciono usar el OpenSsl, la instrucción es una sola línea

openssl pkcs12 -export -in archivo.cer -inkey archivo.key -out archivo.pfx


Espero que les sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 21/09/2018 06:33:46
Que versión de Visual Usan? he probado con varios de los archivos que han publicado y me manda este mismo error.

Ya lo probé con Visual Studio 2015 para Windows y con Visual Studio Community en Mac y en ambos tengo el mismo error.

y en otros me da este error:
Captura_de_pantalla_2018_09_20_a_la_s_23_24_01

Y de allí no pasa, a alguien le ha pasado?


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 21/09/2018 16:50:54
Que Horroooor, eso es posible????
o sea que pueden por decir "Banear" un RFC por exceso de solicitudes y ya nunca mas poder volver a descargar??????
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 21/09/2018 21:47:26
Hola si te banearon?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 21/09/2018 23:47:12
@Anonimo


No me ha pasado el error 5008.

Alguien sabe la cantidad de descargas limite del mismo periodo?


Y alguien sabe cuanto tiempo máximo tarda un paquete en tener una respuesta del SAT?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 22/09/2018 00:22:19
Un paquete de 1500 algo asi se tardo como 4 horas aproximadamente, tengo paquetes de mas facturas y ya lleva mas de 12 horas sin estar disponibles, por eso el rango esta muy abierto de 48 a 72 horas segun, no se como le este yendo a los demas.

Saludos
Ivan Reyes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 23/09/2018 17:58:06
@Hola chicos


Han solucionado este error:?

El sesgo ser dentro de +-cinco minutos.

Como saber la hora del servidor del SAT antes de invocar a los web services?

Captura-de-pantalla-2018-09-23-a-las-10.53.18

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan Reyes (20 intervenciones) el 23/09/2018 20:54:55
Con sincronacion automatica de tu pc con windows?, o algun servidor NTP, por otro lado has hecho descargas de archivos muy grandes?, arriba de 50 Mb o de 40 mil a 70 mil xml de un jalon?

Alguien a probado una descarga realmente masiva de varios miles de documentos.


Saludos
Ivan
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois García (14 intervenciones) el 23/09/2018 21:18:31
8 mil documentos. Aproximadamente 4 horas para procesar la solicitud, una vez procesada bastante rápido para obtener.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 23/09/2018 23:30:04
Hola Courtois, no 7 o 8 mil si los baja y no hay problema, pero en paquetes mas grande los resultados son impredecibles, de hecho tengo un paquete de 81 mil facturas que no quiere bajar, se queda colgada la peticion y no deja hacer nada, es decir ya no descarga.

Me sale algo asi.


error_1

y en la descarga lo mismo, o descarga incompleto, es decir a veces descarga unos 25 mb, a veces 30 mb, y ya se pierde el paquete, como si no estuviera haciendo buffer, y como si falta algo para mantener la conexion abierta en lo que transmite, ya coloque un buffer de 100 mb, pero aun asi se desconecta, cuando esta copiando el stream al filestream. Hecho pruebas con 25 mil documentos, y 87 mil documentos, son los paquetes que se cuelgan.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 24/09/2018 04:18:50
Hola podrías incrementar el timeout del web service o ir poniendo de rangos mas cortos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 24/09/2018 06:12:02
si es lo que he estado haciendo, que timeout tienes tu?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Jesus Valera (3 intervenciones) el 24/09/2018 19:19:09
También revisa el tamaño de los archivos que puedes recibir

1
2
3
4
<binding closeTimeout="00:20:00"
  openTimeout="00:30:00" receiveTimeout="00:30:00" sendTimeout="00:30:00"
  allowCookies="false" bypassProxyOnLocal="false" maxBufferPoolSize="33554432"
  maxReceivedMessageSize="33554432" useDefaultWebProxy="true" />
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 24/09/2018 20:08:25
Tengo 1 Gb

maxBufferSize="1073741824" maxReceivedMessageSize="1073741824"

Pero se queda colgado el WS del SAT, por eso preguntaba que es lo maximo que han descargado.

Saludos
Ivan
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 24/09/2018 20:36:15
Puedes probar descargar el archivo en partes para no tener un timeout tan alto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 24/09/2018 20:51:01
Acabo de hacer unas pruebas y posiblemente sean los servidores del SAT, ya que hasta la peticion de autenticacion esta tardando mas de lo que lo hacia anteriormente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 24/09/2018 21:36:54
Hola

El problema va mas alla tengo diferencias en los paquetes, es decir, en un paquete grande que solicite, segun el sat el paquete es de 30000 mil y tantos xml, y como ya lo habia descargado meses atras, realmente son 50 mil, y coincide con el tema de la metadata, es decir, los paquetes se estan armando mal, o algo esta pasando con el servicio. Era obvio que se iba a degradar, no se habia conectado nadie, despues que empezamos a conectarnos, se degrado, quien sabe que se rompio en el Azure, ojala se arregle pronto.

Saludos
Ivan
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anonimo (6 intervenciones) el 24/09/2018 21:45:40
Hola Iva,
Tu consulta de comprobantes fueron Emitidos o Recibidos?,
o quizás te pudieron haber limitado la descarga que menciona el SAT.

Código: 5002
Mensaje: Se agotó las solicitudes de por vida.
Descripción: Para el caso de descarga de tipo CFDI, se tiene un límite máximo para solicitudes con los mismos parámetros (Fecha inicial, Fecha Final, RfcEmisor, RfcReceptor).

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 24/09/2018 22:42:30
Son emitidos, y la descarga era por primera vez, recuerda que son paquetes iguales, por rango de fechas, seria complicado que pudieran saber cuantas veces descargaste un xml en cualquier paquete. Aparte el limite Descripción: Para el caso de descarga de tipo CFDI, se tiene un límite máximo para solicitudes con los mismos parámetros (Fecha inicial, Fecha Final, RfcEmisor, RfcReceptor). es por paquete, segun esto una vez que la vigencia del paquete ya haya concluido se puede volver a descargar otro paquete.

Si es como dices, entonces primero tendria que ser algo que este funcionando de forma correcta y estable, pareciera que las pruebas de los 100,000 los hicieron en un ambiente local o algo así.

Cual es el limite de documentos que has descargado sin problemas?

Saludos
Ivan
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 19
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 24/09/2018 23:06:39
las diferencias son, paquete del SAT 30 mil, descargados por el metodo anterior meses atras 50 mil

Se me fueron unos ceros de mas.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 25/09/2018 01:34:25
No saben si esta funcionando ahorita el WS?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por acsecins (2 intervenciones) el 03/10/2018 16:50:04
Ese mensaje que te manda el SAT es porque estás ejecutando solicitudes con los mismos filtros varias veces... trata de cambiar el día o la hora de los filtros y bingo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 05/10/2018 06:25:38
Chicos!!

Ahora si me esta pasando lo de @Ivan;

He realizado las siguientes solicitudes con el web service del SAT :

Solicitudes de 10,000 XML y solo baja 3000 XML
Solicitudes de 18,000 XML y solo baja 8000 XML.
Solicitudes de 30,000 XML y solo baja 10000 XML.


Alguien ha tenido un problema similar y como lo ha solucionado?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por Saul (1 intervención) el 09/10/2018 21:02:20
Hola, recién llego al hilo de este tema con el SAT. ¿Es necesario tener el RFC?. En la guía del de WebService del SAT(que poca ayuda nos da), no menciona nada al respecto. Por ahora sólo tengo la llave privada con su contraseña y el certificado, por lo que ya llegué a la creación del archivo .PFX.

He intentado desde SOAP, pero no logro autentificarme, desde este punto he utilizado la guía del SAT, por lo que obtengo el SignatureValue con: openssl dgst -sha1 -out sign.bin -sign KEY.PEM CadOri.txt, pero el valor de DigestValue desconozco como hacerlo desde el openssl. Es por esta razón que seguí este hilo con C#, pero por los datos que mencionó al inicio, son los único que tengo, pero me quedé estancado por el RFC.

Espero puedas ayudarme, aclarar ese punto.

Saludos cordiales.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha aumentado su posición en 2 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Daniel iscdaniel.gc@gmail.com (2 intervenciones) el 12/10/2018 00:45:51
Hola, buenas tardes.

Necesito hacer una aplicación para descargar los xml del sat, y me econtré con este foro, baje el código que amablemente compartieron, pero no he podido hacerlo funcionar, me marca el error 305 Certificado inválido, para crear el archivo PFX segui estos pasos https://blogs.sap.com/2013/01/05/como-crear-el-paquete-de-certificado-pfx. Alguien me podría orientar por favor, les agradezco mucho.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Alf (1 intervención) el 20/10/2018 02:51:12
Hola Violeta soy nuevo en el sitio, por favor como resolviste lo del evento 305??? gracias y disculpa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Yoyoman (7 intervenciones) el 07/11/2018 19:54:53
En mi caso yo tenia ese error porque el PFX lo estaba generando con los CSD con lo que mis clientes timbran y no con la FIEL, en cuanto use la FIEL ya pude sobre pasar ese error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Darozep (1 intervención) el 08/11/2018 00:16:56
Yo también me topé con el mismo error, también en Visual Studio Community en Mac, encontraste la forma de solucionarlo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 25/09/2018 01:32:59
Les funciona ahorita el WS yo ando estudiando y probando el código, pero se que queda esperando cuando recibe el token.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 27/09/2018 01:30:41
Estoy haciendo un NUEVO proyecto Windows Form para la descarga de los XML tomando como base el proyecto de consola que ya tenemos.

Estoy tratando de establecer las urls para las referencias web pero no puedo hacerlo

Como puedo hacerle para agregar las urls de los servicios web al NUEVO proyecto ???


WebReference
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 27/09/2018 05:12:02
Estaba analizando el proyecto de consola SAT-WS ... estoy viendo que no tiene Referencias Web lo que tiene es un Connected Services entonces estoy entendiendo que nunca podre agregar las urls por medio de las referencias web.

Hasta lo que yo se estos WS son de tipo "WCF" o "Windows Communication Foundation" y las urls se tienen que agregar por medio de Connected Services


Lo que no se como hacerlo .nunca he usado los SERVICIOS CONECTADOS ( Connected Services )


Encontré este blog que aparentemente explica como hacerlo pero no se si este yo en lo correcto .... quizás estoy equivocado .

https://blogs.msdn.microsoft.com/webdev/2015/12/15/wcf-connected-service-visual-studio-extension-preview-for-asp-net-5-projects/

El problema que tuve es que al seguir los pasos de este blog me tope con que no encuentro la Extensión Visual Studio WCF Connected Service para descargarla e instalarla y pues ya no pude seguir con los demás pasos ... según yo si estoy cumpliendo con los PRE REQUISITOS que indica el blog.

Quien ya lo hizo ….. Alguien que me pueda explicar como agregar las 4 urls de los WS del SAT a los SERVICIOS CONECTADOS ( Connected Services )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks alejandrosamaniego05@gmail.com (34 intervenciones) el 27/09/2018 05:21:04
Que tal Halcón,

Para poder hacer uso de los servicios (como no están activos de momento no es posible directamente), puedes convertir el proyecto de consola en una de Class Library, eso lo haces haciendo click secundario en la solución y dando click en propiedades, en la parte de aplicación donde dice Console App, la cambias a class library, solo recompilas todo y listo tienes tu librería para poderla usar donde gustes, también deberás agregar los endpoint y prácticamente todo el app.config a tu nueva aplicación, si tienes dudas mándame un correo, te respondería hasta el día de mañana (ya me voy a dormir xD)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 27/09/2018 05:53:49
MUCHAS GRACIAS ALEKS

Esta muy bueno el TRUCO porque ya tendría una Librería y la pudiera referenciar desde cualquier proyecto windows form

Ya mañana lo hago y si tengo dudas te contacto .

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Courtois García (14 intervenciones) el 27/09/2018 06:07:04
Hola,

El consumo de un servicio de WCF es muy parecido a los servicios web ASMX que se usaban en la versión 2 del framework. Aquí mas que nada el problema es que para que puedas agregar la referencia web o el endpoint los servicios deben estar publicando su especificación WSDL para que el framework pueda generarte las clases para consumir el servicio de forma más transparente (que es algo que el servicio del SAT no está publicando). Sin embargo la solución de Aleks es adecuada y puede funcionar siempre y cuando los servicios no cambien (que en verdad espero que no cambien) y he estado aislando eso desde que se ha avanzado en este hilo. Desafortunadamente por la carga de trabajo no me ha sido avanzar como quisiera sin embargo espero en Dios poder concluirlo en esta semana y con todo gusto lo hago disponible por si lo desean.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 15/10/2018 16:39:37
Hola que tal,

¿Han podido realizar descargas?
Últimamente solo me dice que mi solicitud aun no esta lista, pero ya pasaron mas de 42 horas.

¿Alguien mas con este problema?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 15/10/2018 20:46:42
Ningún problema, @Aleks...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 15/10/2018 21:12:07
Hice 2 solicitudes el viernes, creen que solo cuente días hábiles?

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anonimo (6 intervenciones) el 19/10/2018 16:41:47
Hola a todos,

@Aleks...

Has podido descargar? o aun te muestra que solo se a aceptado la verificación?

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 19/10/2018 18:54:24
Si, ya me dejo descargar, pero se tardo como 4 o 5 días en procesar la solicitud
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha disminuido su posición en 7 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Raymond (4 intervenciones) el 14/11/2018 22:31:56
Hola a todos. Tengo un error al momento de usar la descarga de CFDI por web service el error es el siguiente:

System.IO.FileLoadException: 'No se puede cargar el archivo o ensamblado 'sat-ws, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' ni una de sus dependencias. Se necesita un ensamblado con nombre seguro. (Excepción de HRESULT: 0x80131044)'

Estoy con C#. Alguien tiene idea de qué es lo que está pasando?

Gracias, Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 14/11/2018 23:33:15
Te respondí a tu correo Raymond
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Alejandro (10 intervenciones) el 27/09/2018 17:53:29
Hola, buen dia, estoy realizando peticiones para descargar, pero mi petición aun no ha sido atendida ya casi lleva las 24 horas y nada y pues es un paquete pequeño, como de 4000 xml mas o menos, he leido que a algunos con 1000 xml les atendieron en una hora o algo asi. Ahorita alguien ha experimentado algun detalle en el servicio?

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 28/09/2018 17:54:07
Hola que tal.

Yo estoy haciendo pruebas a consumir los Webservices con CURL.
Espero a alguien le sirva:

Se me ocurrió CURL porque curl lo puedes usar donde sea o sea en cualquier S.O.

Esta es la manera en que lo estoy invocando (el Webservice de Autenticación):

1
2
3
4
5
6
7
8
9
Dim strEjecucion As String = "curl -v -H "+ StrComillas + "POST /Autenticacion/Autenticacion.svc HTTP/1.1" +StrComillas _
  + " -H " + StrComillas + "Content-Type: text/xml; charset=utf-8" + StrComillas _
  + " -H " + StrComillas + "SOAPAction: http://DescargaMasivaTerceros.gob.mx/IAutenticacion/Autentica" + StrComillas _
  + " -H " + StrComillas + "Host: cfdidescargamasivasolicitud.clouda.sat.gob.mx" +StrComillas _
  + " -H " + StrComillas + "Expect: 100-continue" + StrComillas _
  + " -H " + StrComillas + "Accept-Encoding: gzip-deflate" +StrComillas _
  + " -H " + StrComillas + "Connection: Keep-Alive" +StrComillas _
  + " -E " + StrComillas + Certificado.ShellPath + ":TuContraseñaDeCertificado" + StrComillas _
  + " -d " + "@"+ SoapEnvelope.ShellPath + " " + "https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc"

Donde:
Certificado.Path: es la ruta donde tienes almacenado tu Certificado en formato .PEM (Primero hay que transformar el CER y el KEY a PEM cada uno y luego unirlos en un PFX, después transformar el PFX a PEM, Todo esto con OpenSSL).
Ya que curl necesita certificados PEM para funcionar y no PFX, hasta donde he leído.

Tu ContraseñaDeCertificado: Es la contraseña del Certificado a utilizar

@SOAPEnvelope.ShellPath: Es el Request.XML con los datos del Ensobretado del SOAP, o sea la petición al servidor.


NOTA: Nótese que ShellPath es un atributo de mi lenguaje de programación para buscar la Ruta del Archivo.
-v Para ver la actividad del Servidor (Modo Verbose, o Verboso)
-H son Los Request Headers que se tienen que inyectar al Servidor.
-E para establecer el Certificado con el cual se va a identificar, seguido de "Dos puntos" y la Contraseña de dicho certificado
-d (data), la Petición al Servidor, llámese Request o Ensobretado SOAP, Nótese que lleva una arroba antes, para que funcione.


Como Request Inicial puse este:
1
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><s:Header><o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><u:Timestamp u:Id="_0"><u:Created>2018-09-26T15:40:02.763Z</u:Created><u:Expires>2018-09-26T15:45:02.763Z</u:Expires></u:Timestamp><o:BinarySecurityToken u:Id="uuid-7de252ad-a383-458d-a467-8aadb076df4f-1" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">MIIFxTCCA62gAwIBAgIUMjAwMDEwMDAwMDAzMDAwMjI4MTUwDQYJKoZIhvcNAQELBQAwggFmMSAwHgYDVQQDDBdBLkMuIDIgZGUgcHJ1ZWJhcyg0MDk2KTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMSkwJwYJKoZIhvcNAQkBFhphc2lzbmV0QHBydWViYXMuc2F0LmdvYi5teDEmMCQGA1UECQwdQXYuIEhpZGFsZ28gNzcsIENvbC4gR3VlcnJlcm8xDjAMBgNVBBEMBTA2MzAwMQswCQYDVQQGEwJNWDEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDESMBAGA1UEBwwJQ295b2Fjw6FuMRUwEwYDVQQtEwxTQVQ5NzA3MDFOTjMxITAfBgkqhkiG9w0BCQIMElJlc3BvbnNhYmxlOiBBQ0RNQTAeFw0xNjEwMjUyMTUyMTFaFw0yMDEwMjUyMTUyMTFaMIGxMRowGAYDVQQDExFDSU5ERU1FWCBTQSBERSBDVjEaMBgGA1UEKRMRQ0lOREVNRVggU0EgREUgQ1YxGjAYBgNVBAoTEUNJTkRFTUVYIFNBIERFIENWMSUwIwYDVQQtExxMQU43MDA4MTczUjUgLyBGVUFCNzcwMTE3QlhBMR4wHAYDVQQFExUgLyBGVUFCNzcwMTE3TURGUk5OMDkxFDASBgNVBAsUC1BydWViYV9DRkRJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgvvCiCFDFVaYX7xdVRhp/38ULWto/LKDSZy1yrXKpaqFXqERJWF78YHKf3N5GBoXgzwFPuDX+5kvY5wtYNxx/Owu2shNZqFFh6EKsysQMeP5rz6kE1gFYenaPEUP9zj+h0bL3xR5aqoTsqGF24mKBLoiaK44pXBzGzgsxZishVJVM6XbzNJVonEUNbI25DhgWAd86f2aU3BmOH2K1RZx41dtTT56UsszJls4tPFODr/caWuZEuUvLp1M3nj7Dyu88mhD2f+1fA/g7kzcU/1tcpFXF/rIy93APvkU72jwvkrnprzs+SnG81+/F16ahuGsb2EZ88dKHwqxEkwzhMyTbQIDAQABox0wGzAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIGwDANBgkqhkiG9w0BAQsFAAOCAgEAJ/xkL8I+fpilZP+9aO8n93+20XxVomLJjeSL+Ng2ErL2GgatpLuN5JknFBkZAhxVIgMaTS23zzk1RLtRaYvH83lBH5E+M+kEjFGp14Fne1iV2Pm3vL4jeLmzHgY1Kf5HmeVrrp4PU7WQg16VpyHaJ/eonPNiEBUjcyQ1iFfkzJmnSJvDGtfQK2TiEolDJApYv0OWdm4is9Bsfi9j6lI9/T6MNZ+/LM2L/t72Vau4r7m94JDEzaO3A0wHAtQ97fjBfBiO5M8AEISAV7eZidIl3iaJJHkQbBYiiW2gikreUZKPUX0HmlnIqqQcBJhWKRu6Nqk6aZBTETLLpGrvF9OArV1JSsbdw/ZH+P88RAt5em5/gjwwtFlNHyiKG5w+UFpaZOK3gZP0su0sa6dlPeQ9EL4JlFkGqQCgSQ+NOsXqaOavgoP5VLykLwuGnwIUnuhBTVeDbzpgrg9LuF5dYp/zs+Y9ScJqe5VMAagLSYTShNtN8luV7LvxF9pgWwZdcM7lUwqJmUddCiZqdngg3vzTactMToG16gZA4CWnMgbU4E+r541+FNMpgAZNvs2CiW/eApfaaQojsZEAHDsDv4L5n3M1CC7fYjE/d61aSng1LaO6T1mh+dEfPvLzp7zyzz+UgWMhi5Cs4pcXx1eic5r7uxPoBwcCTt3YI1jKVVnV7/w=</o:BinarySecurityToken><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/><Reference URI="#_0"><Transforms><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><DigestValue>5dsghtYrY4kzB/4NrESIrCjan3M=</DigestValue></Reference></SignedInfo><SignatureValue>fqU4yPgeaS4ml3lykAO6FzQk/k7JMBXPXd+TH94YsJZbVIp2JXdz2iqh9ncPN9RZzP1hiWJqPXmIp+Zaxe9ylCr0x239KkI5TpRlScyZT2P+LatiXLA8kQp/eRJzk43/nPeKz3DRfXq7H8ttLqW1ZCWstLd67fXhaYhVr1wBVfsQ4YrE3Gvr3ymXKMN8k940VzE49HKH1bLPMO6VExIGvoTuziV2oaIVZACdlVcjilEEFGXQBJX0jaJ9oBjnUT0KOABjtvdfGCv/UYoa0OyNyR3ld4vFsj64Ekj+VOIx3f5a4ghde1AeJt6o4HzsEL10kzAAW2BklwqpUeWmLzeV/Q==</SignatureValue><KeyInfo><o:SecurityTokenReference><o:Reference ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" URI="#uuid-7de252ad-a383-458d-a467-8aadb076df4f-1"/></o:SecurityTokenReference></KeyInfo></Signature></o:Security></s:Header><s:Body><Autentica xmlns="http://DescargaMasivaTerceros.gob.mx"/></s:Body></s:Envelope>

Para probar la actividad del Servidor, a ver si se obtiene Respuesta y si da respuesta, como este es un Request distinto al que debería ser, nos da un mensaje de error:
1
2
3
4
5
6
7
8
9
10
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
       <s:Fault>
           <faultcode xmlns:a="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
               a:InvalidSecurity
           </faultcode>
           <faultstring xml:lang="en-US">An error occurred when verifying security for the message.</faultstring>
       </s:Fault>
    </s:Body>
</s:Envelope>


Lo cual a mi parecer es bueno porque ya estamos interactuando con el Webservice,

A hora a crear el Request(Ensobretado):

Este es un Ejemplo de Request:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Header>
<o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<u:Timestamp u:Id="_0">
<u:Created>2018-09-28T20:36:14.000Z</u:Created>
<u:Expires>2018-09-28T20:41:14.000Z</u:Expires>
</u:Timestamp><o:BinarySecurityToken u:Id="uuid-7de252ad-a383-458d-a467-8aadb076df4f-1" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">
MIIGpzCCBI+gAwIBAgIUMDAwMDEwMDAwMDA0MDc0MzM1MDIwDQYJKoZIhvcNAQELBQAwggGyMTgwNgYDVQQDDC9BLkMuIGRlbCBTZXJ2aWNpbyBkZSBBZG1pbmlzdHJhY2nDs24gVHJpYnV0YXJpYTEvMC0GA1UECgwmU2VydmljaW8gZGUgQWRtaW5pc3RyYWNpw7NuIFRyaWJ1dGFyaWExODA2BgNVBAsML0FkbWluaXN0cmFjacOzbiBkZSBTZWd1cmlkYWQgZGUgbGEgSW5mb3JtYWNpw7NuMR8wHQYJKoZIhvcNAQkBFhBhY29kc0BzYXQuZ29iLm14MSYwJAYDVQQJDB1Bdi4gSGlkYWxnbyA3NywgQ29sLiBHdWVycmVybzEOMAwGA1UEEQwFMDYzMDAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBEaXN0cml0byBGZWRlcmFsMRQwEgYDVQQHDAtDdWF1aHTDqW1vYzEVMBMGA1UELRMMU0FUOTcwNzAxTk4zMV0wWwYJKoZIhvcNAQkCDE5SZXNwb25zYWJsZTogQWRtaW5pc3RyYWNpw7NuIENlbnRyYWwgZGUgU2VydmljaW9zIFRyaWJ1dGFyaW9zIGFsIENvbnRyaWJ1eWVudGUwHhcNMTcwOTA1MDAwMzE3WhcNMjEwOTA1MDAwMzU3WjCCARQxMTAvBgNVBAMTKENPTlNUUlVDVE9SQSBZIEVESUZJQ0FET1JBIDIwMTMgU0EgREUgQ1YxMTAvBgNVBCkTKENPTlNUUlVDVE9SQSBZIEVESUZJQ0FET1JBIDIwMTMgU0EgREUgQ1YxMTAvBgNVBAoTKENPTlNUUlVDVE9SQSBZIEVESUZJQ0FET1JBIDIwMTMgU0EgREUgQ1YxCzAJBgNVBAYTAk1YMSUwIwYJKoZIhvcNAQkBFhZqb3NlX211Z29AeWFob28uY29tLm14MSUwIwYDVQQtExxDRUQxMzA4MjhNSjggLyBSRU1KNjUwNzIzVE43MR4wHAYDVQQFExUgLyBSRU1HNjUwNzIzSE1DWVJEMDUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbmufxeHB+qt7yLtQfxrpHtTi/1oCSQDMY0sWTADFQX/jYhrnLXNMBpGu/eYD0znYS53Fjyj6swoha5/u6OAF+f8BF0zOsN7ptp/MDPxN1wtirCc51Y2Ehqi5APFZ4gR3/DmT7vJrZiGyYpzNdqT4zjGC7Nk5L36ukLw6R4j71QrDEczd5v4nhmg/NtTubttLsxPhySgaZsxj/ialmUcojjQqpOnrPwOcr8vGCD95tmhPYtp1/TDtsnhFJZBGSlXu45ToKMbMKIR9jh48D+uoiQ0Wca52GnuyN+yxBEJbyrp4AQP1No7qAJGeRyPZJab0iliFX+QX9cHKj4Id7sZmpAgMBAAGjTzBNMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgPYMBEGCWCGSAGG+EIBAQQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDBAYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggIBAILliSVURv9I4fScZle1uIb+aPl3uxLeV9CWp/j8QJBYUoS0CN+bkIAf0F3wja4iFD7lu8nnDlg8ARElyWyHYZJf83PZVR2H8EXk6b9CXImfXo5pCCjDem5LRu7jjkFpyzZtP6pPUkqXMq3MndNGNKVTRDaj7ecYxer6ficmxnXWgLjJbqFsqAJFTtWt8bUX1B0OEXzHZiAwsnffuIud0MLTfwqJnj2NGDTcgEjRiSwH4xMwy6PHaSy8kfdfuHVvl4usyE8RM/76HcuQr5qYKvAlfrENBURsFpfXCD7HjECdOAj3NOrh80P2ALpzWFXigAlfjnjBFvFN+Jb+N3NWdkTHhBYUTDZ+VNOV9MGagnm709t1C3rSGFNykLXcn3yg+I6io/Qw39sPlm3byUHSowy/Sy6owqXTEwr3bpDTq21eYplQIcrUrWq6jmknhpmtU5BG6VHnJrduS6O9+xu6Hk9GeMXyRsDUi0QrpUd/RIQoWqLfAnzNrZYsT4qAjyFb331N03KnerCdItV1lIW1DKuimggt/dxI4Y6MnErXXcgP/P2aB5VpiOHknTHiNub/ewvVjYWo06HpxcIvRRD+EpfuiGU1EBBqi1BIHOiSAzoekGPktfcycxM9/UI2RmKNkHKJGaG12pm9YqD1BHB79+h+WqwCEAd48gD7XOcZWhJr
</o:BinarySecurityToken>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<Reference URI="#_0">
<Transforms>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>xlVDIOV07zh6Lr2Ni/nAa5eJkuo=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>MzAzMDMwMzAzMTMwMzAzMDMwMzAzMDM0MzAzNzM0MzMzMzM1MzAzMg==</SignatureValue>
<KeyInfo>
<o:SecurityTokenReference>
<o:Reference ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" URI="#uuid-7de252ad-a383-458d-a467-8aadb076df4f-1"/>
</o:SecurityTokenReference>
</KeyInfo>
</Signature>
</o:Security>
<To s:MustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">http://DescargaMasivaTerceros.gob.mx/IAutenticacion/Autentica</Action></s:Header>
<s:Body>
<Autentica xmlns="http://DescargaMasivaTerceros.gob.mx"/>
</s:Body>
</s:Envelope>

En el TimeStamp, deben de imprimir la hora actual y establecer el Huso Horario GMT +5.
Debe llevar una T entre Día y Hora
Después de los segundos, nótese que lleva milisegundos, esto es porque está expresado en UNIXTime, aunque en varios lenguajes como XOJO o Delphi no es posible expresar milisegundos, así que le ponemos .000Z después de la fecha

En el Expires:
Igual a el Created, salvo que se le suman 5 minutos mas.

En el Contenido del BinaryToken, se hace codifica El certificado entero en Base64

En el Digest Value: Se codifica en SHA1 el nodo Timestamp, luego se codifica en Base64

En donde tengo Duda Es en SignatureValue, Yo saqué el <Modulus> del Archivo KEY y le metí codificación Base64.




Luego se ejecuta y si todo sale bien se debería tener una respuesta, que no he logrado aun, siento que me falta en Signature Value.

Pero debería arrojar una Respuesta como esta el servidor:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<s:Header>
<o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<u:Timestamp u:Id="_0">
<u:Created>2018-09-26T15:40:11.540Z</u:Created>
<u:Expires>2018-09-26T15:45:11.540Z</u:Expires>
</u:Timestamp>
</o:Security>
</s:Header>
<s:Body>
<AutenticaResponse xmlns="http://DescargaMasivaTerceros.gob.mx">
<AutenticaResult>eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE1Mzc5NzY0MTEsImV4cCI6MTUzNzk3NzAxMSwiaWF0IjoxNTM3OTc2NDExLCJpc3MiOiJMb2FkU29saWNpdHVkRGVjYXJnYU1hc2l2YVRlcmNlcm9zIiwiYWN0b3J0IjoiMzIzMDMwMzAzMTMwMzAzMDMwMzAzMDMzMzAzMDMwMzIzMjM4MzEzNSJ9.TDoWDG-FZw1pPNB_fLH64nDCpaJay7Yq361-GDC11NU%26wrap_subject%3d3230303031303030303030333030303232383135</AutenticaResult>
</AutenticaResponse>
</s:Body>
</s:Envelope>

Les comparto esto, por si alguien quiere investigar también para hacer funcionar el proyecto en otros lenguajes de programación o igual en Visual mismo.

Por mi parte les seguiré informando mis resultados.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 28/09/2018 18:25:46
Aparentemente el Signature Value del mismo modo se firman los CFDi's para emitirlos, pero lo que quiero yo saber es de donde lo sacan?

Lo sacan del Certificado o del KEY o de que parte?
y que parte?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 28/09/2018 20:34:51
Estoy viendo que el Signature Value viene de un cálculo que se hace con OpenSSL

asi:

1
openssl dgst -sha1 -out sign.bin -sign KEY.PEM CadOri.txt

Donde:

1) dgst o Digest
2) -sha1 es el Tipo de Encripción, yo pensé que sería md5, pero no, es SHA1
3) -out sign.bin Le indicamos el nombre del Sello con cocha encripción, cuyo nombre será "sign.bin"
4) KEY.pem es el Archivo .KEY de la FIEL o e.Firma
5) CadOri.txt es este segmento de código que vamos a firmar, que serían los siguientes nodos:

1
<SignedInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/><SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/><Reference URI="#_0"><Transforms><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/><DigestValue>iZr7Z5WND4/b4cPlJZj19KbtObQ=</DigestValue></Reference></SignedInfo>

Acto seguido, se codifica en Base64 y se inyecta en el Request
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 29/09/2018 02:02:38
No se compliquen con el pfx, usen el bouncycastle para generarlo y pongan la misma clave de entrada para la de salida. Comentarios anteriores ya se puso un ejemplo y la dll para .NET.

Tip: bouncycastle sí o sí necesita el pass de salida para generar el pfx.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Crackneo (4 intervenciones) el 03/10/2018 16:16:39
var resultado = Org.BouncyCastle.Pkcs.Pkcs12Utilities.ConvertToDefiniteLength(pfxBytes, keyPass.ToCharArray());

// byte[] certData = resultado.Export(X509ContentType.Pfx, "MyPassword");
File.WriteAllBytes(@"C:\MyCert.pfx", resultado);

y continuamos usando el proyecto, que solo solicita el PFX
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 01/10/2018 19:48:00
Efectivamente el Sello Digital que va en el <Signature Value> es el resultado del Computo del nodo SignedInfo
El cual debe firmarse con la KEY, transformada en formato .PEM
CON OPENSSL.

Una vez Firmado el archivo, obtendremos un Sello en Binario.
Acto seguido lo codificamos a Base64

Y ahora si lo incluimos en el Request.

NOTA: Por si no lo habían notado la Hora del Servidor de Descargas es 5 horas Mayor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Rafael
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Rafael (57 intervenciones) el 05/10/2018 16:20:08
AMIGOS BUEN DIA LES CMPARTO EL CODIGO PARA GENERAR EL ARCHIVO PFX CON OPENSSL, AL IGUAL QUE NO ES NECESARIO INSTALAR EL OPENSSL, ASI COMO TAMBIEN DESDE LA SEMANA PASADA TRATE DE CORRER EL CODIGO QUE COMPARTIERON PERO HASTA EL MOMENTO NO HE PODIDO DESCARGAR NINGUN XML DESDE LA SEMANA PASADA, SI ME MANDA LAS SOLIC ITUDES CON U ID PERO NO ME DESCARGA NADA, ESPERO ME PUEDAN COMPARTIR EL CODIGO PARA PODER CONVERTIRLO EN VB.NET, AQUI LES ADJUNTO EL CODIGO DE GENERACION PFX, SALUDOS.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 05/10/2018 18:01:31
Que tal, @Rafael, te habias perdido. Ahora que está a punto de quedar obsoleto la descarga por scrap ¿podrías compartir como accesar al sat por medio de la fiel con VB.Net?

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Rafael
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Rafael (57 intervenciones) el 30/01/2019 17:13:28
ESCRIBEME AL CORREO DE contacto@rlsistemas.com.mx PARA ENVIARTE EL CODIGO CON GUSTO YA QUE NO HE PODIDO ADJUNTARLO Y ENVIARLO AL FORO.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Richard
Val: 9
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Richard (6 intervenciones) el 04/10/2018 17:07:11
Saludos, de donde obtienes este valor: u:Id="uuid-7de252ad-a383-458d-a467-8aadb076df4f-1" en el nodo de o:BinarySecurityToken?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/10/2018 00:56:02
Richard, hasta donde he leído, es un Valor al azar pero que cumpla con esta nomenclatura, para efectos de indicación dentro del ensobretado del XML Request.

Recordemos que el sistema de peticiones a este Webservices es WCF o del tipo SOAP.
Por eso es que se le hace una petición al Servidor haciendo POST a la URL del SVC publicado por el SAT.

Asi que por lo tanto debemos indicarle los parámetros de los headers que debe recibir el Server, asi le decimos como es que debe de responder.

Y el Request se manda como un data, y es simple y llanamente un SOAP-Envelope, el cual va firmado digitalmente.
En el Signature Value va el Nodo SignedInfo hasheado en SHA-1 y luego codificado a Base64

En el Digest Value va hasheado el nodo TimeStamp. y luego se codifica a Base64

En el Binary Token va el Base64 del CER del Certificado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Richard
Val: 9
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Richard (6 intervenciones) el 12/10/2018 19:20:00
si ya le puse un generador de uids porque si repites uno que hayas usado te rechaza la autenticación
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por acsecins (2 intervenciones) el 03/10/2018 16:47:30
Es correcto a mi me paso lo mismo hasta baje varias versiones del visual studio y nada... tuve que basarme de la misma solución y generar la librería que comentan.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 05/10/2018 17:56:29
hicos!!

Ahora si me esta pasando lo de @Ivan;

He realizado las siguientes solicitudes con el web service del SAT :

Solicitudes de 10,000 XML y solo baja 3000 XML
Solicitudes de 18,000 XML y solo baja 8000 XML.
Solicitudes de 30,000 XML y solo baja 10000 XML.


Alguien ha tenido un problema similar y como lo ha solucionado?

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Ivan Reyes (20 intervenciones) el 05/10/2018 18:51:00
Hola Violeta

Es el armando de paquete, no es que la descarga sea incompleta, el armado de los paquetes por parte del SAT esta incorrecta.

Saludos
Ivan Reyes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 05/10/2018 19:54:11
@Ivan

Entonces es el SAT?

Entonces hasta cuantos XML se pueden descargar con certeza?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Ivan Reyes (20 intervenciones) el 12/10/2018 02:46:31
En un momento pense que era eso, realmente el problema es la descarga y como lo descarga el stream, digamos que un rango de 5 a 8 mil documentos es seguro, y peticiones mas grandes descarga solo 25 mb, por alguna razon pienso que en el responde manda varios paquetes de 25 mb o algo asi, y como nosotros solo almacenamos el primero es pq no se descarga de forma completa.

Saludos
Ivan
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 10/10/2018 00:58:14
No será que dentro de ese paquete vengan retenciones?

Acuérdense que en la literatura del SAT respecto a las URLs de servicio, hay una especial para obtener las retenciones.

Entiendo yo que esas hay que descargarlas por separado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Richard
Val: 9
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Richard (6 intervenciones) el 12/10/2018 21:25:25
ya pude autenticarme usando chilkat pero al intentarlo hacer con curl desde la ventana de comandos me devuelve un archivo con caracteres raros, lo raro es que si mando mal el xml si me responde con un xml. les paso como ejecuto el curl

1
>curl -v -H "POST /Autenticacion/Autenticacion.svc HTTP/1.1" -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction: http://DescargaMasivaTerceros.gob.mx/IAutenticacion/Autentica" -H "Host: cfdidescargamasivasolicitud.clouda.sat.gob.mx" -H "Expect: 100-continue" -H "Accept-Encoding: gzip-deflate" -H "Connection: Keep-Alive" -E "pfx.pem:mypass" -d @pruebasoap.xml https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc -o respu.txt
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 13/10/2018 06:07:49
Apoco puedes usar un PFX con CURL? esa no me la sabia.

Yo le uso un PEM de Certificado extraído del PFX, y me sale esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
 
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 40.124.2.194...
* TCP_NODELAY set
* Connected to cfdidescargamasivasolicitud.clouda.sat.gob.mx (40.124.2.194) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
} [251 bytes data]
* TLSv1.2 (IN), TLS handshake, Server hello (2):
{ [90 bytes data]
* TLSv1.2 (IN), TLS handshake, Certificate (11):
{ [2443 bytes data]
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
{ [300 bytes data]
* TLSv1.2 (IN), TLS handshake, Server finished (14):
{ [4 bytes data]
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
} [37 bytes data]
* TLSv1.2 (OUT), TLS change cipher, Client hello (1):
} [1 bytes data]
* TLSv1.2 (OUT), TLS handshake, Finished (20):
} [16 bytes data]
* TLSv1.2 (IN), TLS change cipher, Client hello (1):
{ [1 bytes data]
* TLSv1.2 (IN), TLS handshake, Finished (20):
{ [16 bytes data]
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* ALPN, server accepted to use h2
* Server certificate:
*  subject: C=MX; ST=Distrito Federal; L=Mexico; O=Servicio de Administraci� Tributaria; CN=*.clouda.sat.gob.mx
*  start date: Dec 26 16:50:05 2016 GMT
*  expire date: Dec 27 16:50:05 2018 GMT
*  subjectAltName: host "cfdidescargamasivasolicitud.clouda.sat.gob.mx" matched cert's "*.clouda.sat.gob.mx"
*  issuer: C=US; O=Trend Micro Inc; CN=Trend Micro S2 CA
*  SSL certificate verify ok.
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x7fdc66005600)
> POST /Autenticacion/Autenticacion.svc HTTP/2
> Host: cfdidescargamasivasolicitud.clouda.sat.gob.mx
> User-Agent: curl/7.54.0
> Accept: */*
> Content-Type: text/xml; charset=utf-8
> SOAPAction: http://DescargaMasivaTerceros.gob.mx/IAutenticacion/Autentica
> Expect: 100-continue
> Accept-Encoding: gzip-deflate
> Connection: Keep-Alive
> Content-Length: 4988
>
* Connection state changed (MAX_CONCURRENT_STREAMS updated)!
 
  0  4988    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0< HTTP/2 100
} [4988 bytes data]
* We are completely uploaded and fine
 
100  4988    0     0  100  4988      0   2585  0:00:01  0:00:01 --:--:--  2584< HTTP/2 400
< server: Microsoft-IIS/10.0
< x-powered-by: ASP.NET
< date: Sat, 13 Oct 2018 04:07:10 GMT
< content-length: 0
<
{ [0 bytes data]
 
100  4988    0     0  100  4988      0   2582  0:00:01  0:00:01 --:--:--  2581
* Connection #0 to host cfdidescargamasivasolicitud.clouda.sat.gob.mx left intact

No son caracteres raros, cuando usas el modo -v, es para ver lo que acontece en el Server, ósea modo verbose.

Si te sale algo similar a lo que postee.
Es razón de dos cosas:

1) El servidor si te está contestando
2) Al igual que yo necesitas seguir trabajando en tu Digest Value o en el Signature Value, si lo hacemos exitosamente, después de los mensajes del servidor, debería contestarnos el Server a modo de otro SOAP Envelope.

Seguiré trabajando en esto y espero que mas acá en este foro lo hagan, vamos por buen camino. yo también estoy usando los plugins de Chilkat.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Richard
Val: 9
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Richard (6 intervenciones) el 13/10/2018 18:40:01
Es um pfx convertido en pem pfx.pem, a lo que me refiero con caracteres raros es esta respuesta que obtiene al agregarle -o respu.txt al final de la instrucción, el contenido del archivo respu.txt es código maquina no legible.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por gamaliel mendez (3 intervenciones) el 09/11/2018 16:49:10
hola amigo podrías postear el ejemplo para autenticarse con chilkat
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 09/11/2018 18:06:58
Gamaliel

Esta es la url de como convertir la FILE a PFX usando el Chilkat

https://drive.google.com/open?id=1VdKXZPT9cKHszxGczaFrLWs7LWGhjodG

Es un programa en VS2015 en C#


Si lees todo el hilo de este post … mas adelante comenté que el PFX generado por el chilkat me funciono muy bien con Windows 2010 pero al tratar de usarlo con Windows 2012 me falla….. he hice el intento con mas de 4 servidores con windows 2012 distintos y en todo me manda error

La solucion que aplique fue usar otra utileria distinat al chilkat en este caso fue la de CRYPTO esta si me funciono muy bien para windows 2012 server y windiows 10

El programa ejemplo ya lo postearon aqui mismo .... seria que lo buscaras usando la palabra CRYPTO o busca el usuario CocoLiso quien fue el que la recomendó … y el Tambien ya posteo la url para descrgar la dll … es muy similar a la del chilkat


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por gamaliel mendez (3 intervenciones) el 09/11/2018 18:12:09
ok, gracias amigo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por gamaliel mendez (3 intervenciones) el 09/11/2018 19:22:33
hola aquí molestando otra vez creo que la pregunta de hace rato estuvo mal formulada
lo que yo quería realmente era si podías postear el ejemplo de como hacer el request con chilkat .
de antemano gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 09/11/2018 22:08:31
@gamaliel méndez, por favor, dale una leída a los comentarios que se han hecho para que sepas de lo que hablas. Muchos usuarios llegan aquí a hacer un copy-paste para terminar sus soluciones.

El Chilkat mencionado ÚNICAMENTE se ha usado para generar el pfx, pero por las razones que ya expresó @HalcónDivino decidió cambiarlo por Crypto.dll

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consumir Web Service Descarga Masiva

Publicado por apis (15 intervenciones) el 12/10/2018 23:55:16
Cuando hacen solicitudes de muchos archivos solo les regresa un paquete a descargar? han intentando descargar solo la metadata? esas solicitudes de muchos archvios es de un rango de fechas muy grandes? lo que se me ocurre es que descarguen la metadata y que solo vayan descargando las del dia anterior para no tener un armado de paquetes muy grande.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Rafael
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Rafael (57 intervenciones) el 15/10/2018 16:29:46
YO NO HE PODIDO REALIZAR SOLICITUDES, NI MUCHO MENOS DESCARGAR LOS PAQUETES DE XML, PODRIAN COMPARTIRME EL CODIGO Y VERIFICAR QUE ES LO QUE PASA CON LA DESCARGA, SE LOS AGRADECERIA.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Kali (13 intervenciones) el 18/10/2018 19:38:41
ese RAFAEL siempre al pendiente de los avances del grupo, para tener la solución y luego venderlo aquí mismo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 18/10/2018 22:23:42
¿Por qué piensas que le pregunté que si ahora que ya quedaba obsoleto el scrap podía compartir el código para accesar con la fiel al portal? Al rato veremos en ML este código por una módica cantidad de $6,000.00 (Seis mil pesos 00/100 M.N.)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Gerardo
Val: 169
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Gerardo (73 intervenciones) el 19/10/2018 00:55:42
jejejeje, si así le hace :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Emma Victoria
Val: 14
Ha disminuido su posición en 6 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Emma Victoria (6 intervenciones) el 20/10/2018 17:13:01
Buen día,

Estuve leyendo sus comentarios y bueno aquí les dejo mi programa, aun no he podido descargar los xml ya que las URL para el consumo del webservice no me hacen la descarga. Quisiera unirme con ustedes para poder sacar el proyecto, así que si les ayuda mi programa y me pueden ayudar a poder hacer la descarga estaría de lujo.

Esta desarrollado en C# pero igual después se los adjunto el de VB, Esperemos ser un buen equipo para sacar este proyecto adelante.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 20/10/2018 20:14:09
Emma
Hola

Se me hace que no has leído del todo los post. O los has leído superficialmente.


Las soluciones se posteron el 19 de Septiembre


Para que cheques los post de esos dias mas que nada hacia adelante


yo en ese dia di esta solucion funcional del proyecto SAT-Master-WS ya con todos los cambios que se le hicieron por parte de los colegas del grupo.


https://drive.google.com/file/d/1MLlXK8FKykn-l4Z2SW_8VXqU8K9PqVoZ/view?usp=sharing


y mas tarde Aleks publico otra solución mas robusta donde usa como dll el proyecto original el SAT-Master-WS que originalmente es un proyecto tipo consola.


https://www.dropbox.com/s/11xcnh1vvfsevrp/PruebaRecuperarFacturas.zip?dl=0



Seria bueno que leyeras con detenimiento los post que se hiceron de esa fecha (19 de sep) para aca ... vienen varios tips o trucos que te pueden servir para desarrollar ya tu propia aplicacion.

Espero te sirva

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Emma Victoria
Val: 14
Ha disminuido su posición en 6 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Emma Victoria (6 intervenciones) el 20/10/2018 20:44:55
Halcon Divino,
Si lo leí pero tuve conflictos al correr los programas que proporcionaron ya que quise solucionar los errores y persiste, aun así adjuntare la imagen haber si pueden solucionarme

Agradezco su apoyo.


Capturaa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 21/10/2018 21:47:30
Chicos!

Que tiempo le esta tardando en descargar las solicitudes?

Yo tengo solicitudes de 90 y 100 horas, sin respuesta del SAT.

Como les ha ido a ustedes?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anonimo (6 intervenciones) el 22/10/2018 16:43:55
Lo mismo me sucede, realice una solicitud el día 16 de octubre y aun no hay respuesta.
Alguien mas a tenido problemas?
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 22/10/2018 17:27:09
Yo también, pero solo en consultas muy grandes, has consultas en rangos mas pequeños

Saludos
Ivan Reyes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Anonimo (6 intervenciones) el 22/10/2018 17:31:02
Las pruebas que hemos realizados son:
Rango de Años
Por un Año
Por Mes

Y en ninguno de los casos hemos tenido una respuesta diferente a la de "Solicitud Aceptada"

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Ivan Reyes (20 intervenciones) el 22/10/2018 19:58:08
Que volumen de cfdi tienen mensual?

Saludos
Ivan Reyes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Richard
Val: 9
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Richard (6 intervenciones) el 23/10/2018 00:33:52
A mi me tardó 6 días en cambiarme el EstadoSolicitud de 1 a 3 y la consulta era de 2 días de facturación muy pocos cfdi
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por OpsMc (5 intervenciones) el 25/10/2018 20:10:42
Hola amigos, realmente he encontrado muy poca información respecto a los WS del sat. Disculpen si está fuera de contexto mi pregunta. Yo estoy intentando realizar el proyecto en Delphi, el problema es que cuando quiero importar el WS desde https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc me da un error, de hecho si intentas abrir esa página no la descarga. En sintesis la pregunta es: Hay alguna liga diferente a la anterior de donde importar el WS?

He tratado de ejecutar los proyectos que muy amablemente han compartido pero salvo el de PruebasRecuperarfacturas.exe, ninguno otro me funciona abren solo la pantalla del cmd por unos cuantos segundos y es todo.

Gracias por compartir de su conocimiento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Ivan Reyes (20 intervenciones) el 25/10/2018 20:49:53
Hola OpsMc

tienes que revisar el codigo de todos los proyectos, los de consolas tienes que editarlos y configurarlos.

Saludos
Ivan Reyes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por OpsMc (5 intervenciones) el 25/10/2018 23:09:50
Hola amig@s, creo que no puse mi pregunta muy bien explicada anteriormente, intento ponerla de nuevo:

Yo estoy intentando realizar el proyecto en Delphi, el problema es que cuando quiero importar el WS desde https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc me da un error, de hecho si intentas abrir esa página no la descarga. En sintesis la pregunta es: Hay alguna liga diferente a la anterior de donde importar el WS?

Pregunta más en específico: Estan funcionando bien el webservice

https://cfdidescargamasivasolicitud.clouda.sat.gob.mx/Autenticacion/Autenticacion.svc

Al día de hoy 25/10/2018?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 25/10/2018 23:43:35
Que tal OpsMc,

Las ligas del SAT NO han funcionado desde que las publicaron, sin embargo otra persona nos hizo el favor de subir las ligas (de los mismos web services, pero de diferente ambiente) que al parecer se les proporciono a los PAC, la mayoría de nosotros utilizamos el proyecto que pusieron en consola y de ahí ya lo pasamos a diferentes servicios apuntando a las ligas de producción del SAT (que son las que comentas), pero si deseas hacerlo desde 0, no podrás ya que aun no están activas las ligas.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por OpsMc (5 intervenciones) el 26/10/2018 00:45:54
Muchisimas gracias Aleks, de hecho ya estoy descargando Visual Studio ;) pero me va a tardar un ratito...es posible que publiquen o me puedan pasar via correo esas urls que se les proporciono a los pac's o algo así para empezar a hacer pruebas, y una gran duda. Ya en la producción si pongo esas url del sat verdad?

De antemano MUCHISIMAS GRACIAS POR TODO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Roc (1 intervención) el 26/10/2018 20:38:46
Buen día, he descargado el código que hicieron el favor de subir en C#, ya he realizado el paso de crear el pfx (Creado en OpenSSL), pero me está arrojando el error 305 "Certificado Inválido" al momento de llamar el método SolicitaDescarga, a alguien más le da la misma respuesta?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Gabriel (2 intervenciones) el 29/10/2018 16:12:02
Buen día.

Yo he realizado varias peticiones con un período de un mes y aun siguen en estatus "Solicitud Aceptada" después de más de 7 días.
¿Alguien sabe si esto está siendo una constante? ¿O hay a quienes si les responde en menos de 48 horas? El número de comprobantes en los períodos solicitados dentro de las peticiones de prueba que he hecho no es más de 1000. Se que este servicio es para volúmenes realmente grandes, pero quiero asegurarme que funcione.

29-Octubre-2018
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Kali (13 intervenciones) el 29/10/2018 19:34:40
Hola, yo eh intentado, pero al momento de revisar me salen los siguientes mensajes:

Solicitud Aceptada, después

XML Mal Formado.

hasta ahí se queda.

a alguien más le ha pasado esto.


saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 30/10/2018 19:01:49
Tengo el siguiente problema y no se si a alguien ya le ha pasado

He instalado el programa de descarga
En 4 equipos con Windows 10 y funciona correctamente todo muy bien.
En 3 equipos con Windows Server 2012 y no funciona .. falla el programa en la misma instrucción y obviamente en todos los equipos uso la misma FIEL .tanto en los 4 equipos con windows 10 como en los 3 equipos que tienen windows 2012

La instrucción donde falla es


X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);


El mensaje de error es el mismo en los 3 equipos con windows server 2012
ERROR DESCONOCIDO -1073741275

El mensaje de error no dice nada

Alguna idea de porque casualmente en 3 equipos windows 2012 no funciona en esta instrucción
X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);


ErrorX509
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Cesar (54 intervenciones) el 30/10/2018 19:06:39
Hola.

Puede ser la version del .Net. Los Windows Server que estas instalando, su version es mas vieja que la de Windows 10. Y tambien puede ser algo de cuestion de seguridad.

Windows 10 = Windows Server 2016

Windows 8 = Windwos Server 2012
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 30/10/2018 19:20:17
Te refieres a los Framewoeks de .NET ???

De ser así no se supone que es el mismo Framework 4.5 dese que salió
Pero los windows server 2012 estan actualizados con los ultimos SP … supongo que los Framewors Tambien deberían de actualizarse con el SP de windows asi que por mas viejito que sea wl windows server 2012 deberá de tener actualizado los frameworks 4.5


No se si deberia de actualizar los framewors del server en teoria ya estan actualizados con tanta actualizacion que mandan a Windows


Esta raro ... Y en cuanto a seguridad pues ni siquiera accesa internet esta instruccion solo genera un certificado con criptologia


Me voy mas por el lado de los frameworks … pero aun asi no me quiero a arriesgar a actualizarlos en los servidores a menos que este seguro que es por ahi.



A alguien mas le ha pasdo y si lo han podido solucionar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Cesar (54 intervenciones) el 30/10/2018 19:33:51
Hola.

Es correcto, me refiero a los FrameWorks de .Net.

Pero si dices que estan actualizados, si deberian tener las ultimas revisiones (de la serie 4.5, es la 4.5.2), por lo que ese problema esta descartado.

Le voy mas a problema de seguridad (y no me refiero de internet), sino seguridad de acceso fisico al servidor, y en este caso, a la ruta donde estas creando el certificado (permisos del usuario que ejecuta el proceso a dicha ruta):

X509Certificate2 cert = new X509Certificate2(path, password, X509KeyStorageFlags.DefaultKeySet);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 74
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Aleks (34 intervenciones) el 30/10/2018 19:38:10
Así es como dice Cesar, es por cuestiones de permisos, si gustas ejecuta el VS como adm y procede a hacer el debug.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 30/10/2018 20:51:43
Es que por cuestiones de seguridad estoy usando en todos los casos de Windows 2012 la cuenta de administrador
No se como dar mas privilegio al administrador si estoy usando esta cuenta.

Quisass sea el PFX que genero al momento de cada corrida con las librerías el childkat

Voy a usar un PFX ya pregenerado con OpenSSL o el Childkat pero en equipos windows 10 para usarlo directamente sobre el Windows 2012

Voy a seguir a prueba y error a ver que mas encuentro.

Por fa.... si alguien pudiera instalar en un equipo windows 2012 su aplicacion y que comente como le funciona


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 30/10/2018 22:24:36
Solo por @HalconDivino... descargando WS 2012 para realizar pruebas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 31/10/2018 01:05:32
Muchas Gracias por sus comentarios y apoyo.

PROBLEMA RESUELTO

Lo que pasa es que yo genero el PFX en cada corrida usando las librerias del Childkat

Para windows 10 todo funciona muy bien pero para windows server 2012 algo no le gusta

La solución fue generar el PFX con OpenSSL ….. Modifique el programa para que use el PFX del OpenSSL y LISTO ya funciono.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 31/10/2018 05:57:54
En vista de que la librería Childkat no genera correctamente el PFX para windows server 2012 … tal como se los comente en el post anterior … me veo en la necesidad de usar la librería que CocoLiso recomienda la BouncyCastle.Crypto.dll

El link que postearon ya no se encuentra disponible para descarga
https://drive.google.com/open?id=1Fkh1YPtVqY_PP0JWe6sijbUClS54Y02f

CocoLiso o cualquier otro colega del foro pudieras de favor Re-postear de nuevo el link o bien mandármelo a mi correo HalconDivino@GMail.Com

Por otro lado no hay problema con la licencia de uso ...se puede usar free o si me pudieran pasar el serial de la libreria

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Rafael
Val: 183
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Rafael (57 intervenciones) el 31/10/2018 06:24:45
HALCON DIVINO, YO POSTIE EL CODIGO PARA GENERAR EL PFX CON OPENSSL, TE LO HAGO LLEGAR MAÑANA A TU CORREO, SALUDOS.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 31/10/2018 15:31:39
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha aumentado su posición en 2 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Daniel iscdaniel.gc@gmail.com (2 intervenciones) el 31/10/2018 15:49:14
Parece un problema de permisos al tratar de leer el certificado, checa los permisos de la carpeta de donde lees el certificado. Puedes postear el StackTrace del error, ahí debe dar más detalle.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 31/10/2018 15:57:04
MUCHAS GRACIAS COCLISO YA LO DESCQRGUE DEJA HACER PRUEBAS .


RAFAEL … OK..ENVIAME EL CODIGO PARA GENERAR EL PFX CON OPENSSL, … TAMBIEN LO QUIERO EVALUAR



Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Kali (13 intervenciones) el 31/10/2018 21:28:52
Buenas tardes

Halcon, ya te mande correo con la funcionalidad de crear el pfx con OpenSSL

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 31/10/2018 21:51:05
Kali

Muchas Gracias
Ya le recibí

Muy amable por enviármela

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Miloatapaz8 (2 intervenciones) el 31/10/2018 23:33:29
Que onda Halcón Divino
Me avisas si te sirvió lo que te mandé.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 01/11/2018 00:09:38
Miloatapaz

Gracias

Si me llego ... apenas voy a hacer pruebas ... con tantos pendientes de trabajo a penas voy ….

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 01/11/2018 20:50:19
Hay Problemas con la descarga de los XML desde el portal del SAT ???

Ya intente con varios RFC y no puedo logearme me manda a esta pantalla que les anexo



PANTALLASAT
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

miloatapaz8ma@gmail.com

Publicado por Miloatapaz8 (2 intervenciones) el 01/11/2018 20:55:22
Me parece que estaban actualizando por el esquema de cancelaciones, andaban en un 80% supuestamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

miloatapaz8ma@gmail.com

Publicado por Violeta (45 intervenciones) el 02/11/2018 21:45:14
hola chicos!!

Mientras sea chana o juana, es decir mientras el web service se estabiliza y responde en los tiempos establecidos.


Creo que lo mejor es retomar el Scraping, alguien ha podido superar el limite de 2 mil XML. por dia?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

miloatapaz8ma@gmail.com

Publicado por moises (9 intervenciones) el 05/11/2018 21:35:28
De acuerdo....Alguien tiene como va el codigo o el ejecutable que tienen actual para realizar pruebas ?
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

miloatapaz8ma@gmail.com

Publicado por Halcón Divino (74 intervenciones) el 05/11/2018 22:14:52
Alguien puede descargar los XML con la aplicación de SCRAP

Yo no puedo hacer descargas con con la aplicación de WEB SCRAP

Estoy viendo que actualizaron la pagina y ahora tiene mas columnas las ultimas 4 o 5 columnas no las tenia y son parte de los cambios de lo nuevo que entro para la cancelación del 1 de Noviembre.

Supongo que esto afecto en la estructura del código HTML de la pagina

En la 2da pantalla de este post podrán ver el código donde esta el problema .

El problema esta en la instrucción que trata de cargar los elementos de las imágenes de descarga … me refiero a los iconos que están del lado izquierdo de la pagina web .(ver detalle, Descargar y Recuperar Representación Impresa)

HtmlElementCollection elementBtnDescarga = elementRenglon.GetElementsByTagName("img").GetElementsByName("BtnDescarga");

La cantidad de imágenes siempre es 0 y esto es la causa de porque no se pueden descargar los XML.

ALGUNA IDE DE COMO RESOLVERLO ?????


PANTALLA 1
DescargaCFDI

PANTALLA 2
Codigo



PANTALLA 3
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

miloatapaz8ma@gmail.com

Publicado por Yoyoman (7 intervenciones) el 06/11/2018 06:50:39
Buenas noches, he utilizado PFX que uso para timbrado y para cancelaciones y que hasta el momento no he tenido problemas al usarlos, pero con el codigo que han compartido una vez que se genera el token y que se pasa a la solicitud de descarga, siempre recibo el error 305 Certificado inválido , como si se obtiene el token asumo que el PFX esta generado correctamente y que si se puede leer, pero al querer usar las siguientes peticiones ya no salgo de ese error.... Podran ayudarme con alguna idea sobre coomo se puede resolver.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

miloatapaz8ma@gmail.com

Publicado por Courtois Garcia (14 intervenciones) el 06/11/2018 17:57:00
Hola,

Si bien el SAT hizo modificaciones al portal, lo único que cambio fue la imagen por un span, manteniendo el mismo nombre e Id del tag. No uso la misma rutina que usas pero básicamente lo que hice fue buscar sobre todos los elementos de la página y evaluar por medio del atributo Id de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
foreach (HtmlElement item in webBrowser1.Document.All)
{
    var imgUrl = item.GetAttribute("id");
    if (imgUrl != "BtnDescarga") continue;
    imgUrl = item.OuterHtml.Replace((char)34, ' ');
    var cadenaInicial = imgUrl.IndexOf("?Datos=") + 1;
    var cadenaFinal = imgUrl.IndexOf("','Recuperacion')");
    imgUrl = imgUrl.Substring(cadenaInicial, (cadenaFinal - cadenaInicial));
    imgUrl = @"https://portalcfdi.facturaelectronica.sat.gob.mx/RecuperaCfdi.aspx?" + imgUrl;
    lista.Add(imgUrl);
}

Espero que te sirva.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 06/11/2018 19:33:11
Disculpen alguien sabe si se pueden cancelar los paquetes, lo que pasa que llevo como 15 días con un paquete y no se crea, solo lo tengo en solicitud aceptada :(
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha disminuido su posición en 7 puestos en Visual Basic.NET (en relación al último mes)

miloatapaz8ma@gmail.com

Publicado por Raymond (4 intervenciones) el 06/11/2018 22:21:30
Hola a todos.

Estoy por scraping y ahora no puedo accesar. Alguien ya pudo resolver esta parte del código?

string str3 = string.Format("https://portalcfdi.facturaelectronica.sat.gob.mx/{0}", regex.Match(elementsByName[0].OuterHtml).Value.Replace("'", ""));

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alan
Val: 25
Ha aumentado su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

...

Publicado por Alan (12 intervenciones) el 07/11/2018 18:24:30
Gracias por tu aporte Courtois Garcia, para hacer mas eficiente tu búsqueda recomiendo cambiar :

HtmlElement item in webBrowser1.Document.All

por

HtmlElement item in webBrowser1.Document.GetElementsByTagName("span")

De esta manera solo buscara los botones en los elementos span y no en toda la pagina.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por OpsMc (5 intervenciones) el 07/11/2018 18:39:08
Estoy en la misma situación. En solicitud aceptada. Jacob al final si pudiste bajar los XML. Una cosa mas, alguien tiene el código de sat-ws.dll, fue publicado o solo la dll?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 07/11/2018 19:42:33
@OpsMc lo que preguntas está en post anteriores. Si cuentas con tiempo, lee desde el comienzo para que salgas de dudas. El 25-10-2018 te respondió @Ivan Reyes.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 08/11/2018 17:42:49
@OpsMc Eh estado usando el proyecto de ws-sat el que es de consola, hago la solicitud y me arroja los id de paquetes, luego el programa empieza con un ciclo de verificación para ir comprobando el estado de la solicitud, se supone que este estado debería cambiar de 1 a 3, pero sucede que cambia de 1 a 0, es decir cambia de solicitud aceptada a token invalido, en breve subo un video para que se pueda apreciar el problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Yoyoman (7 intervenciones) el 08/11/2018 18:02:14
Hola, si han recibido respuesta de los servicios? ya tengo varias peticiones que llevan por lo menos 24 horas y sigue en el mismo estatus
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Halcón Divino (74 intervenciones) el 08/11/2018 20:02:55
Jacob

A ver si me explico

El programa funcionaria correctamente si el tiempo de espera en el CICLO que tu comentas fuera de 1 minuto
Pero no es asi ... El SAT se esta tardando dias para dar por terminada la solicitud. yo supongo que mas adelante este problema de espera lo remedie el SAT tal como lo prometió de tener tiempos de respuesta menores a 24 hrs. y solo en casos muy extraordinarios hasta de 72 hrs.

Lo que deberías hacer es partir o ejecutar el programa en 2 partes
La 1er Parte debes de dar de alta la solicitud y tomar nota del ID de la solicitud o sea graba el ID de esta solicitud en algún lugar
La 2da Parte es verificar el estatus de la solicitud con el ID del pinto anterior y si ya esta terminada descargar el paquete.y si mo esta pues intenta mas tarde.

Creo que seria bueno que leyeras desde el inicio el POST ... Ya se que esta muy largo ... pero es importante que lo hagas ... hay muchos consejos y tips y preguntas ya resueltas o contestadas … como la que tu estas haciendo en este post.

Tambien encontraras la forma de pasar este programa tipo consola a DLL y hacerlo parte de un proyecto windows form
Aleks ya posteo un ejemplo MUY INTERESANTE de como un proyecto WINDOWS FORM interactua con la DLL de descarga.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 08/11/2018 20:14:39
@Halcón Divino Si he leído de rápido la mayoría de los posts, he probado también el proyecto de winforms, pero igual debe de haber un problema con el SAT porque al igual como varias personas de aquí tengo casi mas de 20 días con unas peticiones que no pasan de solicitud aceptada.
Muchas gracias por tu apoyo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por OpsMc (5 intervenciones) el 12/11/2018 21:55:54
Otra vez, dando lata por aca… les platico lo siguiente resulta que, por fin hice una petición y por fin el sat dice que esta listo. Realizo la descarga y al parecer todo bien. Pero mi consulta por los emitidos en cierto tiempo en el sat me manda 1076 XML, pero el contador de la empresa hizo la misma consulta con un programa que se llama dsoft y este le baja 26,000 (que según el contador corresponde) a los XML emitidos. Alguien sabe que pudo haber pasado. Es la misma consulta en tiempos, en el Dsoft(usa la web, creo para descargar) y yo con los WS. Porque la gran diferencia, alguien sabe algo al respecto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Richard
Val: 9
Ha disminuido su posición en 4 puestos en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Richard (6 intervenciones) el 14/11/2018 00:52:11
Checa en el xml de respuesta cuando verificas las descargas, puedes tener varios nodos <IdsPaquetes> los cuales son paquetes de cfdis, tal vez solo bajas el primer nodo por eso hay diferencia con los del contador
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 14/11/2018 02:03:43
Como es posible que dSoft y otras empresas puedan romper la barrera del SAT de 2000 XML usando la web?

Alguien tiene una explicación?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 5
Ha disminuido su posición en 21 puestos en Visual Basic.NET (en relación al último mes)

Descarga de XMLS del SAT WEB SCRAP

Publicado por Abelardo acanche@live.com.mx (2 intervenciones) el 14/11/2018 06:21:59
Hola estimado amigo Halcon Divino

Ya le he realizado algunas modificaciones al WEB SCRAP y ya realiza las descargas de los XMLs sin embargo para el contador que le tenian colocado ustedes, ahora no me funciona entonces en le metodo GetReceivedDocuments al parecer se cicla y por cada Comprobante que descarga me marca error en la matriz de datos.

Subo el proyecto, ahora ya lee la información del SAT y la descarga, actualize el array con los datos nuevos del portal del SAT, solo falta corregir este error ahora, espero puedas hayarle la solución, ya le he dado mil vueltas y no le hayo como corregirlo.

Saludos
AC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por Ivan (20 intervenciones) el 15/11/2018 22:06:44
Hola Violeta

Y esto esta comprobado o es lo que dice la publicidad?

Saludos
Ivan Reyes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 16/11/2018 20:28:28
Oh, y ahora quién podrá ayudarme?

¿Compañeros en dónde puso SATanás la consulta de los comprobantes con esta actualización que le hizo al portal? ¿o es posible que solo a mí me sale así porque no he "visto" a nadie quejarse?

¿Es esto un aviso que el scrap R.I.P.?

Edito: Ya lo ví, pase directo a: https://cfdiau.sat.gob.mx/nidp/wsfed/ep?id=SATUPCFDiCon&sid=0&option=credential&sid=0 porque no lo ví en el menú principal.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por moises (8 intervenciones) el 18/11/2018 04:34:33
Hola amigos, estoy poniendo al dia mi modulo de descarga, ya pude descargar pero tengo detalle al querer obtener los datos como RFC emisor, RFC Receptor, UUID de la pagina del SAT para poder poner el nombre de archivo al descargar, copio la parte de codigo que tengo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
For Each objelementsByTagName As HtmlElement In objhtmlElement.GetElementsByTagName("tr")
                            Dim elementsByName As HtmlElementCollection = objelementsByTagName.GetElementsByTagName("img").GetElementsByName("BtnDescarga")
 
 
 
                            Dim vurlXmlFile As String = String.Format("https://portalcfdi.facturaelectronica.sat.gob.mx/RecuperaCfdi.aspx?{0}", regex.Match(elementsByTagName(total).OuterHtml).Value.Replace("'", ""))
                            vurlXmlFile = vurlXmlFile.Replace("Detalle.aspx?", "")
 
                            Dim vCfdiInfo As IEnumerable(Of HtmlElement) = objelementsByTagName.GetElementsByTagName("span").OfType(Of HtmlElement)()
                            If vCfdiInfoStr = "" Then
                                For Each cfdiElement As HtmlElement In vCfdiInfo
                                    If Not String.IsNullOrEmpty(cfdiElement.InnerText) Then
                                        vCfdiInfoStr = String.Concat(vCfdiInfoStr, cfdiElement.InnerText, "|")
                                    End If
                                Next
                            End If
                            Dim vArrCfdiInfo As String() = vCfdiInfoStr.Split(New Char() {"|"c})
 
                            System.DateTime.TryParse(vArrCfdiInfo(5), dateTime)
                            Dim vPath() As String = {Me.lblDownloadPath.Text, Me.txtRFC.Text.Trim().ToUpper(), Nothing, Nothing, Nothing, Nothing}
                            vPath(2) = If(rbtReceived.Checked, "Received", "Sended")
                            Dim vyear As Integer = dateTime.Year
                            vPath(3) = vyear.ToString("0000")
                            vyear = dateTime.Month
                            vPath(4) = vyear.ToString("00")
 
                            vyear = dateTime.Day
                            If CheckBox1.Checked = True Then
                                vPath(5) = vyear.ToString("00")
                            End If
                            Dim vfullPath As String = String.Join("\", vPath)
                            If (Not Directory.Exists(vfullPath)) Then
                                Directory.CreateDirectory(vfullPath)
                            End If
                            Dim vxmlFile As String = Path.Combine(vfullPath, String.Format("{0}_{1}_{2}.xml", vArrCfdiInfo(1), vArrCfdiInfo(3), vArrCfdiInfo(0), total))

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 19/11/2018 14:32:29
"Hola Violeta

Y esto esta comprobado o es lo que dice la publicidad?

Saludos
Ivan Reyes"

Esta comprobado Ivan yo he adquirido ese programa y efectivamente descargar mas de 2000 cfdis al día, lo que he podido notar en el análisis de las peticiones que realiza es que parece que hace muchas peticiones al mismo tiempo, y entre mayor sea el ancho de banda descarga mas cfdi, pero al final las descargas no son ilimitadas ya que igualmente hay un momento en que aparece lo del limite del SAT, en una sesión he podido descargar aprox. 16 000 cfdi con un ancho de banda de aprox 20 mbps y unos 6500 con un ancho de banda de 12 mbps.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 19/11/2018 15:26:18
@Jacob, las sesiones que otorga el SAT duran 10 minutos pero se puede extender por horas, yo lo hacía. Voy a volver a recodificar mi pequeño programa para ver si puedo saltarme esos 2 mil diarios.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 19/11/2018 16:37:56
"@Jacob, las sesiones que otorga el SAT duran 10 minutos pero se puede extender por horas, yo lo hacía. Voy a volver a recodificar mi pequeño programa para ver si puedo saltarme esos 2 mil diarios."

Si la sesión se puede mantener el tiempo que se deseé, pero el sat tiene un contador de descargas de xml el cual solo te permite descargar 2000 cfdis al día de un mismo RFC.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por CocoLiso (43 intervenciones) el 19/11/2018 17:11:04
Las peticiones las hace con threads, yo hacía hasta 20 al mismo tiempo, pero me dí cuenta que la óptima es de 8 simultaneas. No sé por qué empiezo a pensar que esto parece ser un comercial para dSoft. Espero equivocarme.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 19/11/2018 18:22:12
@CocoLiso no amigo para nada yo no tengo nada que ver con ellos, solo adquiri el software por ML para comprobar si era cierto eso de que se podía sobrepasar el limite de los 2000 CFDI, y mas o menos poder estudiar como es que podían hacerlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 210
Bronce
Ha disminuido 1 puesto en Visual Basic.NET (en relación al último mes)

Descarga de XMLS del SAT WEB SCRAP

Publicado por Halcón Divino HalconDivino@GMail.Com (74 intervenciones) el 19/11/2018 19:22:28
acanche@live.com.mx

Espero te sirva … Descarga de XML WebScrap

https://drive.google.com/open?id=1OXz8qVyx-28J7lRXonfU1sJDmzmws1P7

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Descarga de XMLS del SAT WEB SCRAP

Publicado por Jacob (15 intervenciones) el 20/11/2018 17:34:41
Chicos a alguien le anda funcionando bien el webservice?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Descarga de XMLS del SAT WEB SCRAP

Publicado por Yoyoman (7 intervenciones) el 20/11/2018 17:36:00
Yo no pude descargar nada por 4-5 días, pero desde ayer ya pude descargar las peticiones que estaban pendientes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 11
Ha disminuido su posición en 7 puestos en Visual Basic.NET (en relación al último mes)

Descarga de XMLS del SAT WEB SCRAP

Publicado por Raymond (4 intervenciones) el 20/11/2018 17:44:05
Está caído.

Ya tenemos desde ayer intentando consumir el WebService y no se tiene éxito.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Descarga de XMLS del SAT WEB SCRAP

Publicado por Victor (1 intervención) el 20/11/2018 22:29:28
¿Has tenido problemas con las fechas en las solicitudes?

Por ejemplo yo he solicitado de la siguiente manera:

request.FechaInicial = new DateTime(2018, 11, 01, 0, 0, 0);
request.FechaFinal = new DateTime(2018, 11, 01, 23, 59, 59);

Y me regresa una consulta con CFDIs del 2018-11-01T06:00:00 al 2018-11-02T06:00:00.

Es decir, tengo un desfase de 6 horas. ¿Has tenido ese problema o alguien más le ha pasado algo similar?

Trate de arreglarlo de la siguiente manera, pero al SAT aun no me responde las consultas que hice para ser si así es correcto.

request.FechaInicial= startDate.AddHours((startDate.ToLocalTime() - startDate.ToUniversalTime()).Hours);
request.FechaFinal= endDate.AddHours((endDate.ToLocalTime() - endDate.ToUniversalTime()).Hours);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Descarga de XMLS del SAT WEB SCRAP

Publicado por CocoLiso (43 intervenciones) el 21/11/2018 01:12:50
Date.UtcNow.ToString("dd-MMM-yyyy hh:mm:ss")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 89
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Violeta (45 intervenciones) el 22/11/2018 04:09:42
@Jacob , @cocoliso

Alguna otra idea de como romper el limite de 2000 del SAT?

@Jacob tu dices que el truco es hacer 8 descargas a la vez, en lugar de 1?, y esto nos da un promedio de 10,000 por sesion?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 48
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)

Consumir Web Service Descarga Masiva

Publicado por Jacob (15 intervenciones) el 23/11/2018 17:59:12
@Violeta si yo segun he estado analizando las peticiones y tengo casi la certeza de que generan varios threads los cuales hacen las peticiones al mismo tiempo, este es un articulo que encontre el cual mas o menos explica el proceso esta en python pero supongo que puede ser adaptado a otros lenguajes:

1
http://skipperkongen.dk/2016/09/09/easy-parallel-http-requests-with-python-and-asyncio/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Descarga de XMLS del SAT WEB SCRAP

Publicado por ECS (9 intervenciones) el 28/11/2018 21:00:48
Buen día Halcón Divino, oye, tengo un detalle, utilice tu código para hacer unas consultas, y quise insertar los datos a mi base de datos (en MySQL), tuve que actualizar al framework 4.7.2, pero me marca un error de validación en el esquema, me dice que el comodín ##any permite un elemento que hace que sea ambiguo, sabes como podría resolver esto? saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por oamilkar (1 intervención) el 24/12/2018 15:49:11
Yo generaba el PFX con el mismo codigo que postearon aqui usando BouncyCastle, Y al momento de cargar el PFX funcionaba con windows 10 pero fallaba en windows 2012 y 2016, el mensaje de error era distinto decia "Invalid provider type specified". Por diversas cuestiones no podia usar OpenSSL para generar los PFX asi que segui buscando una solucion diferente.

Aun no se a que se debe y tampoco se las implicaciones que pueda tener, especialmente me preocuparia el tema de la seguridad pero por el momento yo lo pude solucionar en windows server 2016 cambiando el DefaultKeySet por X509KeyStorageFlags.MachineKeySet
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consumir Web Service Descarga Masiva

Publicado por ECS (9 intervenciones) el 28/12/2018 17:29:49
Prueba con esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Org.BouncyCastle.Asn1.X509;
using Org.BouncyCastle.Crypto;
using Org.BouncyCastle.Crypto.Parameters;
using Org.BouncyCastle.Math;
using Org.BouncyCastle.X509;
using Org.BouncyCastle.Asn1.Pkcs;
using System.Security.Cryptography.X509Certificates;
using System.Collections;
using System.Security.Cryptography;
 
namespace sat_ws
{
    public class Crypto
    {
        public static byte[] GenerarPfx(byte[] bytesCER, byte[] bytesKEY, string password)
        {
            try
            {
                if (bytesCER == null || bytesKEY == null)
                    throw new Exception("Empty cer and or key");
 
                var certificate = new Mono.Security.X509.X509Certificate(bytesCER);
 
                char[] arrayOfChars = password.ToCharArray();
                AsymmetricKeyParameter privateKey = Org.BouncyCastle.Security.PrivateKeyFactory.DecryptKey(arrayOfChars, bytesKEY);
 
                RSA subjectKey = DotNetUtilitiesCustom.ToRSA((RsaPrivateCrtKeyParameters)privateKey);
 
                Mono.Security.X509.PKCS12 p12 = new Mono.Security.X509.PKCS12();
                p12.Password = password;
 
                ArrayList list = new ArrayList();
                // we use a fixed array to avoid endianess issues 
                // (in case some tools requires the ID to be 1).
                list.Add(new byte[4] { 1, 0, 0, 0 });
                Hashtable attributes = new Hashtable(1);
                attributes.Add(Mono.Security.X509.PKCS9.localKeyId, list);
                p12.AddCertificate(certificate, attributes);
                p12.AddPkcs8ShroudedKeyBag(subjectKey, attributes);
                return p12.GetBytes();
            }
            catch (Exception ex)
            {
                throw new Exception("Los datos del Certificado CER KEY o Password son incorrectos. No es posible leer la llave privada.", ex);
            }
        }
    }
}
using System;
using System.Security.Cryptography;
using SystemX509 = System.Security.Cryptography.X509Certificates;
using Org.BouncyCastle.Asn1.X509;
using Org.BouncyCastle.Crypto;
using Org.BouncyCastle.Crypto.Parameters;
using Org.BouncyCastle.Math;
using Org.BouncyCastle.X509;
using Org.BouncyCastle.Asn1.Pkcs;

namespace sat_ws
{
/// <summary>
/// A class containing methods to interface the BouncyCastl