Wrappers de VirtualXML para Microsoft C#
VirtualXML
Estos wrappers (definiciones de funciones en una DLL) son necesarios para utilizar VirtualXML en sus programas basados en Microsoft C#.

C# utiliza las funciones en formato WIDE, por lo que los nombres de las funciones de VirtualXML son distintos, pero simplemente hay que agregar una letra W al final de los nombres de cada función y la funcionalidad y paramétros son los mismos

Para utilizarlos puede crear una clase, para este ejemplo, la clase se puede crear en archivo llamado wrappers.cs.

Copie el contenido mostrado a continuación, que crea una clase de C# llamada "wrappers" e incluya el archivo wrappers.cs en su proyecto, dentro de su programa las funciones se utilizan como métodos de la clase wrappers.

Definir un nuevo Wrapper es muy sencillo,  el wrapper de C#  se basa en una estructura con 2 componentes por funcion:

Prototipo:
         [DllImport(<nombre del DLL>, CharSet = CharSet.Unicode, EntryPoint = "<función VirtualXMLW>")]

 El prototipo de la funcion define la ubicacion de la DLL en <nombre del DLL>, el juego de caracteres que se utilizan, que siempre sera de tipo Unicode y el "EntryPoint" que es el nombre de la función dentro de la DLL, en este caso, por ser funciones tipo WIDE, su nombre termina con una letra W mayúscula <función VirtualXMLW>.

Definición de la función

         public static extern <Valor devuelto> <nombre función> ( <tipo><param1>, <tipo><param2> ... <tipo><paramN> );
La definción de la funcion comienza con las palabras reservadas public static extern. seguido del tipo de valor que devuelve la funcion en <valor devuelto>, si la función devuelve un valor numerico entonces tendra el valor de IntPtr, si el valor de retorno es una cadena de caracteres tendrá el valor de String y si la función no devuelve nada tendra el valor de void.

A continuación deberemos expresar el nombre con el que deseamos llamar a la función dentro de nuestro programa en <nombre funcion>, que puede ser el mismo que el nombre del EntryPoint o puede ser distinto.

Finalmente debemos listar los parametros de la función anteponiendo su tipo (IntPtr o String) al nombre de la variable.

Esta estructura deberá repetirse para cada función que se desee utilizar.

Fecha de actualización : 13 de Septiembre 2022  se añadieron las funciones para Retenciones e Información de Pagos 2.0 y API de funciones administrativas del Portal VirtualPAC


Wrapper:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace cfdi33_csharpNET
{
public class wrappers
{

public const string dllPath = @"VirtualXML.dll";
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_NewW")]
public static extern IntPtr VirtualXML_New ( String szVersion );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_ProcesaDocumentoW")]
public static extern IntPtr VirtualXML_ProcesaDocumento ( IntPtr p, String csd, String key, String keypwd, String outfile );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_ProcesaDocumentoSSLW")]
public static extern IntPtr VirtualXML_ProcesaDocumentoSSL ( IntPtr p, String csd, String key, String keypwd, String outfile );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_GetValueW")]
public static extern String VirtualXML_GetValue ( IntPtr p, IntPtr value );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_FreeW")]
public static extern void VirtualXML_Free ( IntPtr p );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetVirtualPACInfoW")]
public static extern void VirtualXML_SetVirtualPACInfo ( IntPtr p, String szUser, String servidor );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetCiberSATInfoW")]
public static extern void VirtualXML_SetCiberSATInfo ( IntPtr p, String userCiberPAC, String llaveCiberPAC );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetComprobanteInfoW")]
public static extern void VirtualXML_SetComprobanteInfo ( IntPtr p, String serie, String folio, String fecha, String tipoDeComprobante, String formaDePago, String subtotal, String descuento, String total, String moneda, String tipoCambio, String condicionesDePago, String metodoDePago, String motivoDescuento );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetImpuestosLocalesInfoW")]
public static extern void VirtualXML_SetImpuestosLocalesInfo ( IntPtr p, String TotaldeTraslados, String TotaldeRetenciones );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddImpuestoLocalRetenidoW")]
public static extern void VirtualXML_AddImpuestoLocalRetenido ( IntPtr p, String ImpLocRetenido, String TasadeRetencion, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddImpuestoLocalTrasladadoW")]
public static extern void VirtualXML_AddImpuestoLocalTrasladado ( IntPtr p, String ImpLocTrasladado, String TasadeTraslado, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddDonatarias11W")]
public static extern void VirtualXML_AddDonatarias11 ( IntPtr p, String noAutorizacion, String fechaAutorizacion, String leyenda );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetDllPathW")]
public static extern void VirtualXML_SetDllPath ( IntPtr p, String DllPath );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_GetValueInFileW")]
public static extern void VirtualXML_GetValueInFile ( IntPtr p, IntPtr value, String file );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_ProcessFileW")]
public static extern void VirtualXML_ProcessFile ( String szFile );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CheckFileW")]
public static extern IntPtr VirtualXML_CheckFile ( String szFile );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetLogFileW")]
public static extern void VirtualXML_SetLogFile ( IntPtr p, String file );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_ShowValueW")]
public static extern void VirtualXML_ShowValue ( IntPtr p, IntPtr lValue, String title );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_FirmaSellaDoctoW")]
public static extern IntPtr VirtualXML_FirmaSellaDocto ( IntPtr p, String csd, String key, String keypwd, String outfile );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SaveW")]
public static extern void VirtualXML_Save ( IntPtr p, String file );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_LoadW")]
public static extern IntPtr VirtualXML_Load ( String file );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_GetTimeWithDelayW")]
public static extern String VirtualXML_GetTimeWithDelay ( IntPtr p, IntPtr nSegs );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_GetValuesW")]
public static extern void VirtualXML_GetValues ( IntPtr p, String file, IntPtr lFormat );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CancelaUUIDW")]
public static extern IntPtr VirtualXML_CancelaUUID ( String szUser, String szEmisor, String szCert, String szKey, String szPwd, String szUuid, String szOut );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CancelaCFDIW")]
public static extern IntPtr VirtualXML_CancelaCFDI ( String szUser, String szEmisor, String szReceptor, String szTotal, String szUuid, String szCert, String szKey, String szPwd, String szResult, String szLog );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_GetStatusCFDIW")]
public static extern IntPtr VirtualXML_GetStatusCFDI ( String szUser, String szEmisor, String szReceptor, String szTotal, String szUuid, String szResult, String szLog );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_RecuperaAcuseCancelacionW")]
public static extern IntPtr VirtualXML_RecuperaAcuseCancelacion ( String sZUser, String sZemisor, String SzUuid, String sZResult, String szXMLAcuse, String szLog, String sZreserved );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CerKeyMatchW")]
public static extern IntPtr VirtualXML_CerKeyMatch ( IntPtr p, String szEmisor, String szCSD, String szKey, String szKeyPwd );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CheckLicenceW")]
public static extern IntPtr VirtualXML_CheckLicence ( String user, String llave, String emisor );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetNomina12W")]
public static extern void VirtualXML_SetNomina12 ( IntPtr p, String TipoNomina, String FechaPago, String FechaInicialPago, String FechaFinalPago, String NumDiasPagados, String TotalPercepciones, String TotalDeducciones, String TotalOtrosPagos);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12SetEmisorW")]
public static extern void VirtualXML_Nomina12SetEmisor ( IntPtr p, String Curp, String RegistroPatronal, String RfcPatronOrigen, String OrigenRecurso, String MontoRecursoPropio);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12SetReceptorW")]
public static extern void VirtualXML_Nomina12SetReceptor ( IntPtr p, String Curp, String NumSeguridadSocial, String FechaInicioRelLaboral, String Antiguedad, String TipoContrato, String Sindicalizado, String TipoJornada, String TipoRegimen, String NumEmpleado, String Departamento, String Puesto, String RiesgoPuesto, String PeriodicidadPago, String Banco, String CuentaBancaria, String SalarioBaseCotApor, String SalarioDiarioIntegrado, String ClaveEntFed);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12AddSubContratacionW")]
public static extern void VirtualXML_Nomina12AddSubContratacion ( IntPtr p, String RfcLabora, String PorcentajeTiempo );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12SetPercepcionesW")]
public static extern void VirtualXML_Nomina12SetPercepciones ( IntPtr p, String TotalSueldos, String TotalSeparacionIndemnizacion, String TotalJubilacionPensionRetiro, String TotalGravado, String TotalExento );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12AddPercepcionW")]
public static extern void VirtualXML_Nomina12AddPercepcion ( IntPtr p, String TipoPercepcion, String Clave, String Concepto, String ImporteGravado, String ImporteExento, String Dias, String TipoHoras, String HorasExtra, String ImportePagado, String ValorMercado, String PrecioAlOtorgarse);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12SetJubilacionPensionRetiroW")]
public static extern void VirtualXML_Nomina12SetJubilacionPensionRetiro ( IntPtr p, String TotalUnaExhibicion, String TotalParcialidad, String MontoDiario, String IngresoAcumulable, String IngresoNoAcumulable);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12SetSeparacionIndemnizacionW")]
public static extern void VirtualXML_Nomina12SetSeparacionIndemnizacion ( IntPtr p, String TotalPagado, String NumAniosServicio, String UltimoSueldoMensOrd, String IngresoAcumulable, String IngresoNoAcumulable);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12SetDeduccionesW")]
public static extern void VirtualXML_Nomina12SetDeducciones ( IntPtr p, String TotalOtrasDeducciones, String TotalImpuestosRetenidos );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12AddDeduccionW")]
public static extern void VirtualXML_Nomina12AddDeduccion ( IntPtr p, String TipoDeduccion, String Clave, String Concepto, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12AddOtroPagoW")]
public static extern void VirtualXML_Nomina12AddOtroPago ( IntPtr p, String TipoOtroPago, String Clave, String Concepto, String Importe, String SaldoAFavor, String Anio, String RemanenteSalFav, String SubsidioCausado);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Nomina12AddIncapacidadW")]
public static extern void VirtualXML_Nomina12AddIncapacidad ( IntPtr p, String DiasIncapacidad, String TipoIncapacidad, String ImporteMonetario);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetCompleteXML_cfdi33W")]
public static extern void VirtualXML_SetCompleteXML_cfdi33 ( IntPtr p, String XMLCompleto );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetComprobanteInfo_cfdi33W")]
public static extern void VirtualXML_SetComprobanteInfo_cfdi33 ( IntPtr p, String Serie, String Folio, String Fecha, String FormaPago, String CondicionesDePago, String SubTotal, String Descuento, String Moneda, String TipoCambio, String Total, String TipoDeComprobante, String MetodoPago, String LugarExpedicion, String Confirmacion );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetCfdiRelacionados_cfdi33W")]
public static extern void VirtualXML_SetCfdiRelacionados_cfdi33 ( IntPtr p, String TipoRelacion );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddCfdiRelacionado_cfdi33W")]
public static extern void VirtualXML_AddCfdiRelacionado_cfdi33 ( IntPtr p, String UUID );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetEmisorInfo_cfdi33W")]
public static extern void VirtualXML_SetEmisorInfo_cfdi33 ( IntPtr p, String Rfc, String Nombre, String RegimenFiscal );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetReceptorInfo_cfdi33W")]
public static extern void VirtualXML_SetReceptorInfo_cfdi33 ( IntPtr p, String Rfc, String Nombre, String ResidenciaFiscal, String NumRegIdTrib, String UsoCFDI );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConcepto_cfdi33W")]
public static extern void VirtualXML_AddConcepto_cfdi33 ( IntPtr p, String ClaveProdServ, String NoIdentificacion, String Cantidad, String ClaveUnidad, String Unidad, String Descripcion, String ValorUnitario, String Importe, String Descuento);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConceptoTraslado_cfdi33W")]
public static extern void VirtualXML_AddConceptoTraslado_cfdi33 ( IntPtr p, String Base, String Impuesto, String TipoFactor, String TasaOCuota, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConceptoRetencion_cfdi33W")]
public static extern void VirtualXML_AddConceptoRetencion_cfdi33 ( IntPtr p, String Base, String Impuesto, String TipoFactor, String TasaOCuota, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetImpuestosInfo_cfdi33W")]
public static extern void VirtualXML_SetImpuestosInfo_cfdi33 ( IntPtr p, String TotalImpuestosTrasladados, String TotalImpuestosRetenidos );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetServicioParcial10W")]
public static extern void VirtualXML_SetServicioParcial10 ( IntPtr p, String NumPerLicoAut, String Calle, String NoExterior, String NoInterior, String Colonia, String Localidad, String Referencia, String Municipio, String Estado, String CodigoPostal);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddTraslado_cfdi33W")]
public static extern void VirtualXML_AddTraslado_cfdi33 ( IntPtr p, String Impuesto, String TipoFactor, String TasaOCuota, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddRetencion_cfdi33W")]
public static extern void VirtualXML_AddRetencion_cfdi33 ( IntPtr p, String Impuesto, String Importe );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetPagos10W")]
public static extern void VirtualXML_SetPagos10 ( IntPtr p );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Pagos10SetPagoW")]
public static extern void VirtualXML_Pagos10SetPago ( IntPtr p, String FechaPago, String FormaDePago, String MonedaP, String TipoCambioP, String Monto, String NumOperacion, String RfcEmisorCtaOrd, String NomBancoOrdExt, String CtaOrdenante, String RfcEmisorCtaBen, String CtaBeneficiario, String TipoCadPago, String CertPago, String CadPago, String SelloPago);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_Pagos10AddPagoDoctoRelacionadoW")]
public static extern void VirtualXML_Pagos10AddPagoDoctoRelacionado ( IntPtr p, String IdDocumento, String Serie, String Folio, String MonedaDR, String TipoCambioDR, String MetodoDePagoDR, String NumParcialidad, String ImpSaldoAnt, String ImpPagado, String ImpSaldoInsoluto);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConceptoComplementoIedu_cfdi33W")]
public static extern void VirtualXML_AddConceptoComplementoIedu_cfdi33 ( IntPtr p, String nombreAlumno, String CURP, String nivelEducativo, String autRVOE, String rfcPago );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConceptoInformacionAduanera_cfdi33W")]
public static extern void VirtualXML_AddConceptoInformacionAduanera_cfdi33 ( IntPtr p, String NumeroPedimento);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConceptoCuentaPredial_cfdi33W")]
public static extern void VirtualXML_AddConceptoCuentaPredial_cfdi33 ( IntPtr p, String Numero );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddConceptoParte_cfdi33W")]
public static extern void VirtualXML_AddConceptoParte_cfdi33 ( IntPtr p, String ClaveProdServ, String NoIdentificacion, String Cantidad, String Unidad, String Descripcion, String ValorUnitario, String Importe, String NumeroPedimento );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetAddendaText_cfdi33W")]
public static extern void VirtualXML_SetAddendaText_cfdi33 ( IntPtr p, String text );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddComplemento_cfdi33W")]
public static extern void VirtualXML_AddComplemento_cfdi33 ( IntPtr p, String complementoXml );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetAddenda_cfdi33W")]
public static extern void VirtualXML_SetAddenda_cfdi33 ( IntPtr p, String text );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetComercioExterior11W")]
public static extern void VirtualXML_SetComercioExterior11 ( IntPtr p, String MotivoTraslado, String TipoOperacion, String ClaveDePedimento, String CertificadoOrigen, String NumCertificadoOrigen, String NumeroExportadorConfiable, String Incoterm,String Subdivision, String Observaciones, String TipoCambioUSD, String TotalUSD);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CCE11SetEmisorW")]
public static extern void VirtualXML_CCE11SetEmisor ( IntPtr p, String Curp, String Calle, String NumeroExterior, String NumeroInterior, String Colonia, String Localidad, String Referencia, String Municipio, String Estado, String Pais, String CodigoPostal );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CCE11SetReceptorW")]
public static extern void VirtualXML_CCE11SetReceptor ( IntPtr p, String NumRegIdTrib, String Calle, String NumeroExterior, String NumeroInterior, String Colonia, String Localidad, String Referencia, String Municipio, String Estado, String Pais, String CodigoPostal );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CCE11AddDestinatarioW")]
public static extern void VirtualXML_CCE11AddDestinatario ( IntPtr p, String NumRegIdTrib, String Nombre, String Calle, String NumeroExterior, String NumeroInterior, String Colonia, String Localidad, String Referencia, String Municipio, String Estado, String Pais, String CodigoPostal);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CCE11AddPropietarioW")]
public static extern void VirtualXML_CCE11AddPropietario ( IntPtr p, String NumRegIdTrib, String ResidenciaFiscal );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CCE11AddMercanciaW")]
public static extern void VirtualXML_CCE11AddMercancia ( IntPtr p, String NoIdentificacion, String FraccionArancelaria, String CantidadAduana, String UnidadAduana, String ValorUnitarioAduana, String ValorDolares, String Marca, String Modelo, String SubModelo, String NumeroSerie);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CCE11AddMercanciaDescripcionesEspecificasW")]
public static extern void VirtualXML_CCE11AddMercanciaDescripcionesEspecificas ( int p, String Marca, String Modelo, String SubModelo, String NumeroSerie );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_GeneraCBBW")]
public static extern IntPtr VirtualXML_GeneraCBB ( String Datos, String Archivo, IntPtr Dependencias, String RutaLog, IntPtr AddLog, IntPtr Escala, IntPtr Margen );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CerTo64W")]
public static extern String VirtualXML_CerTo64 ( String ArchivoCer );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_FileTo64W")]
public static extern String VirtualXML_FileTo64 ( String Archivo );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetINE11W")]
public static extern void VirtualXML_SetINE11 ( IntPtr p, String TipoProceso, String TipoComite, String IdContabilidad, String ClaveEntidad, String Ambito, String EntidadContabilidadIdContabilidad );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddEntidadW")]
public static extern void VirtualXML_AddEntidad ( IntPtr p, String ClaveEntidad, String Ambito, String IdContabilidad );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_AddEntidadContabilidadW")]
public static extern void VirtualXML_AddEntidadContabilidad ( IntPtr p, String IdContabilidad );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_ConsultaSaldosW")]
public static extern IntPtr VirtualXML_ConsultaSaldos ( String usuario, String rfcEmisor, IntPtr DatoSolicitado, String ArchivoLog);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetLeyendasFiscales10W")]
public static extern void VirtualXML_SetLeyendasFiscales10 ( IntPtr p, String Disposicion, String Norma, String TextoLeyenda);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetLeyendasFiscales10FullW")]
public static extern void VirtualXML_SetLeyendasFiscales10Full ( IntPtr p, String Dis01, String Norma01, String Texto01, String Dis02, String Norma02, String Texto02, String Dis03, String Norma03, String Texto03, String Dis04, String Norma04, String Texto04, String Dis05, String Norma05, String Texto05, String Dis06, String Norma06, String Texto06, String Dis07, String Norma07, String Texto07, String Dis08, String Norma08, String Texto08, String Dis09, String Norma09, String Texto09, String Dis10, String Norma10, String Texto10);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_ConsultaEstadoCFDIW")]
public static extern IntPtr VirtualXML_ConsultaEstadoCFDI ( String rfcEmisor, String rfcReceptor, String Total, String UUID, String OutLog );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_MasivaDescargaW")]
public static extern IntPtr VirtualXML_MasivaDescarga ( String Usuario, String ArchivoCerFiel, String ArchivoKeyFiel, String PwdKey, String IdPaquete, String ArchivoDescargado, String ArchLog, String Reservado );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_MasivaSolicitaEmitidoXMLW")]
public static extern IntPtr VirtualXML_MasivaSolicitaEmitidoXML ( String Usuario, String ArchivoCerFiel, String ArchivoKeyFiel, String PwdKey, String RfcReceptor, String FechaDesde, String FechaHasta, String ArchResultado, String ArchLog, String Reservado );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_MasivaSolicitaEmitidoMetadataW")]
public static extern IntPtr VirtualXML_MasivaSolicitaEmitidoMetadata ( String Usuario, String ArchivoCerFiel, String ArchivoKeyFiel, String PwdKey, String RfcReceptor, String FechaDesde, String FechaHasta, String ArchResultado, String ArchLog, String Reservado );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_MasivaSolicitaRecibidoXMLW")]
public static extern IntPtr VirtualXML_MasivaSolicitaRecibidoXML ( String Usuario, String ArchivoCerFiel, String ArchivoKeyFiel, String PwdKey, String RfcEmisor, String FechaDesde, String FechaHasta, String ArchResultado, String ArchLog, String Reservado );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_MasivaSolicitaRecibidoMetadataW")]
public static extern IntPtr VirtualXML_MasivaSolicitaRecibidoMetadata ( String Usuario, String ArchivoCerFiel, String ArchivoKeyFiel, String PwdKey, String RfcEmisor, String FechaDesde, String FechaHasta, String ArchResultado, String ArchLog, String Reservado);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_MasivaVerificaW")]
public static extern IntPtr VirtualXML_MasivaVerifica ( String Usuario, String ArchivoCerFiel, String ArchivoKeyFiel, String PwdKey, String IdSolicitud, String ArchResultado, String ArchLog, String Reservado);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_SetCartaPorte20W")]
public static extern void VirtualXML_SetCartaPorte20(IntPtr p, String TranspInternac, String EntradaSalidaMerc, String PaisOrigenDestino, String ViaEntradaSalida, String TotalDistRec);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddUbicacionW")]
public static extern void VirtualXML_CartaPorte20AddUbicacion(IntPtr p, String TipoUbicacion, String IDUbicacion, String RFCRemitenteDestinatario, String NombreRemitenteDestinatario, String NumRegIdTrib, String ResidenciaFiscal, String NumEstacion, String NombreEstacion, String NavegacionTrafico, String FechaHoraSalidaLlegada, String TipoEstacion, String DistanciaRecorrida, String Calle, String NumeroExterior, String NumeroInterior, String Colonia, String Localidad, String Referencia, String Municipio, String Estado, String Pais, String CodigoPostal);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20SetMercanciasW")]
public static extern void VirtualXML_CartaPorte20SetMercancias(IntPtr p, String PesoBrutoTotal, String UnidadPeso, String PesoNetoTotal, String NumTotalMercancias, String CargoPorTasacion);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciaW")]
public static extern void VirtualXML_CartaPorte20AddMercancia(IntPtr p, String BienesTransp, String ClaveSTCC, String Descripcion, String Cantidad, String ClaveUnidad, String Unidad, String Dimensiones, String MaterialPeligroso, String CveMaterialPeligroso, String Embalaje, String DescripEmbalaje, String PesoEnKg, String ValorMercancia, String Moneda, String FraccionArancelaria, String UUIDComercioExt, String UnidadPesoMerc, String PesoBruto, String PesoNeto, String PesoTara, String NumPiezas);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciaPedimentosW")]
public static extern void VirtualXML_CartaPorte20AddMercanciaPedimentos(IntPtr p, String Pedimento);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciaGuiasIdentificacionW")
public static extern void VirtualXML_CartaPorte20AddMercanciaGuiasIdentificacion(IntPtr p, String NumeroGuiaIdentificacion, String DescripGuiaIdentificacion, String PesoGuiaIdentificacion);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciaCantidadTransportaW")
public static extern void VirtualXML_CartaPorte20AddMercanciaCantidadTransporta(IntPtr p, String Cantidad, String IDOrigen, String IDDestino, String CvesTransporte);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20SetMercanciasAutotransporteW")
public static extern void VirtualXML_CartaPorte20SetMercanciasAutotransporte(IntPtr p, String PermSCT, String NumPermisoSCT, String ConfigVehicular, String PlacaVM, String AnioModeloVM, String AseguraRespCivil, String PolizaRespCivil, String AseguraMedAmbiente, String PolizaMedAmbiente, String AseguraCarga, String PolizaCarga, String PrimaSeguro, String SubTipoRem1, String Placa1, String SubTipoRem2, String Placa2);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20SetMercanciasTransporteMaritimoW")
public static extern void VirtualXML_CartaPorte20SetMercanciasTransporteMaritimo(IntPtr p, String PermSCT, String NumPermisoSCT, String NombreAseg, String NumPolizaSeguro, String TipoEmbarcacion, String Matricula, String NumeroOMI, String AnioEmbarcacion, String NombreEmbarc, String NacionalidadEmbarc, String UnidadesDeArqBruto, String TipoCarga, String NumCertITC, String Eslora, String Manga, String Calado, String LineaNaviera, String NombreAgenteNaviero, String NumAutorizacionNaviero, String NumViaje, String NumConocEmbarc, String MatriculaContenedor, String TipoContenedor, String NumPrecinto);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciasTransporteMaritimoContenedorW")]
public static extern void VirtualXML_CartaPorte20AddMercanciasTransporteMaritimoContenedor(IntPtr p, String MatriculaContenedor, String TipoContenedor, String NumPrecinto);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20SetMercanciasTransporteAereoW")]
public static extern void VirtualXML_CartaPorte20SetMercanciasTransporteAereo(IntPtr p, String PermSCT, String NumPermisoSCT, String MatriculaAeronave, String NombreAseg, String NumPolizaSeguro, String NumeroGuia, String LugarContrato, String CodigoTransportista, String RFCEmbarcador, String NumRegIdTribEmbarc, String ResidenciaFiscalEmbarc, String NombreEmbarcador);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20SetMercanciasTransporteFerroviarioW")]
public static extern void VirtualXML_CartaPorte20SetMercanciasTransporteFerroviario(IntPtr p, String TipoDeServicio, String TipoDeTrafico, String NombreAseg, String NumPolizaSeguro, String TipoDerechoDePaso, String KilometrajePagado, String TipoCarro, String MatriculaCarro, String GuiaCarro, String ToneladasNetasCarro, String TipoContenedor, String PesoContenedorVacio, String PesoNetoMercancia);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioDerechosDePasoW")]
public static extern void VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioDerechosDePaso(IntPtr p, String TipoDerechoDePaso, String KilometrajePagado);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioCarroW")]
public static extern void VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioCarro(IntPtr p, String TipoCarro, String MatriculaCarro, String GuiaCarro, String ToneladasNetasCarro, String TipoContenedor, String PesoContenedorVacio, String PesoNetoMercancia);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioCarroContenedorW")]
public static extern void VirtualXML_CartaPorte20AddMercanciasTransporteFerroviarioCarroContenedor(IntPtr p, String TipoContenedor, String PesoContenedorVacio, String PesoNetoMercancia);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddFiguraTransporteTiposFiguraW")]
public static extern void VirtualXML_CartaPorte20AddFiguraTransporteTiposFigura(IntPtr p, String TipoFigura, String RFCFigura, String NumLicencia, String NombreFigura, String NumRegIdTribFigura, String ResidenciaFiscalFigura, String ParteTransporte, String Calle, String NumeroExterior, String NumeroInterior, String Colonia, String Localidad, String Referencia, String Municipio, String Estado, String Pais, String CodigoPostal);
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CartaPorte20AddFiguraTransporteTiposFiguraPartesTransporteW")]
public static extern void VirtualXML_CartaPorte20AddFiguraTransporteTiposFigura(IntPtr p, String TipoFigura );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CancelaCFDI2022W")]
public static extern IntPtr VirtualXML_CancelaCFDI2022W ( String szUsuario, String szRfcEmisor, String szMotivo, String szUuid, String szFolioSust, String szCert, String szKey, String szPwd, String szServer, String szResult, String szLog:PChar );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint = "VirtualXML_CancelaCFDI2022SslW")]
public static extern IntPtr VirtualXML_CancelaCFDI2022SslW ( String szUsuario, String szRfcEmisor, String szMotivo, String szUuid, String szFolioSust, String szCert, String szKey, String szPwd, String szServer, String szResult, String szLog:PChar );
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_Pagos20AddPagoW")]
public static extern void VirtualXML_Pagos20AddPagoW ( IntPtr p, String FechaPago, String FormaDePagoP, String MonedaP, String TipoCambioP, String Monto, String NumOperacion, String RfcEmisorCtaOrd, String NomBancoOrdExt, String CtaOrdenante, String RfcEmisorCtaBen, String CtaBeneficiario, String TipoCadPago, String CertPago, String CadPago, String SelloPago )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_Pagos20AddPagoDoctoRelacionadoW")]
public static extern void VirtualXML_Pagos20AddPagoDoctoRelacionadoW ( IntPtr p, String idDocumento, String Serie, String Folio, String MonedadDR, String EquivalenciaDR, String NumParcialidad, String ImpSaldoAnt, String ImpPagado, String ImpSaldoInsoluto, String ObjetoImpDR )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_Pagos20AddPagoDoctoRelacionadoRetencionDRW")]
public static extern void VirtualXML_Pagos20AddPagoDoctoRelacionadoRetencionDRW ( IntPtr p, String BaseDR, String ImpuestoDR, String TipoFactorDR, String TasaOCuotaDR, String ImporteDR )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_Pagos20AddPagoDoctoRelacionadoTrasladoDRW")]
public static extern void VirtualXML_Pagos20AddPagoDoctoRelacionadoTrasladoDRW ( IntPtr p, String BaseDR, String ImpuestoDR, String TipoFactorDR, String TasaOCuotaDR, String ImporteDR )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_Pagos20AddPagoImpuestosPRetencionPW")]
public static extern void VirtualXML_Pagos20AddPagoImpuestosPRetencionPW ( IntPtr p, String ImpuestoP, String ImporteP )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_Pagos20AddPagoImpuestosPTrasladoPW")]
public static extern void VirtualXML_Pagos20AddPagoImpuestosPTrasladoPW ( IntPtr p, String BaseP, String ImpuestoP, String TipoFactorP, String TasaOCuotaP, String ImporteP )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetPagos20W")]
public static extern void VirtualXML_SetPagos20W ( IntPtr p, String TotalRetencionesIVA, String TotalRetencionesISR, String TotalRetencionesIEPS, String TotalTrasladosBaseIVA16, String TotalTrasladosImpuestoIVA16, String TotalTrasladosBaseIVA8, String TotalTrasladosImpuestoIVA8, String TotalTrasladosBaseIVA0, String TotalTrasladosImpuestoIVA0, String TotalTrasladosBaseIVAExento, String MontoTotalPagos)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddCfdiRelacionado_cfdi40W")]
public static extern void VirtualXML_AddCfdiRelacionado_cfdi40W ( IntPtr p, String UUID )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddCfdiRelacionados_cfdi40W")]
public static extern void VirtualXML_AddCfdiRelacionados_cfdi40W ( IntPtr p, String TipoRelacion, String UUID1, String UUID2, String UUID3, String UUID4, String UUID5, String UUID6, String UUID7, String UUID8, String UUID9, String UUID10)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddComplemento_cfdi40W")]
public static extern void VirtualXML_AddComplemento_cfdi40W ( IntPtr p, String complementoXml )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddComplementoConcepto_cfdi40W")]
public static extern void VirtualXML_AddComplementoConcepto_cfdi40W ( IntPtr p, String complementoXml )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddConcepto_cfdi40W")]
public static extern void VirtualXML_AddConcepto_cfdi40W ( IntPtr p, String ClaveProdServ, String NoIdentificacion, String Cantidad, String ClaveUnidad, String Unidad, String Descripcion, String ValorUnitario, String Importe, String Descuento, String ObjetoImp )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddConceptoCuentaPredial_cfdi40W")]
public static extern void VirtualXML_AddConceptoCuentaPredial_cfdi40W ( IntPtr p, String Numero )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddConceptoInformacionAduanera_cfdi40W")]
public static extern void VirtualXML_AddConceptoInformacionAduanera_cfdi40W ( IntPtr p, String NumperoPedimento )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddConceptoParte_cfdi40W")]
public static extern void VirtualXML_AddConceptoParte_cfdi40W ( IntPtr p, String ClaveProdServ, String NoIdentificacion, String Cantidad, String Unidad, String Descripcion, String ValorUnitario, String Importe, String NumperoPedimento1, String NumperoPedimento2, String NumperoPedimento3, String NumperoPedimento4, String NumperoPedimento5 )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddConceptoRetencion_cfdi40W")]
public static extern void VirtualXML_AddConceptoRetencion_cfdi40W ( IntPtr p, String Base, String Impuesto, String Tipofactor, String TasaOCuota, String Importe )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddConceptoTraslado_cfdi40W")]
public static extern void VirtualXML_AddConceptoTraslado_cfdi40W ( IntPtr p, String Base, String Impuesto, String Tipofactor, String TasaOCuota, String Importe )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddRetencion_cfdi40W")]
public static extern void VirtualXML_AddRetencion_cfdi40W ( IntPtr p, String Impuesto, String Importe )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_AddTraslado_cfdi40W")]
public static extern void VirtualXML_AddTraslado_cfdi40W ( IntPtr p, String Impuesto, String TipoFactor, String TasaOCuota, String Importe, String Base )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetAddenda_cfdi40W")]
public static extern void VirtualXML_SetAddenda_cfdi40W ( IntPtr p, String text )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetAddendaText_cfdi40W")]
public static extern void VirtualXML_SetAddendaText_cfdi40W ( IntPtr p, String text )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetCompleteXML_cfdi40W")]
public static extern void VirtualXML_SetCompleteXML_cfdi40W ( IntPtr p, String TextoXMLoArchivoXML)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetComprobanteInfo_cfdi40W")]
public static extern void VirtualXML_SetComprobanteInfo_cfdi40W ( IntPtr p, String Serie, String Folio, String Fecha, String FormaDePago, String CondicionesDePago, String SubTotal, String Descuento, String Moneda, String TipoCambio, String Total, String TipoDeComprobante, String MetodoDePago, String LugarExpedicion, String Confirmacion, String Exportacion )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetConceptoACuentaTerceros_cfdi40W")]
public static extern void VirtualXML_SetConceptoACuentaTerceros_cfdi40W ( IntPtr p, String RfcACuentaTerceros, String NombreACuentaTerceros, String RegimenFiscalACuentaTerceros, String DomicilioFiscalACuentaTerceros )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetEmisorInfo_cfdi40W")]
public static extern void VirtualXML_SetEmisorInfo_cfdi40W ( IntPtr p, String RFC, String Nombre, String RegimenFiscal, String FacAtrAdquirente )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetInformacionGlobal_cfdi40W")]
public static extern void VirtualXML_SetInformacionGlobal_cfdi40W ( IntPtr p, String Periodicidad, String Meses, String Año )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetImpuestosInfo_cfdi40W")]
public static extern void VirtualXML_SetImpuestosInfo_cfdi40W ( IntPtr p, String totalImpuestosTrasladados, String totalImpuestosRetenidos )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_SetReceptorInfo_cfdi40W")]
public static extern void VirtualXML_SetReceptorInfo_cfdi40W ( IntPtr p, String RFC, String Nombre, String ResidenciaFiscal, String NumRegIdTrib, String UsoCFDI, String DomicilioFiscalReceptor, String RegimenFiscalReceptor )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="Utils_SendEmailW")]
public static extern IntPtr Utils_SendEmailW ( String SmtpServer, IntPtr SmtpPuerto, String SmtpUserName, String SmtpPassword, String MessageTo, String MessageFrom, String MessageSubjet, String MessageBody, String MessageAttach1, String MessageAttach2, String MessageAttach3, String OutLog, String Reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoint ="VirtualXML_ApiEmisorAddW")]
public static extern IntPtr VirtualXML_ApiEmisorAddW ( String apikey, String usuario, String rfcemisor, String pwdconsulta, String razonsocial, String email, String contacto, IntPtr asignacion, IntPtr suspendido, IntPtr notificacion, String outLog, String reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="VirtualXML_ApiEmisorUpdW")]
public static extern IntPtr VirtualXML_ApiEmisorUpdW ( String apikey, String usuario, String rfcemisor, String pwdconsulta, String razonsocial, String email, String contacto, IntPtr suspendido, IntPtr notificacion, String outLog, String reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="VirtualXML_ApiEmisorAsignaW")]
public static extern IntPtr VirtualXML_ApiEmisorAsignaW ( String apikey, String usuario, String rfcemisor, IntPtr asignacion, String outLog, String reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="VirtualXML_ApiEmisorAutoasignacionW")]
public static extern IntPtr VirtualXML_ApiEmisorAutoasignacionW ( String apikey, String usuario, String rfcemisor, IntPtr asignacion, IntPtr threshold, IntPtr limit, IntPtr active, String outLog, String reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="VirtualXML_ApiUsuarioAddW")]
public static extern IntPtr VirtualXML_ApiUsuarioAddW ( String apikey, String usuario, String distribuidor, String pwd, String razonsocial, String email, String contacto, String rfc, IntPtr asignacion, String outLog, String xtra, String reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="VirtualXML_ApiUsuarioAddW")]
public static extern IntPtr VirtualXML_ApiUsuarioUpdW ( String apikey, String usuario, String distribuidor, String pwd, String razonsocial, String email, String contacto, String rfc, String outLog, String xtra, String reserved )
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetVirtualPACInfoW")]
public static extern void Retenciones_SetVirtualPACInfoW ( IntPtr p, String szUser, String servidor)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_ProcesaDocumentoW")]
public static extern IntPtrRetenciones_ProcesaDocumentoW ( IntPtr p, String csd, String key, String keypwd, String outfile)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_FreeW")]
public static extern void Retenciones_FreeW ( IntPtr p)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetAddendaTextW")]
public static extern void Retenciones_SetAddendaTextW ( IntPtr p, String text)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetAddendaXMLW")]
public static extern void Retenciones_SetAddendaXMLW ( IntPtr p, String xmlAddenda)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetRetencionesCfdiRetenRelacionadosW")]
public static extern void Retenciones_SetRetencionesCfdiRetenRelacionadosW ( IntPtr p, String TipoRelacion, String UUID)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetRetencionesEmisorW")]
public static extern void Retenciones_SetRetencionesEmisorW ( IntPtr p, String RfcE, String NomDenRazSocE, String RegimenFiscalE)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetRetencionesInfoW")]
public static extern void Retenciones_SetRetencionesInfoW ( IntPtr p, String FolioInt, String FechaExp, String LugarExpRetenc, String CveRetenc, String DescRetenc)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetRetencionesPeriodoW")]
public static extern void Retenciones_SetRetencionesPeriodoW ( IntPtr p, String MesIni, String MesFin, String Ejercicio)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetRetencionesReceptorW")]
public static extern void Retenciones_SetRetencionesReceptorW ( IntPtr p, String NacionalidadR, String RfcR, String NomDenRazSocRNacional, String CurpR, String DomicilioFiscalR, String NumRegIdTribR, String NomDenRazSocRExtranjero)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetRetencionesTotalesW")]
public static extern void Retenciones_SetRetencionesTotalesW ( IntPtr p, String MontoTotOperacion, String MontoTotGrav, String MontoTotExent, String MontoTotRet, String UtilidadBimestral, String ISRCorrespondiente)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_AddRetencionesTotalesImpRetenidosW")]
public static extern void Retenciones_AddRetencionesTotalesImpRetenidosW ( IntPtr p, String BaseRet, String ImpuestoRet, String MontoRet, String TipoPagoRet)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoArrendamientoenfideicomiso10W")]
public static extern void Retenciones_SetComplementoArrendamientoenfideicomiso10W ( IntPtr p, String PagProvEfecPorFiduc, String RendimFideicom, String DeduccCorresp, String MontTotRet, String MontResFiscDistFibras, String MontOtrosConceptDistr, String DescrMontOtrosConceptDistr)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoDividendos10W")]
public static extern void Retenciones_SetComplementoDividendos10W ( IntPtr p, String CveTipDivOUtil, String MontISRAcredRetMexico, String MontISRAcredRetExtranjero, String MontRetExtDivExt, String TipoSocDistrDiv, String MontISRAcredNal, String MontDivAcumNal, String MontDivAcumExt, String ProporcionRem)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoEnajenaciondeAcciones10W")]
public static extern void Retenciones_SetComplementoEnajenaciondeAcciones10W ( IntPtr p, String ContratoIntermediacion, String Ganancia, String Perdida)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoFideicomisonoempresarial10W")]
public static extern void Retenciones_SetComplementoFideicomisonoempresarial10W ( IntPtr p, String MontTotEntradasPeriodo, String PartPropAcumDelFideicom, String PropDelMontTotEntradas, String Concepto, String MontTotEgresPeriodo, String PartPropDelFideicom, String PropDelMontTotSalidas, String ConceptoS, String MontRetRelPagFideic, String DescRetRelPagFideic)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoIntereses10W")]
public static extern void Retenciones_SetComplementoIntereses10W ( IntPtr p, String SistFinanciero, String RetiroAORESRetInt, String OperFinancDerivad, String MontIntNominal, String MontIntReal, String Perdida)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoIntereseshipotecarios10W")]
public static extern void Retenciones_SetComplementoIntereseshipotecarios10W ( IntPtr p, String CreditoDeInstFinanc, String SaldoInsoluto, String PropDeducDelCredit, String MontTotIntNominalesDev, String MontTotIntNominalesDevYPag, String MontTotIntRealPagDeduc, String NumContrato)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoOperacionesconderivados10W")]
public static extern void Retenciones_SetComplementoOperacionesconderivados10W ( IntPtr p, String MontGanAcum, String MontPerdDed)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoPagosaextranjeros10W")]
public static extern void Retenciones_SetComplementoPagosaextranjeros10W ( IntPtr p, String EsBenefEfectDelCobro, String PaisDeResidParaEfecFisc, String ConceptoPagoNoBeneficiario, String DescripcionConceptoNoBeneficiario, String RFC, String CURP, String NomDenRazSocB, String ConceptoPagoBeneficiario, String DescripcionConceptoBeneficiario)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoPlanesderetiro11W")]
public static extern void Retenciones_SetComplementoPlanesderetiro11W ( IntPtr p, String SistemaFinanc, String MontTotAportAnioInmAnterior, String MontIntRealesDevengAniooInmAnt, String HuboRetirosAnioInmAntPer, String MontTotRetiradoAnioInmAntPer, String MontTotExentRetiradoAnioInmAnt, String MontTotExedenteAnioInmAnt, String HuboRetirosAnioInmAnt, String MontTotRetiradoAnioInmAnt, String NumReferencia, String TipoAportacionODeposito1, String MontAportODep1, String RFCFiduciaria1, String TipoAportacionODeposito2, String MontAportODep2, String RFCFiduciaria2, String TipoAportacionODeposito3, String MontAportODep3, String RFCFiduciaria3)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoPlataformasTecnologicas10W")]
public static extern void Retenciones_SetComplementoPlataformasTecnologicas10W ( IntPtr p, String Periodicidad, String NumServ, String MonTotServSIVA, String TotalIVATrasladado, String TotalIVARetenido, String TotalISRRetenido, String DifIVAEntregadoPrestServ, String MonTotalporUsoPlataforma, String MonTotalContribucionGuber)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_AddComplementoPlataformasTecnologicas10DetallesDelServicioW")]
public static extern void Retenciones_AddComplementoPlataformasTecnologicas10DetallesDelServicioW ( IntPtr p, String FormaPagoServ, String TipoDeServ, String SubTipServ, String RFCTerceroAutorizado, String FechaServ, String PrecioServSinIVA, String BaseTrasladados, String ImpuestoTrasladados, String TipoFactorTrasladados, String TasaCuotaTrasladados, String ImporteTrasladados, String ImpContrib, String EntidadDondePagaLaContribucion, String BaseComision, String PorcentajeComision, String ImporteComision)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoPremios10W")]
public static extern void Retenciones_SetComplementoPremios10W ( IntPtr p, String EntidadFederativa, String MontTotPago, String MontTotPagoGrav, String MontTotPagoExent)
[DllImport(dllPath, CharSet = CharSet.Unicode, EntryPoIntPtr ="Retenciones_SetComplementoSectorFinanciero10W")]
public static extern void Retenciones_SetComplementoSectorFinanciero10W ( IntPtr p, String IdFideicom, String NomFideicom, String DescripFideicom)
}
}