Skip to content

Core Concepts

Core Concepts

Understanding these key concepts is crucial for effective integration.

Device Identification

Every interaction is targeted using one of two identifiers:

  • serial_number: A unique, unchangeable 10-digit string assigned to each device. It is used to target a command at a single, specific device.
  • company_code: A string you define to group your devices. It is used to broadcast a message to all devices associated with that code.

You will see these placeholders (<serial-number> and <company-code>) used in almost every topic.

Device Synchronization

Our devices handle most data synchronization for you automatically.

  • What is synchronized: When a user enrolls or deletes a PIN, fingerprint, card, iris, or face on one device, that data is automatically published over MQTT. All other devices belonging to the same company will receive this update and synchronize the data. Time logs are also synchronized to ensure consistent access rules across all locations.
  • What is NOT synchronized: Device-specific settings like language, theme, and network configuration are not synchronized. This allows different locations to have different settings.

Your backend software should subscribe to these synchronization topics to keep your own database up-to-date.

Security (SSL/TLS)

All communication between the devices and your MQTT broker is encrypted and authenticated. We will issue you a set of SSL/TLS certificates (a public key and a private key) that you must configure on your MQTT broker. This guarantees:

  1. Confidentiality: All traffic is encrypted.
  2. Integrity: Messages cannot be tampered with in transit.
  3. Authentication: Only devices provisioned for you can connect to your broker.

Supported MQTT Brokers

You are free to use any MQTT message broker. We have direct experience with VerneMQ, HiveMQ, and Mosquitto and can assist with the setup process.