Classes

Check-in

Omoplata provides automated check-in options so members can record their own attendance without requiring an admin to manually mark everyone present. There are two primary methods: PIN-based check-in at a tablet station and QR code scanning through the mobile app.

Configuration

Configure check-in time windows, attendance intentions and QR codes under Settings > Check-in. See the Check-in settings page for details.


PIN-based check-in

PIN check-in is designed for a tablet or kiosk placed at your club entrance or near the mats. Members enter their personal PIN to record their attendance as they arrive.

How it works

  1. A tablet or iPad at the club runs the station check-in page.
  2. When a member arrives, they enter their personal PIN on the keypad displayed on screen.
  3. The system looks up the member by their PIN.
  4. Omoplata checks whether there is an active class session within the check-in window (based on the minutes-before and minutes-after settings).
  5. If a matching session is found and all validation passes, the attendance record is created automatically.
  6. The member sees a confirmation with their name and the class they checked into.

PIN setup

Each member can have a PIN assigned through their profile. PINs are stored as a user identification of type "PIN". Members can also set or update their own PIN through the mobile app.

Validation checks

When a member enters their PIN, the system performs several checks before recording attendance:

  • The PIN must match a registered member.
  • There must be an active class occurrence within the configured time window.
  • If the class requires assignment, the member must be assigned to the matching time slot.
  • If "requires intention" is enabled, the member must have previously confirmed their intention to attend.

If any check fails, the member sees an appropriate message (e.g., "No class available" or "Invalid PIN").


QR code check-in

QR code check-in lets members scan a code with their phone to check in through the mobile app.

Setting up QR codes

  1. Navigate to Settings > Check-in.
  2. Click Download to generate a PDF containing the QR code.
  3. Print the QR code and place it at your club entrance, near the mats, or wherever members can easily scan it as they arrive.

The QR code encodes the URL to the station check-in page. When a member scans it with their phone, they are directed to a check-in page that handles attendance recording.

How QR check-in works

  1. The member scans the printed QR code with their phone camera.
  2. Their browser opens the check-in page.
  3. If the member is logged into the app, their attendance is recorded for the current class session.
  4. The attendance record is marked with a "QR code" source, which appears as a small QR icon next to their name in the occurrence detail modal.

The same time window and validation rules apply as with PIN check-in -- the member can only check in within the configured minutes before and after the class start time.


Check-in and attendance records

Regardless of the check-in method, all attendance records end up in the same place and are treated identically for reporting, statistics, and graduation tracking purposes. The only difference is a label that tracks how the check-in was performed:

  • Admin -- Manually recorded by an admin through the occurrence detail modal.
  • QR Code -- Member scanned a QR code.
  • Tablet -- Member used the PIN-based station check-in.

This source tracking helps you understand how your members prefer to check in and whether your automated systems are being adopted.


Failed check-in attempts

Every time a check-in is rejected -- regardless of the reason -- Omoplata records the attempt. Failed attempts are visible on the member's profile under the Check-ins section, showing the date, the class they tried to check into, and the specific reason for the rejection.

This gives you a clear audit trail without requiring members to explain what happened. Common reasons include:

  • No class available -- The member arrived outside the check-in time window, or no class was scheduled at that time.
  • Membership inactive -- The membership has lapsed, been cancelled, or is paused.
  • Assignment required -- The class requires members to be explicitly assigned to a time slot, and this member was not.
  • Age group mismatch -- The class is restricted to a specific demographic (for example, kids) and the member does not match.
  • Intention not confirmed -- The "requires intention" setting is active and the member did not confirm they would attend.

Aggregate data on failed attempts is available in the Analytics > Check-ins section.


Multiple simultaneous check-ins

By default, a member can only be checked into one class at a time. If you run open mat sessions, drop-in formats, or overlapping classes where members legitimately attend more than one session at the same time, you can enable Allow multiple simultaneous check-ins in Settings > Check-in.

When this setting is on, members can check into several overlapping occurrences in a single session. Each creates an independent attendance record.


Age group filtering

If a class is configured for a specific demographic (for example, kids or adults), members whose age group does not match are prevented from checking in. This avoids kids accidentally appearing in adult attendance records and vice versa.

The filtering behavior depends on the Enforce age group setting in Settings > Check-in:

  • Enforcement on -- The check-in is hard-rejected and the member sees a clear error message.
  • Enforcement off -- The mismatch is recorded as a failed attempt for reporting purposes, but the check-in is allowed.

Venue and room filtering

When a facility QR code is scanned, Omoplata narrows the class search to that specific room. This prevents a member who scanned the BJJ mat QR code from accidentally checking into a kickboxing class running in a different room at the same time.

The Ignore facility setting in Settings > Check-in changes this behavior: when enabled, scanning a facility QR code still anchors check-in to that venue but searches across all rooms within it rather than restricting to the specific facility.

Was this page helpful?

Previous
Attendance