3) Codes expire and get recycled, yes?
I think the codes should be long enough so that we keep creating them
and never have to recycle.
Why? For programming reasons? For ease of use in a particular case?
With 5 characters, that's probably enough (11,881,376), and with 7 definitely enough (8,031,810,176) to never repeat on that network.
Would it save processor energy on the router? Or maybe it would fill up memory on the router?
Money in Caimito is all cash, with an occasional check, and no cards or online payment so far. I can imagine some tourists paying by card or some online system if it were available. Some (maybe most) of the people here don't even have bank accounts (beyond the Caimito community bank). I can imagine a community currency being created and used to pay for Internet access.
7) When a voucher expires, keep the code reserved in the system for
10% of the time it was valid, in case the person wants to renew the
voucher. Examples:
-- A 1 hour voucher of a library/ciber visitor expires, and they
have a 6-minute grace period to request another hour on their
voucher. The admin interface makes extending the voucher easy.
-- A 1 month voucher has a 3-day grace period. The device doesn't
have access once the voucher expires, but renewing is easy: the
admin doesn't have to create a new voucher, and the person doesn't
have to enter a new code.
Are you thinking of an online payment system to get the vouchers? Then
perhaps the access to the merchant page could be always open (filter by
domain). Or the merchant page could be in the captive portal, which is
always accessible.