
DESCARGA SOFTWARE PARA FACTURA ELECTRONICA DE AQUI.
Facturacion, Validacion, Addendas, Librerias de programacion, etc.
CARTA PORTE V3.1
ECODEX TIENE ESTOS NUEVOS DATOS DE CONTACTO :
Comercializacion y Ventas - Evelia Vicke evicke@ecodex.com.mx 33-16-03-03-48
Soporte - Humberto Guerrero soporte@ecodex.com.mx 33-34-90-46-03
.
Enviar archivos de controles volumetricos a PEMEX
-
- Mensajes: 384
- Registrado: Lun Feb 14, 2011 6:37 pm
Re: Enviar archivos de controles volumetricos a PEMEX
rodo, que certificado usaste para conectarte al servicio de envio?, te lo dieron especialmente para CONVOL 2.0 o usaste alguno que ya tenias en CONVOL 1.0? el usuario y contraseña que usaste es el mismo que se venia usando para CONVOL 1.0?
Gracias por tu tiempo...
Gracias por tu tiempo...
-
- Mensajes: 1
- Registrado: Dom Dic 07, 2014 10:14 pm
Re: Enviar archivos de controles volumetricos a PEMEX
Tendrán el archivo de Referencia de PEMEX para analizarlo bien?
Estoy viendo en el Fiddler que me retorna un XML con 1 estructura Fault que no la veo contemplada en ninguna parte ... (Según mis pruebas)
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<ns2:enviaCONVOL xmlns:ns2="http://ws.convol/">
<arg0>27/11/2014</arg0>
<arg1>12:49:35</arg1>
<arg2>AAAAA</arg2>
<arg3>40f3390881992f2e9db586316e15ce0b575b9e0806aa1c9bef636767be706536</arg3>
</ns2:enviaCONVOL>
<s:Fault>
<faultcode>s:Server</faultcode>
<faultstring>300|No hay datos en header para seguridad</faultstring>
</s:Fault>
</s:Body>
</s:Envelope>
Estoy viendo en el Fiddler que me retorna un XML con 1 estructura Fault que no la veo contemplada en ninguna parte ... (Según mis pruebas)
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<ns2:enviaCONVOL xmlns:ns2="http://ws.convol/">
<arg0>27/11/2014</arg0>
<arg1>12:49:35</arg1>
<arg2>AAAAA</arg2>
<arg3>40f3390881992f2e9db586316e15ce0b575b9e0806aa1c9bef636767be706536</arg3>
</ns2:enviaCONVOL>
<s:Fault>
<faultcode>s:Server</faultcode>
<faultstring>300|No hay datos en header para seguridad</faultstring>
</s:Fault>
</s:Body>
</s:Envelope>
-
- Mensajes: 384
- Registrado: Lun Feb 14, 2011 6:37 pm
Re: Enviar archivos de controles volumetricos a PEMEX
Muchas gracias por el interes Omar, te paso mi correo amd.guizmo@gmail.com, si me puedes pasar por favor el tuyo y me pongo en contacto.omar_chavez escribió:Tendrán el archivo de Referencia de PEMEX para analizarlo bien?
Saludos...

-
- Mensajes: 384
- Registrado: Lun Feb 14, 2011 6:37 pm
Re: Enviar archivos de controles volumetricos a PEMEX
Gracias a la ayuda de rodo, fortiz y Omar Chavez, encontramos la solucion.
Config final:
Uso del servicio:
El usuario para el envio en produccion y en pruebas es el mismo (clave SIIC) pero la contraseña en pruebas es pemex99999.
Saludos...
Config final:
Código: Seleccionar todo
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="ServicioConsultaCONVOLPortBinding">
<security mode="Transport" />
</binding>
<binding name="ServicioEnviaCONVOLPortBinding" messageEncoding="Mtom">
<security mode="Transport" />
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="https://www.convolmiscelaneapruebas.pemex.com:443/ServiciosCVWEB/ServicioConsultaCONVOLService"
binding="basicHttpBinding" bindingConfiguration="ServicioConsultaCONVOLPortBinding"
contract="PruebaServicioConsultaCONVOLDelegate"
name="ServicioConsultaCONVOLPort" />
<endpoint address="https://www.convolmiscelaneapruebas.pemex.com:443/ServiciosCVWEB/ServicioEnviaCONVOLService"
binding="basicHttpBinding" bindingConfiguration="ServicioEnviaCONVOLPortBinding"
contract="PruebaServicioEnviaCONVOL"
name="ServicioEnviaCONVOLPort" />
<endpoint address="https://www.convol.pemex.com:443/ServiciosCVWEB/ServicioConsultaCONVOLService"
binding="basicHttpBinding" bindingConfiguration="ServicioConsultaCONVOLPortBinding"
contract="ServicioConsultaCONVOLDelegate"
name="ServicioConsultaCONVOLPort" />
<endpoint address="https://www.convol.pemex.com:443/ServiciosCVWEB/ServicioEnviaCONVOLService"
binding="basicHttpBinding" bindingConfiguration="ServicioEnviaCONVOLPortBinding"
contract="ServicioEnviaCONVOL"
name="ServicioEnviaCONVOLPort" />
</client>
</system.serviceModel>
</configuration>
Código: Seleccionar todo
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Security;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using System.Security.Permissions;
using System.Text;
namespace ArchivosPEMEX
{
[System.Runtime.Serialization.DataContract()]
public class Seguridad
{
[System.Runtime.Serialization.DataMember(Order = 0)]
public string usuario;
[System.Runtime.Serialization.DataMember(Order = 1)]
public string password;
[System.Runtime.Serialization.DataMember(Order = 2)]
public string fechaSistema;
}
public class Pruebas
{
static ConsultaPEMEX.ServicioConsultaCONVOLDelegateClient RequestConsu = new ConsultaPEMEX.ServicioConsultaCONVOLDelegateClient();
static EnviaPEMEX.ServicioEnviaCONVOLClient RequestEnvio = new EnviaPEMEX.ServicioEnviaCONVOLClient();
static PruebaConsultaPEMEX.ServicioConsultaCONVOLDelegateClient RequestPruebaConsu = new PruebaConsultaPEMEX.ServicioConsultaCONVOLDelegateClient();
static PruebaEnviaPEMEX.ServicioEnviaCONVOLClient RequestPruebaEnvio = new PruebaEnviaPEMEX.ServicioEnviaCONVOLClient();
public static string getHashSha256(string text)
{
byte[] bytes = Encoding.UTF8.GetBytes(text);
SHA256Managed hashstring = new SHA256Managed();
byte[] hash = hashstring.ComputeHash(bytes);
string hashString = string.Empty;
foreach (byte x in hash)
{
hashString += String.Format("{0:x2}", x);
}
return hashString;
}
public static byte[] ConsultarArchivo(string cNombreArchivo)
{
byte[] ArchivoRespuesta;
ArchivoRespuesta = RequestConsu.consultaCONVOL(cNombreArchivo);
return ArchivoRespuesta;
}
public static byte[] EnviarArchivo(byte[] ArchivoEnvio, string Checksum, string cUsuario, string cPassword, string cFecha, string cHora)
{
byte[] ArchivoRespuesta;
string cPasswordSHA256 = getHashSha256(cUsuario + cPassword + DateTime.Now.ToString("dd/MM/yyyy"));
using (System.ServiceModel.OperationContextScope scope = new System.ServiceModel.OperationContextScope(RequestEnvio.InnerChannel))
{
System.ServiceModel.Channels.MessageHeader header = System.ServiceModel.Channels.MessageHeader.CreateHeader(
"Seguridad",
"http://ws.convol/",
new Seguridad { usuario = cUsuario, password = cPasswordSHA256, fechaSistema = DateTime.Now.ToString("dd/MM/yyyy") },
false);
System.ServiceModel.OperationContext.Current.OutgoingMessageHeaders.Add(header);
ArchivoRespuesta = RequestEnvio.enviaCONVOL(cFecha, cHora, ArchivoEnvio, Checksum);
}
return ArchivoRespuesta;
}
public static byte[] PruebaConsultarArchivo(string cNombreArchivo)
{
System.Net.ServicePointManager.ServerCertificateValidationCallback =
((sender, certificate, chain, sslPolicyErrors) => true);
byte[] ArchivoRespuesta;
ArchivoRespuesta = RequestPruebaConsu.consultaCONVOL(cNombreArchivo);
return ArchivoRespuesta;
}
public static byte[] PruebaEnviarArchivo(byte[] ArchivoEnvio, string Checksum, string cUsuario, string cPassword, string cFecha, string cHora)
{
System.Net.ServicePointManager.ServerCertificateValidationCallback =
((sender, certificate, chain, sslPolicyErrors) => true);
byte[] ArchivoRespuesta;
string cPasswordSHA256 = getHashSha256(cUsuario + cPassword + DateTime.Now.ToString("dd/MM/yyyy"));
using (System.ServiceModel.OperationContextScope scope = new System.ServiceModel.OperationContextScope(RequestPruebaEnvio.InnerChannel))
{
System.ServiceModel.Channels.MessageHeader header = System.ServiceModel.Channels.MessageHeader.CreateHeader(
"Seguridad",
"http://ws.convol/",
new Seguridad { usuario = cUsuario, password = cPasswordSHA256, fechaSistema = DateTime.Now.ToString("dd/MM/yyyy") },
false);
System.ServiceModel.OperationContext.Current.OutgoingMessageHeaders.Add(header);
ArchivoRespuesta = RequestPruebaEnvio.enviaCONVOL(cFecha, cHora, ArchivoEnvio, Checksum);
}
return ArchivoRespuesta;
}
}
}
Saludos...
-
- Mensajes: 4
- Registrado: Mar Dic 30, 2014 10:10 pm
Re: Enviar archivos de controles volumetricos a PEMEX
Que tal Ingenieros!
En el proceso de transmisión el Web Service de pruebas me manda este error:
<acceso clave='426' timestamp='30/12/2014 16:50:46' descripcion='Sellado de archivo no válido'></acceso>
He verificado el sello con el siguiente comando:
xsltproc cadenaoriginal_v1_1.xslt 0000000000E0000020141221.000000RFCI580401RFC.xml | openssl dgst -sha1 -sign RFCI580401RFC_S.key.pem | openssl enc -base64 -A
El sello me sale igual como cuando genero el xml, por esta razón pienso que el sello es valido, pero en el portal de pruebas me rechaza el archivo por que me dice lo contrario.
Alguna idea ?
Agradezco de antemano.
Saludos!
En el proceso de transmisión el Web Service de pruebas me manda este error:
<acceso clave='426' timestamp='30/12/2014 16:50:46' descripcion='Sellado de archivo no válido'></acceso>
He verificado el sello con el siguiente comando:
xsltproc cadenaoriginal_v1_1.xslt 0000000000E0000020141221.000000RFCI580401RFC.xml | openssl dgst -sha1 -sign RFCI580401RFC_S.key.pem | openssl enc -base64 -A
El sello me sale igual como cuando genero el xml, por esta razón pienso que el sello es valido, pero en el portal de pruebas me rechaza el archivo por que me dice lo contrario.
Alguna idea ?
Agradezco de antemano.
Saludos!
-
- Mensajes: 4
- Registrado: Mié Dic 31, 2014 9:11 am
Re: Enviar archivos de controles volumetricos a PEMEX
Hola yonitatemaco, tengo varios dias peleandome con ese mismo error de: <acceso clave='426' timestamp='30/12/2014 15:24:19' descripcion='Sellado de archivo no válido'>, si encuentras una solución, por favor avisame, yo hare lo mismo si la encuentro.
Saludos y un feliz 2015 para todos.
Saludos y un feliz 2015 para todos.
-
- Mensajes: 4
- Registrado: Mié Dic 31, 2014 9:11 am
Re: Enviar archivos de controles volumetricos a PEMEX
Hola nuevamente, quisiera saber si alguno de ustedes ya esta enviando exitosa mente archivos de control volumetrico al servidor de pruebas Pemex.
Agradecería muchismo me contactaran. javi466-vpn@yahoo.com.
Saludos y gracias.
Agradecería muchismo me contactaran. javi466-vpn@yahoo.com.
Saludos y gracias.
-
- Mensajes: 4
- Registrado: Mar Dic 30, 2014 10:10 pm
Re: Enviar archivos de controles volumetricos a PEMEX
Hola que tal javiht, yo sigo donde mismo, no he podido avanzar, ya he probado de todo y nada sigo en el mismo error. si encuentro la solución te aviso.
Saludos y feliz año.
Saludos y feliz año.
-
- Mensajes: 4
- Registrado: Mié Dic 31, 2014 9:11 am
Re: Enviar archivos de controles volumetricos a PEMEX
Hola yonitatemaco, me puedes escribir un correo para contactarte. javi466-vpn@yahoo.com.
Desde el dia 1º de enero ya no se recibo XML's del servicio web de pemex, tengo una excepción: Error creating a reader for the MTOM message. Y mi código es exactamente igual, que cuando recibía respuestas en xml.
¿A alguien le pasa lo mismo?
Saludos
Desde el dia 1º de enero ya no se recibo XML's del servicio web de pemex, tengo una excepción: Error creating a reader for the MTOM message. Y mi código es exactamente igual, que cuando recibía respuestas en xml.
¿A alguien le pasa lo mismo?
Saludos
-
- Mensajes: 22
- Registrado: Lun Jul 11, 2011 1:22 pm
Re: Enviar archivos de controles volumetricos a PEMEX
En la peticion SOAP como esta enviando el apartado del header del nodo seguridad?kscius escribió:A mi me responde, y si estoy mandando correctamente todo...Código: Seleccionar todo
<faultstring>302|Usuario invalido, no se permite acceso</faultstring>
donde el sha es 0000105847pemex9999907/01/2015Código: Seleccionar todo
<au:usuario>0000105847</au:usuario> <au:password>720826e2d9ed4a0230d3de0bc78d534feb2ca02a0c69c382f16b6dbf25e82ea7</au:password> <au:fechaSistema>07/01/2015</au:fechaSistema>
en pemex dicen que donde dice <au:password>les llega lo de <au:usuario>
Usando tus datos el portal si me los acepta.