Changelog API
Registro de cambios de compatibilidad para integradores.
Cambios que rompen integraciones
Firma local restringida a zona horaria America/Montevideo
La firma inmediata por la bandeja REST local ahora exige que el equipo esté configurado en America/Montevideo con offset GMT-3.
Validaciones DGI para fecha de CFE de referencia
La fecha del CFE de referencia se valida contra las nuevas reglas de DGI y puede rechazar comprobantes con referencias inconsistentes.
Referencia obligatoria en notas de credito
Las notas de credito enviadas por REST, SOAP o modulo local ahora se rechazan si no incluyen una referencia al comprobante que corrigen.
Referencia obligatoria en cobranza propia
Los comprobantes con IndCobPropia igual a 1 ahora se rechazan si no incluyen una referencia completa al comprobante cobrado.
Otros cambios
Metodos TCP de compatibilidad de integracion (fase 1)
Se agregan metodos TCP de compatibilidad para reemplazo sin cambios del lado integrador.
Nuevo canal SDK TCP para modulo local CFE
Se agrega un canal TCP para integraciones tipo SDK con operaciones de firma, consulta, estado y reimpresion sobre el modulo local.
Modulo local admite CFE en formato texto (pipe) con conversion a XML
Se agrega conversion nativa de formato texto separado por pipes a XML CFE en el modulo local antes de firmar/enviar.
Compatibilidad de ResultadoCfe en firma/envio TCP
Las operaciones TCP de firma/envio ahora diferencian correctamente fallas de invocacion en OperacionEjecutada y Mensaje para mantener compatibilidad contractual.
Modulo local agrega bandeja de base de datos por stored procedures
Se incorpora una tercera bandeja de entrada por base de datos con lectura y escritura por procedimientos almacenados.
Modulo local REST agrega consulta de estado y NroConstanciaCae
La bandeja REST local ahora expone el numero de autorizacion CAE en sign-cfe y status-cfe, y agrega un endpoint para consultar el estado de comprobantes encolados o firmados.
Impresion PDF nativa en Windows sin depender de apps externas
El modulo local en Windows deja de usar la aplicacion asociada al PDF para imprimir y pasa a renderizar cada pagina con Windows.Data.Pdf para enviarla directo a la impresora.
sign-cfe desacopla la impresion automatica del camino de emision
La emision por sign-cfe responde apenas firma y envia el CFE, dejando la impresion automatica en segundo plano y registrando en logs cualquier falla local de impresora.
sign-cfe desacopla send_now del request REST
Cuando sign-cfe recibe send_now=true, el envio SOAP deja de ejecutarse en el mismo request y se agenda en segundo plano para responder mas rapido.
Carga tolerante del ensamblado XMLDSig en firmas Windows
La firma local en Windows ahora tolera entornos donde SignedXml ya está disponible sin requerir que exista explícitamente el ensamblado System.Security.Cryptography.Xml.
Correccion de X509SerialNumber en firmas Windows Store
La firma XML generada desde Windows Store ahora calcula X509SerialNumber usando los bytes reales del serial del certificado, evitando seriales inconsistentes en EnviarCfeFirmado.
Firma Windows Store corrige el serial publicado en X509IssuerSerial
La firma local en Windows deja de publicar un X509SerialNumber reinterpretrado por la capa XML y conserva el mismo serial decimal esperado por la validacion SOAP.
sign-cfe y la respuesta 311 distinguen codigos funcionales por tipo de error
La bandeja REST local y la respuesta TXT 311 dejan de concentrar la mayoria de los rechazos en 31 o 96 y ahora distinguen comercio invalido, terminal invalida, requerimiento invalido y error de formato del request.
Firma Windows carga explicitamente el ensamblado XMLDSig
La firma local con Windows Certificate Store ahora carga explícitamente System.Security.Cryptography.Xml antes de construir SignedXml.
Firma Windows Store corrige el serial emisor en X509IssuerSerial
La firma XML generada por el modulo local en Windows ahora informa correctamente el serial del emisor dentro de X509IssuerSerial a partir del serial hexadecimal real del certificado.
Bandeja REST local compatible con clientes HTTP Expect 100-continue
El daemon local ahora responde correctamente a clientes que usan Expect 100-continue en POST, evitando cortes de conexion al enviar XML grandes.
sign-cfe agrega trazas por etapa y timeout para firma Windows
La bandeja REST local ahora registra las etapas internas de sign-cfe y limita el tiempo de espera de la firma Windows por PowerShell.
Timeout por defecto en el envio inmediato de CFE firmados
El envío SOAP inmediato disparado por POST /sign-cfe ahora usa un timeout por defecto cuando no se configura uno explícito.
Sign-cfe corta validaciones XSD colgadas y mejora el diagnóstico por etapas
La bandeja REST local ahora devuelve error explícito si la validación XSD con xmllint excede el timeout configurado, en lugar de dejar el request indefinidamente en espera.
Validacion X509IssuerSerial con serial hexadecimal compuesto solo por digitos
EnviarCfeFirmado ahora valida correctamente certificados cuyo serial hexadecimal real esta compuesto solo por digitos.
Mensaje de duplicado por nombre en productos sin codigo
El alta de productos sin codigo ahora informa correctamente cuando el duplicado corresponde al nombre del producto.
Anulacion de cobranzas propias con contra-comprobante
El endpoint de anulacion ahora permite anular eFacturas y eTickets de cobranza propia generando un CFE del mismo tipo con indicador de facturacion 7.
Anulacion de notas de credito y debito
El endpoint de anulacion permite cancelar notas de credito con nota de debito y notas de debito con nota de credito.
La bandeja REST local soporta direccion de escucha configurable para LAN
La bandeja REST local deja de documentarse como solo loopback y ahora expone en estado y health la direccion de escucha configurada, incluyendo escenarios de consumo desde la LAN.
Motivos de validacion en firma REST local
La bandeja REST local ahora informa en el mensaje de respuesta los motivos concretos cuando el XML enviado a firma es rechazado por el validador local.
Marca de agua en PDFs fuera de produccion
Los PDFs de representacion impresa emitidos fuera de produccion ahora identifican que son documentos de prueba sin valor fiscal.
IdReq de SolicitarRangoCae refleja TraceSolicitud
La respuesta de SolicitarRangoCae ahora devuelve el trace local en IdReq y expone IdRangoCae para identificar el rango reservado.
Exportacion Excel en consulta de ordenes de venta
El endpoint de consulta de ordenes de venta ahora permite descargar el listado filtrado en formato Excel, incluyendo literales en una columna dedicada.
Reutilizacion de cheques recibidos en pagos a proveedores
Los cheques recibidos en cobranzas ahora pueden seleccionarse como medio de pago en ordenes de pago, con trazabilidad origen-destino y validaciones de disponibilidad.
Nuevos webhooks para rechazo y observacion de CFE en DGI y receptor
Se agregan eventos de webhook para notificar cuando un CFE emitido queda rechazado u observado por DGI y cuando es rechazado u observado en intercambio entre empresas.
La bandeja REST local muestra una pantalla de diagnostico en la URL base
La URL base de la bandeja REST local ahora responde una pagina HTML simple para verificar en navegador que el daemon esta activo y acceder rapido a endpoints de estado.
Bluetech Developers separa Sandbox y Produccion con API keys independientes
Las integraciones ahora pueden operar con workspaces Sandbox y Produccion totalmente separados, cada uno con sus propias API keys y prefijos bt_test_ o bt_live_.
API keys con rate limiting, metricas y base de pricing por operacion
Las API keys ahora pueden tener limites configurables y la plataforma registra metricas por clave, categoria de operacion y eventos de rate limiting sin afectar la autenticacion legacy.
API keys de empresa con autenticacion directa REST
Se agregan API keys de empresa para autenticar requests directamente en la API sin reemplazar el login legacy actual.
Copiloto IA con consultas de negocio seguras
El endpoint del copiloto IA ahora puede responder un conjunto acotado de consultas de negocio usando datos reales del ERP y resolvers backend controlados.
Hardening de seguridad para Copiloto IA
El copiloto IA ahora endurece sesiones por empresa y usuario, bloquea pedidos interempresa y rechaza intentos de extraer prompts o credenciales.
El copiloto IA incorpora suggested_actions clickeables
El endpoint del copiloto ahora devuelve suggested_actions estructuradas y permite ejecutar acciones sugeridas mediante el mismo contrato REST.
Emision de comprobantes con receptor manual, consulta RUT y tipo de cambio automatico
El endpoint de emision ahora puede completar receptores por documento, consultar DGI para RUT y resolver tipo de cambio automaticamente en monedas extranjeras.
Emision Inteligente MVP para eFactura
Se agregan endpoints REST para interpretar texto libre o payload parcial y generar una pre-emision asistida de eFactura en UYU.
Emision inteligente resuelve referencias de notas de credito por texto controlado
La emision inteligente ahora puede resolver referencias de notas de credito a partir de texto libre controlado cuando hay un unico comprobante candidato en la empresa actual.
Emision Inteligente amplia tipos soportados
Emision Inteligente ahora soporta eTicket y notas de credito de eFactura y eTicket con referencia exacta al comprobante original.
Nuevo endpoint REST para Copiloto IA
Se incorpora el endpoint del copiloto IA conversacional para emisión asistida, consultas y acciones guiadas.
Emision Inteligente admite monedas ISO configuradas
El endpoint de Emision Inteligente ahora acepta monedas en codigo ISO de 3 letras soportadas por el catalogo interno, con resolucion automatica de tipo de cambio cuando corresponde.
Consultas DGI permiten omitir idEmpresa para usuarios con una unica empresa
Los endpoints de consultas DGI ahora pueden resolver automaticamente la empresa cuando el usuario autenticado no es admin_sistema y solo tiene una empresa asociada.
EnviarCfeFirmado admite CertificadoPublicoBase64
La operacion EnviarCfeFirmado ahora permite informar un certificado publico en Base64 para validar la firma cuando el XML no incluye X509Certificate.
Reaplicacion controlada de recibos de cobranza
Se agrega una operacion REST para volver a aplicar el saldo disponible de un recibo de cobranza sobre un comprobante pendiente compatible.
EnviarCfeFirmado genera sobres cuando corresponde
La operacion EnviarCfeFirmado ahora intenta generar los sobres para DGI y receptor cuando el CFE emitido cumple las condiciones funcionales para cada caso.
Restablecer clave devuelve error controlado ante politica de password
El endpoint de restablecimiento de clave ahora responde un error JSON manejable cuando la nueva password incumple la politica o repite una usada recientemente.
Correccion de DatosConexion en SincronizarTerminal para agentes locales
Se corrigio el procesamiento de DatosConexion en SincronizarTerminal y el agente local ahora reporta mas metadata operativa del equipo.
SincronizarTerminal amplía ParametrosClienteLocal con datos cambiantes de la empresa
La sincronización de terminal ahora devuelve también la resolución de la empresa, fecha de inicio de actividad y otros parámetros empresariales útiles para agentes locales y representación impresa.
Permisos de terminal en SincronizarTerminal y operaciones SOAP locales
SincronizarTerminal ahora devuelve mas permisos del punto de emision y varias operaciones SOAP rechazan solicitudes cuando la terminal no tiene habilitada la capacidad correspondiente.
SincronizarTerminal ahora recibe metadata del cliente y devuelve parametros globales
La sincronizacion de terminal permite reportar datos del cliente local con un bloque simplificado, devolver parametros globales bajo demanda y cachearlos localmente.
Adenda y emails en SolicitarFirmaCfe y EnviarCfeFirmado
Las operaciones SOAP SolicitarFirmaCfe y EnviarCfeFirmado aceptan adenda y destinatarios de correo con separacion por coma o punto y coma.
Rangos SOAP reservados solo para uso local
Los rangos reservados por SolicitarRangoCae dejan de quedar disponibles para la emisión nube del servidor.
EnviarCfeFirmado valida firmas con X509IssuerSerial sin exigir X509Certificate
Se corrige la validacion de firmas XMLDSig en EnviarCfeFirmado para aceptar firmas con X509IssuerSerial sin requerir X509Certificate embebido dentro del XML.
Sincronizacion de terminal devuelve solo rangos locales utilizables
SincronizarTerminal y la consulta de rangos activos dejan de incluir rangos de emision nube o rangos ya agotados.
Nuevas operaciones SOAP para sincronizacion y seguimiento del modulo local CFE
El servicio SOAP de CFE incorpora operaciones para sincronizar terminales locales, listar rangos activos, confirmar el avance de uso y devolver datos completos de CAE para firma local.
Refuerzo de autorizacion en endpoints REST sensibles
Se reforzaron validaciones de permisos para evitar accesos cruzados entre usuarios y empresas.
Se agrega changelog tecnico para integradores
Se incorpora la seccion Changelog API para registrar cambios de compatibilidad y breaking changes.