Nota de Crédito Electrónica

La Nota de Crédito (NC) es un documento electrónico utilizado para ajustar, cancelar parcialmente o aplicar descuentos y bonificaciones sobre una factura electrónica previamente aprobada en el SIFEN. A diferencia del evento de Cancelación (que anula completamente el documento dentro de las 48 horas), la NC genera un nuevo documento contable que ajusta el monto de la factura original, permitiendo correcciones parciales o totales sin límite de tiempo.

Documento Asociado Obligatorio

La Nota de Crédito requiere siempre un documento asociado (la factura original). Se debe enviar el CDC de 44 dígitos de la factura que se está ajustando.

Endpoint

POST {URL_BASE}/facturacion-api/data.php
Parámetro Tipo Descripción
recordID String API Key proporcionada por CheFactura.
datajson String JSON string con los datos de la Nota de Crédito.

Estructura del JSON

Campos principales

Campo Tipo Requerido Descripción
tipoDocumento String Debe ser "5" para Nota de Crédito.
establecimiento String Código de establecimiento (ej: "001").
punto String Punto de expedición (ej: "001").
numero String Número del documento, 7 dígitos (ej: "0000001").
descripcion String No Información de interés del emisor.
fecha String Formato YYYY-MM-DD HH:mm:ss.
tipoEmision Integer 1=Normal, 2=Contingencia.
tipoTransaccion Integer 1=Venta mercadería, 2=Prestación servicio, 3=Mixto.
condicionPago Integer 1=Contado, 2=Crédito.
motivoEmision Integer Motivo de la NC: 1=Devolución y ajuste precios, 2=Devolución, 3=Descuento, 4=Bonificación, 5=Crédito incobrable, 6=Recupero de costo, 7=Devolución nómina.
moneda String Código moneda: PYG, USD, BRL, EUR.
cambio Number Condicional Tipo de cambio si moneda != PYG.
descuentoGlobal Number No Descuento global a distribuir entre items. Default 0.
totalPago Number Monto total de la nota de crédito.
totalRedondeo Number No Redondeo. Default 0.
receiptid String ID único del sistema cliente.
codigoSeguridadAleatorio String 9 dígitos aleatorios.

Objeto documentoAsociado (OBLIGATORIO para NC)

Campo Tipo Requerido Descripción
cdcAsociado String CDC de 44 dígitos de la factura original que se ajusta.
tipoDocumentoAsoc String No "1"=Electrónico (default), "2"=Impreso.
remision Boolean No false (default).

Para documento asociado impreso (tipoDocumentoAsoc = "2")

Campo Tipo Requerido Descripción
establecimientoAsoc String Establecimiento del documento impreso.
puntoAsoc String Punto del documento impreso.
numeroAsoc String Número del documento impreso.
tipoDocuemntoIm Integer 1=Factura, 2=NC, 3=ND, 4=NR.
fechaDocIm String Fecha del documento impreso YYYY-MM-DD.
timbradoAsoc String Timbrado del documento impreso.

Objeto cliente

Campo Tipo Requerido Descripción
ruc String Condicional RUC con DV (ej: "80012345-6").
nombre String Razón social.
direccion String No Dirección.
cpais String No Código país. Default "PRY".
correo String No Email.
numCasa Integer No Número de casa.
dncp Integer No 0=Normal, 1=DNCP.

Objeto pagos (array)

Campo Tipo Requerido Descripción
tipoPago String 1=Efectivo, 2=Cheque, etc.
monto Number Monto.

Objeto items (array)

Campo Tipo Requerido Descripción
codigo String Código interno.
descripcion String Descripción del producto.
unidadMedida Integer Código unidad medida.
cantidad Number Cantidad (hasta 4 decimales).
precioUnitario Number Precio unitario.
precioTotal Number Precio total.
descuento Number No Descuento particular (EA002). Default 0.
ivaTasa Integer 0, 5, o 10.
baseGravItem Number Base gravada (8 decimales, NO redondear).
liqIvaItem Number Liquidación IVA (8 decimales, NO redondear).

Tabla de Motivos de Emisión

Código Descripción
1 Devolución y ajuste de precios
2 Devolución
3 Descuento
4 Bonificación
5 Crédito incobrable
6 Recupero de costo
7 Devolución nómina

Ejemplo JSON - NC por Devolución

{
  "tipoDocumento": "5",
  "establecimiento": "001",
  "punto": "001",
  "numero": "0000001",
  "descripcion": "Devolucion parcial",
  "fecha": "2026-04-03 14:00:00",
  "tipoEmision": 1,
  "tipoTransaccion": 1,
  "condicionPago": 1,
  "motivoEmision": 2,
  "moneda": "PYG",
  "cambio": 0,
  "descuentoGlobal": 0,
  "totalPago": 55000,
  "totalRedondeo": 0,
  "receiptid": "NC-001",
  "codigoSeguridadAleatorio": "456789123",
  "documentoAsociado": {
    "cdcAsociado": "01800162994001002000000522023101611791662320",
    "tipoDocumentoAsoc": "1"
  },
  "cliente": {
    "ruc": "80012345-6",
    "nombre": "EMPRESA EJEMPLO S.A.",
    "direccion": "Av. Mariscal Lopez 1234",
    "cpais": "PRY",
    "correo": "contacto@empresa.com",
    "numCasa": 1234,
    "dncp": 0
  },
  "pagos": [
    {
      "tipoPago": "1",
      "monto": 55000
    }
  ],
  "items": [
    {
      "codigo": "PROD-001",
      "descripcion": "Resma de papel A4 (devolucion)",
      "unidadMedida": 77,
      "cantidad": 1,
      "precioUnitario": 55000,
      "precioTotal": 55000,
      "descuento": 0,
      "ivaTasa": 10,
      "baseGravItem": 50000.00000000,
      "liqIvaItem": 5000.00000000
    }
  ]
}

Ejemplo JSON - NC por Descuento

{
  "tipoDocumento": "5",
  "establecimiento": "001",
  "punto": "001",
  "numero": "0000002",
  "descripcion": "Descuento 10% sobre factura",
  "fecha": "2026-04-03 14:30:00",
  "tipoEmision": 1,
  "tipoTransaccion": 1,
  "condicionPago": 1,
  "motivoEmision": 3,
  "moneda": "PYG",
  "cambio": 0,
  "descuentoGlobal": 0,
  "totalPago": 15000,
  "totalRedondeo": 0,
  "receiptid": "NC-002",
  "codigoSeguridadAleatorio": "789456123",
  "documentoAsociado": {
    "cdcAsociado": "01800162994001002000000522023101611791662320",
    "tipoDocumentoAsoc": "1"
  },
  "cliente": {
    "ruc": "80012345-6",
    "nombre": "EMPRESA EJEMPLO S.A.",
    "direccion": "Av. Mariscal Lopez 1234",
    "cpais": "PRY",
    "correo": "contacto@empresa.com",
    "numCasa": 1234,
    "dncp": 0
  },
  "pagos": [
    {
      "tipoPago": "1",
      "monto": 15000
    }
  ],
  "items": [
    {
      "codigo": "DESC-10",
      "descripcion": "Descuento 10% sobre factura",
      "unidadMedida": 77,
      "cantidad": 1,
      "precioUnitario": 15000,
      "precioTotal": 15000,
      "descuento": 0,
      "ivaTasa": 10,
      "baseGravItem": 13636.36363636,
      "liqIvaItem": 1363.63636364
    }
  ]
}

Ejemplo con cURL

curl -X POST {URL_BASE}/facturacion-api/data.php \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "recordID=TU_API_KEY" \
  -d "datajson={
    \"tipoDocumento\":\"5\",
    \"establecimiento\":\"001\",
    \"punto\":\"001\",
    \"numero\":\"0000001\",
    \"descripcion\":\"Devolucion parcial\",
    \"fecha\":\"2026-04-03 14:00:00\",
    \"tipoEmision\":1,
    \"tipoTransaccion\":1,
    \"condicionPago\":1,
    \"motivoEmision\":2,
    \"moneda\":\"PYG\",
    \"cambio\":0,
    \"descuentoGlobal\":0,
    \"totalPago\":55000,
    \"totalRedondeo\":0,
    \"receiptid\":\"NC-001\",
    \"codigoSeguridadAleatorio\":\"456789123\",
    \"documentoAsociado\":{
      \"cdcAsociado\":\"01800162994001002000000522023101611791662320\",
      \"tipoDocumentoAsoc\":\"1\"
    },
    \"cliente\":{
      \"ruc\":\"80012345-6\",
      \"nombre\":\"EMPRESA EJEMPLO S.A.\",
      \"direccion\":\"Av. Mariscal Lopez 1234\",
      \"cpais\":\"PRY\",
      \"correo\":\"contacto@empresa.com\",
      \"numCasa\":1234,
      \"dncp\":0
    },
    \"pagos\":[{\"tipoPago\":\"1\",\"monto\":55000}],
    \"items\":[{
      \"codigo\":\"PROD-001\",
      \"descripcion\":\"Resma de papel A4 (devolucion)\",
      \"unidadMedida\":77,
      \"cantidad\":1,
      \"precioUnitario\":55000,
      \"precioTotal\":55000,
      \"descuento\":0,
      \"ivaTasa\":10,
      \"baseGravItem\":50000.00000000,
      \"liqIvaItem\":5000.00000000
    }]
  }"

Respuestas de la API

Respuesta exitosa

{
  "success": true,
  "message": "Documento procesado correctamente",
  "cdc": "01800162994001005000000012026040314000045612",
  "numero": "001-001-0000001",
  "qr": "https://ekuatia.set.gov.py/consultas/qr?...",
  "xml": "<rDE>...</rDE>"
}

Respuesta con error

{
  "success": false,
  "message": "CDC del documento asociado no encontrado o no aprobado en SIFEN",
  "errorCode": "0500"
}

Diferencias con Evento de Cancelación

Aspecto Nota de Crédito Cancelación
Tipo Documento contable Evento SIFEN
Plazo Sin límite 48 horas
Alcance Parcial o total Solo total
Genera KUDE No
Endpoint data.php eventos.php
tipoDocumento "5" tipoEvento: 2

Notas importantes

  • El CDC asociado debe ser de una factura aprobada en SIFEN.
  • Los items de la NC deben tener la misma tasa IVA que la factura original.
  • motivoEmision es OBLIGATORIO - sin él, la API asume motivo 2 (Devolución) por defecto.
  • Para devolución parcial, solo incluir los items devueltos con sus cantidades y montos.