European Energy Market Prices, White-Label Theming & Platform Polish
This release significantly expands energy market price coverage across Europe, introduces white-label theming controls, and delivers a wave of usability improvements and bug fixes.
New Features
European Electricity Market Prices via ENTSO-E
Fentrica now integrates with ENTSO-E (European Network of Transmission System Operators for Electricity) to deliver day-ahead electricity market prices for 35 bidding zones across Europe.
Previously, electricity prices were available only for the Baltic and Nordic region (Estonia, Finland, Latvia, Lithuania) through the Elering integration. With ENTSO-E, price data now covers:
- Nordics: Finland, Sweden (SE1–SE4), Norway (NO1–NO5), Denmark (DK1–DK2)
- Baltics: Estonia, Latvia, Lithuania
- Central Europe: Germany/Luxembourg, France, Netherlands, Belgium, Austria, Switzerland, Poland, Czech Republic, Slovakia, Hungary
- Southern Europe: Spain, Portugal, Italy (North), Greece, Slovenia, Croatia, Romania, Bulgaria
- British Isles: Ireland (SEM)
Both integrations share a unified caching layer, so prices are fetched efficiently and only once per day regardless of how many properties use the same region.
Configurable Price Rules
Energy price rules now support time-based and calendar-aware configurations:
- Time constraints: Apply different rates by month or hour of day
- Day-type filtering: Differentiate between weekdays, weekends, and public holidays (with automatic country-specific holiday detection)
- Network charges & fees: Add fixed charges, taxes, and markups on top of market prices
- Import/Export separation: Define separate pricing for energy consumed vs. energy fed back to the grid
White-Label Theme Control
Administrators can now enable or disable the custom theme feature on a per-client basis. This allows you to:
- Prepare brand assets (logo, favicon, colors) before going live
- Toggle the custom theme on/off without losing your configuration
- Control which organizations see the white-label customization options
Ticket Cancellation
Tickets can now be marked as Canceled — a terminal state for requests that are no longer needed. When canceling a ticket:
- A resolution summary is required to explain why
- The system checks for open work orders and prompts confirmation if any exist
- Comments are locked once the ticket reaches this state
Automatic Email Acknowledgment
When a maintenance request arrives via email, the system now sends an automatic acknowledgment to the sender confirming their request was received. The reply includes:
- The ticket reference number for easy tracking
- Instructions on how to reply to the correct thread
- Customizable template via Organization Settings > Message Templates
Improvements
Schedule Rule Metadata
Technical system schedule entries created by dynamic rules now display the rule metadata that generated them, making it easier to understand why a scheduled action exists and which automation rule is responsible.
Faster Image Loading
Cover images for Properties, Knowledge Base articles, and Technical Systems are now signed on the fly instead of requiring a separate request, resulting in noticeably faster page loads.
Bug Fixes
- Access door codes: Fixed an issue where door PIN codes were not visible in the access method view — only the SET command was shown
- Search by ticket ID: Searching for a ticket by its numeric ID now works correctly
- Access list sorting & filtering: Resolved issues with sorting and filtering in the access management views
- iPhone push notifications: Fixed a reliability issue where push notifications stopped arriving on iOS devices after a period of time
- Entity deletion errors: Resolved intermittent server errors when deleting data points, measurement devices, or cloud meters
- Smart Alarm triggers: Fixed an issue where alarms using sample count conditions were not triggering correctly
- Duplicate dropdown: Removed a duplicate dropdown that appeared in the ticket interface
- Technical system animations: Fixed an issue where technical system visualizations were being incorrectly sanitized, breaking custom animations