SIRE ejemplos

Este ejemplo usa la versión 97.70 (o superior) del instalador.

Es totalmente operativo pero es necesario leer toda la documentación del WS-SIRE para una implementación real. Y hasta la fecha no está confirmado que los servidores WS SIRE AFIP estén operativos.

Para el modo prueba (0) el certificado debe estar asociado al servicio WS SIRE según los pasos de la guia para el modo prueba y para el modo real (1) el certifcado debe estar asociado al WS-SIRE según la guia para el modo real. Además para el modo real debe estar presente un archivo de licencia (4to argumento) definitivo o provisorio generado desde el panel de mi administración.

Dim fe As New WSAFIPFE.Factura

Dim bresultado As Boolean = True

If fe.iniciar(0, "cuit agente retencion", "ruta certificado.pfx", "") Then

fe.tls = 12

REM ATENCION, ejecutar este método necesario para que la interfaz capture el trafico hacia y desde el servidor antes que el sistema operativo. El REM servidor WS SIRE usa un formato incompatible y debe ser transformado para operar normalmente.

If fe.registrarTrafico(True) Then

Else

MsgBox("error trafico " + fe.UltimoMensajeError)

End If

fe.ArchivoCertificadoPassword = ""

If fe.sriObtenerTicketAcceso() Then

fe.ArchivoXMLEnviado = "d:\srienviado.xml"

fe.ArchivoXMLRecibido = "d:\srirecibido.xml"

bResultado = bResultado And fe.sriCargarPropiedad("LIMPIAR", "", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.cae", "235626236", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.codigoTrazabilidad", "256235235", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.coe", "256sdg235", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.coeOriginal", "23523", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.condicion", "0", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.condicionNO", "F", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.cuitRetenido", "23562356", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.fechacomprobante", "20201211", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.fechapublicacion", "20201211", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.fechaPublicacionNO", "F", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.fechaRetencion", "20201211", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.fechaRetencionCertificadoOriginal", "20201211", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.fechaRetencionCertificadoOriginalNO", "F", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.importeBaseCalculo", "100.25", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.importeCertificadoOriginal", "100.25", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.importeCertificadoOriginalNO", "F", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.importecomprobante", "1", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.importeretencion", "2", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.imposibilidadRetencion", "F", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.impuesto", "1", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.motivoAnulacion", "0", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.motivoAnulacionNO", "V", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.motivoEmisionNotaCredito", "", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.motivoNoRetencion ", "prueba", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.numeroCertificadoOriginal", "23523", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.numeroComprobante", "13", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.porcentajeExclusion", "5", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.porcentajeExclusionNO", "V", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.regimen", "1", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.regimenExclusion", "F", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.tipocomprobante", "1", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificado.version", "0", 0, 0)

If bResultado Then

bResultado = fe.sriEmitir("1")

If fe.UltimoMensajeError = "" Then

MsgBox("respuesta: " + fe.sriLeerPropiedad("emitir", "", "respuesta", 0, 0))

Else

MsgBox("error leer" + fe.UltimoMensajeError)

End If

Else

MsgBox("fallo cargar propiedad " + fe.UltimoMensajeError)

End If

Else

MsgBox("fallo acceso " + fe.UltimoMensajeError)

End If

Else

MsgBox("fallo iniciar " + fe.UltimoMensajeError)

End If

Dim fe As New WSAFIPFE.Factura

Dim bresultado As Boolean = True

If fe.iniciar(0, "cuit agente retencion", "ruta certificado.pfx", "") Then

fe.tls = 12

REM ATENCION, ejecutar este método necesario para que la interfaz capture el trafico hacia y desde el servidor antes que el sistema operativo. El REM servidor WS SIRE usa un formato incompatible y debe ser transformado para operar normalmente.

If fe.registrarTrafico(True) Then

Else

MsgBox("error trafico " + fe.UltimoMensajeError)

End If

fe.ArchivoCertificadoPassword = ""

If fe.sriObtenerTicketAcceso() Then

fe.ArchivoXMLEnviado = "d:\srienviado.xml"

fe.ArchivoXMLRecibido = "d:\srirecibido.xml"

bResultado = bResultado And fe.sriCargarPropiedad("LIMPIAR", "", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificadoanulacion.codigoTrazabilidad", "235626236", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("CertificadoAnulacion.impuesto", "21", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("CertificadoAnulacion.motivoAnulacion", "3523", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("CertificadoAnulacion.numeroCertificado", "1", 0, 0)

bResultado = bResultado And fe.sriCargarPropiedad("certificadoAnulacion.version", "1", 0, 0)

If bResultado Then

bResultado = fe.sriAnular("1")

If fe.UltimoMensajeError = "" Then

MsgBox("respuesta: " + fe.sriLeerPropiedad("anular", "", "respuesta", 0, 0))

Else

MsgBox("error leer" + fe.UltimoMensajeError)

End If

Else

MsgBox("fallo cargar propiedad " + fe.UltimoMensajeError)

End If

Else

MsgBox("fallo acceso " + fe.UltimoMensajeError)

End If

Else

MsgBox("fallo iniciar " + fe.UltimoMensajeError)

End If