Article sections

    What Is Kiosk Mode?

    With our Kiosk Mode & Locked Mode, you can use the codeREADr app for online and offline ‘unattended’ scanning applications, such as attendance check-in, surveys, loyalty rewards, etc.

    Also, it’s useful when you want to limit your users’ ability to only scanning and manual entry, and not expose other features.

    On the Advanced tab, when creating or editing a Service, you will find the option to select ‘Kiosk Mode’. This allows you to password-protect access to the app’s settings and other features.

    When you use this with Apple’s Guided Access, you can restrict the use of the iOS device to the codeREADr app and disable the hardware buttons. For Android devices, you can use screen pinning. Then, optionally block the Back and Overview buttons.

    To see unattended scanning you can view this short video. Need help setting up self-scanning? – please look at this blog article

    Note: This video was taken before the kiosk mode was available but it gives you the basic idea of how scanning works with QR Codes and RFID/NFC credentials.

    What Does It Look Like?

    First, the Admin sets up Guided Access in the device’s settings. Next, the Admin signs into the codeREADr app with the credentials you’ve issued. Then, the admin will see the authorized service(s).

    kiosk services

    Admin then taps the appropriate Service which by default is in the kiosk mode. Notice the buttons for Manual Entry, Lookup, History, and Settings are removed as are the navigation buttons. The only action available to non-admin is to tap the screen to open the camera for scanning.

    kiosk tap to scan

    Admin can tap the lock icon to unlock the kiosk mode. They can choose a different Service, upload scans (if a manual upload is necessary) and access the app’s settings. By default, the app uses the rear-facing autofocus camera. However, you can select the front camera in the app’s settings after unlocking the kiosk mode.

    kiosk keypad

    Contactless Scanning with Kiosk Mode

    This video shows an iPad set up in the Kiosk Mode. It is an ideal way to enable contactless self-scanning. Also in the video is an iPhone set up in the Kiosk Mode and scanning behind glass.

    How to Set Up Kiosk Mode

    On the Advanced tab, when creating or editing your Service(s), select the Kiosk Mode.

    Then, copy the text from the example script and paste it into the form field, including the {} brackets. If you remove any string, remove it entirely. Also, keep the comma after the string EXCEPT for the last string.

    { 
    "pin":"1234", 
    "stop_auto_next":"true", 
    "android_screen_pinning":"true", 
    "webify":"<curl>https://example.com/kiosk/</curl>", 
    "manual_input":"true" 
    }

    Notes on the Example Script

    • Replace 1234 with whatever password you want the admin to use to unlock the kiosk mode.
    • If you don’t want the app user to tap Next but you want the app to stop at the kiosk mode’s Tap to Scan screen, enable Auto-Next Scan but include the “stop_auto_next” string in the kiosk modes form field. If you don’t have Auto-Next Scan enabled and you want the app to stop at the kiosk mode’s Tap to Scan screen, still include the “stop_auto_next” string in the kiosk modes form field.
    • Keep the “android_screen_pinning” string if you’ve enabled pinning on your Android device and want ‘pinning’ to start automatically.
    • If you want to use the default image (i.e. the ‘finger-tapping’ image), remove the entire “webify” string. Otherwise, you can replace this string with a custom URL for branding purposes.
    • Use “manual_input” to enable app users to manually enter values in case you have the damaged barcode or NFC tag. If you don’t add this string, the default is no manual input.

    Optional Branding Instructions

    You can insert your own web URL in place of the default ‘finger-tapping’ image. Then, you can present your logo (or your client’s logo) and instructional information at kiosk. Also, you can have different logos and instructional information for each kiosk service you create.

    Important considerations: 

    1. You need to have Internet connectivity to load the logo URL. Then, the iOS app will remember the content after it’s been online at least once. However, the logo URL will not load on the Android app without connectivity.
    2. Avoid loading style or content dynamically with the logo URL because only static content will load when offline, even with iOS.

    Important Settings

    SD PRO Scan Engine

    The SD PRO camera scanning engine is required for reliable scanning with the front camera. If your account isn’t set up with SD PRO you should upgrade.

    Auto Sign Out

    The app will auto-sign out your app user under these conditions:

    1. The app is in sleep mode for 4+ hours.
    2. The device loses power.

    With iOS devices, you can configure Guided Access to set the device so it never enters the sleep mode. With Android, we added an option in the app’s settings called “Keep Screen On” because not all device makers offer an unlimited option like iOS.

    If signed out of the app, the app-user will need to sign in again. The app will save the sign-in credential if the user checks ‘Remember Me’.

    Also, if the app-user has a single Service assigned and no service Description, upon sign in, the app will auto-open the assigned service. Thus, it keeps the app-user from signing into the wrong service.

    Refreshing Services

    If the device doesn’t enter the sleep mode and is not off, you don’t have to refresh it. Because the Kiosk Mode is sometimes ‘always on’ and often unattended, the app will refresh services every 24 hours if there’s Internet connectivity. Internet connectivity is important because the app needs to connect to our server at least once every 5 days to reset the token.

    Customizing the Response View

    There are several ways to customize the response screen for your specific application.

    • The Alter Response feature allows you to change what is presented after a scan. You can use text or HTML for the response.
    • The Custom Response feature allows you to rename labels, hide labels, and change colors.

    Using these options will improve the user experience.

    Other Considerations

    You should disable automatic app updates and not keep the camera open indefinitely. Also, if the device is not active for extended periods, close the camera after each scan. You can enable that on the Advanced tab when creating your services. For instance, include the “stop_auto_next” string in the Kiosk Mode setup as shown above.

    in Settings