Teacher application
Apply to use it in your courses
Fill in the form; your institution's administrator reviews your application. If it is approved, an invitation link arrives at your email address and you set up your account from there.
Completely free for teachers. Both applying and using it are free.
Why is there no sign-up button?
Nobody becomes a teacher on yoklama.ai by themselves. Whoever opens the session controls the anchor: they generate the nonce and determine who is present and who is not. If anyone who wanted could become a teacher, the whole trust model would collapse.
That is why accounts are always issued by the institution. You apply, and your institution's administrator approves.
Setup
Open your account
-
Apply
Fill in the form on this page (yoklama.ai/en/application). You pick your university and department from the list of the Turkish Council of Higher Education (YÖK); you do not have to type them.
An application is not an account and grants no permission until it is approved.
-
Wait for approval
Your institution's administrator sees your application on the dashboard and reviews it. When it is approved, an invitation link arrives at your email address.
Your institution can also add you directly; in that case the application step is skipped and the invitation arrives straight away.
-
Set your password
Open the invitation link and set a password of at least 8 characters. Your account is created at that moment.
The invitation is single-use and valid for 14 days. If it has expired, ask your administrator for a new one.
-
Sign in to the app
Open the teacher app and enter your institutional email address and the password you set.
Course
Open your course and bring in the roster
-
Open a course
In the app, use “Open course” and enter the course code, course name and section. The course code is converted to upper case automatically.
When a course is opened, the student roster starts empty. The next step is to load the roster.
-
Upload the student roster
There are two routes and both go through the same validation.
Through a student information system session: pick your university. If your institution has defined the SIS connection, a browser opens inside the app. You fill in the login screen yourself; you then go to the student list page and press “Fetch list”.
With CSV: always available. The mandatory columns are ogrenci_no (student number), ad_soyad (full name) and eposta (email). UTF-8 and Windows-1254 encodings are supported.
-
Send invitations to students
“Send invitations” generates invitation links for students enrolled in the course who do not yet have an account.
A student with no email address can no longer exist: the address is required for every student, and a row missing one stops the upload with its line number. The reason: a student without an address showed up in the list but could not have an account, could not see their receipt and could not file an appeal — a record that can exercise none of its rights is worse than no record. A second invitation is not generated for the same student.
Your student information system password is never sent to the server. It is stored only on your own device, with your explicit consent — just like your browser storing a password. If you do not consent, you enter it again each time.
The download happens on your device; the server never connects to the SIS. Only the resulting roster is uploaded to the server. This separation is not incidental: it was designed this way so that the server never gains unauthorised access to the school's system in the first place.
During class
Take attendance
-
Choose how many channels you want
2 channels (default): Bluetooth + QR code. A student with no network connection can also check in.
3 channels: server verification is added on top. Even if your device is compromised, no valid proof can be produced; but a student with no network is routed to face-to-face verification.
-
Start attendance
An animated QR code appears on screen and is renewed every 1.5 seconds. At the same time your device broadcasts over Bluetooth. Hold the QR code so the room can see it.
Use the projector in a crowded room. A QR code on a phone screen is only readable from 1–2 metres. Open the anchor screen on your own laptop, press the “Hand over to computer (projection)” button under the QR code and hold the phone up to the computer's camera; from then on the QR code is generated on the computer. The hand-off does not go over the network and no internet is needed once the page is open. From that point on, the computer you hand over to can produce valid QR codes for this class for the rest of the session — which is why you should hand over to your own computer, not the shared machine at the lectern.
-
Watch the live roster
While the class is running you see on screen who has verified and who is still pending. The list refreshes by itself.
Having this information before the class ends is a deliberate choice: finding out after the session closes means finding out at the moment correction is no longer possible.
-
Mark by hand what needs marking
You pick from the roster the student whose phone is broken, whose battery is dead or whose verification does not pass, and mark them by hand. A reason is mandatory.
Being able to do this without falling back to paper matters: the paper route lowers the record to a lower assurance level and would put a teacher who is doing the right thing into an audit signal for no reason.
-
Do the spot check
The app shows you a few student names and asks: are they in the room? Look, and choose In the room / Not in the room / Not sure.
Some of the selected students are picked completely at random. Being selected says nothing about a student, and it is good to tell them so.
This step is the only real defence against the relay attack. Your answer is the only ground truth the system has.
-
Start a new round
Start the second and third rounds during class. Because students do not know when verification will be requested, “check in and leave” does not work.
-
Close the session
The system computes participation ratios and publishes a signed digest of all receipts. If a reconciliation warning appears, the number of receipts does not match the number of verifications — that is a loss on our side, not the student's mistake.
Over the term
After class
A term is more than a single class. These are the things the teacher app does over a term; the full list, each item with its limit, is on the features page.
You see past sessions of your own course in the app, pick one and export the attendance result as CSV. You upload the file to the SIS yourself; the system has no connection that writes into the school's system, and it never will.
Export in the app is per session. A cumulative term-wide extract is taken from the admin dashboard.
You set the minimum number of minutes a student must have been verified for in order to count as present. If the time is not enough, the record drops to PARTIAL, not ABSENT — not turning up and leaving early are not the same thing.
If the rounds were too sparse to measure the threshold at all, that is marked separately. The student's behaviour is not confused with the system's inability to measure.
When a class is moved to another room or time you enter it in the app. The change is more than a note: reminders shift accordingly and the “impossible travel” flag looks at the correct room.
Class cancellation and make-up classes are separate concepts and are entered from the same screen: treating a cancelled class as a moved one would record absences from a class that never happened.
Attendance taken while there is no network accumulates on your device and is sent when the connection returns. On the queue screen you see what has gone through and what is still waiting.
A submission whose outcome stays uncertain is marked uncertain and is not retried automatically. Silently sending a second time would risk writing a student's record twice.
If the system could not be used at all, you can photograph the paper sheet and attach it to the record. These records are marked with the lowest assurance level and their share is reported — paper is not an escape hatch but a monitored exception.
If you want, you can measure the number of people in the room with the camera and compare it with the number of verifications. Nobody is recognised, no image is saved anywhere, the output is a single number and it is attributed to no student.
The number is a lower bound: students who overlap or sit at the back are not counted, which is why it is shown as “at least N people seen”. How many it counts in a real classroom has not been measured; that is why the feature never runs by itself and changes no attendance record.
If the count fails, the screen tells you so and offers two routes: try again or count it yourself and enter it. The number you enter is not a measurement; it is shown on screen as a teacher statement, is not compared with the verification count and is stored nowhere.
Three things you should know
The system watches patterns in the background but gives you no number. The reason: a “not in the room” answer given after seeing the score is no longer an independent observation, and the single ground truth the system relies on is contaminated. You only see “confirm this person” and a short reason.
You can mark by hand a student who has no phone, whose battery is dead or whose verification does not pass. A reason is mandatory. Your manual ratio is reported on the dashboard — that is not an accusation but a transparency instrument.
The teacher is the system's authorised actor and cannot be technically restricted. The only thing that happens is that actions are recorded. In return, the student holds a signed receipt: a record deleted silently is detected.
Troubleshooting
Ask the student for the receipt number. If they have a receipt, the record was accepted by the system and the loss is on our side. You can verify the receipt from the admin dashboard. If there is no receipt, mark the student manually.
If the student filed an appeal from the app, the appeal comes to you: from the “Student appeals” button on the My courses screen you see appeals for your own sections and accept or reject them with a written reason. The decision cannot be undone, and that is said before you confirm.
Your institution may not have defined the addresses for that university, or may not have enabled the connection. Enabling requires written institutional permission. The CSV route is usable in any case.
If Bluetooth is on, the QR code is not needed; one of the two channels is enough. If neither works, the student can be verified face to face on your device or marked manually.
Invitations are valid for 14 days. A new invitation is generated from the admin dashboard; the old one becomes invalid automatically.
Before you apply: the product's limits
What has been designed and what has been measured are not the same thing:
We publish no accuracy figures. The accuracy of face verification and the spoof resistance of liveness detection have not been measured; that is why we give no success rate. Hardware attestation is verified, but nothing is done with the result: the attestation chain is verified up to the manufacturer's root certificate, yet proof that arrives unsigned or looks tampered with is not rejected — it is flagged. The default mode is permissive; moving to enforcing mode is a decision the institution makes after it knows its own device fleet. The risk engine runs in shadow mode: the rules run, the engine takes no action and changes no attendance result. Every limit, one by one: Features.
Form
Application
Your application has been received
Your institution's administrator will review it. If it is approved, a single-use invitation link will be sent to your email address and you will set up your account from there.
The invitation is valid for 14 days.
Process
From application to account
-
You fill in the form
Full name and institutional email are mandatory. You pick your university and department from the list of the Turkish Council of Higher Education (YÖK) — the system holds 228 universities and 634 distinct department names.
-
An administrator reviews it
Your application appears in the “Pending applications” list on your institution's admin dashboard. The administrator confirms you against the institution's own roster.
-
An invitation link arrives
When approved, a single-use invitation link is sent to your email address.
-
You set your password
You open the link and set a password of at least 8 characters. Your account is created at that moment and you can sign in to the teacher app.
Frequently asked
It does not matter — you can use it either way.
If your institution is registered: apply with your institutional email address. If you appear on the faculty roster the institution uploaded, your application is approved immediately and you can start using it. If you are not on that roster, it goes to your institution's administrator. The administrator can also invite you directly.
If your institution is not registered: you can still apply. You use it on your own by uploading your own courses and student rosters with CSV or by entering them by hand; you do not have to wait for your institution to decide. If your institution registers later, your account can be moved there.
If you like, you can forward the institution application form and the school setup guide to your IT department — but that is not a precondition.
Automatic approval: the institution administrator can upload the faculty roster from the dashboard and turn automatic approval on and off. Approval depends on all three of these conditions at once: that you have verified your address, that the institution has enabled this option, and that your address appears on the roster the institution itself uploaded — your email domain is not consulted, because a domain shows neither the institution nor the title. Institution-less mode is still partial: the endpoints have been written and are bound by tests, but there is no app screen that calls them. Every limit is written down, one by one, on the features page.
You decide for each class which methods count as valid: when you open a session you tick the methods you want to use. If you tick face verification only, it becomes mandatory in that class; if you do not tick it, the system runs fully functionally with proximity verification.
Your institution can narrow this menu from the admin dashboard — in an institution that chooses never to enable face verification, the option is not offered to you at all.
The information on the application form goes to your institution's yoklama.ai server. A face template is never sent to the server — if one is used, it stays on the student's own phone.