Facturas con COMPLEMENTO DETALLISTA


URL PRUEBAS: POST https://facturacion.789.mx/api/v40/test/factura/crear

URL PRODUCCIÓN: POST https://facturacion.789.mx/api/v40/factura/crear

Argumento Tipo Default Descripción
main Contiene los datos generales de la factura y los datos del emisor.
NUEVO regimen
requerido
string none Incorpora la clave del régimen del contribuyente emisor al que aplicará el efecto fiscal de este comprobante
NUEVO exportacion
requerido
string 01 Expresa si el comprobate ampara una operación de exportación.
razonSocial string none Nombre ó Razón social del emisor.
Nota: en la version 4.0 debe ser el nombre tal cual como fueron registrados ante el SAT
rfc
requerido
string none RFC del emisor.
12 dígitos para persona moral y 13 dígitos para persona física.
tipo
requerido
string none Tipo de comprobante (ingreso, egreso, traslado, nomina, pago).
Para este tipo de comprobante enviar ingreso
moneda string MXN Código de la moneda, acorde al estándar ISO 4217
cambio decimal 1.0 Tipo de cambio conforme a la moneda usada. Representa el número de pesos mexicanos que equivalen a una unidad de la moneda señalada.
formaDePago
requerido
string none Código de la forma de pago según el catálogo del SAT.
metodoDePago
requerido
string none Código del método de pago según el catálogo del SAT.
PUE. Pago en una sola exhibición
PPD. Pago en parcialidades o diferido
condicionesDePago string none Expresa las condiciones comerciales aplicables para el pago del comprobante fiscal digital por Internet. Este atributo puede ser condicionado mediante atributos o complementos
folio string '' Número de folio asignado por la empresa para control interno.
serie string '' Serie. De 1 a 25 caracteres designados por la empresa para control interno y sin validez fiscal.
total
requerido
decimal none Importe total facturado con impuestos incluido.
subtotal
requerido
decimal none Importe total facturado antes de impuestos.
fechaEmision date now()
2025-04-16T04:53:58
Campo opcional para indicar la FECHA de EMISIÓN de la factura, puede ser hasta 48hrs hacia atras de la fecha actual.
Debe cumplir el siguiente formato "Y-m-d\TH:i:s"
confirmacion string none Registra la clave de confirmación que entregue el PAC para expedir el comprobante con importes grandes, con un tipo de cambio fuera del rango establecido o con ambos casos. Es requerido cuando se registra un tipo de cambio o un total fuera del rango establecido.
NUEVO fac_atr_adquirente string none Expresa el número de operación proporcionado por el SAT cuando se trate de un comprobante a través de un PCECFDI o un PCGCFDISP.
observaciones string none Campo exclusivo para la representación impresa (PDF), se puede enviar un HTML básico como negritas y/o saltos de linea "<br>"
direccionFiscal string '' Domicilio fiscal del emisor.
direccionFiscal.calle string '' Calle del emisor.
direccionFiscal.num_ext string '' Número exterior (númerio visible desde la calle) del domicilio del emisor.
direccionFiscal.num_int string '' Número interior del domicilio del emisor.
direccionFiscal.colonia string '' Colonia del domicilio del emisor.
NUEVO direccionFiscal.cp
requerido
string '' Código Postal del domicilio del emisor.
direccionFiscal.ciudad string '' Ciudad del domicilio del emisor.
direccionFiscal.localidad string '' Delegación o Municipio del domicilio del emisor.
direccionFiscal.estado string '' Estado del domicilio del emisor.
direccionFiscal.pais string '' País del domicilio del emisor.
NUEVO global Nodo opcional, precisa la información relacionada con el comprobante global.
NUEVO periodicidad
requerido
string none Expresa el período al que corresponde la información del comprobante global.
NUEVO meses
requerido
string none Expresa el mes o los meses al que corresponde la información del comprobante global.
NUEVO anio
requerido
string none Expresa el año al que corresponde la información del comprobante global.
receptor Datos del Receptor
NUEVO razon_social
requerido
string none Nombre o Razón social del receptor
Nota: en la version 4.0 debe ser el nombre tal cual como fueron registrados ante el SAT
rfc
requerido
string none RFC del receptor.
12 dígitos para persona moral y 13 dígitos para persona física.
email string none Correo electrónico del receptor, debe ser válido.
NUEVO num_reg_id_trib string none Expresa el número de registro de identidad fiscal del receptor cuando sea residente en el extranjero. Es requerido cuando se incluya el complemento de comercio exterior.
NUEVO residencia_fiscal string none Registra la clave del país de residencia para efectos fiscales del receptor del comprobante, cuando se trate de un extranjero, y que es conforme con la especificación ISO 3166-1 alpha-3. Es requerido cuando se incluya el complemento de comercio exterior o se registre el atributo num_reg_id_trib.
NUEVO regimen
requerido
string none Incorpora la clave del régimen fiscal del contribuyente receptor al que aplicará el efecto fiscal de este comprobante.
NUEVO uso
requerido
string none Clave del uso comprobante según el catálogo del SAT.
direccion string '' Domicilio fiscal del receptor.
direccion.calle string '' Calle del receptor.
direccion.num_ext string '' Número exterior (númerio visible desde la calle) del domicilio del receptor.
direccion.num_int string '' Número interior del domicilio del receptor.
direccion.colonia string '' Colonia del domicilio del receptor.
NUEVO direccion.codigo_postal
requerido
string '' Código Postal del domicilio del receptor.
direccion.ciudad string '' Ciudad del domicilio del receptor.
direccion.estado string '' Estado del domicilio del receptor.
direccion.pais string '' País del domicilio del receptor.
conceptos Conjuto de datos de los productos o conceptos a facturar
conceptos[].nombre
requerido
string none Nombre del producto o servicio
conceptos[].unidad string none Descripción de la unidad de medida
conceptos[].medidaKey
requerido
string none Clave de la unidad de medida segun el catálogo del SAT
conceptos[].productKey
requerido
string none Clave del producto segun el catálogo del SAT
NUEVO conceptos[].no_id string none Expresa el número de parte, identificador del producto o del servicio, la clave de producto o servicio, SKU o equivalente, propia de la operación del emisor, amparado por el presente concepto. Opcionalmente se puede utilizar claves del estándar GTIN.
conceptos[].cantidad integer, decimal 1 Cantidad de productos o servicios vendidos, debe ser mayor a 0
conceptos[].precioUnitario
requerido
decimal none Precio unitario del producto o servicio, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
conceptos[].descuento decimal none Descuento que se aplicará al producto o servicio, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
conceptos[].total decimal conceptos[].cantidad * conceptos[].precioUnitario Importe total a factura del producto o servicio antes de impuestos, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
NUEVO conceptos[].objeto_imp
requerido
string none Expresa si la operación comercial es objeto o no de impuesto.
01.- No objeto de impuesto
02.- Si objeto de impuesto
03.- Si objeto de impuesto y no obligado al desglose
NUEVO conceptos[].impuestos Object none Conjuto de datos con los impuestos federales a aplicar, este nodo puede omitirse sí no es necesario deducir impuestos.
NUEVO conceptos[].impuestos.traslados Array [] Asenta los impuestos trasladados aplicables al presente concepto
NUEVO conceptos[].impuestos.traslados[].base
requerido
decimal none Señala 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.
NUEVO conceptos[].impuestos.traslados[].impuesto
requerido
string none Señala la clave del tipo de impuesto trasladado aplicable al concepto.
NUEVO conceptos[].impuestos.traslados[].tipo
requerido
string none Señala la clave del tipo de factor que se aplica a la base del impuesto.
NUEVO conceptos[].impuestos.traslados[].tasa_couta decimal none Señala el valor de la tasa o cuota del impuesto que se traslada para el presente concepto. Es requerido cuando el atributo tipo tenga una clave que corresponda a Tasa o Cuota.
NUEVO conceptos[].impuestos.traslados[].importe decimal none Señala el importe del impuesto trasladado que aplica al concepto. No se permiten valores negativos. Es requerido cuando tipo sea Tasa o Cuota.
NUEVO conceptos[].impuestos.retenciones Array [] Asenta las retenciones de impuestos aplicable al presente concepto
NUEVO conceptos[].impuestos.retenciones[].base
requerido
decimal none Señala la base para el cálculo de la retención, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.
NUEVO conceptos[].impuestos.retenciones[].impuesto
requerido
string none Señala la clave del tipo de impuesto retenido aplicable al concepto.
NUEVO conceptos[].impuestos.retenciones[].tipo
requerido
string none Señala la clave del tipo de factor que se aplica a la base del impuesto.
NUEVO conceptos[].impuestos.retenciones[].tasa_couta
requerido
decimal none Señala la tasa o cuota del impuesto que se retiene para el presente concepto.
NUEVO conceptos[].impuestos.retenciones[].importe
requerido
decimal none Señala el importe del impuesto retenido que aplica al concepto. No se permiten valores negativos
relation string none Código de tipo relación entre facturas según el catálogo del SAT.
related array none Conjunto de datos con uno o más folios fiscales (UUID) de las facturas relacionadas.
Este campo es obligatorio si el campo 'relation' existe.
complementos Contiene los datos de los complementos a agregar al CFDI.
detallista
requerido
object none Complemento requerido para la emisión y recepción de comprobantes fiscales digítales en el sector Retail
documentStatus
requerido
string none Función del mensaje:
Valores permitidos:
ORIGINAL
COPY
REEMPLAZA
DELETE
entityType
requerido
string none Único nodo hijo de requestForPaymentIdentification
Especifica el tipo de transacción.
Valores permitidos:
INVOICE
DEBIT_NOTE
CREDIT_NOTE
LEASE_RECEIPT
HONORARY_RECEIPT
PARTIAL_INVOICE
TRANSPORT_DOCUMENT
AUTO_INVOICE
specialInstruction array none Especifica que tipo de instrucciones comerciales son enviadas
Nota: se puede enviar un máximo de 4
specialInstruction[].code
requerido
string none Especificar el codigo del tipo de instrucciones comerciales que son enviadas
Valores permitidos:
AAB
DUT
PUR
ZZZ
specialInstruction[].text
requerido
array none Especifica información de texto que aplica a todo el mensaje de la factura. La información estará en función al código del tema de texto
Nota: se debe de enviar al menos 1 y se puede enviar un máximo de 15
orderIdentification
requerido
object none Especifica información sobre la orden de compra a la que hace referencia la factura.
orderIdentification.referenceIdentification
requerido
array none Especifica el número de orden de compra (comprador) a la que hace referencia la factura.
Nota: se debe de enviar al menos 1 y se puede enviar un máximo de 30
orderIdentification.referenceIdentification[].text
requerido
string none Especifica el número de orden de compra (comprador) a la que hace referencia la factura.
orderIdentification.referenceIdentification[].type
requerido
string none Atributo para especificar el código para identificar la orden de compra.
orderIdentification.date string none Especifica la fecha de la orden de compra(comprador) a la que hace referencia la factura
AdditionalInformation
requerido
object none Requerido que especifica las referencias adicionales a nivel global de la factura
AdditionalInformation.referenceIdentification array none Especifica el número de referencias adicional.
Nota: se debe de enviar al menos 1 y se puede enviar un máximo de 99
AdditionalInformation.referenceIdentification[].text array none Especifica el número de referencias adicional
AdditionalInformation.referenceIdentification[].type string none Especifica el código de referencias adicionales.
DeliveryNote object none Especifica información de recepción de mercancia. Información emitida por el comprador cuando recibe la mercancía que es facturada
DeliveryNote.referenceIdentification[]
requerido
array none Especifica el número de folio. Número emitido por el comprador cuando recibe la mercancía que es facturada.
Nota: se debe de enviar al menos 1 y se puede enviar un máximo de 30
DeliveryNote.date string none Especifica la fecha en que fue asignado el no. de folio de recibo
buyer
requerido
object none Especifica información del comprador
buyer.gln
requerido
decimal none Especifica el número global de localización (GLN) del comprador.
buyer.contact string none Especifica información del contacto de compras
seller object none Especifica información del vendedor
seller.gln
requerido
string none Especifica el número global de localización (GLN) del vendedor.
seller.alternate
requerido
object none Especifica el código para identificar qué tipo de identificación secundaria se le asignó al proveedor
seller.alternate.text string none Especifica el código para identificar qué tipo de identificación secundaria se le asignó al proveedor
seller.alternate.type string none Especifica el código de referencias adicionales.
shipTo object none Especifica la ubicación donde debe realizarse la entrega de la mercancía
shipTo.gln string none Especifica el número global de localización (GLN) de la ubicación a entregar la mercancía.
shipTo.nameAndAddress array none Especifica el nombre y dirección de la ubicación donde debe realizarse la entrega de mercancía
shipTo.nameAndAddress[].name string none Especifica la razón social de la empresa a donde se va a embarcar en caso de ser diferente al comprador, o el nombre de la bodega o centro de distribución
shipTo.nameAndAddress[].streetAddressOne string none Especifica el domicilio a donde se embarcara la mercancía: Calle, número exterior, número interior y colonias.
shipTo.nameAndAddress[].city string none Especifica la ciudad donde se encuentra el domicilio a donde se embarcará la mercancía.
shipTo.nameAndAddress[].postalCode string none Especifica el codigo postal del domicilio a donde se embarcara la mercancía.
invoiceCreator object none Especifica la ubicación donde se especifica el identificador del emisor de la factura si es distinto del identificador del proveedor
invoiceCreator.gln string none Especifica el número global de localización (GLN) de la ubicación del emisor de la factura.
invoiceCreator.alternate object none Especifica la identificación secundaria del emisor de la factura.
invoiceCreator.alternate.text
requerido
object none Especifica la identificación secundaria del emisor de la factura.
invoiceCreator.alternate.type
requerido
object none Especifica el tipo de identificación secundaria se le asigno al proveedor.
invoiceCreator.nameAndAddress object none
invoiceCreator.nameAndAddress.name string none Especifica la razón social de la empresa a donde se emite la factura en caso de ser diferente al identificador del proveedor
invoiceCreator.nameAndAddress.streetAddressOne string none Especifica el domicilio del emisor de la factura: Calle, número exterior, número interior y colonias
invoiceCreator.nameAndAddress.city string none Especifica a ciudad donde se encuentra el domicilio del emisor de la factura.
invoiceCreator.nameAndAddress.postalCode string none Especifica el codigo postal del domicilio del emisor de la factura.
customs array none Especifica la ubicación de la aduana.
Nota: se puede enviar un máximo de 999999
customs[].gln string none Especifica el número global de localización (GLN) de la aduana.
currency array none Especifica el tipo de divisa utilizada, para efectos de comprobantes fiscales digitales emitidos UNICAMENTE se podrá utilizar como divisa la moneda nacional (MXN), sin embargo, dentro del complemento se podrá detallar en otra de forma informativa. Lo detallado en esta etiqueta deberá coincidir con lo declarado en las etiquetas del SAT considerando el tipo de cambio.
Nota: se puede enviar un máximo de 3
currency[].currencyISOCode
requerido
string none Especifica el código de la moneda utilizada para detallar la relación de facturas. Todas las cantidades posteriores serán expresadas en la divisa detallada en esta etiqueta.
Valores permitidos:
MXN
XEU
USD
currency[].currencyFunction
requerido
array none Especifica la función de divisa.
Valores permitidos:
BILLING_CURRENCY
PRICE_CURRENCY
PAYMENT_CURRENCY
Nota: se debe de enviar al menos 1 y se puede enviar un máximo de 3
currency[].rateOfChange decimal none Especifica la tasa de cambio que se aplica a las monedas. La regla general para calcular la tasa de cambio es la siguiente: Divisa de Referencia multiplicada por la Tasa = Divisa Objetivo.
paymentTerms object none Especifica los términos de pago de la factura.
paymentTerms.paymentTermsEvent string none Especifica la referencia del tiempo de pago.
Valores permitidos:
DATE_OF_INVOICE
EFFECTIVE_DATE
paymentTerms.paymentTermsRelationTime string none Especifica el término de relación del tiempo de pago.
Valores permitidos:
REFERENCE_AFTER
paymentTerms.netPayment object none Especifica las condiciones de pago.
paymentTerms.netPayment.netPaymentTermsType
requerido
string none Especifica las condiciones de pago.
Valores permitidos:
BASIC_NET
END_OF_MONTH
BASIC_DISCOUNT_OFFERED
paymentTerms.netPayment.paymentTimePeriod object none Especifica el periodo de pago de la factura
paymentTerms.netPayment.paymentTimePeriod.timePeriodDue
requerido
object none Especifica el tiempo de pago
paymentTerms.netPayment.paymentTimePeriod.timePeriodDue.timePeriod
requerido
object none Especifica el tiempo de pago
paymentTerms.netPayment.paymentTimePeriod.timePeriodDue.value
requerido
object none Especifica el numero de periodos
paymentTerms.discountPayment string none Especifica los descuentos por pago.
paymentTerms.discountPayment.discountType
requerido
string none Especifica el calificador de porcentajes.
Valores permitidos:
ALLOWANCE_BY_PAYMENT_ON_TIME
SANCTION
paymentTerms.discountPayment.percentage
requerido
string none Especifica el valor de los porcentajes que serán descontados o cargados si la factura no se paga dentro del término. El porcentaje será en base al valor de la factura
shipmentDetail string none Especifica la información pertinente para el embarque de la mercancía.
allowanceCharge array none Especifica la información de los cargos o descuentos globales mercantiles por factura
Nota: se puede enviar un máximo de 99
allowanceCharge[].allowanceChargeType
requerido
string none Indica el cargo o descuento.
Valores permitidos:
ALLOWANCE_GLOBAL
CHARGE_GLOBAL
allowanceCharge[].settlementType
requerido
string none Especifica la imputación del descuento o cargo.
Valores permitidos:
BILL_BACK
OFF_INVOICE
allowanceCharge[].sequenceNumber
requerido
string none Indica la secuencia de calculo
allowanceCharge[].specialServicesType
requerido
string none Especifica el tipo de descuento o cargo. Este atributo sólo se utiliza si el comprador conoce los descuentos.
Valores permitidos:
AA
AJ
ADO
ADT
ADS
ABZ
DA
EAA
EAB
PI
TAE
SAB
RAA
PAD
FG
FA
TD
TS
TX
TZ
ZZZ
VAB
UM
DI
CAC
COD
EAB
FC
FI
HD
QD
allowanceCharge[].monetaryAmountOrPercentage object none Especifica la cantidad monetaria o porcentaje del descuento
allowanceCharge[].monetaryAmountOrPercentage.rate object none Especifica la tarifa.
allowanceCharge[].monetaryAmountOrPercentage.rate.base
requerido
string none Especifica la base del porcentaje que se aplicara
Valores permitidos:
INVOICE_VALUE
allowanceCharge[].monetaryAmountOrPercentage.rate.percentage
requerido
string none Especifica el porcentaje de descuento que se está aplicando según se ha indicado en el campo anterior a toda la factura
lineItem array none Especifica ll línea de detalle de la factura.
Nota: se puede enviar un máximo de 9999999
lineItem[].type string none Especifica el tipo de línea de detalle
lineItem[].number string none Especifica el número secuencial que se asigna a cada línea de detalle
lineItem[].tradeItemIdentification
requerido
object none Especifica la identificación de cada artículo
lineItem[].tradeItemIdentification.gtin
requerido
string none Especifica el código EAN del artículo solicitado
lineItem[].alternateTradeItemIdentification array none Especifica el numero de identificación adicional para el artículo.
Nota: se puede enviar un máximo de 999999
lineItem[].alternateTradeItemIdentification[].value string none Especifica el numero de identificación adicional para el artículo.
lineItem[].alternateTradeItemIdentification[].type string none Especifica el tipo de identificación adicional, en caso de no utilizar condigo GTIN.
Valores permitidos:
BUYER_ASSIGNED
SUPPLIER_ASSIGNED
SERIAL_NUMBER
GLOBAL_TRADE_ITEM_IDENTIFICATION
lineItem[].tradeItemDescriptionInformation object none Especifica el inicio de la descripción del artículo
lineItem[].tradeItemDescriptionInformation.language object none Especifica el código del idioma en que está la descripción del artículo.
Valores permitidos:
ES
EN
lineItem[].tradeItemDescriptionInformation.longText
requerido
string none Especifica la descripción del artículo solicitado
lineItem[].invoicedQuantity
requerido
string none Especifica la cantidad facturada del producto en la línea de artículo actual
lineItem[].invoicedQuantity.value
requerido
decimal none Especifica la cantidad facturada del producto en la línea de artículo actual
lineItem[].invoicedQuantity.unitOfMeasure
requerido
string none Especifica la unidad de medida, solo si el artículo es de unidad variable
lineItem[].aditionalQuantity string none Especifica la ubicación donde debe realizarse la entrega de la mercancía
Nota: se puede enviar un máximo de 9999999
lineItem[].grossPrice object none Especifica la declaración del precio bruto
lineItem[].Amount
requerido
decimal none Especifica el precio Bruto del artículo sin incluir descuento ni cargo
lineItem[].netPrice object none Especifica la declaración del precion neto.
lineItem[].netPrice.Amount
requerido
string none Especifica el precio neto de cada artículo.
lineItem[].AdditionalInformation object none Especifica la información adicional de referencia en el detalle de productos
lineItem[].AdditionalInformation.referenceIdentification object none Especifica a información adicional de referencia en el detalle de productos.
lineItem[].AdditionalInformation.referenceIdentification.value
requerido
object none Especifica la información adicional de referencia en el detalle de productos.
lineItem[].AdditionalInformation.referenceIdentification.type
requerido
object none Especifica el tipo de referencia.
Valores permitidos:
ON
lineItem[].Customs array none Especifica la ubicación donde se especifica el identificador de la aduana.
Nota: se puede enviar un máximo de 9999999
lineItem[].Customs[].gln string none Especifica el número global de localización (GLN) de la aduana.
lineItem[].Customs[].alternatePartyIdentification
requerido
object none Especifica la identificación del no. pedimento a nivel detalle.
lineItem[].Customs[].alternatePartyIdentification.value
requerido
string none Especifica la identificación del no. pedimento a nivel detalle.
lineItem[].Customs[].alternatePartyIdentification.type
requerido
string none Especifica el código de identificación secundaria.
Valores permitidos:
TN
lineItem[].Customs[].ReferenceDate
requerido
string none Especifica la fecha del pedimento YYYYMMDD.
lineItem[].Customs[].nameAndAddress
requerido
string none Especifica la etiqueta padre que indica que se empezará a definir el nombre y dirección de la ubicación donde esta la aduana.
lineItem[].LogisticUnits object none Especifica información de identificación logística.
lineItem[].LogisticUnits.serialShippingContainerCode
requerido
object none Especifica la información de Rangos de identificación de productos.
lineItem[].LogisticUnits.serialShippingContainerCode.value
requerido
string none Especifica la información de Rangos de identificación de productos.
lineItem[].LogisticUnits.serialShippingContainerCode.type
requerido
string none Especifica el código del número de identidad.
lineItem[].palletInformation object none Especifica la información de empaquetado
lineItem[].palletInformation.palletQuantity
requerido
string none Especifica el numero de paquetes.
lineItem[].palletInformation.description
requerido
object none Especifica la descripción del empaquetado.
lineItem[].palletInformation.description.value
requerido
string none Especifica la descripción del empaquetado.
lineItem[].palletInformation.description.type
requerido
string none Especifica el tipo de empaquetado.
lineItem[].palletInformation.transport
requerido
object none Especifica el pago de transporte de embalaje.
lineItem[].palletInformation.transport.methodOfPayment
requerido
string none Especifica el metodo de pago.
Valores permitidos:
PREPAID_BY_SELLER
PAID_BY_BUYER
lineItem[].extendedAttributes object none Especifica la información adicional de lote del producto facturado
lineItem[].extendedAttributes.lotNumber
requerido
array none Especifica el No. De lote
Nota: se puede enviar un máximo de 10
lineItem[].extendedAttributes.lotNumber[].value
requerido
array none Especifica el No. De lote
lineItem[].extendedAttributes.lotNumber[].productionDate array none Especifica la fecha de producción
lineItem[].allowanceCharge array none Especifica la información de los cargos o descuentos globales por línea de artículo.
Nota: se puede enviar un máximo de 99
lineItem[].allowanceCharge[].allowanceChargeType
requerido
string none Especifica el cargo o descuento.
Valores permitidos:
ALLOWANCE_GLOBAL
CHARGE_GLOBAL
lineItem[].allowanceCharge[].settlementType string none Especifica la imputación del cargo o descuento.
Valores permitidos:
OFF_INVOICE
CHARGE_TO_BE_PAID_BY_VENDOR
CHARGE_TO_BE_PAID_BY_CUSTOMER
lineItem[].allowanceCharge[].sequenceNumber string none Especifica la secuencia de cálculo.
lineItem[].allowanceCharge[].specialServicesType string none el tipo de descuento o cargo. Este atributo sólo se utiliza si el comprador conoce el tipo de descuento o cargo.
Valores permitidos:
AA
ADS
ADO
ABZ
DA
EAA
PI
TAE
SAB
RAA
PAD
FG
FA
TD
TS
TX
ZZZ
VAB
UM
DI
ADT
AJ
CAC
COD
EAB
FC
FI
HD
QD
lineItem[].allowanceCharge[].monetaryAmountOrPercentage
requerido
object none Especifica la cantidad monetaria o descuento por linea de articulo.
lineItem[].allowanceCharge[].monetaryAmountOrPercentage.percentagePerUnit
requerido
string none Especifica el porcentaje del cargo o descuento.
lineItem[].allowanceCharge[].monetaryAmountOrPercentage.ratePerUnit object none Especifica la Tarifa por unidad.
lineItem[].allowanceCharge[].monetaryAmountOrPercentage.ratePerUnit.amountPerUnit
requerido
string none Especifica el importe monetario del cargo o descuento por unidad.
lineItem[].tradeItemTaxInformation array none Especifica los impuestos por cada línea de artículo.
Nota: se puede enviar un máximo de 99
lineItem[].tradeItemTaxInformation[].taxTypeDescription
requerido
string none Especifica el tipo de arancel, impuesto o cuota.
Valores permitidos:
GST
VAT
LAC
AAA
ADD
FRE
LOC
STT
OTH
lineItem[].tradeItemTaxInformation[].referenceNumber string none Especifica el numero de identificación del impuesto. Numero asignado al comprador por una jurisdicción de impuesto.
lineItem[].tradeItemTaxInformation[].tradeItemTaxAmount object none Especifica el importe o porcentaje del descuento.
lineItem[].tradeItemTaxInformation[].tradeItemTaxAmount.taxPercentage
requerido
object none Especifica el porcentaje del impuesto.
lineItem[].tradeItemTaxInformation[].tradeItemTaxAmount.taxAmount
requerido
object none Especifica el monto del impuesto.
lineItem[].tradeItemTaxInformation[].taxCategory object none Especifica el identificador de impuesto retenido o transferido.
Valores permitidos:
TRANSFERIDO
RETENIDO
lineItem[].totalLineAmount
requerido
object none Especifica los importes monetarios por línea de articulo
lineItem[].totalLineAmount.grossAmount decimal none Especifica el importe bruto.
lineItem[].totalLineAmount.netAmount
requerido
decimal none Especifica el importe neto de la línea de artículo.
totalAmount object none Especifica el monto total de las líneas de artículos.
TotalAllowanceCharge array none Especifica el monto total de cargos o descuentos.
Nota: se puede enviar un máximo de 999999
TotalAllowanceCharge[].allowanceOrChargeType
requerido
string none Especifica los cargos o descuentos consolidados
Valores permitidos:
ALLOWANCE
CHARGE
TotalAllowanceCharge[].specialServicesType string none Especifica el tipo de descuento o cargo. Este atributo sólo se utiliza si el comprador conoce el tipo de descuento o cargo.
Valores permitidos:
AA
ADS
ADO
ABZ
DA
EAA
PI
TAE
SAB
RAA
PAD
FG
FA
TD
TS
TX
ZZZ
VAB
UM
DI
ADT
AJ
CAC
COD
EAB
FC
FI
HD
QD
TotalAllowanceCharge[].Amount decimal none Especifica el monto total de los cargos o descuentos