SIFENDE
Guías

Factura Electrónica

Guía completa para emitir una Factura Electrónica con datos del receptor B2C o B2B, ítems, condición de pago y ejemplos de solicitud completa.

Esta guía cubre la emisión de una Factura Electrónica (FE) paso a paso, desde el armado de la solicitud hasta el seguimiento del estado en SIFEN.

Antes de empezar

Verificá que tenés los tres elementos imprescindibles configurados:

  • Timbrado activo y vigente, cargado en el panel de Sifende para tu contribuyente.
  • Certificado digital subido: .p12 válido y en vigencia.
  • API key generada desde el panel y disponible como variable de entorno.

Si te falta alguno, volvé a Inicio Rápido: Requisitos previos.

Paso 1: Armá la solicitud

La FE usa el endpoint polimórfico POST /api/v1/documento-electronico con tipoDocumento: "FACTURA_ELECTRONICA". Los datos del emisor los completa Sifende automáticamente desde el contribuyente y el timbrado configurados. Vos solo pasás los datos del receptor, los ítems y la condición de pago.

Ejemplo de FE B2C innominada (consumo final menos de Gs. 7.000.000) con un solo ítem gravado al 10%. El caso innominado se arma con tipoContribuyente: "NO_CONTRIBUYENTE" + tipoDocumento: "INNOMINADO", y con los valores literales "0" en numeroDocumento y "Sin Nombre" en nombreRazonSocial:

{
  "tipoDocumento": "FACTURA_ELECTRONICA",
  "fechaEmision": "2026-04-27T10:30:00",
  "tipoEmision": "NORMAL",
  "numeroEstablecimiento": 1,
  "puntoExpedicion": 1,
  "tipoTransaccion": "VENTA_MERCADERIA",
  "monedaOperacion": "PYG",
  "receptor": {
    "tipoContribuyente": "NO_CONTRIBUYENTE",
    "tipoOperacion": "B2C",
    "tipoDocumento": "INNOMINADO",
    "numeroDocumento": "0",
    "nombreRazonSocial": "Sin Nombre"
  },
  "condicionOperacion": "CONTADO",
  "condicionPago": {
    "tipo": "CONTADO",
    "tipoPago": "EFECTIVO",
    "monedaPago": "PYG",
    "montoPago": 150000
  },
  "items": [
    {
      "codigo": "PROD-A4-75",
      "descripcion": "Resma de papel A4 75g",
      "cantidad": 10,
      "unidadMedida": "UNI",
      "precioUnitario": 15000,
      "afectacionTributaria": "GRAVADO",
      "tasaIVA": 10
    }
  ]
}

Los montos en guaraníes son enteros sin decimales. 15000 representa Gs. 15.000. Ver Convenciones.

Paso 2: Enviá la solicitud

No generes una clave dentro de cada intento: otra clave representa una emisión nueva y puede reservar otro correlativo. Para recuperar una respuesta perdida, reutilizá la clave y el body persistidos.

Paso 3: Guardá la respuesta

La respuesta exitosa es 202 Accepted con un body que incluye los identificadores del DE creado:

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "cdc": "01800123451001001000000122026042710000000006",
  "estado": "PENDIENTE",
  "ambiente": "DEV",
  "tipoDocumento": "FACTURA_ELECTRONICA",
  "iTiDe": 1,
  "numeroDocumento": 1,
  "numeroFormateado": "001-001-0000001",
  "fechaCreacion": "2026-04-27T10:30:00",
  "qrUrl": "https://ekuatia.set.gov.py/consultas-test/qr?...",
  "statusUrl": "https://api.sifende.com.py/api/v1/documento-electronico/status/01800123451001001000000122026042710000000006",
  "kudeUrl": "https://api.sifende.com.py/api/v1/documento-electronico/01800123451001001000000122026042710000000006/kude"
}

estado: "PENDIENTE" es lo esperado. SIFEN procesa el documento de forma asíncrona: el CDC ya es válido, pero la aprobación llega en segundos a minutos. Pasá al Paso 4 para verificar.

Guardá id, cdc, numeroFormateado y la Idempotency-Key asociados a tu venta.

  • Consultar el estado de procesamiento en SIFEN (usá statusUrl o el cdc).
  • Descargar el KuDE (PDF) cuando esté aprobado (usá kudeUrl).
  • Cancelar el documento si fuera necesario.

Paso 4: Esperá el resultado de SIFEN

SIFEN procesa los documentos de forma asíncrona. Apenas recibís el CDC, el estado es PENDIENTE o EN_LOTE. El procesamiento tarda habitualmente entre 15 y 60 segundos, pero puede superar los 2 minutos en el ambiente de QA. Implementá polling con timeout de al menos 5 minutos.

Los detalles de la estrategia de polling están en Consultar Estado de un Documento.

Más allá de la factura simple

La solicitud de este ejemplo cubre una venta al contado con un solo medio de pago. La misma factura admite, sin cambiar de endpoint:

  • Varios medios de pago, datos de tarjeta o cheque y medios OTRO descritos: usá pagos. Al contado, los pagos deben cubrir exactamente el total.
  • Crédito con cuotas o plazo, en cualquier moneda, con entrega inicial. Las cuotas deben sumar el saldo financiado.
  • Notas de remisión y facturas de anticipo asociadas, con el anticipo aplicado global o por ítem: ver Documentos asociados y anticipos.
  • Datos del ítem como GTIN, NCM, lote o vencimiento, ítems gravados parcialmente y vehículos nuevos: ver Ítem.
  • Presencia del comprador, datos comerciales, sectores (energía, seguros, supermercado), transporte y carga: ver Factura Electrónica.

Todo campo opcional que no aplica a tu operación se omite.

Errores frecuentes en este flujo

StatusTipoCausa más comúnCómo resolverlo
400validation-errorFalta un campo obligatorio o un valor está mal formateadoRevisá errores en la respuesta
400invalid-enum-valueValor de enum no reconocido (ej: "INVOICE" en tipoDocumento)Revisá valoresAceptados en la respuesta
401JSON de autenticaciónAPI key inválida o revocadaRotá la credencial desde el panel, en API Keys
422configuracion-incompletaNo hay timbrado configurado para este contribuyenteCargá el timbrado en el panel

Para recuperar un timeout o interpretar errores de idempotencia, ver Idempotencia y Reintentos Seguros.

Para el listado completo, ver Manejar Errores y Rechazos SIFEN.

Próximos pasos

On this page