VXML_AddConceptoRetencion_cfdi40 VXml
Agrega un impuesto retenido (IVA o ISR) a un concepto previamente creado con la función Virtual_XMLAddConcepto_cfdi40().

En la versión 4.0 cada concepto debe llevar sus impuestos calculados individualmente, el uso de esta función requiere haber creado previamente un concepto para el comprobante usando la función VXML_AddConcepto_cfdi40().

Versión de VXml que soporta esta función: 2.0.1 Febrero 2025
Aplicación: CFDI ver. 4.0
Sintáxis

public static void VXML_AddConceptoRetencion_cfdi40(
int p,
string Base,
string Impuesto,
string Tipofactor,
string TasaOCuota,
string Importe
)

Parámetros

p
Tipo: System  Int32
Identificador en memoria devuelto por la función VXML_New()
Base
Tipo: System  String
Atributo requerido para señalar la base para el cálculo del impuesto, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.

Impuesto
Tipo: System  String
Atributo requerido para señalar la clave del tipo de impuesto retenido aplicable al concepto. Revise el catálogo de impuestos publicado por el SAT para conocer los valores posibles de este parámetro.

Tipofactor
Tipo: System  String
Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.
TasaOCuota
Tipo: System  String
Atributo condicional para señalar el valor de la tasa o cuota del impuesto que se retiene para el presente concepto. Es requerido cuando el atributo TipoFactor tenga una clave que corresponda a Tasa o Cuota. Revise el catálogo de tasa o cuota publicado por el SAT para conocer los valores posibles de este parámetro.

Importe
Tipo: System  String
Atributo condicional para señalar el importe del impuesto retenido que aplica al concepto. No se permiten valores negativos. Es requerido cuando TipoFactor sea Tasa o Cuota.
Ejemplo

private void GeneraDocto(String version)
{
// Creamos un comprobante 
    int hXml = VXML_New("4.0");

// Llenado del documento 

    // Datos del emisor 

    // Datos del receptor 

    // Conceptos

VXML_AddConcepto_cfdi40( hXml, "84111506", "SEF500", "1", "H87", "Servicio", "Honorarios profesionales del mes", "1000.00","1000.00");
// Agregmos el impuesto trasladado correspondiente al concepto
VXML_AddConceptoTraslado_cfdi40( hXml, "1000.00", "002", "Tasa", "0.160000", "160.00" );
// Agregmos 2 retenciones de impuestos IVA e ISR:
VXML_AddConceptoRetencion_cfdi40( hXml, "1000.00", "002", "Tasa", "0.106666", "106.67" );
VXML_AddConceptoRetencion_cfdi40( hXml, "1000.00", "001", "Tasa", "0.100000", "100.00" );

// Procesamiento del documento 
    // .... 

    // Lectura de resultados 
    // .... 

    // Liberacion de memoria
VXML_Free(hXml);
}
Veáse También

VXML_AddConcepto_cfdi40
                                VXML_AddConceptoComplementoIedu10
                                VXML_AddConceptoComplementoVentaVehiculos11_cfdi40
                                VXML_AddConceptoCuentaPredial_cfdi40
                                VXML_AddConceptoInformacionAduanera_cfdi40
                                VXML_AddConceptoParte_cfdi40
                                VXML_AddConceptoTraslado_cfdi40
                                VXML_AddCuentaPredial