My data

 

my app https://timologio.zite.so/


✔ Ελληνικό flow (ΑΦΜ / ΔΟΥ / VAT σωστά)
✔ Invoice structure συμβατό με αγορά✔ myDATA-ready λογική
✔ JSON/local-first (πολύ σωστό για αρχή)
✔ Modular (φαίνεται ότι μπορεί να πάει React εύκολα)
το επίσημο σύστημα ΑΑΔΕ timologio είναι απλό tool
εσύ πας προς mini ERP (πολύ καλύτερο)
λογιστές + μικρές επιχειρήσεις = κινητό

✔ πλήρες invoicing system
✔ ελληνικό VAT logic
✔ myDATA-ready structure
✔ portable (JSON → DB εύκολα)
✔ SaaS-ready design

Now work with No database no backet no paid dll  , work localy using json / browser cash and json backup/ restore jsom

Από το υπόδειγμα τιμολογίου της εικόνας, τα βασικά πεδία που απαιτούνται για μια εφαρμογή έκδοσης τιμολογίων χωρίζονται στις εξής ενότητες:

Στοιχεία Εκδότη (Εταιρεία)

  • Επωνυμία εταιρείας
  • Διεύθυνση
  • Πόλη / ΤΚ
  • Α.Φ.Μ.
  • Δ.Ο.Υ.
  • Τηλέφωνο
  • Email
  • Λογότυπο / QR Code (προαιρετικό)

Στοιχεία Παραστατικού

  • Τύπος παραστατικού
    • π.χ. Τιμολόγιο Πώλησης
  • Σειρά
  • Αριθμός παραστατικού
  • Ημερομηνία έκδοσης
  • Τρόπος πληρωμής
    • Μετρητά
    • Πίστωση
    • Κάρτα
    • Τραπεζική κατάθεση

Στοιχεία Πελάτη

  • Κωδικός πελάτη
  • Επωνυμία πελάτη
  • Επάγγελμα / Δραστηριότητα
  • Α.Φ.Μ.
  • Δ.Ο.Υ.
  • Διεύθυνση
  • Πόλη / ΤΚ
  • Τηλέφωνο
  • Email (προαιρετικό)

Στοιχεία Διακίνησης

  • Τόπος φόρτωσης
  • Τόπος προορισμού
  • Μέσο μεταφοράς

Γραμμές Ειδών / Υπηρεσιών

Για κάθε γραμμή:

  • Περιγραφή
  • Ποσότητα
  • Μονάδα μέτρησης (προαιρετικό)
  • Τιμή μονάδας
  • Έκπτωση %
  • Καθαρή αξία
  • Συντελεστής ΦΠΑ
  • Ποσό ΦΠΑ
  • Παρακράτηση φόρου %

Ανάλυση ΦΠΑ

  • Συντελεστής ΦΠΑ
  • Καθαρό ποσό
  • Ποσό ΦΠΑ

Συγκεντρωτικά Σύνολα

  • Σύνολο καθαρής αξίας
  • Σύνολο ΦΠΑ
  • Σύνολο με ΦΠΑ
  • Παρακρατήσεις
  • Πληρωτέο ποσό

Παρακρατήσεις

  • Ποσοστό παρακράτησης
  • Ποσό παρακράτησης

Λοιπά Στοιχεία

  • Σχόλια
  • Απαλλαγή ΦΠΑ
  • Νομική αιτιολογία απαλλαγής

Τραπεζικά Στοιχεία

  • IBAN
  • Τράπεζα

Στοιχεία myDATA / ΑΑΔΕ

  • MARK
  • UID παραστατικού
  • QR verification
  • Χρόνος διαβίβασης

Επιπλέον χρήσιμα πεδία για εφαρμογή

  • Κατάσταση τιμολογίου
    • Πρόχειρο
    • Εκδομένο
    • Ακυρωμένο
    • Εξοφλημένο
  • Ημερομηνία λήξης
  • Νόμισμα
  • Γλώσσα
  • Συνημμένα αρχεία
  • Ιστορικό αλλαγών
  • Χρήστης που το εξέδωσε

Ενδεικτικό μοντέλο βάσης δεδομένων

Πίνακας invoices

  • id
  • series
  • number
  • issue_date
  • customer_id
  • payment_method
  • subtotal
  • vat_total
  • withholding_total
  • total
  • payable_total
  • status
  • mark

Πίνακας invoice_items

  • id
  • invoice_id
  • description
  • quantity
  • unit_price
  • vat_rate
  • vat_amount
  • withholding_rate
  • line_total

Πίνακας customers

  • id
  • name
  • vat_number
  • tax_office
  • address
  • phone
  • email

Αν πρόκειται για ελληνική εφαρμογή

Θα χρειαστεί επίσης:

  • Διασύνδεση με myDATA ΑΑΔΕ
  • Χαρακτηρισμοί εσόδων
  • Τύποι παραστατικών ΑΑΔΕ
  • Ηλεκτρονική υπογραφή
  • QR επαλήθευσης
  • XML generation για myDATA API

Η διασύνδεση με το myDATA της ΑΑΔΕ γίνεται μέσω REST API. Η εφαρμογή σου πρέπει να στέλνει τα τιμολόγια σε XML/JSON format στην πλατφόρμα και να λαμβάνει πίσω το MARK (μοναδικό αριθμό καταχώρησης).

Τι χρειάζεται τεχνικά

1. Εγγραφή στο myDATA REST API

Από την ΑΑΔΕ:

Εγγραφή στο myDATA REST API

Παίρνεις:

  • subscription key
  • credentials
  • access στο sandbox

Βασική Ροή

Βήμα 1 — Δημιουργία τιμολογίου

Παράδειγμα object:

{
"invoiceType": "1.1",
"series": "ΤΠ",
"aa": 15,
"issueDate": "2026-05-20",
"vatNumber": "099999999",
"customerVatNumber": "012345678",
"netValue": 100,
"vatAmount": 24,
"totalValue": 124
}

Βήμα 2 — Μετατροπή σε myDATA schema

Η ΑΑΔΕ απαιτεί συγκεκριμένο schema XML/XSD.

Παράδειγμα:

<InvoicesDoc>
<invoice>
<issuer>
<vatNumber>099999999</vatNumber>
</issuer>

<counterpart>
<vatNumber>012345678</vatNumber>
</counterpart>

<invoiceHeader>
<series>ΤΠ</series>
<aa>15</aa>
<issueDate>2026-05-20</issueDate>
<invoiceType>1.1</invoiceType>
</invoiceHeader>
</invoice>
</InvoicesDoc>

Βήμα 3 — Αποστολή στο API

Endpoint:

POST /SendInvoices

Headers:

aade-user-id
ocp-apim-subscription-key
Content-Type: application/xml

Βήμα 4 — Λήψη MARK

Απάντηση:

{
"invoiceMark": 400001829501179
}

Το αποθηκεύεις στη βάση.


Τα βασικά endpoints

EndpointΧρήση
SendInvoicesΑποστολή τιμολογίων
CancelInvoiceΑκύρωση
RequestDocsΑνάκτηση
SendIncomeClassificationΧαρακτηρισμοί εσόδων
SendExpensesClassificationΧαρακτηρισμοί εξόδων


Υποχρεωτικά πεδία

Εκδότης

  • ΑΦΜ
  • Χώρα
  • Υποκατάστημα

Πελάτης

  • ΑΦΜ
  • Χώρα

Παραστατικό

  • Τύπος
  • Σειρά
  • Αριθμός
  • Ημερομηνία

Γραμμές

  • Καθαρή αξία
  • ΦΠΑ
  • Συντελεστής
  • Κατηγορία είδους

Χαρακτηρισμοί

  • category1_1
  • E3 classifications
  • VAT category

Τύποι παραστατικών

Παραδείγματα:

ΚωδικόςΠεριγραφή
1.1Τιμολόγιο Πώλησης
2.1Τιμολόγιο Παροχής
11.1Απόδειξη Λιανικής
5.2Πιστωτικό

Αρχιτεκτονική εφαρμογής

Backend

Συνήθως:

  • Node.js
  • Laravel
  • .NET
  • Java Spring

Βάση

  • PostgreSQL
  • MySQL

Queue

Για retries:

  • RabbitMQ
  • Redis queue

Τι πρέπει να αποθηκεύεις

invoices

  • uuid
  • series
  • aa
  • issue_date
  • mark
  • status
  • xml_payload
  • send_status

mydata_logs

  • request
  • response
  • errors
  • timestamps

Πολύ σημαντικό

Το myDATA:

  • απορρίπτει invalid VAT calculations
  • θέλει σωστά rounding
  • θέλει classification mapping
  • έχει throttling/rate limits

Sandbox περιβάλλον

Η ΑΑΔΕ δίνει test environment για δοκιμές.


Χρήσιμα links

Documentation

Τεχνικές Προδιαγραφές myDATA

Εκδόσεις API

Τεχνικές Προδιαγραφές Εκδόσεων myDATA

Κεντρική σελίδα

myDATA ΑΑΔΕ

Αν θες, μπορώ επίσης να σου δώσω:

  • πλήρες database schema
  • Laravel implementation
  • Node.js implementation
  • C# implementation
  • έτοιμο myDATA service layer
  • XML generator
  • invoice classifications
  • mapping τύπων παραστατικών ΑΑΔΕ
  • πλήρες ERP architecture
  • έτοιμο API design για SaaS τιμολόγησης

ΥΠΟΔΕΙΓΜΑ ΤΙΜΟΛΟΓΙΥ ΣΥΜΒΑΤΟ ΜΕ ΜΥ ΑΔΕ ΜΥ DATA -
Tags

News and Tweets...

#buttons=(Accept !) #days=(20)

Our website uses cookies to enhance your experience. Learn More
Accept !