Βαρεθήκατε να μπαίνετε σε myDATA, e-ΕΦΚΑ και ΚΕΑΟ;Τα έβαλα σε μία οθόνη

Πώς φτιάχτηκε το Forologika: σύνδεση με το myDATA, αυτοματισμός εκεί που δεν υπάρχει API, εκτίμηση ΦΠΑ και ειδοποιήσεις πριν από κάθε προθεσμία.

Σε αυτό το άρθρο· 6 ενότητες
  1. Μόνο μία από τις τρεις έχει API
  2. Ο «Φύλακας» ελέγχει αντί για τον χρήστη
  3. Ο ΦΠΑ δεν είναι απλή αφαίρεση
  4. Ένας λογιστής, δεκάδες επιχειρήσεις
  5. Σε τι τρέχει
  6. Όταν πέφτουν οι πλατφόρμες, η εφαρμογή μένει όρθια

Κάθε ελεύθερος επαγγελματίας στην Ελλάδα ξέρει τη διαδρομή: μπαίνεις στο myDATA για έσοδα και έξοδα, στον e-ΕΦΚΑ για τις εισφορές, στο ΚΕΑΟ για τις οφειλές, και κάπου ανάμεσα προσπαθείς να θυμηθείς πότε λήγει η προθεσμία του ΦΠΑ. Τρεις πλατφόρμες, τρεις συνδέσεις, μία προθεσμία ΦΠΑ από πάνω και καμία συνολική εικόνα.

Το Forologika ξεκίνησε από μια απλή ερώτηση: τι χρωστάω, πότε, και τι μου μένει; Και από την ανάγκη να απαντάται σε μία οθόνη.

Η αρχική σελίδα του Forologika: οι επόμενες πληρωμές ενός λογαριασμού επίδειξης σε μία κάρτα, με οφειλή ΚΕΑΟ, εισφορά e-ΕΦΚΑ και εκτίμηση ΦΠΑ περιόδου από το myDATA, η καθεμία με την προθεσμία της, και στο τέλος το σύνολο και τι μένει μετά τις πληρωμές.
Τρεις πλατφόρμες σε μία κάρτα, κάθε πληρωμή με την προθεσμία της. Τα ποσά είναι από τον λογαριασμό επίδειξης.

Μόνο μία από τις τρεις έχει API

Θα ήταν εύκολο αν όλες οι κρατικές υπηρεσίες είχαν σύγχρονο, ενιαίο API. Δεν έχουν. Το myDATA της ΑΑΔΕ διαθέτει επίσημη διεπαφή για έσοδα και έξοδα, οπότε εκεί η σύνδεση είναι καθαρή και σταθερή. Ο e-ΕΦΚΑ και το ΚΕΑΟ δεν διαθέτουν αντίστοιχο δημόσιο API για αυτά τα στοιχεία. Μένει ένας ελεγχόμενος αυτοματισμός που διαβάζει τις σελίδες όπως θα τις διάβαζε ο ίδιος ο χρήστης.

Έτσι η πρώτη απόφαση ήταν αρχιτεκτονική: ο αυτοματισμός δεν τρέχει μέσα στην ιστοσελίδα. Τρέχει σε ξεχωριστό worker (Playwright σε server στο Hetzner), με δικό του ρυθμό και επαναπροσπάθειες. Οι κρατικές πλατφόρμες συχνά αργούν ή πέφτουν· τότε η εφαρμογή συνεχίζει να δουλεύει κανονικά.

Πώς φτάνουν τα στοιχεία σε μία οθόνη

  1. myDATA, e‑ΕΦΚΑ, ΚΕΑΟΤρεις κρατικές πλατφόρμες, τρεις συνδέσεις
  2. ForologikaΤο myDATA μέσω του επίσημου API· ο e‑ΕΦΚΑ και το ΚΕΑΟ μέσω ξεχωριστού worker αυτοματισμού
  3. Μία οθόνηΤι χρωστάω, πότε, και τι μου μένει;
Ο αυτοματισμός τρέχει έξω από την ιστοσελίδα, οπότε μια αργή ή χαλασμένη κρατική πλατφόρμα δεν παίρνει μαζί της την εφαρμογή.

Ο «Φύλακας» ελέγχει αντί για τον χρήστη

Κανείς δεν θέλει να θυμάται να ελέγχει. Ο Guard (ο «Φύλακας») είναι μια υπηρεσία που ψάχνει περιοδικά για αλλαγές και στέλνει ειδοποίηση push ή email όταν κάτι χρειάζεται προσοχή: νέα οφειλή, προθεσμία που πλησιάζει, ποσό που άλλαξε.

Κάθε έλεγχος καταγράφεται σε ιστορικό ενεργειών (audit trail). Στα φορολογικά πρέπει πάντα να μπορεί κανείς να απαντήσει «πότε το είδαμε και τι έλεγε».

Ο ΦΠΑ δεν είναι απλή αφαίρεση

Η εκτίμηση ΦΠΑ ακούγεται απλή: ΦΠΑ εκροών μείον ΦΠΑ εισροών. Υπάρχει όμως και το πιστωτικό υπόλοιπο που μεταφέρεται από περίοδο σε περίοδο, και εκεί γίνονται τα περισσότερα λάθη.

Πριν βγει η εφαρμογή online, η λογική ελέγχθηκε πάνω σε πραγματικά στοιχεία λογιστή, περίοδο προς περίοδο, μέχρι να συμφωνήσουν τα νούμερα. Σε ένα φορολογικό εργαλείο, την εμπιστοσύνη την κερδίζουν τα ελεγμένα νούμερα.

Ένας λογιστής, δεκάδες επιχειρήσεις

Οι λογιστές δεν βλέπουν μία επιχείρηση αλλά δεκάδες. Το Forologika υποστηρίζει πολλές οντότητες ανά λογαριασμό και πρόσβαση λογιστή με πρόσκληση: η επιχείρηση προσκαλεί τον λογιστή της και αυτός βλέπει μόνο ό,τι του επιτρέπεται.

Μια τέτοια ασφάλεια δεν μπορεί να εξαρτάται από το «να μην ξεχάσει ο προγραμματιστής έναν έλεγχο». Γι’ αυτό η βάση (Supabase/PostgreSQL) χρησιμοποιεί Row Level Security, που κρατά τους κανόνες πρόσβασης μέσα στην ίδια τη βάση. Ακόμη κι αν υπάρξει λάθος στον κώδικα, ένας λογαριασμός δεν μπορεί να δει στοιχεία άλλου.

Σε τι τρέχει

Επίπεδο Τι χρησιμοποιήθηκε
Οθόνη Next.js, εγκατάσταση ως εφαρμογή (PWA), Web Push
Εφαρμογή Supabase PostgreSQL με Row Level Security, σύνδεση myDATA
Cloud Cloudflare Workers με KV cache, worker αυτοματισμού στο Hetzner
Προστασία Cloudflare Turnstile ενάντια σε bots

Όταν πέφτουν οι πλατφόρμες, η εφαρμογή μένει όρθια

Οι κρατικές πλατφόρμες θα αργήσουν και κάποια στιγμή θα πέσουν· η εφαρμογή δεν πρέπει να πέσει μαζί τους. Η ασφάλεια ανήκει στη βάση και όχι μόνο στον κώδικα, γιατί το Row Level Security πιάνει τα λάθη που αργά ή γρήγορα θα γίνουν. Και πριν εμπιστευτώ έναν φορολογικό υπολογισμό, τα νούμερα τα ελέγχει λογιστής.


Χρειάζεστε ένα εργαλείο που να συνδέεται με το myDATA ή με άλλα συστήματα που ήδη χρησιμοποιείτε; Η πρώτη κουβέντα είναι δωρεάν.

Σας φάνηκε χρήσιμο; Κοινοποιήστε το

Συνέχεια ανάγνωσης

Όλα τα άρθρα

Έχετε κάτι παρόμοιο στο μυαλό σας;

Πείτε μου τι χρειάζεστε και θα σας προτείνω τον πιο απλό τρόπο να γίνει.