For multi-site clinics, diagnostic centres and dental groups
When the practice outgrew the practice software
A single doctor with a single room is well served by an off-the-shelf πρόγραμμα ιατρείου, and we will tell you to buy one. This page is for what happens after: several sites, shared equipment, referring doctors, insurers, and a schedule that no package will express.
- ultrasound, 11:00, room 2: accepted
- second ultrasound, 11:00, room 2: collides with 10:40, room 2
- procedure needs room, device, technician: first fit 14:20
- 20 minute preparation window: the 11:00 slot starts holding at 10:40
- two sites, one scanner: the scanner is the diary
- cancellation at 16:00: waitlist backfills one slot
The scheduler below enforces real constraints. Try to double-book an ultrasound room and it will tell you exactly what it collides with.
In plain language
When is custom clinic software worth it instead of an off-the-shelf package?
Almost never for a single practitioner. Greek practice-management products handle appointments, patient records, prescriptions and myDATA invoicing well, and they cost a fraction of a build. The threshold is reached when the constraints stop being about people and start being about resources: several locations sharing equipment, a scanner whose slots are the real bottleneck rather than any doctor's diary, procedures needing a room and a device and a technician simultaneously, referral flows between sites, insurer pre-authorisation, and reporting that has to consolidate across entities. Packages model one calendar per practitioner, which is why clinics at that size end up with a package plus three spreadsheets and a WhatsApp group. The honest test: if you can describe your scheduling rules to a supplier and they can configure them, buy the package.
Words that get used interchangeably and should not be
- Ηλεκτρονικός φάκελος ασθενή
- The patient record. Under GDPR this is special-category data, which raises the floor on access control, audit logging and retention - and means 'who looked at this record and when' has to be answerable, not just 'who can log in'.
- myDATA
- The ΑΑΔΕ e-books platform. Receipts and invoices transmit through a certified provider, and for a clinic the awkward part is not the transmission but the mapping: which service code, which VAT treatment, which entity issued it.
- ΗΔΙΚΑ and ΕΟΠΥΥ
- The national e-prescription and e-referral infrastructure, and the public insurer. What matters commercially is that a private clinic's software sits alongside these rather than replacing them, so integration depth is a scoping question with a real answer.
- Resource-constrained scheduling
- Booking that has to satisfy several simultaneous constraints - practitioner, room, device, preparation time - rather than just finding a free hour in one diary. This is the actual technical difference between a package and a build.
The scheduler, refusing to double-book
Place appointments across three practitioners, two rooms and one shared ultrasound. The engine checks every constraint before accepting and names the collision when it refuses. Pick up an appointment that is already booked and the whole day lights up with the slots that would take it: the interesting refusals are the ones where the doctor and the room are both free and the scanner is still in turnaround from the scan before. Then cancel a booking and watch the waitlist backfill the slot, which is where the money is in a diagnostic centre, because an empty scanner hour cannot be sold later.
- Pick a procedure and click a free slot to book it.
- Click a booking to pick it up, then drop it in another slot.
- Pick a booking up and cancel it - watch the waitlist fill the gap.
0/3
Procedure
60 min · needs the ultrasound
Practitioner
Dr Papadaki
Cardiology
Dr Vlachou
Radiology
Dr Sideri
Internal medicine
Room A
Room B
Ultrasound
Shared device
Waitlist
- Σ. Αντωνίου · Ultrasound
- Ρ. Λαμπρινού · Cardiology consult
Patients booked further out who asked to be called if something nearer opens. Cancel an appointment above and the waitlist is run against the freed slot automatically.
Now click a start time on the grid.
Real constraint checking, running in your browser. No patient data of any kind - the names are invented and nothing you do here is sent anywhere or stored.
Greeks pay for their own healthcare, and you are who they pay
Only two countries in the EU leave more of the bill with the patient. That is the private sector's entire revenue line, it is consolidating into groups to collect it, and the compliance surface underneath has grown faster than the software those groups are running.
- 34.3%
- of Greek health spending comes straight out of the patient's own pocket, against an EU average of 14.9% - the third highest share in the union, and it is collected one appointment at a time Source: Eurostat, healthcare expenditure by financing scheme
- myDATA
- electronic invoicing through the ΑΑΔΕ platform is an operating obligation for medical practices, not an upgrade Source: ΑΑΔΕ, myDATA
- Article 9
- GDPR puts health data in its own special category, which raises the floor on access control, audit logging and retention above anything general business software provides - who opened this record, and when, has to be answerable Source: GDPR, Article 9
What we build, where the package stops
The four things that consistently do not fit a package. If your list is shorter than one of these, you probably do not need us.
Scheduling against resources, not diaries
Appointments that must satisfy a practitioner, a room, a device and a preparation window at once, across several sites. Series and recurring courses of treatment, buffer times that differ by procedure, and a waitlist that backfills a cancellation automatically rather than by someone phoning down a list.
- Multi-resource
- Multi-site
- Waitlist
- Series
Patient records built for an audit
Records with per-role access, full read-logging and defensible retention, because with special-category data the question is not who can log in but who looked at what and when. Consent recorded as data rather than as a scanned signature nobody can query.
- GDPR
- Audit log
- Consent
- Retention
Billing across entities, into myDATA
Service catalogues and price lists that differ by site, insurer and contract; invoices issued by the right legal entity; transmission through a certified provider; and reconciliation that finds the mismatch before the accountant does.
- myDATA
- Insurers
- Multi-entity
- Reconciliation
Referrals, results and the patient's own view
Referring-doctor portals, results released when a clinician says so rather than on upload, and a patient app or portal that shows appointments, preparation instructions and reports - in Greek, and legibly on a phone.
- Referrals
- Results
- Patient portal
- Flutter
What it connects to in a clinic that already runs
You are unlikely to be starting from nothing, and you should not have to.
- myDATA / ΑΑΔΕ
- Through a certified provider, with the service and VAT mapping done properly per entity.
- Existing practice software
- Epsilon, Entersoft, MediSync, Vision, Galinos - kept where it works, read from where it must.
- ΗΔΙΚΑ and ΕΟΠΥΥ
- E-prescription and referral flows alongside your own system rather than duplicated inside it.
- PACS, DICOM and HL7/FHIR
- Imaging and lab results moving as data, so a report is a record and not an attachment.
- Payments and terminals
- Viva Wallet, Stripe, bank gateways and IRIS, with deposits and instalments where treatment plans need them.
- Reminders
- Viber, SMS and email, timed to cut no-shows - the cheapest measurable return in the whole build.
What it costs, and when to buy the package instead
Compare all of it against a package licence first. We would rather lose the enquiry than build you something you could have configured.
The scheduling layer
€6k - €12.5k
Resource-constrained scheduling across sites, with waitlist backfill and reminders, sitting alongside the practice software you keep. The commonest first project, and the one with a return you can actually measure in recovered slots.
Records and billing
€12.5k - €22.5k
Patient records with real access control and audit logging, plus billing across entities and insurers transmitting into myDATA. Priced here because the compliance work is genuine and the reconciliation is where the hours go.
Group platform
€22.5k - €35k
Several sites and entities in one system: referrals, results release, a patient portal or app, and consolidated reporting. Phased, and we would want a scoping engagement before quoting inside this band.
Most of this qualifies under ΕΣΠΑ Ψηφιακός Μετασχηματισμός ΜμΕ at 50-60%. We are not ΕΣΠΑ consultants, but we will write the technical specification your consultant needs. A scoping engagement alone is €1,500-€3,000 and yours to keep - including if it concludes you should buy a package.
What we measure, where a diagnostic centre loses money
A package reports appointments booked. None of these four come out of one, and all four are what a diagnostic centre actually loses money on.
- Slots recovered from the waitlist
- Cancellations that got refilled instead of sitting empty. On a scanner this is the clearest return in the build.
- Conflicts caught before booking
- Rather than caught by reception, or by two patients arriving for the same room. The second kind does not appear in any report.
- No-shows by reminder channel
- Viber against SMS against email, and against no reminder. Cheap to measure and it usually changes the policy.
- myDATA reconciliation gaps
- Documents that did not match, found the day they happened rather than in the following quarter.
What we have shipped
Work for clients and tools we run in public, each labelled as which it is. Where the tool is the demo above, you can check it yourself instead of taking our word for it.
+150%
Client base
Client work · Nutrition practice · 2025
The practice that stopped selling appointments
A nutrition practice could only grow by adding appointments to a week that was already full. We built the patient app and the admin panel that let one practitioner supervise many clients continuously instead, and the client base grew by 150%.
- Flutter
- Firestore
- Firebase Auth
- Next.js
- App Store
5
Constraints checked together per appointment: practitioner, specialty, room, device, turnaround
Our own tool · Diagnostic imaging · 2025
The scanner is the bottleneck, not the doctor
Your practice software gives every doctor a calendar, but the thing you run out of is the scanner - and an unsold scanner hour cannot be sold later. This is the scheduler that books against the machine, and refills a cancellation from the waitlist without anyone phoning a list.
- Next.js
- TypeScript
- Postgres
- Flutter
- Viber
What we can build
None of these exists. Each is a system we have specified for this sector at the level of detail we would start from: the parts that are hard, the decisions that would have to be made early, and what would be worth measuring once it runs.
Proposal
Multi-site clinics
Three legal entities, one price list, no reconciliation night
Billing across several entities and insurers, transmitting into myDATA through a certified provider, with the service and VAT mapping treated as the actual project.
- Next.js
- Postgres
- myDATA
- Python
Questions we get asked about this
- How much does clinic software cost?
- Per engagement, and the honest first answer is often that you should buy a package instead. If that is the case we will name a good one on the call rather than bill you to rebuild it. Where a build is genuinely warranted, scoping comes first, priced separately and yours to keep, ending in a fixed price for phase one before any code. Describe the booking rule your current software cannot express, and how many sites and shared devices are involved, and you will have a band on the first call.
- Should we just buy an off-the-shelf πρόγραμμα ιατρείου?
- If you are one or two practitioners in one location, yes, and we will point you at the good ones. Greek products handle appointments, records, prescriptions and myDATA well for that shape of practice at a fraction of a build's cost. The honest test: if you can describe your scheduling rules to a supplier and they can configure them, buy the package.
- What actually breaks when a clinic grows?
- Scheduling, first and hardest. Packages model one calendar per practitioner, and a growing clinic's real bottleneck is a shared resource - a scanner, a treatment room, a technician. Once an appointment needs a doctor and a room and a device at the same time, across sites, the package gets used for records and the schedule moves into spreadsheets and a WhatsApp group. That is the moment people call us.
- How do you handle GDPR and health data?
- Health data is special-category, so the floor is higher than for general business software: per-role access, logging of reads and not just writes, defensible retention periods, consent stored as queryable data, and hosting in the EU by default. The test we design for is being able to answer who looked at a given record and when - which general software usually cannot.
- Can it connect to myDATA and issue proper invoices?
- Yes, through a certified provider. The transmission is the easy half; the awkward half is mapping - which service code, which VAT treatment, and which legal entity issues the document when a group has several. That mapping is scoped explicitly, because getting it wrong is a reconciliation problem that surfaces months later.
- Do you integrate with ΗΔΙΚΑ and ΕΟΠΥΥ?
- We build alongside them rather than duplicating them, and the depth of integration is a scoping question with a real answer rather than a yes. E-prescription and referral flows stay where they are; what we connect is your own scheduling, records and billing to them so the same information is not entered twice.
- Do you build the patient-facing app as well?
- Yes - appointments, preparation instructions, results when a clinician releases them, and reminders. Usually Flutter, so one codebase covers iOS and Android, and always in Greek first. A patient portal that reads like a translation loses the older patients who most need it.
- Is it eligible for ΕΣΠΑ funding?
- Software and equipment spend under Ψηφιακός Μετασχηματισμός ΜμΕ is subsidised at 50-60%, and custom development for a private clinic generally qualifies. We are not ΕΣΠΑ consultants and will not advise on your application, but we will write the technical specification and costing your consultant needs.
The other four
- Business automationIf your team does it the same way every day, software can do itFor any company where people retype, copy and chase all day€3k – €6kFirst automation, one task
- Hotels & hospitalityEvery direct booking is a commission you keepFor hotels, villas, rooms and tour operators€4.5k - €9kBooking engine on your site
- Restaurants & groupsA restaurant is a floor plan, not a number of coversFor restaurant groups, not for a single taverna€3.5k - €7.5kOwn ordering and booking channel
- Maritime & logisticsOne spreadsheet should not be load-bearingFor shipowners, managers and freight operators€10k - €20kOne spreadsheet, replaced properly
Describe the schedule that does not fit
The most useful first call is about the specific booking rule your current software cannot express, and what your staff do instead. Twenty minutes, and you will leave knowing whether this is a build or a licence.
Or write to hello@appcrafters.gr.