fbpx
Categorías

Generar un Cfdi 3.3

< Todos los temas
 
 
Private Function GetDateTime() As String
    GetDateTime = Format(Now, "yyyy-MM-ddTHH:mm:ss")
End Function
 
Private Sub Command1_Click()
 
    Dim emcor As New USLibCOM.FachadaCfdv33
 
    Call emcor.P00Setup( _
    NumeroDecimalesEnTotales:=2, _
    NumeroDecimalesEnDetalle:=6, _
    NumeroDecimalesEnImpuestos:=6, _
    cerFile:="C:\CSDTest\CSD_Pruebas_CFDI_MAG041126GT8.cer", _
    keyFile:="C:\CSDTest\CSD_Pruebas_CFDI_MAG041126GT8.key", _
    passwordKey:="12345678a")
 
 
    Call emcor.P01DatosGenerales( _
    serie:="A", _
    folio:="1234", _
    fecha:=GetDateTime(), _
    formaPago:="01", _
    condicionesDePago:="Contado", _
    subTotal:="100.00", _
    descuento:="10.00", _
    moneda:="MXN", _
    tipoCambio:="1.00", _
    total:="104.40", _
    tipoDeComprobante:="I", _
    metodoPago:="PUE", _
    lugarExpedicion:="85040", _
    confirmacion:="")
 
    'Call emcor.P02CfdiRelacionadosAgregarOpcional(relacion:="01", uuid:="0C8054AE-C1BD-AAAA-AAAA-526444336600")
     
    Call emcor.P03Emisor( _
    rfc:="MAG041126GT8", _
    nombre:="Empresa emisora SA de CV", _
    regimenFiscal:="601")
     
    Call emcor.P04Receptor( _
    rfc:="COMR850106QQA", _
    nombre:="Receptor DEMO SA de CV", _
    residenciaFiscal:="MEX", _
    numRegIdTrib:="", _
    usoCfdi:="G01")
     
    'Agregar Conceptos
    Dim conceptoKey As String
     
        conceptoKey = emcor.P05ConceptosAgregar( _
        claveProdServ:="50192100", _
        noIdentificacion:="P0001", _
        cantidad:="1.00", _
        claveUnidad:="H87", _
        unidad:="PZ", _
        descripcion:="Producto", _
        valorUnitario:="100.00", _
        importe:="100.00", _
        descuento:="10.00")
         
        'Agregar los impuestos correspondientes
        Call emcor.P05ConceptoAgregarImpuestoTraslado( _
        baseCalculoImpuesto:="90.00", _
        impuesto:="002", _
        tipoFactor:="Tasa", _
        tasaOCuota:="0.160000", _
        importe:="14.40", _
        conceptoKey:=conceptoKey)
     
     
    'Este método es opcional
    'Crea el Nodo Comprobante.Impuestos
    'Sumando todos los impuestos que tienen los conceptos
    'Puede optar por hacer las operaciones manualmente
    Call emcor.P06ImpuestosCrearResumenPorConceptos
     
    ''Este método es opcional
    'Suma todos los valores proporcionados anteriormente
    'y calcula el SubTotal, Descuento, Total del comprobante
    Call emcor.P07Totalizar
     
    Dim selloDigital As String
    selloDigital = emcor.P08GenerarSelloDigital
     
    Dim respuesta As USLibCOM.RespuestaTFD
    Set respuesta = emcor.P09TimbrarDocumento( _
                    esPrueba:=True, _
                    validacionPrevia:=False, _
                    Key:="")
     
    If respuesta.OperacionExitosa Then
        'Leer información del Timbre
        Dim selloSat As String
        selloSat = emcor.TfdSelloSat
         
        Dim selloCfd As String
        selloCfd = emcor.CfdSello
         
        Dim timbreUuid As String
        timbreUuid = emcor.TfdUuid
         
        Dim rfcPac As String
        rfcPac = emcor.TfdRfcProvCertif
         
        Dim noCertificadoSat As String
        noCertificadoSat = emcor.TfdNoCertificadoSat
         
        Dim fechaTimbrado As String
        fechaTimbrado = emcor.TfdFechaTimbrado
         
        Dim leyenda As String
        leyenda = emcor.TfdLeyenda
         
        Dim cadenaOriginalTimbre As String
        cadenaOriginalTimbre = emcor.TfdCadenaOriginal
         
        'Código de barras bidimensional
        Call emcor.GuardarCbb("C:\Test\", emcor.TfdUuid + ".png")
         
        Call emcor.GuardarCfdi("C:\Test\", emcor.TfdUuid)
         
        Call MsgBox("El comprobante se timbró correctamente" + vbCrLf + _
        timbreUuid + ".xml")
    Else
        Call MsgBox(respuesta.MensajeError)
    End If
 
End Sub
Anterior Ejemplo Constancia de Retención con Complemento de Dividendos
Siguiente Nuevo proceso de cancelación Cfdi 3.3
Tabla de contenidos