SIFENDE
Referencia APIModelos de Datos

Receptor

Schema del objeto receptor — datos del destinatario del documento para operaciones B2B, B2C, B2G y B2F.

El objeto receptor identifica al destinatario del documento electrónico. Su estructura cambia según el tipo de operación: B2C (consumidor final), B2B (otro contribuyente con RUC), B2G (organismo público) o B2F (cliente del exterior).

Schema

CampoTipoRequeridoDescripción
tipoContribuyenteenumSíCONTRIBUYENTE o NO_CONTRIBUYENTE. Únicos dos valores. Siempre obligatorio, en toda operación
tipoOperacionenumSíB2B, B2C, B2G, B2F. Un receptor NO_CONTRIBUYENTE sólo admite B2C o B2F
tipoContribuyenteReceptorenumCondicionalPERSONA_FISICA o PERSONA_JURIDICA — obligatorio cuando tipoContribuyente = CONTRIBUYENTE; no se envía cuando es NO_CONTRIBUYENTE (SIFEN lo rechaza con el código 1303)
tipoDocumentoenumCondicionalCEDULA_PARAGUAYA, PASAPORTE, CEDULA_EXTRANJERA, CARNET_DE_RESIDENCIA, INNOMINADO, TARJETA_DIPLOMATICA, OTRO — requerido cuando tipoContribuyente = NO_CONTRIBUYENTE; no se envía cuando es CONTRIBUYENTE
numeroDocumentostringSí, salvo en B2FRUC base (sin DV), número de CI, pasaporte, etc. El RUC lleva de 3 a 8 caracteres, sin guion ni cero inicial (por ejemplo 80012345). Para el caso innominado se envía el literal "0". En B2F es opcional; si se envía, no puede estar vacío
nombreRazonSocialstringSíNombre completo o razón social, de 4 a 255 caracteres. Para el caso innominado se envía el literal "Sin Nombre"
digitoVerificadorstringCondicionalDV del RUC, un solo dígito — obligatorio cuando tipoContribuyente = CONTRIBUYENTE. Debe corresponder al RUC informado (módulo 11)
descripcionTipoDocumentostringCon OTRODe 9 a 41 caracteres; obligatoria y exclusiva de tipoDocumento = OTRO
nombreFantasiastringNoNombre de fantasía, de 4 a 255 caracteres; se informa además de nombreRazonSocial
direccionstringCondicionalHasta 255 caracteres. Opcional para B2B / B2C / B2G. Obligatoria solo para Nota de Remisión Electrónica (NRE) y operaciones B2F (cliente del exterior con tipoOperacion = B2F).
numeroCasaintegerCondicionalNúmero de casa, 0 si no tiene; obligatorio para B2F y en una FE que informa direccion
departamentostringNoDepartamento del catálogo de geografía; en una FE se informa junto con ciudad
codigoDistritointegerNoCódigo del distrito (catálogo geográfico SIFEN)
ciudadstringNoCiudad; en una FE se informa junto con departamento, y la combinación debe existir en el catálogo
telefonostringNoTeléfono fijo, de 6 a 15 caracteres
celularstringNoTeléfono móvil, de 10 a 20 caracteres
emailstringNoEmail, de 3 a 80 caracteres — Sifende lo usa para enviar el KuDE automáticamente si está configurado
codigoClientestringNoCódigo libre del emisor para identificar al cliente, de 3 a 15 caracteres. SIFEN no aplica validaciones de negocio y no lo muestra en el KuDE
paisenumNoPor defecto PRY. B2B, B2C y B2G exigen PRY; B2F exige el código ISO de un país distinto de PRY

Las reglas condicionales de esta tabla están expresadas como if/then en el spec OpenAPI, así que se pueden validar localmente antes de mandar la solicitud.

Reglas clave

  • B2B: No envíes tipoDocumento. El receptor se identifica por tipoOperacion: "B2B" + tipoContribuyente: "CONTRIBUYENTE" + tipoContribuyenteReceptor + numeroDocumento (RUC) + digitoVerificador. Los tres últimos son obligatorios: sin tipoContribuyenteReceptor o sin digitoVerificador la API responde 400 validation-error. La direccion es opcional.
  • B2C: tipoContribuyente = NO_CONTRIBUYENTE y generalmente tipoDocumento = CEDULA_PARAGUAYA. Para el receptor innominado (sin identificación) se usa tipoDocumento = INNOMINADO con numeroDocumento: "0" y nombreRazonSocial: "Sin Nombre" — ambos siguen siendo obligatorios. Sólo se permite en Factura Electrónica, no en Nota de Crédito ni de Débito. La direccion es opcional.
  • B2G (gobierno): tipoOperacion = B2G, tipoContribuyente = CONTRIBUYENTE y pais = PRY. Exige numeroDocumento con el RUC de 3 a 8 caracteres sin cero inicial, con una letra final A-D opcional, digitoVerificador de un dígito y tipoContribuyenteReceptor. No envíes tipoDocumento. La direccion es opcional. Ver Compras públicas.
  • B2F (exterior): Usar tipoContribuyente = NO_CONTRIBUYENTE, tipoDocumento = PASAPORTE (o CEDULA_EXTRANJERA, CARNET_DE_RESIDENCIA, TARJETA_DIPLOMATICA, OTRO) y pais con el código ISO correspondiente. El país debe ser distinto de PRY; direccion y numeroCasa son obligatorios. numeroDocumento es opcional: si el cliente no tiene un número para informar, omití el campo. Omití departamento, ciudad, codigoDistrito, digitoVerificador y tipoContribuyenteReceptor. En una FE, B2F sólo admite tipoTransaccion = PRESTACION_SERVICIOS; VENTA_MERCADERIA recibe 400 validation-error.
  • Nota de Remisión Electrónica (NRE): la direccion del receptor es obligatoria porque la NRE documenta un traslado físico de mercadería.

Departamento y ciudad

departamento, codigoDistrito y ciudad se resuelven contra el catálogo de geografía:

  • departamento acepta el name de la categoría departamento de /public/enums (PTE_HAYES), el nombre del catálogo (PTE. HAYES) o el código como texto ("15").
  • ciudad acepta el nombre o el codigo (como texto) de una ciudad del catálogo. Si el nombre del catálogo termina en un calificador entre paréntesis, podés omitirlo: "Asunción" resuelve ASUNCION (DISTRITO).
  • En los nombres no importan mayúsculas, tildes, puntos ni guiones bajos.
  • Si el nombre coincide con más de una ciudad del departamento, la API responde 400 validation-error. En errores["receptor.ciudad"] lista las opciones con su codigoDistrito y su código. Enviá codigoDistrito o el código de la ciudad.
  • SIFEN admite hasta 30 caracteres en la descripción de la ciudad. Si el nombre del catálogo es más largo, el documento lo lleva recortado.

Ejemplos

Próximos pasos

On this page