This article explains the features of the Code Scanner (QR Code/Barcode Scanner) block and how it can be used to design your app.

The Code Scanner block supports various formats of QR Codes and Barcodes. Below are the supported code formats:
Click on the block and configure it by editing on the right panel.
.png)
The label is the name of the block that the end user sees in the app.
Example: Scan the Product ID
The description is the additional information provided to the end user which will be displayed below the input area.
Example: Hold the scanner properly to fit the frame
This is how the Code Scanner block with the label and the description will look to the end user.
%252520(1).png)
Enable this option if you want the user to compulsorily input the data. If enabled, the end user can submit if and only if the data is entered in this field.
Use this option to show the advanced options to configure the single line text block.
Enabling this option will allow the user to enter the QR Code or the barcode manually, without scanning. This becomes important when the codes are not scannable or distorted.
Disable this option if you do not want the users to modify the codes that are scanned by the camera.
If this option is enabled, the Scanner will open automatically when the user opens the App. This is useful for apps where users will be creating submissions without interacting/touching the phone/tablet devices.
Use this if you want to show or hide a field under certain conditions. It accepts the standard Clappia Formulae, similar to conditional sections.
Example: When the user enters the employee name then the Scan field is displayed and will be accessible to use.
%252520(1).png)
This option is enabled by default. End users can edit the value entered in this field after creating a submission. Disable it if you do not want the end users to edit the submitted value.
Enable this option to scan and pull data from one clappia app to another in your workplace.


The master app from which you want to pull the data.
Select any one of the fields as a reference to pull data from the master app.
Select the fields from the master app that you need to pull into the present app.
Enable this option if you want the end users to pull all the submissions from the master app.

The Advanced Label option allows you to change the label of a field dynamically based on a condition you define. Instead of always showing the same fixed label under the ‘Basic’ tab, the field can display different labels depending on requirements of the form. Use spreadsheet-like functions such as IF, AND, OR, etc. and make use of other field variables to set your conditions. Type @ and select the field.
This is useful when the meaning of a field changes based on context, business logic, or user choices.
For example:
If you have a dropdown named Scan with options “Product Scan” and “Asset Scan”.
Depending on what the user is scanning, the label should reflect it.
So:
– For Product Scan, show “Scan Product Code”
– For Asset Scan, show “Scan Asset Code”
Formula:
IF({scan} = "Product Scan", "Scan Product Code", "Scan Asset Code")
This allows the same field to adapt its displayed purpose without needing multiple separate fields.
The Advanced Description option works exactly like Advanced Label, but it changes the description text instead. This is useful when guidance or instructions for a field need to change depending on earlier answers.
For example, using the same scenario from Advanced Label:
If you have a dropdown called Scan with options like “Product Scan” and “Asset Scan”, you may want the description of your Code Scanner field to guide the user differently depending on what they selected.
So:
– If the user selects Product Scan, the description could say: “Scan the product barcode to auto-fill product details.”
– If the user selects Asset Scan, the description could say: “Scan the asset tag to fetch asset information from the system.”
Formula:
IF({scan} = "Product Scan",
"Scan the product barcode to auto-fill product details.",
"Scan the asset tag to fetch asset information from the system.")
This helps users understand what is required from them without showing unnecessarily long or irrelevant instructions.
Additional Examples (Apply to Both Advanced Label and Advanced Description)
1. Showing nothing until a selection is made
For example, if you have a dropdown field called Visit Category with options “Routine” and “Urgent”, you may want the label or description of a field to remain blank until the user first selects a category.
Once a selection is made:
Formula (can be used in either Advanced Label or Advanced Description):
{visit_category}The label/description stays empty until the dropdown has a selected value.
After the user picks an option, the selected text (Routine or Urgent) becomes the label or description.
2. Changing label/description based on language selection
For example, if your form includes a dropdown field called Select Language with options English, Spanish, and French, you can show the label or description in the selected language.
So:
Formula (can be used in either Advanced Label or Advanced Description):
IF({select_language} = "English", "Enter details", IF({select_language} = "Spanish", "Ingrese detalles", "Entrez les détails"))The formula returns the text for the selected language.
Only one label/description is shown at a time, depending on what the user picks in the Select Language dropdown.
1. Variables do not change
When a field is created, its variable name is derived from the label you set in the Basic tab. That variable name is what you must use in formulas, workflows, and other logic. The visible label or description shown by Advanced Label / Advanced Description does not change the variable name.
2. Submissions tab: table view vs right panel
In the Submissions area, the table view always displays the labels from the Basic tab. When you open an individual submission, the right panel shows the labels and descriptions as they appear in the form (i.e., the Advanced Label and Advanced Description applied for that submission). This keeps the submission list consistent while letting reviewers see the context-aware labels and descriptions when viewing a record.
3. Bulk Edit shows Basic tab labels and descriptions
When you need to Bulk Edit submissions, the spreadsheet you download shows the labels and descriptions from the Basic tab only. Advanced Label and Advanced Description are not applied in Bulk Edit, so keep that in mind when preparing bulk updates.
4. Some fields cannot be used inside Advanced Label/Description formulas
Certain block types do not expose a variable that can be referenced in Advanced Label or Advanced Description. If a block does not expose a variable, you cannot use it inside the formula.
Geo Address
GPS Location
PaymentGateway
Audio
Live Tracking
Signature
Code Scanner
Nfc Reader
Get Data from RestApi
Get Data from Other Apps
Get Data from Google Sheets
Get Data from Database
AI Block
Text, HTML & Embedding
Attached Files
Image Viewer
Video Viewer
PFD Viewer
Code block
Progress Bar
Action Button
However, you can use the print settings to generate QR codes for any field submission.
<iframe width=\"200\" height=\"100\" src=\"https://www.youtube.com/embed/ERPPZzAaAIQ\" title=\"Generate QR Codes ● Clappia App Building ● No-Code Low-Code Platform\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen></iframe>
<iframe width=\"200\" height=\"100\" src=\"https://www.youtube.com/embed/_uxTCldfMtA\" title=\"Clappia App Building ● Using QR Code / Barcode Scanner Block Part 2 ● No-Code Low-code Platform\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen></iframe>
L374, 1st Floor, 5th Main Rd, Sector 6, HSR Layout, Bengaluru, Karnataka 560102, India
3500 S DuPont Hwy, Dover,
Kent 19901, Delaware, USA

3500 S DuPont Hwy, Dover,
Kent 19901, Delaware, USA
L374, 1st Floor, 5th Main Rd, Sector 6, HSR Layout, Bengaluru, Karnataka 560102, India

