OpenAI Codex Hackathon · Apps for your life

The open-source way to invoice in Greece.

Elefthero is a self-hosted, transparent invoicing workspace for Greek sole traders and small businesses—built around AADE myDATA, local ownership, and the belief that compliance should not create another dependency.

Because compliance should not mean losing control.

Greek businesses must transmit invoice data to AADE myDATA. But for a small business, the choices often feel limiting: costly SaaS subscriptions, opaque systems, long contracts, or a necessary public tool that does not put simplicity first. Elefthero—Greek for “free”—is built around the idea that a business should be able to understand, inspect, and control its own invoicing data.

FREEDOM

Run it yourself

MIT-licensed and self-hosted, with no vendor lock-in and a local SQLite database under the business’s control.

OPENNESS

See what is sent

Sent and received AADE XML is retained in the developer log, alongside MARK, UID, QR URL, and submission state.

ACCESSIBILITY

Made for everyday work

Greek/English controls, focused invoice workflows, light-first UI, and in-app display preferences for contrast, text size, spacing, links, and motion.

Small-business invoicing without platform lock-in.

Elefthero keeps the document set focused, makes AADE submissions inspectable, and lets the business run its own local database. It is a working Flask application—not a mockup—with real AADE Test and Production modes.

01 — CREATE

Clear invoice editor

Multiple lines, quantity × unit price, VAT, zero-VAT reasons, payment methods, income classifications, numbering, notes, and reusable templates.

02 — VERIFY

Reusable client data

Greek VAT validation through VIES, optional ΓΕΜΗ enrichment, saved addresses and activities, filters, pagination, and per-client statistics.

03 — TRANSMIT

Evidence, not a black box

Generate and retain sent/received AADE XML, then store MARK, UID, QR URL, transmission state, PDF, and activity logs.

Focused AADE workflows, deliberately kept simple.

Instead of exposing a long enterprise catalogue, Elefthero supports the six invoice workflows most useful to the intended small-business audience.

1.1 · Τιμολόγιο Πώλησης2.1 · Τιμολόγιο Παροχής5.1 · Συσχετιζόμενο Πιστωτικό11.1 · ΑΛΠ11.2 · ΑΠΥ11.4 · Πιστωτικό Λιανικής
1. ConfigureSet business identity, issuer VAT, series, environment, and encrypted AADE credentials.
2. Select or create a clientValidate Greek VAT, reuse address/activity data, or use retail defaults.
3. Build and classifyAdd lines with VAT, zero-VAT reason, payment method, and required income classifications.
4. Review and submitGenerate AADE XML, submit to Test or Production, and inspect the full response.
5. Keep the recordUse the browser PDF, MARK/UID/QR details, templates, analytics, and optional manual email delivery.

Self-hosted by design, with clear service boundaries.

The application stays small: a local Python service, a local SQLite database, and explicit integrations only where they add value.

Browser

Greek/English UI, accessible display controls, and server-enforced CSRF protection for state-changing actions.

Cloudflare Tunnel

A named tunnel exposes a hostname without opening the application port publicly.

Gunicorn + Flask

systemd-managed app service on localhost, with encrypted settings, configurable login rate limiting, and optional TOTP 2FA.

SQLite + AADE

Local data and audit records; HTTPS integration to AADE and selected public services.

Built as a responsible, deployable application.

Elefthero includes real operational details: systemd service units, Cloudflare Tunnel guidance, encrypted at-rest secrets, a health endpoint, backups guidance, and a public MIT-licensed repository.

  • Separate AADE Test and Production credentials, configured in the authenticated UI.
  • Manual Resend delivery only for transmitted invoice PDFs.
  • Server-enforced CSRF protection and configurable login throttling, alongside hashed passwords, optional Turnstile, local user roles, and authenticator-app 2FA.
  • Accessibility pop-up with text size, contrast, spacing, links, and reduced-motion preferences.
  • Inline PDFs, AADE QR links, cancel action, dashboard reporting, client-by-type analytics, and a guided browser-TTS demo with presenter-assisted MP4 export.
PythonFlaskSQLiteGunicornCloudflare TunnelAADE myDATA REST/XMLReportLabFernet encryptionTOTP 2FAVIESΓΕΜΗResendFFmpegsystemd

Built with Codex around real AADE feedback.

Elefthero was created for the OpenAI Codex Hackathon, in the “Apps for your life” category. Codex and GPT-5.6 were used as hands-on implementation collaborators: translating real AADE Test validation responses into XML fixes, building the Flask/SQLite app, refining PDFs and flows, and deploying the service with GitHub and Cloudflare Tunnel.

The inspiration is practical and personal: an owner should not need to wonder what was sent to AADE, why a document was rejected, or where their record lives. Those answers should be visible in the product.

Use responsibly.

Elefthero is provided “as is” and is not accounting, tax, legal, or professional advice. AADE may change myDATA APIs, schemas, validation rules, operational requirements, or services at any time, affecting integrations and submissions. Each operator is responsible for validating configuration, documents, records, and compliance before Test or Production use. Always consult a qualified accountant. The project maintainer/developer accepts no liability for outcomes arising from use of this software.