Saltar al contenido principal

Catálogo de Enums SIFEN

Referencia completa de los 48 enums implementados en app/Domains/Sifen/Enums/. Cada enum mapea una tabla del Manual Técnico SIFEN v150 — mantenerlos alineados con las descripciones oficiales es crítico (ver por ejemplo el caso de Moneda y el error 1206 documentado en Multi-moneda).

Convenciones:

  • Int-backed: enum cuyo valor subyacente es numérico (la mayoría).
  • String-backed: enum cuyo valor es un string (Moneda, Pais, AmbienteEmision, etc.).
  • Todos exponen description() — string que se emite literal al XML de SIFEN.

A — Identificación del documento

TipoDocumentoElectronico (int) — iTiDE

Referencia A.1 TTiDE. Los 8 tipos de DTE que soporta SIFEN.

ValorDescripción
1Factura electrónica
2Factura electrónica de exportación
3Factura electrónica de importación
4Autofactura electrónica
5Nota de crédito electrónica
6Nota de débito electrónica
7Nota de remisión electrónica
8Comprobante de retención electrónico

XSD v150 restringe iTiDE al pattern 1|[4-7]|9|10. Los tipos 2, 3 y 8 están bloqueados a nivel XSD aunque el pipeline está implementado.

TipoDocumentoAsociado (int)

Referencia A.2 — Tipo de documento físico asociado.

ValorDescripción
1Factura
2Nota de crédito
3Nota de débito
4Nota de remisión
5Comprobante de retención

TipoDocumentoAsociadoFormato (int)

Referencia A.3 — Formato del documento asociado.

ValorDescripción
1Electrónico
2Impreso
3Constancia Electrónica

TipoDocumentoReceptor (int)

Referencia A.4 — Documentos que puede presentar el receptor.

ValorDescripción
1Cédula paraguaya
2Pasaporte
3Cédula extranjera
4Carnet de residencia
5Innominado
6Tarjeta Diplomática de exoneración fiscal
9Otro

TipoDocumentoContribuyente (int)

Referencia A.5 — Documentos del emisor (persona física).

ValorDescripción
1Cédula paraguaya
2Pasaporte
3Cédula extranjera
4Carnet de residencia

TipoIdResponsableDE (int)

Referencia A.6 — ID del responsable del DE.

ValorDescripción
1Cédula paraguaya
2Pasaporte
3Cédula extranjera
4Carnet de residencia
9Otro

B — Información general del documento

TipoEmision (int) — iTipEmi

Referencia B.1.

ValorDescripción
1Normal
2Contingencia

TipoOperacion (int) — iTiOpe

Referencia B.2 — Clasificación de la operación.

ValorDescripción
1Business To Business (B2B)
2Business To Consumer (B2C)
3Business To Government (B2G)
4Business To Freelancer (B2F / extranjero)

CondicionOperacion (int) — iCondOpe

Referencia B.3.

ValorDescripción
1Contado
2Crédito

TipoTransaccion (int) — iTipTra

Referencia B.4.

ValorDescripción
1Venta de mercadería
2Prestación de servicios
3Mixto (mercadería + servicios)
4Venta de activo fijo
5Venta de divisas
6Compra de divisas
7Promoción o entrega de muestras
8Donación
9Anticipo
10Compra de productos
11Compra de servicios
12Venta de crédito fiscal
13Muestras médicas (Art. 3 RG 24/2014)

TipoRegimen (int) — iTipReg

Referencia B.5 — Régimen tributario del emisor.

ValorDescripción
1Régimen de Turismo
2Importador
3Exportador
4Maquila
5Ley Nº 60/90
6Régimen del Pequeño Productor
7Régimen del Mediano Productor
8Régimen Contable

MotivoEmision (int) — iMotEmi

Referencia B.6 — Motivo de emisión para NCE/NDE.

ValorDescripción
1Devolución y Ajuste de precios
2Devolución
3Descuento
4Bonificación
5Crédito incobrable
6Recupero de costo
7Recupero de gasto
8Ajuste de precio

NaturalezaReceptor (int) — iNatRec

Referencia B.7.

ValorDescripción
1Contribuyente
2No Contribuyente

NaturalezaVendedor (int) — iNatVen

Referencia B.8 — Para Autofactura (AFE).

ValorDescripción
1No contribuyente
2Extranjero

TipoContribuyente (int) — iTipCont

Referencia B.9.

ValorDescripción
1Persona Física
2Persona Jurídica

C — Impuestos

TipoImpuesto (int) — iTImp

Referencia C.1.

ValorDescripción
1IVA
2ISC
3Renta
4Ninguno
5IVA - Renta

AfectacionIVA (int) — iAfecIVA

Referencia C.2.

ValorDescripción
1Gravado IVA
2Exonerado (Art. 83 - Ley 125/91)
3Exento
4Gravado parcial (Gravado - Exento)

TasaIVA (int)

Tasas vigentes para SIFEN.

ValorDescripción
0Exento (0%)
5Tasa reducida (5%)
10Tasa general (10%)

TipoRetencionRegimen (int) — iTipReg (CRE)

Tipo de régimen para Comprobante de Retención.

ValorDescripción
1Renta
2IVA

⚠️ No confundir con TipoRegimen de B.5. TipoRegimen es el régimen tributario del emisor (Turismo, Maquila, etc.). TipoRetencionRegimen es solo para CRE (tipo 8).


D — Forma de pago

TipoPago (int) — iTiPago

Referencia D.1.

ValorDescripción
1Efectivo
2Cheque
3Tarjeta de crédito
4Tarjeta de débito
5Transferencia
6Giro
7Billetera electrónica
8Tarjeta empresarial
9Vale
10Retención
11Pago por anticipo
12Valor fiscal
13Valor comercial
14Compensación
15Permuta
16Pago bancario
17Pago Móvil
18Donación
19Promoción
20Consumo Interno
21Pago Electrónico
99Otro

CondicionCredito (int) — iCondCred

Referencia D.2.

ValorDescripción
1Plazo
2Cuota

CondicionAnticipo (int) — iCondAnt

Referencia D.3.

ValorDescripción
1Anticipo Global
2Anticipo por Ítem

FormaProcesamientoPago (int) — iForProPa

Referencia D.4.

ValorDescripción
1POS
2Pago Electrónico
9Otro

DenominacionTarjeta (int) — iDenTarj

Referencia D.5.

ValorDescripción
1Visa
2Mastercard
3American Express
4Maestro
5Panal
6Cabal
99Otro

E — Campos específicos por tipo de DTE

IndicadorPresencia (int) — iIndPres

Referencia E.1 — FE/AFE.

ValorDescripción
1Operación presencial
2Operación electrónica
3Operación telemarketing
4Venta a domicilio
5Operación bancaria
6Operación cíclica
9Otro

F — Totales y moneda

Moneda (string) — cMoneOpe

Referencia I.3 CMondT (ISO 4217).

:::caution Descripciones sensibles Las descripciones de este enum deben coincidir exactamente con el XSD oficial Monedas_v150.xsd. Cambiar "Brazilian Real" por "Real Brasileño" dispara el error SIFEN 1206. Ver Multi-moneda para el detalle. :::

CódigoDescripción oficial
PYGGuarani
USDUS Dollar
EUREuro
BRLBrazilian Real
ARSArgentine Peso
UYUPeso Uruguayo
BOBBoliviano
CLPChilean Peso
COPColombian Peso
PENNuevo Sol
GBPPound Sterling
JPYYen
CNYYuan Renminbi
CADCanadian Dollar
AUDAustralian Dollar
CHFSwiss Franc
MXNMexican Peso
SEKSwedish Krona
NOKNorwegian Krone
DKKDanish Krone
SGDSingapore Dollar
HKDHonk Kong Dollar (typo oficial del XSD)
KRWWon
INRIndian Rupee
RUBRussian Ruble
TRYTurkish Lira
AEDDirham
VEFBolivar
GTQQuetzal
CRCCosta Rican Colon
NIOCordoba Oro
HNLLempira
DOPDominican Peso

CondicionTipoCambio (int) — dCondTiCam

Referencia F.4.

ValorDescripción
1Global (un solo tipo de cambio para todo el DE)
2Por ítem (tipo de cambio distinto por cada ítem)

CondicionNegociacion (string) — INCOTERM

Referencia F.3 TcCondNeg.

CódigoDescripción
CFRCosto y flete
CIFCosto, seguro y flete
CIPTransporte y seguros pagados hasta
CPTTransporte pagado hasta
DAPEntregada en el lugar convenido
DATEntregada en terminal
DDPEntregada derechos pagados
EXWEn fábrica
FASFranco al costado del buque
FCAFranco transportista
FOBFranco a bordo

UnidadMedida (int) — cUniMed

Referencia F.1. Subset más usado:

ValorDescripción
77Unidad
79Kilogramos s/ metro cuadrado
83Kilogramos
86Gramos
87Metros
88Mililitros
89Litros
90Miligramos
91Centímetros
92Centímetros cuadrados
93Centímetros cúbicos
94Pulgadas
95Milímetros
96Milímetros cuadrados
97Año
98Mes
99Tonelada
100Hora
101Minuto
102Día
103Yardas
104Determinación
108Metros
109Metros cuadrados
110Metros cúbicos
569Ración
625Kilómetros
660Metro lineal
666Segundo
869Hectáreas
885Unidad Medida Global
891Por Milaje
2329Unidad Internacional
2366Costo Por Mil

RelacionMercaderia (int)

Referencia F.2.

ValorDescripción
1Tolerancia de quiebra
2Tolerancia de merma

G — Transporte y remisión (NRE)

MotivoTraslado (int) — iMotivTras

Referencia G.2 — Exclusivo NRE.

ValorDescripción
1Traslado por ventas
2Traslado por consignación
3Exportación
4Traslado por compra
5Importación
6Traslado por devolución
7Traslado entre locales de la empresa
8Traslado de bienes por transformación
9Traslado de bienes para reparación
10Traslado por emisor móvil
11Exhibición o Demostración
12Participación en ferias
13Traslado de encomienda
14Decomiso
99Otro

ModalidadTransporte (int) — iModTrans

Referencia G.1.

ValorDescripción
1Terrestre
2Fluvial
3Aéreo
4Multimodal

TipoTransporte (int) — iTTrans

Referencia G.3.

ValorDescripción
1Propio
2Tercero

ResponsableFlete (int) — iRespFlete

Referencia G.4.

ValorDescripción
1Emisor de la FE
2Receptor de la FE
3Tercero
4Agente intermediario
5Transporte propio

CaracteristicaCarga (int) — iCarCarga

Referencia G.5.

ValorDescripción
1Mercaderías con cadena de frío
2Carga peligrosa
3Otro

ResponsableEmisionNR (int) — iRespEmiNR

Referencia G.6 — Exclusivo NRE.

ValorDescripción
1Emisor de la factura
2Poseedor de la factura y bienes
3Empresa transportista
4Despachante de Aduanas
5Agente de transporte o intermediario

TipoIdentificacionVehiculo (int) — dTipIdenVeh

Referencia G.7.

ValorDescripción
1Número de identificación del vehículo (VIN/chasis)
2Número de matrícula

TipoOperacionVehiculoNuevo (int) — iTipOpVN

Referencia G.8.

ValorDescripción
1Venta a representante
2Venta al Consumidor final
3Venta a gobierno
4Venta a flota de vehículos

TipoCombustible (string)

Referencia G.9.

CódigoDescripción
GASOLINAGasolina
DIESELDiésel
ETANOLEtanol
GNVGNV
FLEXFlex
OTROOtro

H — Eventos y conformidad

TipoEvento (int) — emisor

Manual Técnico v150 (eventos del emisor).

ValorDescripción
1Cancelación del DTE
2Inutilización del rango de números de DE

MotivoEvento (int)

Referencia H.1 — Motivos de eventos NRE.

ValorDescripción
1Cambio del local de la entrega
2Cambio del chofer
3Cambio del transportista
4Cambio de vehículo

TipoConformidad (int) — iTipConf

Referencia H.2.

ValorDescripción
1Conformidad Total del DTE
2Conformidad Parcial del DTE

TipoConstancia (int) — dTipCons

Referencia H.3 — Para AFE.

ValorDescripción
1Constancia de no ser contribuyente
2Constancia de microproductores

I — Códigos geográficos e ISO

Departamento (int)

Referencia I.1 TDepartamento — los 20 departamentos de Paraguay.

ValorDescripción
1CAPITAL
2CONCEPCION
3SAN PEDRO
4CORDILLERA
5GUAIRA
6CAAGUAZU
7CAAZAPA
8ITAPUA
9MISIONES
10PARAGUARI
11ALTO PARANA
12CENTRAL
13NEEMBUCU
14AMAMBAY
15PTE. HAYES
16BOQUERON
17ALTO PARAGUAY
18CANINDEYU
19CHACO
20NUEVA ASUNCION

:::info Distrito y Ciudad El enum Departamento es solo el departamento. Los códigos de Distrito y Ciudad (cDistrito, cCiudad) son demasiado extensos (~3000 entradas) y viven en Monedas_v150.xsd + tablas auxiliares. La relación departamento → distrito → ciudad se valida en SIFEN con el código 1255. :::

Pais (string) — ISO 3166-1 alpha-3

Referencia I.2. Subset implementado (38 países usados con frecuencia):

CódigoPaís
PRYParaguay
ARGArgentina
BRABrasil
URYUruguay
BOLBolivia
CHLChile
PERPerú
COLColombia
VENVenezuela
ECUEcuador
USAEstados Unidos
ESPEspaña
DEUAlemania
CHNChina
JPNJapón
GBRReino Unido
FRAFrancia
ITAItalia
MEXMéxico
CANCanadá
AUSAustralia
PANPanamá
CRICosta Rica
GTMGuatemala
HNDHonduras
NICNicaragua
SLVEl Salvador
DOMRepública Dominicana
CUBCuba
KORCorea del Sur
INDIndia
RUSRusia
ZAFSudáfrica
TURTurquía
ISRIsrael
AREEmiratos Árabes Unidos
TWNTaiwán
HKGHong Kong
SGPSingapur

Estado interno de OnnixConnect

AmbienteEmision (string)

Ambiente del emisor (ruteo de SOAP endpoint).

ValorDescripción
testHomologación (ambiente de pruebas DNIT)
prodProducción (documentos con validez fiscal)

EstadoDte (string)

Máquina de estados del DTE dentro de OnnixConnect (no es campo SIFEN).

ValorDescripción
draftBorrador — pendiente de firma
signedFirmado — pendiente de envío
sentEnviado — esperando respuesta DNIT
approvedAprobado por DNIT
rejectedRechazado por DNIT
cancelledCancelado
errorError técnico

SifenCodigoRespuesta (string)

Catálogo oficial de códigos de respuesta SIFEN (Manual v150). 88 códigos cubiertos — los más frecuentes:

CódigoSignificadoSeveridad
0260Autorización del DE satisfactoriaÉxito
0420CDC inexistente en SIFENError consulta
0600Evento registrado correctamenteÉxito
0160XML malformadoError crítico
0161Servidor de procesamiento momentáneamente sin respuestaRetry
1001CDC duplicadoError emisión
1002Documento electrónico duplicadoError emisión
1101Número de timbrado inválidoConfig
1150Fecha y hora de emisión inválida por retraso (>720h)Config
1206Descripción de la moneda no corresponde al códigoEnum
1306RUC del receptor inexistenteDatos
1309DV del RUC receptor incorrectoDatos
1556Tipo de cambio no informado para la moneda del pagoMulti-moneda
1858Error en el cálculo del valor total por ítem en guaraníesMulti-moneda
2382Total general en guaraníes no informadoMulti-moneda
2417Sumatoria de NCE supera monto de la FE referenciadaNCE

El enum completo tiene 88 códigos. Para el listado completo ver app/Domains/Sifen/Enums/SifenCodigoRespuesta.php.


Uso en código

Todos los enums exponen description():

use App\Domains\Sifen\Enums\Moneda;
use App\Domains\Sifen\Enums\TipoDocumentoElectronico;

$moneda = Moneda::USD;
echo $moneda->value; // "USD"
echo $moneda->description(); // "US Dollar"

$tipo = TipoDocumentoElectronico::NOTA_DE_CREDITO_ELECTRONICA;
echo $tipo->value; // 5
echo $tipo->description(); // "Nota de crédito electrónica"

// tryFrom para parsing seguro desde input externo
$moneda = Moneda::tryFrom($requestData['moneda']);
if ($moneda === null) {
throw new \InvalidArgumentException('Moneda inválida');
}

Referencias

  • Código fuente: app/Domains/Sifen/Enums/.
  • Tablas oficiales: docs/manuales-md/Manual_SIFEN_v150_completo.md.
  • Catálogos XSD: docs/xsd/Monedas_v150.xsd, docs/xsd/Unidades_Medida_v141.xsd.
  • Guías relacionadas: Tipos de Documento, Multi-moneda, Tipos Bible.