Skip to content
RoyalZeusGlobal Advisors Ltd — home
info@zeus.com.cy+357 22 232 828

ROYALZEUS GLOBAL ADVISORS LTD · HE494037

Case study · SaaS · Payroll & HR · Accounting offices

ZEUS Finance

Payroll and people, right every month — for businesses and accounting offices in Cyprus and Greece.

Created, built and owned by Nikolaos Sioukiouroglou (nsiou.dev, opens in a new tab). Offered under ROYALZEUS GLOBAL ADVISORS LTD.

Figures from zeusfinance.com.cy · release 6b1dca3, 26 Oct 2026

ZEUS Finance: A company's home: employees, the month's cost and what waits

Ownership & rights

ZEUS Finance belongs to Nikolaos Sioukiouroglou.

Nikolaos conceived, designed and built ZEUS Finance himself, starting from an empty repository, and he continues to develop and run it.

All rights in ZEUS Finance belong to him: the software and its source code, the database design, the interface, the name and brand, the documentation and the content published with it. All rights are reserved.

He alone decides how ZEUS Finance is developed, licensed and offered, and he has full authority over the product.

ROYALZEUS GLOBAL ADVISORS LTD offers ZEUS Finance to its customers under his authorisation. That arrangement does not transfer ownership of the product, or any of its rights, to the company.

Creator & developer
Nikolaos Sioukiouroglou
Owner of all rights
Nikolaos Sioukiouroglou
Authority over the product
Nikolaos Sioukiouroglou
Offered to customers by
ROYALZEUS GLOBAL ADVISORS LTD

ZEUS Finance © 2026 Nikolaos Sioukiouroglou. All rights reserved. More about the developer at nsiou.dev (opens in a new tab).

In numbers

Counted from the code, not estimated.

Lines of code
302,236
Source files
1,652
Automated tests
1,737
Test files
345
Database models
130
Versioned migrations
142
Scheduled jobs
23
Runtime dependencies
25

ZEUS Finance publishes these figures about itself on every release; this page reads them live. It currently lists 54 features in nine areas.

Who it is for

From a few employees to groups of companies.

  • Small businesses

    Up to 50 employees

  • Medium businesses

    Up to 800 employees

  • Large businesses and groups

    800+ employees, up to 50 companies

  • Accounting offices and accountants

    Every client's payroll in one place

Problem & approach

Right to the cent, safe by default.

Employers in Cyprus and Greece need payroll that is right to the cent and produces the official files each authority asks for — not just a payslip. Accounting offices need every client’s month in one place. Both handle the most sensitive data a company has, so the system has to be correct and safe by default.

Every figure comes from what the company entered or imported, or is calculated from it. Nothing is guessed: if the data cannot answer something an official file needs, the file stops and says why. Security is enforced in three places — identity comes only from the session, every service checks roles, permissions and package limits, and the database itself refuses to link one company’s data to another’s.

What was built

One application, one database.

Nikolaos designed and built ZEUS Finance from an empty repository: a Next.js and TypeScript application on PostgreSQL with Prisma, deployed on Vercel in Frankfurt.

Payroll follows each country’s own rules and official rates. In Cyprus: Social Insurance, GESY, the Social Cohesion, Redundancy and holiday funds, HRDA, the 13th and 14th salary, and the files for SISnet, the monthly PAYE return and the annual IR7 for Tax For All. In Greece: e-EFKA contributions, income tax, the Christmas and Easter bonuses and holiday allowance, the monthly ΑΠΔ file and the staff list for ERGANI.

Around payroll sits the HR side: employees and personnel files, documents that expire, leave in days or hours, overtime with gross and net per kind, advances, departments and managers, attendance, announcements, employee accounts, and a team with roles and approvals. Payslips carry the company’s logo and go out by e-mail; a SEPA file pays everyone at once.

Packages scale from one company with a few employees to groups of up to 50 companies and 2,000 employees. Accounting offices get their own workspace: every client’s month on one page, checks before approval and all the files in one ZIP.

Payments run through Worldline (wallee): checkout, renewal and payment links, refunds, payments on hold and chargebacks, with invoices, credit notes and EU VAT numbers checked live against VIES. The interface is in Greek and English.

A month in the product

From hours worked to the accountant’s files.

  1. 1

    Hours, days and shifts go in

    Entered once, or paid straight from the shift rota with its Sunday and holiday premiums.

  2. 2

    Checked before approval

    A missing IBAN or tax number, pay below the minimum wage, a big change from last month, an expired document.

  3. 3

    Approved and paid

    Payslips with the company’s logo by e-mail, in Greek or English, and one SEPA file that pays everyone.

  4. 4

    Files for the accountant

    SISnet, Tax For All and IR7 in Cyprus; ΑΠΔ and the ERGANI staff list in Greece — ready to check and submit.

  5. 5

    Never late

    Every contribution, tax and bonus deadline with its official source, and a reminder a week before.

Screens

Every screen here is real.

ZEUS Finance: A company's home: employees, the month's cost and what waits
01A company's home: employees, the month's cost and what waits
ZEUS Finance: A payroll run with contributions, tax and net pay, checked before approval
02A payroll run with contributions, tax and net pay, checked before approval
ZEUS Finance: The shift rota, with uncovered shifts from approved leave
03The shift rota, with uncovered shifts from approved leave
ZEUS Finance: Leave requests and balances
04Leave requests and balances
ZEUS Finance: Team members, roles and approvals
05Team members, roles and approvals
ZEUS Finance: An employee's file and documents with their expiry dates
06An employee's file and documents with their expiry dates

Screens come from the public ZEUS Finance demo, which uses two sample companies with invented data, and load from zeusfinance.com.cy so they always show the current version. The official services named on this page are not affiliated with ZEUS Finance.

Every feature

Nine areas, all of it.

01Payroll for Cyprus and Greece
  • Contributions, tax and net pay with each country's official rates, checked every day against the government sources; Cyprus' carry into each new year by themselves, with the Social Insurance ceiling taken from the authority's own table.
  • Cyprus: Social Insurance, GESY, Social Cohesion and Redundancy funds, HRDA, provident and holiday funds, the 13th salary.
  • Greece: e-EFKA contributions with the year's ceiling, income tax with children and the under-30 rules, Christmas and Easter bonuses, leave allowance.
  • Monthly and daily-paid staff, overtime per kind with gross and net, advances repaid in instalments, final settlement for leavers.
  • Checks before approval: missing IBAN or tax number, pay below the minimum wage, a big change from last month, expired documents.
  • Payslips with the company's logo in Greek or English, sent by e-mail, and one SEPA file to pay everyone at once.
02Shift rota and attendance
  • A weekly rota for salaried, daily-paid and temporary staff, with shift types, colours and quick fill.
  • Working-time rules checked on every shift: 11 hours of rest, 48 hours a week, six days in a row, holidays and contract ends.
  • Leave over shifts: before approving, the manager picks which free colleague covers each shift.
  • The payroll pays the rota: daily-paid days and Sunday or holiday premiums come straight from the shifts.
  • Employees see only the published rota, on their page and by e-mail; attendance by clock or entry.
03People and HR
  • Personnel files with every document, its issue and expiry date, and reminders before ID, residence or work permits expire.
  • Leave in days or hours with balances, a team calendar and one-click approval.
  • Departments and managers, announcements to the company or chosen departments with read receipts.
  • Employee expenses repaid through payroll, equipment, joining and leaving checklists, training and certificates.
  • People-only companies: keep HR, shifts and leave in ZEUS Finance while payroll stays in another program.
04Employee self-service and requests
  • Each company chooses what employees can do: view only, or ask for leave, changes, forms and expenses with approval.
  • Employment certificates, income confirmations and earnings statements issued with a QR code anyone can verify.
  • Every request reaches the right manager by e-mail, and in the app for whoever switches it on.
05Official files for the accountant
  • Cyprus: the monthly SISnet file, the Tax For All PAYE return and the annual IR7, as XML checked against each portal's schema.
  • Greece: the monthly ΑΠΔ for e-EFKA's portal, the supplementary ΑΠΔ and the ERGANI staff list.
  • Year-end earnings certificates, the month's accounting entry and a yearly report, with Excel downloads in Greek and English.
  • Deadlines for contributions, tax and bonuses with the official source and a reminder a week before.
  • The files are prepared for the accountant to check and submit; nothing is sent to the authorities automatically.
06Accounting offices
  • An accountant's desk with every client company in one list, the month's checks and all the files in one ZIP.
  • Month-end close per client, and clients who send their changes from their own page.
  • Packages for accounting offices, with accountants verified against the AADE and ΓΕΜΗ registries in Greece and the ICPAC registers in Cyprus.
07Team, roles and approvals
  • Roles for accountant, HR Manager, HR and department managers, each seeing only what concerns them.
  • Second-person approval for salary changes, payslip edits and deletions, with a full change history.
  • Several companies per account, from one company up to groups of 50 companies and 2,000 employees.
08Getting started
  • A public demo with two complete sample companies, no sign-up needed.
  • Moving from another payroll program with CSV or JSON, checked first without saving anything.
  • A free employer cost calculator and the full payroll calculation rules, published with their sources.
  • A written proposal for each business with a page of its own: accepted online, the date, time and name kept on record, then paid by card.
  • A new customer's account and package opened in four steps, kept as a draft while it is typed, with the VAT number checked in VIES (without VAT, by reverse charge, for businesses elsewhere in the EU), paid by card link or by bank transfer, with the invoice issued once the payment is in.
  • Signing up asks who is signing up, a business or an accounting office, and starts each in the right place; a short welcome then asks the size and offers a call to set up the payroll, which reaches the team at once as a request.
  • Renewals by payment link, without VAT by reverse charge for businesses elsewhere in the EU whose VAT number VIES confirms when the link is sent.
09Security and reliability
  • Passkeys, authenticator apps and e-mailed codes; companies can require a second step before payroll opens.
  • Account protection set in one place: accounts paused after repeated wrong passwords, sessions that end after a set time and when left idle, e-mails about sign-ins from a new device, an emergency sign-out of every session, and administrative work that can be limited to passkeys or authenticator apps and to approved locations.
  • Ranked administration: staff act only on accounts below their own rank, and deleting an account or changing another person's sign-in details is reserved to super administrators.
  • New passwords checked against known data breaches, sending only five characters of their hash.
  • IBANs, tax and social insurance numbers and personnel files encrypted at rest with AES-256-GCM.
  • The database itself refuses to link one company's data to another's, and the audit log cannot be edited.
  • Servers in the EU (Frankfurt), no ads and no selling of data.
  • A self-check at most every 10 minutes while the platform is in use, and a full check every night and after every release.
  • An “I'm not a robot” check (Google reCAPTCHA) on every public form, from sign-up and sign-in to contact and the newsletter, verified again on the server.
  • Card payments through Worldline (wallee) for the checkout, renewal links, Custom offers, accepted proposals and new customers' links: a payment counts only when Worldline's own API confirms it for exactly what was sold, and signed webhooks are verified.
  • Refunds, payments on hold and chargebacks from the admin: all of a payment or part of it back to the card through Worldline with a credit note, a customer's packages frozen at once for suspected fraud or a chargeback Worldline reports, then released, ended or refunded by the administrator.
  • Payment keys checked with Worldline before they are used and stored encrypted, and every earlier payment still checked and refunded through the Worldline account it was made in, even after the payment setup changes.
  • A customer who has not confirmed their e-mail can do nothing until they do; two automatic reminders with a new link follow, on the 2nd and the 7th day, then none, and the administrator can send one from the customer's card.
  • Every e-mail to a customer opens from their history as they received it, with one-time codes and sign-in links hidden and the copy kept encrypted; all of them are listed on one admin page, next to every e-mail template as it looks.
  • A wrong invoice is cancelled the lawful way: a credit note for its whole amount, no money moving, its number kept for good and a corrected invoice under the next one.
  • A weekly backup restore test: the database's own backup is restored into a separate copy, compared table by table with the live database and deleted, with the result in the admin's diagnostics.
  • Who visited the website, without cookies: date and 24-hour time, the address stored encrypted, place, device, source, the account when signed in and every page, one visitor a day per browser and address, the team's own visits left out; a PDF per day or period, e-mailed daily, weekly, monthly or on a date at 08:00 unless changed, and the details erased after at most 12 months.

Architecture

Built to stay correct.

  • 01Modular monolith: Next.js App Router with Server Components and Server Actions, and a single PostgreSQL database.
  • 02Strict layers enforced by lint rules and server-only imports: pure domain logic (contributions, tax, leave, overtime), platform services, application services, then thin pages, actions and REST handlers.
  • 03The REST API and the web interface call the same services, so validation and permissions cannot drift apart.
  • 04Amounts are stored as integer cents with a currency; rates use decimal arithmetic. A lint rule forbids parseFloat in calculation and server code.
  • 05Official files are built against the authorities’ own XML schemas, and the full test suite validates them against those schemas every night when something changed.
  • 06Scheduled jobs run payslip e-mails, notifications, maintenance and a daily check of the official payroll sources for rate changes.
  • 07One database schema with versioned migrations; CI fails on any drift between the two.

The code

Where the lines go.

By purpose
  • Server & data86,747 · 28.7%
  • Interface77,695 · 25.7%
  • Tests49,795 · 16.5%
  • Texts in two languages47,528 · 15.7%
  • Tooling & checks22,823 · 7.6%
  • Payroll & business logic17,648 · 5.8%
By language
  • TypeScript205,390 lines · 68.0%
  • TSX (React)70,677 lines · 23.4%
  • JavaScript19,410 lines · 6.4%
  • SQL3,523 lines · 1.2%
  • Prisma schema2,988 lines · 1.0%
  • CSS248 lines · 0.1%

Files stay small: a median of 81 lines, and 85.9% of files are under 300 lines.

Tests

Tested where it matters most.

Unit
719in 124 files
Integration
967in 186 files
End-to-end
51in 35 files
Automated tests per area of ZEUS Finance
AreaTests
Payroll, calculations and official files473
Packages and billing211
Website, demo and both languages211
People, leave, shifts and requests140
Companies, accounts and settings125
Sign-in, security and permissions125
Administration and monitoring120
Accounting offices61
Imports, exports and spreadsheets26
Other245

Security

The most sensitive data a company has.

  • Argon2id password hashing, with a common-password blocklist and new passwords checked against known breaches.
  • Passkeys (Face ID, Touch ID, Windows Hello, security keys), authenticator apps, e-mailed codes and recovery codes. Companies can require a second step before payroll opens.
  • Session tokens are random and only their hash is stored; sessions expire, idle out and are revoked on password change.
  • IBANs, tax and social insurance numbers and personnel files encrypted at rest with AES-256-GCM.
  • Composite foreign keys on every owned table: even a bug in application code cannot link one company’s data to another’s.
  • Strict Content Security Policy with per-request nonces, HSTS and origin checks on every change.
  • Rate limits stored in the database, so they hold across every server instance.
  • Append-only audit log: updates and deletes are rejected by database triggers.

Integrations

Connected to the systems that matter.

  • Worldline (wallee)

    Card payments. Webhooks must carry a valid signature, and every payment is read back from Worldline before anything is granted.

  • EU VIES

    VAT numbers and intra-EU reverse charge.

  • AADE, ΓΕΜΗ & ICPAC

    Verification of accountants in Greece and Cyprus.

  • SISnet · Tax For All · e-EFKA · ERGANI

    Upload-ready official files. ZEUS Finance prepares them; the employer or accountant submits.

  • SEPA XML

    One file that pays every salary through any EU bank.

Quality & delivery

Rules the code is held to.

  • Strict TypeScript from end to end
  • Zero lint warnings allowed
  • Formatting checked on every change
  • A lint rule stops interface components from importing server modules
  • A lint rule forbids parseFloat in calculation and server code
  • Only 25 direct runtime dependencies
  • CI runs a dependency audit, a secret scan, the migration drift check, typecheck, lint, the XML schema checks, and unit, integration and end-to-end tests against a real PostgreSQL.
  • A self-check at most every 10 minutes while the platform is in use, a full check every night and after every release, and a weekly backup-restore test compared table by table with the live database.
  • A public status page covers the application, database, e-mail, payments, rates and scheduled jobs.

Stack

Each tool, and why.

  • Next.jsApp Router, Server Components and Server Actions16
  • ReactInterface19
  • TypeScriptStrict mode, end to end6
  • PostgreSQLDatabase, with triggers and constraints for isolation18
  • PrismaSchema, migrations and queries7
  • ZodValidation of every input4
  • Tailwind CSSStyling4
  • decimal.jsExact rates; money is kept in integer cents10
  • Argon2idPassword hashing
  • WebAuthnPasskeys
  • pdf-libPayslips, certificates and reports as PDF1
  • RechartsCharts3
  • NodemailerE-mail delivery10
  • Vercel BlobDocument storage
  • VitestUnit and integration tests on a real PostgreSQL5
  • PlaywrightEnd-to-end tests in a browser1
  • VercelHosting in Frankfurt, scheduled jobs and deployments
  • GitHub ActionsCI: audit, secret scan, schema and XML checks, every test

Releases

Shipped recently.

  1. 25 Oct 2026

    Website visitors day by day: who came, when and from where, with a PDF report e-mailed on the owner's schedule

  2. 25 Oct 2026

    New guides, presentations and PowerPoint decks in Greek and English: numbered arrows that say in plain words what each part of a screen is, a security chapter with every technical safeguard, and Resources sorted by type and language

  3. 23 Oct 2026

    Cyprus rates that keep themselves right: a new year starts on the laws in force, the Social Insurance ceiling goes in from the official table, and only the payslips it would change wait for it

  4. 21 Oct 2026

    Companies of thousands of employees: in our scale tests, a payroll of 4,000 people in seconds and complete rotas, with millions of rows

  5. 16 Oct 2026

    Sent e-mails as customers saw them, automatic confirmation reminders, invoice cancellation by credit note and a weekly backup restore test

  6. 16 Oct 2026

    Worldline accounts changeable from the admin, e-mail previews in the customer history and confirmed e-mails before anything else

  7. 16 Oct 2026

    Refunds through Worldline, payments on hold and chargebacks, all from the admin

  8. 16 Oct 2026

    Every payment and payment link through Worldline (wallee), with signed webhooks read back from Worldline

Live status page (opens in a new tab)

Contact

Want software built this way?

Tell us about the product, the website or the media you need. Every message is read and answered by the people who would do the work.