What you may issue today
Limits are per person, per day, and reset at midnight UTC.
Issue a token
The counter lives on the server. Every token is recorded against you.
Your devices
Where the fleet stands. To find one device, search on Devices file — a list of every kit is not something anybody reads.
People
Who may use the system, what each may do, and how much they may give away.
Add someone
They sign in with these details. You can change what they may do at any time — it takes effect on their next request, not at their next sign-in.
Load devices from a file
The manufacturer's sheet, with a serial, a starting code and a key on each row. Column names are matched loosely, so "Serial Number", "serial_number" and "SERIAL" all work.
The file is read in this browser and sent over the same connection as everything else. Keys are stored, never shown again, and never returned by any part of this service.
Or paste the rows
Which columns are read
| Column | If it is missing |
|---|---|
| serial_number | required |
| key | required — 32 hex characters |
| starting_code | required |
| token_count | 1 |
| last_confirmed_count | 0 |
| starting_code_source | manufacturer_file |
| token_prefix | none |
| token_suffix | none |
| time_divider_seconds | 86400 — one day |
| is_locked | not locked |
| device_type | none |
The three required ones have no default because guessing any of them produces a device record that looks correct and cannot be tokenised. Everything else is either cosmetic or the safe end of its range. Unrecognised columns are ignored, and Serial Number, serial_number and SERIALNUMBER are all the same column.
Find and correct a device
Search by serial, model, starting code or the customer holding it. A starting code is shown as nine digits — spreadsheets drop leading zeros, so 1234567 is stored and displayed as 001234567. Correcting the code or the counter decides whether the hardware accepts anything this device is given, so this is an administrator's screen.
Your plan
What this business has bought, what it has used this month, and what that comes to.
Organisation information
Who this business is, and where reports, notices and any change to a device record are sent. Yours to keep correct — blank a box to leave it as it is. The plan and the billing dates are not here: those are asked for below.
Ask to change plan
The plan is what this business has bought, so moving it is the platform administrator's decision — in either direction. Nothing changes until it is approved, and you are emailed either way.
Stop using PayGO
Two ways, and both are requests — customers are holding kits that need tokens, so switching that off is not something to do by accident.
Your devices, token history and bills stay readable either way. Nothing is deleted.
Subscription
How long this arrangement has left, and what happens when it runs out. Issuing stops after the grace period; reading never does, so this bill stays visible to whoever has to pay it.
Bill for a month
Any month, itemised, beside the work that produced it — a charge you cannot trace to your own people's issuing is a charge you have to take on trust. Derived from the counters, so it reads the same however often you ask.
Limits by role
How much of your allowance one person in each role may spend. This is yours to set. It cannot raise your monthly allowance or add a token type — those are on the plan.
What has been issued
Every token this business has given out — for which product, by whom, and whether the hardware ever took it. Days are what was granted; a token count alone hides the difference between a week and a year.
By product
Which products the runtime went to.
By person
Who issued it. Every token is attributed — that attribution is what makes an uncapped seat safe to hold.
Tokens
Kits in customers' hands
One row per device in service: who has it, which product it is, what that product sells for, and how much runtime it has been given. This is not a statement of account — nothing here knows what anyone has actually paid.
Load customers from a file
The kits already in customers' hands were recorded offline. Paste that list here rather than typing it. Columns: serial_number, customer_name, location, and phone if you have it — headings are matched loosely, so "Serial Number" and "serial" both work.
From Excel: File → Save As → CSV, then open it in Notepad and paste. A location containing a comma is fine as long as the file is a real CSV.
Or paste the rows
Products and prices
Priced by the device model, because that is what the manufacturer's file already carries and every device is imported with. A model with no price here shows as unpriced rather than as free.
Tenants
Every business on the platform, what it is on, and what it owes this month.
Change a plan
Only this seat can. A business that could raise its own allowance would not have one.
Security
The last 24 hours across every business. One failed login is a typo; forty against one account overnight is somebody working through a list.
Recent events
Plan requests
What businesses have asked for. Nothing moves until you decide, and both you and they are emailed either way.
Edit a business
Changes the business you pick. Nothing here creates anything — the form below is for a business that does not exist yet. Blank a field to leave it as it is.
Add a business
The tenant and its first administrator are created together. A tenant nobody can sign into cannot be handed over.
The id appears in API keys and cannot be changed later.
The first period starts today, so a business that has just signed up is not locked on its first day.
Record a payment
This service does not take money — payment arrives by transfer, mobile money or a settled invoice, and this is writing down that it did. Recording it moves the period forward and unlocks issuing immediately.