Dental clinicsDemo with sample data
Dental Clinic Appointments and Patient Records: screen-by-screen guide
The full version of the short description on the product page: every feature, how each screen is used step by step, all limits and the delivery details.
All features
The flows below were run on a local installation (PHP 8.3, SQLite) with sample data; the product’s unit tests (3,155 checks) and its clinic end-to-end tests (865 checks, package 1.1.0; the dental and veterinary products share the core) passed. The live demo runs version 1.1.1 (the only change from 1.1.0: an instalment plan larger than the balance is refused); the booking form and sign-in screens come from the live demo (1.0.5) and the new setup wizard screens are not among the pictures on this page. On 27 October 2026 about 75 actions were tried on the live demo as manager, reception, dentist and patient: the setup wizard was started from an empty site and walked step by step, leave over several days was added and the refusals for an overlap, a reversed date and a day with an appointment were seen, a patient who sent a booking request landed on their own appointment page, where an add-to-home-screen box appeared; a payment above the amount due and a package of more than 500 sessions were refused.
- A day, week and month calendar with a column per dentist: double booking is blocked and free times are suggested; repeating appointments, a dentist’s leave (several whole days, or the same hours every day) and breaks can be set; upcoming leave is listed with “Yanlış girdim, sil” (I made a mistake, delete) on each row, a day with an appointment is never cancelled silently, and no leave-days-left count is kept
- Online booking: the patient picks the treatment, dentist, day and time on the public page and sends a request; no appointment exists until the clinic approves it, and the patient gets a private link to view or cancel it
- Patient files: family members on one phone have separate files; warnings such as a blood thinner, an allergy or a chronic condition sit in a red strip at the top of the file and as a mark in the calendar; patients are archived, never deleted
- A tooth chart with two-digit FDI numbers: permanent and primary teeth, 13 conditions (caries, filling, root canal, implant, missing...); a treatment line can be added to the chosen tooth
- Treatment plans and offers: lines with tooth numbers from the price list, a discount, the dentist; draft, presented and accepted states; only a line marked “done” goes onto the patient’s account; a printable offer for the patient
- Account: cash, card or transfer payments, an instalment plan (the pennies divide exactly and a collected instalment becomes a payment record), an overdue-instalment list, a cash book and expenses
- Visit notes (complaint, findings, diagnosis, treatment done, advice), prescription lines and a prescription printout on the clinic’s letterhead; signed consent forms from editable templates; tracking of lab work such as crowns and prostheses
- On their own appointment page the patient sees, for a pending request, a “Kliniğe WhatsApp ile haber ver” (tell the clinic on WhatsApp) button: a ready message with only the name, date, time and clinic name opens in WhatsApp for the clinic’s phone and the patient presses “send”; the program sends nothing itself and the message carries no treatment or diagnosis
- A check-up recall list: the “next visit” and the six-month check-up; one click gives a ready WhatsApp message for those overdue or coming up, with a “called” note; the recall closes by itself when the patient books
- Roles and an access log: the manager; reception works with prices, payments and appointments and does not see visit notes or the tooth chart; a dentist opens only patients with an appointment or a note of theirs; who opened a file is recorded (the text of a note is not); a button, form or link a role may not use is not shown to it: a dentist sees no amounts or prices in the calendar views and no discount form
- A setup wizard: clinic name and hours, the first dentist, the treatment and price list (a ready sample list), the first patient, sending the booking address to patients (WhatsApp, copy, an A4 poster with a QR code) and adding the panel to a phone; each step is saved on its own and can be skipped, a “Kurulum %…” (setup %) bar shows on every page until the steps are done, and the main screens have a closed “Bu ekran ne işe yarar?” (what is this screen for?) box; in the demo, “Boş siteyle yeniden başla” (start again with an empty site) and “Örnek veriyi geri yükle” (bring the sample data back) let you run the wizard from 0%
- Adding to the phone and notices: after sending a booking request the patient lands on their own appointment page and can add it to the home screen from there (one button on Android, steps on iPhone); the clinic panel has a sign-in-free “add to phone” page and its icon opens the panel sign-in; a new request or a patient’s cancellation reaches the manager and reception as a free instant notification (and by e-mail too), and the patient is told when a request is approved, declined or moved
- Clinic reports (treatments done, dentist share, people with a balance), stock with an expiry warning, importing a patient list from CSV or Excel (.xlsx; .xlsx only when the server has the zip extension; closed in the demo), and a daily automatic backup
Screen by screen: how it is used
The app’s interface in these screens is Turkish; only the captions and explanations on this page are in English. The booking form and the sign-in page come from the live demo (version 1.0.5), the other screens from the app’s own demo mode with sample data; the clinic (“Örnek Diş Kliniği”, i.e. “Sample Dental Clinic”), the patients, the dentists, the phone numbers starting with 0500 and the amounts are sample data. The phone views were taken with a browser set to a phone’s size. On very long pages only the first part is shown.
- Who uses it?
- The patient who asks for an appointment; reception and the clinic manager, who run the calendar, patient files, treatment plans, accounts and reports; the dentist, who opens only their own patients.
- Where do they start?
- The patient taps “Randevu al” (book an appointment) on the clinic’s public page. The clinic signs in to the panel with an e-mail and password and starts at the appointment calendar.
What do they do on screen? Step by step
-

Public page
The clinic’s page as a patient sees it on a phone: short service blurbs, priced treatment groups, opening hours and the dentists. Every treatment has a “Randevu al” button that opens the online booking form. The page is long; the picture shows the first part.
- On screen (Turkish interface)
- “Randevu al” — book an appointment
-

1.0.5 · 21 October 2026 Online booking form
The patient picks the treatment, dentist, day and a free time, says who the appointment is for, types a name, phone and note and accepts the privacy text. The request is not an appointment until the clinic approves it. In the picture the form is filled in but not sent. On the public demo a “do not enter real names, phone numbers or health details” notice shows above the form.
-

1.0.5 · 21 October 2026 Demo sign-in page
A demo notice, the manager’s fields already filled and a password-free “… olarak gir” (sign in as …) button for each role (manager, reception, dentist); shown only in the demo, never on a real installation.
- On screen (Turkish interface)
- “Yönetici olarak gir” — sign in as manager
- “Demo hesapları” — demo accounts
-

Appointment calendar
One column per dentist. A request from the web waits for approval at the top (Onayla, Reddet or Güne git); the day’s appointments, arrivals and takings are summarised. Each booking has Geldi, Gelmedi and İptal, patient file, WhatsApp and bill buttons, and a mark beside the name of a patient with a health warning.
- On screen (Turkish interface)
- “İnternetten gelen talepler” — requests from the internet
- “Onayla / Reddet / Güne git” — approve / decline / go to the day
- “Geldi / Gelmedi / İptal” — arrived / no-show / cancel
- “Hasta dosyası” — patient file
- “Adisyon” — bill
-

Patient list
Search by name or phone; each row shows age, number of health warnings, last visit, next appointment, balance and WhatsApp. Family members on one phone have separate files.
- On screen (Turkish interface)
- “Hastalar” — patients
-

Patient file summary
A red health warning and condition badges sit above the file tabs; balance, appointment count, open reminders, conditions and medicines, recall dates and the appointment history follow.
- On screen (Turkish interface)
- “Özet / Diş şeması / Tedaviler / Muayene notları / Dosyalar ve formlar / Laboratuvar / Hesap” — summary / tooth chart / treatments / visit notes / files and forms / laboratory / account
- “Borç” — balance owed
- “Açık hatırlatmalar” — open reminders
- “Sağlık bilgileri” — health information
-

Tooth chart
A chart with two-digit FDI numbers; for a child the primary and permanent teeth show together. Each tooth’s condition is shown by a letter and colour (caries, filling, sealant, missing...); choosing a tooth opens a panel to set its condition, add a note and add treatments.
- On screen (Turkish interface)
- “Daimi dişler / Süt dişleri / İkisi de” — permanent teeth / primary teeth / both
-

Treatment plan
A plan that is partly done: the amount done and booked and the amount still planned show separately. The plan is accepted, lines are ticked off one by one and there is a print button for the offer. Only a line marked done goes onto the account.
- On screen (Turkish interface)
- “Yapıldı ve hesaba işlendi” — done and booked to the account
- “Planlandı, henüz yapılmadı” — planned, not yet done
- “Kabul edildi” — accepted
- “Teklifi yazdır” — print the offer
- “Yapıldı olarak işaretle” — mark as done
-

Offer printout
The printable offer handed to the patient: clinic letterhead, patient, dentist, date, treatment lines with tooth numbers and the total. A note says it is an offer, not an invoice, and there are signature lines for the clinic and the patient.
- On screen (Turkish interface)
- “Bu sayfa tekliftir, fatura değildir” — this page is an offer, not an invoice
-

Visit notes
Each entry holds the complaint, findings, diagnosis, treatment done, advice and prescription lines; the prescription can be printed from it and the entry edited or removed.
- On screen (Turkish interface)
- “Muayene notları” — visit notes
-

Prescription printout
Clinic letterhead, patient, date of birth, dentist, diagnosis and a table of medicine, dose and duration, advice and a space for signature and stamp. The page itself says it is the clinic’s own document, not an e-prescription, and is sent to no official system.
-

Files and consent forms
Signed forms are listed with form name, signer and signing date and open with “Aç ve yazdır”; below is the part to have a new form signed. File upload is switched off in the demo, and the screen says so.
- On screen (Turkish interface)
- “Aç ve yazdır” — open and print
-

Signed consent printout
The consent text, the signer (the patient), signing date, dentist and the handwritten signature drawn on screen. The page states that it is a record of the signature being made there and then, not a secure electronic signature.
-

Lab work
Work sent to the dental lab (for example a zirconia crown) is tracked with tooth number and shade, lab name, sent and due dates and status; when it arrives it is marked with “Geldi olarak işaretle”.
- On screen (Turkish interface)
- “Laboratuvar” — laboratory
- “Geldi olarak işaretle” — mark as received
-

Patient account and instalments
Cards show the balance, treatments booked, total paid and open instalments; the collection form, paid, overdue and open instalment rows and the payment history sit together. The plan is a reminder; the balance follows what is collected.
- On screen (Turkish interface)
- “Tahsilat yap” — take a payment
- “Tahsilatı kaydet” — save the payment
- “Taksitler” — instalments
- “Tahsil et” — collect
- “Ödendi” — paid
-

Recall list
Patients due for a check-up or follow-up are listed with reason, due date and days overdue; each row has WhatsApp, a booking button, a note field, “Arandı olarak işaretle”, “Bitti” and “Vazgeç”.
- On screen (Turkish interface)
- “Arandı olarak işaretle” — mark as called
- “Bitti” — done
- “Vazgeç” — drop
-

Clinic reports
For a chosen period: treatments done and their value, payments taken, new patients, appointments kept; the dentist-share table (each dentist’s percentage applied to the treatments done), most-performed treatments, people with a balance, overdue instalments and work waiting at the lab.
- On screen (Turkish interface)
- “Klinik raporları” — clinic reports
-

Access log
Called “Denetim kaydı” in the menu. It lists who opened or changed patient data and when, and can be filtered by user, action and date. It keeps names, times and the action, never the text of a note; rows are kept for 400 days.
- On screen (Turkish interface)
- “Denetim kaydı” — audit (access) log
-

Importing a patient list from CSV
A template is downloaded first, then the file is uploaded and every row is shown before anything is saved. A phone number belongs to one contact card; a second person on the same number is added as a family member and patients already on file are skipped. Import is switched off in the demo.
-

Settings
The Clinic and SMS gateway parts: licence line, prescription footer, check-up interval for new patients and editable consent texts; the address, method, sender name, body and headers of the clinic’s own SMS provider. Settings cannot be saved in the demo.
-

Patient file on a phone
The warning strip, badges and scrolling tabs sit in one column; the cards and the appointment table stack, with table rows shown as labelled cards. The screen does not scroll sideways.
- What do they see at the end?
- An approved request becomes an appointment in the calendar. In the patient’s file the dentist records the tooth chart, treatment plan, visit note and consent; the treatment done goes onto the patient’s account, payments and instalments are followed, and the next visit lands on the recall list.
- What is it good for?
- Appointments, health warnings, offers, balances and check-up reminders do not scatter across paper, spreadsheets and WhatsApp, and the amount still owed on a part-done treatment is not worked out by hand.
Everything that is not included, and all limits
- Not delivered to a client and not used by a real clinic. The clinic (“Örnek Diş Kliniği”, i.e. “Sample Dental Clinic”), the patients, the dentists, the prices and the phone numbers starting with 0500 are sample data; no real patient data should be entered in the demo.
- It is not an official health information management system: it is not registered in the Ministry of Health’s record system and sends no data to e-Nabız, e-Prescription or any other official system; there is no connection to the social security system (SGK/MEDULA) or to private insurers.
- The offer, prescription and consent printouts are the clinic’s own documents; they do not replace an invoice, an e-prescription or any official document, and there is no e-invoice or e-archive connection. The signature on a consent form is drawn on screen and is not a secure electronic signature; it records that it was made on that screen.
- Tried locally with PHP 8.3 and SQLite; the live demo runs on a single DirectAdmin account with SQLite and is set to refresh its sample data every hour. Tried on MariaDB 10.11.19 only, as a local and partial run (the core and the microchip and vaccination-stock tests); not tried on MySQL or other versions. The phone-size screens come from a browser set to a phone’s size; not tried on a real phone. Instant notifications and add-to-home-screen were tested automatically only, not on a real Android phone or iPhone; notifications need HTTPS and the user’s permission in the browser.
- The live demo’s sign-in page has password-free “… olarak gir” (sign in as …) buttons for manager, reception and dentist (demo only; on a real installation the box is not shown). The public booking form shows a demo and personal-data notice.
- In the demo, settings, staff, file upload, data export and import, e-mail and SMS are switched off, and the add-to-phone window and notification box are not drawn; in a normal installation they are on and were tested automatically.
- There is no automatic WhatsApp sending: messages are prepared and sent from the clinic’s own WhatsApp. For SMS the clinic enters the HTTPS address of its own SMS provider; it has not been tried with a particular provider. There is no patient portal (sign-in), no online payment, no X-ray device or DICOM link, no store app and no multi-site view.
- X-rays, photos and documents can be uploaded (JPG, PNG, WEBP, PDF; up to 8 MB each); uploaded files are not part of the backup file and their folder is backed up separately.
- The interface in the screens is Turkish; the program can also be switched to English in its settings. Veterinary clinics have a separate product.
Delivery and sales status
How does it work?
You try the demo and tell us about your clinic, and we send you a quote. We install it, we host it and we take a daily backup. The yearly price includes installation, hosting, data transfer and support.
Price
The yearly list price is 3,000 TL. Installation, one year of hosting, data transfer, a daily automatic backup, bug fixes and written usage support are included.
Possible delivery options
Other delivery options
Requirements and version history
Installation requirements
- Requirements as written in the documents: PHP 8.1 or newer, the pdo_mysql and mbstring extensions, MariaDB/MySQL 10.4 or newer (pdo_sqlite for the demo and trials). The product was tried locally with PHP 8.3.33 and SQLite; tried on MariaDB 10.11.19 only, as a local and partial run (the core and the microchip and vaccination-stock tests); not tried on MySQL or other versions.
Release notes
- Summarised from the version history; no version has been delivered to a client. A live sample-data demo exists.
- 1.1.2 (28 October 2026): “Takvime ekle” (add to calendar) on the patient’s appointment page: an “Add to Google Calendar” link and “Dosya olarak indir (.ics)” (download the file; a reminder one hour before). The link and the file carry no patient name, phone number or note (only the clinic name, the service and the dentist’s name); not shown for an appointment waiting for approval or a cancelled one. No new permission, data or schema change.
- 1.1.1 (27 October 2026): an instalment plan may not exceed the balance still owed (no plan when nothing is owed) and a part cannot be collected above what is owed either, so the account never ends up in credit.
- 1.1.0 (27 October 2026): a step-by-step setup wizard (clinic name and hours, dentist, a ready treatment list, the first patient, sending the booking address, adding to the phone), a progress bar and “Bu ekran ne işe yarar?” (what is this screen for?) boxes; in the demo “Boş siteyle yeniden başla” (start again with an empty site) and “Örnek veriyi geri yükle” (bring the sample data back); after a booking request the patient lands on their own page and can add it to the home screen; a sign-in-free add-to-phone page; free instant notifications for a new request or a cancellation; dentist leave over several days and an upcoming-leave list (a day with an appointment is not cancelled silently, there is no leave-days-left counter); a payment above the amount due (closing a ticket or taking a payment) is refused and a package holds at most 500 sessions.
- 1.0.7 (26 October 2026): what a role may not use is no longer shown to it: a dentist sees no amounts or prices in the day, week and month views and no discount form, and in a patient file the owner or contact name is plain text, not a link; with no stock item or staff member yet, reception sees “ask the manager” instead of a link to a page it may not open; the export and delete buttons that did nothing on the demo are no longer drawn. The server still refuses an address typed by hand.
- 1.0.6 (21 October 2026): patient-list import also checks an Excel (.xlsx) file or a table pasted from Excel next to a CSV file (.xlsx only when the server has the zip extension, otherwise a save-as-CSV note appears); every preview row has a “Alma” (do not take) box and there is “Son içe aktarmayı geri al” (undo the last import); nobody is messaged during the import. Import is closed in the demo.
- 1.0.5 (18 October 2026): password-free “… olarak gir” (sign in as …) buttons for each role on the demo sign-in page (demo mode only; on a real installation the address answers 404).
- 1.0.3 and 1.0.4 (13 and 14 October 2026): microchip and vaccination-stock fixes in the shared core; no change in the dental module.
- 1.0.2 (12 October 2026): a “Kliniğe WhatsApp ile haber ver” (tell the clinic on WhatsApp) button on the patient’s own appointment page (a ready message with the name, date, time and clinic name).
- 1.0.1 (12 October 2026): a demo and personal-data notice on the public booking form.
- 1.0.0 (11 October 2026): first version; a clinic module on the salon core (1.4.0) with the pilates 1.0.3 security fixes: patient files and health warnings, an FDI tooth chart, treatment plans and printed offers, instalments, a check-up recall list, consent signatures, visit notes and prescription printouts, lab work, an access log and clinic reports.
Decisions not made yet
- Rights to use, modify, transfer and receive the source code: to be set in a written agreement; not decided yet.
- Whose name the hosting and domain are opened in, and where the software is installed, have not been decided yet.
There is no cart, customer account or online payment on this site for now. Reach out by phone, WhatsApp or the form; in a first conversation your need and the software’s fit are reviewed. The form does not create an order, a contract or a payment.