I've thought of this solution, it requires coding and a somewhat elaborate technical setup, but also eliminates lots of waste, both in time and paper.
Have a webform / app where student can sign in with their name, school and teacher. Upon signing, the system gives the student a unique id.
Where the lecture is given, setup a free wifi from which students must log in with their unique id at the beginning and at the end of the lecture.
Attendance can then be checked in this way: students that attended are only those whose unique id is present at the beginning and at the end of the lecture, according to time stamps and wi-fi origin.
Students can still comunicate each other their unique id and forge their attendance, but you can setup incentives against cooperation: indeed, make credits transferable, so that if one student knows more than one id, s/he can rob other students and give the credits to him/her.
Where the lecture is given, setup a free wifi from which students must log in with their unique id at the beginning and at the end of the lecture.
Log in on what? Many of our student attendees come from poor districts so I would hesitate to choose a solution that, for instance, assumes every student has a smartphone.
If it's worth saying, but not worth its own post (even in Discussion), then it goes here.
Notes for future OT posters:
1. Please add the 'open_thread' tag.
2. Check if there is an active Open Thread before posting a new one. (Immediately before; refresh the list-of-threads page before posting.)
3. Open Threads should be posted in Discussion, and not Main.
4. Open Threads should start on Monday, and end on Sunday.