Ir al contenido

Emisión de e-CFPago y líneas

Pago y líneas

Ver como Markdown
{
"condition": "credit",
"dueDate": "15-03-2026",
"methods": [{ "type": "check_transfer", "amount": 2360.0 }]
}
Campo Nota
condition Obligatorio. cash (1), credit (2) o free (3).
dueDate dd-MM-aaaa. Obligatorio solo si condition es credit.
methods[] Hasta 7 formas de pago, cada una { type, amount }, ambos obligatorios, con amount mayor que 0. Los tipos 34 y 43 no llevan formas de pago.

Valores de methods[].type, con su código DGII:

Valor Código
cash 1
check_transfer 2
card 3
credit 4
voucher 5
swap 6
credit_note 7
other 8

Todos los campos que aceptan un valor con nombre (condition, methods[].type, y los que verás más abajo) también aceptan el código numérico de la DGII en su lugar. "credit" y 2 son equivalentes.

Hasta 1000 líneas por comprobante. NovaFE asigna el número de línea (<NoLinea>) en el orden en que las mandas, así que no lo incluyas tú.

{
"name": "Servicio de consultoría",
"kind": "service",
"quantity": 1,
"unitOfMeasure": "43",
"unitPrice": 2000.0,
"itbisRate": 1
}
Campo Nota
name Obligatorio, hasta 80 caracteres.
kind Obligatorio. good (1) o service (2).
quantity Obligatorio, mayor que 0.
unitPrice Obligatorio, mayor o igual a 0, hasta 4 decimales.
itbisRate Obligatorio. 1 (18 %), 2 (16 %), 3 (0 %, gravado) o 4 (exento).
unitOfMeasure Código de la Tabla IV de la DGII, del 1 al 62 (ver la tabla).
description Opcional.
discount / surcharge Opcionales. Monto final de la línea, no porcentaje.
priceIncludesTax Opcional. Sobrescribe, para esta línea, el pricesIncludeTax de la cabecera.
codes[] Opcional. Códigos propios del ítem, { type, value }.
declaredAmount Opcional. El monto de línea que ya calculaste tú, para el mismo chequeo de tolerancia que
declaredTotals (ver Principios).

Solo aplica en los tipos que la exigen (obligatoria en 41, y en 47 solo para ISR; el resto de los tipos no la admiten en absoluto).

{ "agent": "withholding", "itbisWithheld": 180.0, "isrWithheld": 0 }

agent es withholding (1, retención) o perception (2, percepción). Los montos (itbisWithheld, isrWithheld) los calculas tú: NovaFE no deriva retenciones automáticamente.

Impuestos adicionales por línea (ISC y otros)

Sección titulada «Impuestos adicionales por línea (ISC y otros)»

Solo en los tipos 31, 32, 33, 34, 44 y 45. Cada entrada de additionalTaxes[] usa un código de la Tabla I de la DGII (001 a 039):

{ "code": "006", "iscEspecifico": 45.0 }
Campo Nota
code Código de la Tabla I (ver la tabla).
rate La tasa que la Tabla I fija para ese código. Cualquier otra se rechaza.
iscEspecifico ISC específico (alcoholes, cigarrillos). Ver nota abajo.
iscAdvalorem ISC ad valorem.
otros Cualquier otro impuesto adicional.

Cada entrada necesita al menos uno de los tres montos: un impuesto sin monto se rechaza.

Moneda extranjera y datos de referencia por línea

Sección titulada «Moneda extranjera y datos de referencia por línea»

Dos bloques opcionales, de uso poco frecuente, que pasan tal cual al XML:

  • foreignCurrency: { unitPrice, discount, surcharge, lineAmount } en la divisa original de la línea, si facturas en moneda extranjera (ver Ajustes, referencia y moneda para el bloque de moneda a nivel de todo el comprobante).
  • details: datos de referencia del ítem (cantidad y unidad de referencia; si mandas referenceQuantity necesitas también referenceUnit; las unidades salen de la Tabla IV, grados de alcohol, fechas de fabricación y vencimiento) y, solo en los tipos 32, 33, 34 y 46, el bloque mining para productos mineros.