QR Codes¶
QR Code Verification¶
QR codes are automatically generated for confirmed bookings to enable park staff verification at entry points.
Booking Response with QR Code¶
When retrieving a confirmed booking via GET /bookings/{bookingId}, the response includes:
{
"bookingId": "abc123-...",
"bookingStatus": "confirmed",
...
"qrCode": {
"dataUrl": "data:image/png;base64,iVBORw0KG...",
"verificationUrl": "https://reserve-rec.bcparks.ca/verify/{bookingId}/{hash}"
}
}
dataUrl: Base64-encoded PNG image (300x300px) for display/printing
- verificationUrl: Admin-facing URL containing booking ID and HMAC signature
Note: QR codes are only generated for bookings with bookingStatus: "confirmed". Cancelled, pending, or expired bookings return qrCode: null.
Verification URL Format¶
https://{domain}/verify/{bookingId}/{hash}
Verification Response (Admin Only)¶
When an admin scans the QR code, the verification endpoint returns:
{
"valid": true,
"bookingId": "abc123-...",
"status": "confirmed",
"statusDetails": {
"isConfirmed": true,
"isCancelled": false,
"isExpired": false,
"isPending": false
},
"booking": {
"bookingId": "abc123-...",
"displayName": "Golden Ears Park - Backcountry Trail",
"startDate": "2025-06-15",
"endDate": "2025-06-17",
"guestName": "John Doe",
"partySize": 4,
"collectionId": "...",
"activityType": "backcountry",
"entryPoint": "...",
"exitPoint": "...",
"vehicleInformation": {...}
},
"verificationMetadata": {
"verifiedAt": "2025-06-15T10:30:00Z",
"verifiedBy": "admin-user-id"
}
}