Time2Bike’s RFID integration treats each chip read as a bib finish. Whatever your reader software reports for the rider becomes the bib number, so the only setup you need is to make sure each rider’s chip is paired with their assigned bib on the reader side. There are two ingestion paths. Both write into the same event log asDocumentation Index
Fetch the complete documentation index at: https://docs.time2.bike/llms.txt
Use this file to discover all available pages before exploring further.
kind: external_rfid.
CSV file watcher (recommended)
Best for an RFID pad whose software (e.g.rfidtimer) writes to a CSV file on the same machine.
- On the operator screen, open the RFID CSV import panel.
- Click Pick CSV & watch and choose the file the reader writes to.
- Leave the tab open. Each new line is parsed and ingested as it lands.
bib,timestamp (additional columns are ignored).

HTTP bridge
Best when the RFID pad is on a different machine or you want a small companion script.POST /timing/sessions/:sessionId/events
Authorization: Bearer tt_[hex] header.
Each line becomes an external_rfid event. Ship a ~30-line Node or Python companion that tails the file and POSTs; runs on any OS, on any network reachable to the API.
How bibs are resolved
Each ingested event uses the bib field to look up the registered rider in the active race (via the samebibSource rules as manual entry — direct, series plate, or series-then-manual). Unknown bibs still land in the event log; assign them later and re-project to attach them to a rider.
Race tab and RFID
external_rfid events take the active race tab at the time of ingestion as the race scope. Switch tabs before starting the watcher to scope correctly.