Skip to content
Ejemplo de integración al webservice con Visual Basic
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vs/TimboxIntegracion/v14
My Project
bin/Debug
obj/Debug
.gitattributes
.gitignore
App.config
LICENSE
README.md
Timbox.Designer.vb
Timbox.resx
Timbox.vb
TimboxIntegracion.sln
WindowsApplication1.vbproj
WindowsApplication1.vbproj.user
archivoPfx.pfx
cServicios.cls
cServicios.vb
cadenaOriginal.txt
cadenaoriginal_3_3.xslt
ejemplo.cer.pem
ejemplo.key.pem
ejemplo_cfdi_33.xml

README.md

Visual Basic

Ejemplo de integración al webservice con Visual Basic

Se deberá hacer uso de las URL que hacen referencia al WSDL, en cada petición realizada:

Para hacer el POST con el envelope construido, se usa la URL:

En la clase cServicios.cls estan los ejemplos para construir la petión de timbrado asi como la de cancelación.

Generacion de Sello

Para generar el sello hay dos opciones: 1) Utilizar el archivo pfx(.pfx) con su password o 2) Utilizar el certificado(.cer) y la llave privada (*.key) en formato PEM. Se obtiene el mismo resultado ya que un pfx es la combinación del certificado y su llave privada.

En este ejemplo se utiliza el pfx para poder generar el sello. También es necesario incluir el XSLT del SAT, ya que se utiliza para poder transformar el XML y obtener la cadena original.

De la cadena original se obtiene el digest y luego se utiliza el digest y la llave privada para obtener el sello. Finalmente el sello es actualizado en el archivo XML para que pueda ser timbrado.

Todo esto se realiza con librerias de encriptacion de .NET. Para el funcionamiento del ejemplo se deben importar varias librerias:

Imports MSXML2
Imports System.Security.Cryptography
Imports System.Security.Cryptography.X509Certificates

Importante

Se debe tener la libreria MSXML instalada para poder hacer la peticion SOAP con este ejemplo:

Una vez instalada, se debe agregar a las referencias del proyecto referencias

You can’t perform that action at this time.