Capital Trade Energy
Work/WORK / STUDIO · DESIGN

A website and client portal for a new electricity trader.

An Astro + Sanity website and one Laravel app with an admin panel and a client portal, reading billing data live from FidWeb. Built in 3 weeks for Capital Trade Energy.

Capital Trade EnergyElectricity trading & supply · Bulgaria
Company sizeSME
CountryBulgaria
ServiceWebsite, admin panel & client portal
PlatformAstro 7 · Sanity / Laravel 13 · Filament 5
Duration3 weeks
IndustryElectricity trading & supply
Download the full case study (PDF)Enter your work email and we’ll open the PDF.

Thanks — the PDF should open in a new tab.

About the client

A new electricity trader with its data locked away.

Capital Trade Energy is an independent electricity trader licensed by the Energy and Water Regulatory Commission. It supplies businesses and homes on Bulgaria's free market and buys electricity from solar, battery, hydro and wind producers.

All client, metering-object and invoice data sat in FidWeb, an external billing system. Staff had no simple back-office view of it, and business customers could not check their own invoices or meters without asking someone.

  • 01Data in an external system Clients, metering points and invoices lived only in FidWeb, with no simple view for the team
  • 02Clients had to ask Every invoice or meter check went through a member of staff
  • 03No second database Access had to be built without a copy of the data that needs keeping in sync
  • 04Strict separation Each company could only ever see its own objects and invoices
  • 05Billing system outages The panels had to stay usable and clear when FidWeb was down
  • 06A new brand online The company needed a fast, SEO-friendly website the team could update on its own
Approach

The right tool for each job, delivered in 3 weeks.

Voidweb chose each technology for the best result, delivered fast and cost-effectively. Astro 7 for the website, for its performance, SEO and easy Sanity integration. One Laravel 13 and Filament 5 app to serve both the admin panel and the client portal.

Instead of copying billing data into a new database, both panels read it live from the FidWeb API. The app stores only its own logins, so there is nothing to keep in sync.

Team. One full-stack developer using AI-assisted development in Cursor, delivering the whole platform in 3 weeks. We chose this approach for the best result in the shortest time and at the lowest cost.

Three user groups. Visitors explore solutions for business and home and request an offer on the website. Internal staff use the admin panel to browse clients, metering objects and invoices, track portfolio KPIs and manage access. Business customers use the client portal to see their own objects and download their invoices. Each group sees only what it needs.

01

Website

Astro 7 and Sanity CMS, deployed on Netlify

02

FidWeb integration

Live reads through one repository layer with a 60-second cache

03

Admin panel

Clients, objects, invoices, KPIs and staff access

04

Client portal

Each company's objects and invoice PDFs, in Bulgarian

05

Testing & launch

PHPUnit feature tests, then go-live.

The system

One website, one app, two panels, live billing data.

Website. Built with Astro 7 for performance and SEO and deployed on Netlify. Sanity CMS is integrated, so the team can edit every text on the site without a developer. Solution pages for business and home, services for producers, a free offer form, an information center with category filters, FAQ, and documents and licenses.

Admin panel. A back office for internal staff. A KPI dashboard shows installed generation power by type, battery capacity, metering points and counts of consumers and producers. Staff browse clients by name, company ID, metering point or city, filter producers, consumers and mixed clients, and open each client's company data, contract terms, metering points and invoices. They also manage staff accounts and decide who gets client portal access.

Client portal. Business customers register themselves, and staff link the account to the company before any data appears. Each company's users see only their own metering objects and invoices and can download invoice PDFs at any time. The whole interface is in Bulgarian, including password reset and validation messages.

Live data, no copy. Every request reads from the FidWeb API through one repository layer with a 60-second cache. The app stores only its own logins for admins and portal users.

Strict scoping. Portal queries are tied to the user's FidWeb client ID and compared strictly, so one company can never see another's data.

Handles outages. If FidWeb is down, the panels show a clear "unavailable" state instead of empty tables or an error. A mail outage does not break password reset either.

Well tested. PHPUnit feature tests cover portal scoping, FidWeb failure isolation, the dashboard widgets and translations.

Stack. Website: Astro 7, Sanity CMS, Netlify. Panels: PHP 8.4, Laravel 13, Filament 5, Livewire 4, Tailwind CSS 4, Vite and ApexCharts. Development: AI-assisted in Cursor.

Results

One view for the team, self-service for clients.

01

Live in 3 weeks

Website, admin panel and client portal delivered by one AI-assisted developer

02

One dashboard

Staff see clients, objects, invoices and portfolio KPIs in one place

03

24/7 self-service

Customers check their invoices and meters without asking anyone

04

No second database

Billing data is read live from FidWeb, so nothing needs syncing

05

Data stays private

Each company sees only its own objects and invoices

06

A site the team owns

Every website text is editable in Sanity, on a fast, SEO-friendly Astro site

Voidweb gave us a complete digital platform from day one: a website that builds trust, a portal our clients use every day and an admin panel our team relies on.
Atanas Furnadzhiev, CEO, Capital Trade Energy
Why it worked

Fast, lean and built on live data.

AI-accelerated delivery: one full-stack developer working in Cursor built the website, the admin panel and the client portal in 3 weeks, for the best result at the lowest time and cost. The right tool for each job: Astro and Sanity for a fast site the team edits itself, Laravel and Filament for secure panels on live FidWeb data. Energy context from our work with KP Solar Group, one of the founding partners. And a local Bulgarian team in the same language, time zone and Sofia building.

Let's talk this week

Let's ship.

Tell us what you're building and where it's stuck. You'll hear back from a partner, not a form.