Overview
QR Code Unlock allows authorized users to gain entry by presenting a QR code to a Rhombus security camera or DR40 door controller. The camera recognizes the code, validates it against the Rhombus backend, and unlocks the door instantly when authorized. This implementation provides a fast, secure, and camera-authenticated method for controlled entry without requiring physical keycards, badges, or mobile apps.How It Works
1
Generate QR Code via API
2
An admin or integrated system generates a secure, time-bound QR code using the Rhombus API. The code is returned as a base64 string that can be converted to an image.
3
User Presents QR Code
4
The user displays the QR code on their mobile device or printed material and holds it up to a Rhombus camera assigned to the door.
5
Camera Authenticates & Unlocks
6
The camera reads and validates the QR code against the Rhombus backend. If authorized and within the valid time window, the door unlocks automatically.
7
Event Logging
8
Every unlock event is logged with visual evidence from the camera, providing a complete audit trail of access attempts.
Use Cases
QR Code Unlock is ideal for various access control scenarios:Office Visitors
Grant one-day or time-limited access to visitors without needing to issue physical badges.
Field Operations
Dispatch QR codes to technicians or contractors for temporary access to specific areas.
Multi-Tenant Buildings
Issue tenant-specific codes with customized durations for different access levels.
Deliveries & Access Windows
Schedule access during specific delivery hours with time-limited QR codes.
Prerequisites
Before implementing QR Code access control, ensure you have:- An active Rhombus account with API access
- A valid API key from the Rhombus Console
- At least one Rhombus camera or DR40 door controller configured for access control
- The UUID of the access-controlled door you want to manage
Generate a QR Access Code
Use thegenerateQRAccessCode endpoint to create a time-bound QR code for door access.
API Request
Request Parameters
The unique identifier of the door you want to authorize access to. This UUID can be obtained from the
getDoorsForOrg endpoint.Time in seconds the QR code will remain valid. Common values:
3600- 1 hour28800- 8 hours (work day)86400- 24 hours604800- 7 days
Response
The API returns a JSON payload containing the QR code data as a base64-encoded string:Base64-encoded image string of the QR code. Decode this to display or distribute the QR code.
ISO 8601 timestamp indicating when the QR code will expire and no longer grant access.
The door UUID this QR code is authorized to unlock.
Implementation Examples
Convert QR Code to Image
After receiving the base64 QR code from the API, you’ll need to convert it to a displayable image format.Email QR Code to Visitor
Here’s a complete example of generating a QR code and emailing it to a visitor:Python
Integration with Event Management System
Generate QR codes for event attendees:Python
Security Considerations
Time-Limited Access
- Set appropriate
validDurationSecvalues based on your use case - Shorter durations (1-8 hours) for visitor access
- Longer durations (1-7 days) for contractor or temporary employee access
- Never set unlimited duration codes
QR Code Distribution
Email Distribution
Email Distribution
Use secure email systems and verify recipient addresses before sending QR codes. Consider using encrypted email for sensitive access.
SMS Distribution
SMS Distribution
Verify phone numbers and use secure SMS services. Be aware that SMS may not be encrypted end-to-end.
Mobile Apps
Mobile Apps
Integrate QR code generation into your mobile app with proper authentication and user verification.
Printed QR Codes
Printed QR Codes
For printed codes, ensure physical security and proper disposal after expiration. Consider adding watermarks or other anti-copying measures.
Access Monitoring
- Review access logs regularly using the Rhombus Console
- Set up alerts for unusual access patterns
- Monitor failed access attempts
- Maintain audit trails of QR code generation and usage
Best Practices
- Validate Door UUIDs: Always verify door UUIDs before generating QR codes to ensure codes grant access to the correct doors.
- Implement Rate Limiting: If exposing QR code generation through your own application, implement rate limiting to prevent abuse.
- Log Generation Events: Keep records of who generated QR codes, for which doors, and with what validity periods.
- User-Friendly Expiration Times: When displaying QR codes, show the expiration time in the user’s local timezone.
- Test Before Distribution: Generate and test QR codes before sending to users to ensure they work correctly.
- Provide Instructions: Include clear instructions with QR codes on where to present them and what to expect.
- Error Handling: Implement proper error handling for API failures and invalid responses.
Benefits
No Physical Credentials
Eliminate the need for physical keycards, badges, or mobile apps. Users only need to display a QR code.
Touchless Entry
Completely contactless access—users simply show the code without touching any surfaces.
Visual Audit Trail
Every unlock event is logged with camera footage, providing visual evidence of who accessed the door.
Easy Revocation
Codes automatically expire based on the configured duration and can’t be used after expiration.
Flexible Integration
Integrate with existing systems like visitor management, event registration, or HR platforms.
Cost Effective
Reduce costs associated with physical credentials, card readers, and credential management.
Troubleshooting
QR Code Not Working
QR Code Not Working
Common causes:
- QR code has expired (check
expiresAttimestamp) - Incorrect door UUID was used when generating the code
- Camera is not properly configured for access control
- QR code image is damaged or unclear
- Generate a new QR code with a valid duration
- Verify the door UUID using the
getDoorsForOrgendpoint - Check camera configuration in Rhombus Console
- Ensure QR code is displayed clearly and at appropriate size
API Returns Error
API Returns Error
Common causes:
- Invalid API key or authentication headers
- Incorrect door UUID
- Door not configured for QR code access
- Insufficient permissions
- Verify your API key in the Rhombus Console
- Check that
x-auth-schemeheader is set toapi-token - Confirm the door UUID exists and is configured for access control
- Contact Rhombus support if the feature is not enabled for your account
Camera Not Reading QR Code
Camera Not Reading QR Code
Common causes:
- Poor lighting conditions
- QR code too small or too large
- Camera angle is incorrect
- QR code displayed on a reflective surface
- Ensure adequate lighting at the entry point
- Display QR code at 3-5 inches across
- Position the QR code perpendicular to the camera
- Avoid displaying on glossy screens—use matte screen protectors or print on paper
Next Steps
Webhook Integration
Set up webhooks to receive real-time access control events
Developer Community
Join the Rhombus Developer Community for support and updates
Rhombus Console
Manage your access control devices and settings
This feature is actively being developed. Stay tuned to the Rhombus Developer Community for updates on new functionality and improvements.