(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.data-privacy-src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-PF5R8F7');

Knowledge Base

Creating and Filling a Database

Creating a Database

Creating a database is easy. It’s simply done with the click of a button on the “Databases” tab on the CodeREADr website. “Add a Database” will allow you to do just that, and name it.

How to create a database

Notes on Databases

  1. You do not need to use barcodes generated by CodeREADr. Most clients use their own barcodes and simply upload the barcode values (IDs) to our servers or keep them on their own servers for validation.
  2. Depending on your use case, multiple Services can be associated with a single database. However, a Service can only have one associated database. This distinction is particularly important when checking for duplicate scans because checking if a scan is a duplicate or not is by Service, not the associated database.
  3. You can scan barcodes with hundreds of characters embedded in them. However, automatically we limit the barcode value in the database to 100 characters. To validate a scanned barcode value greater than 100 characters you’ll need to use our Alter Scan Value feature (Example D).

Two Reasons to Use a Validation Database

  1. Allow your app-users to check if the value of a scanned barcode (or an NFC tag, manual entry, search entry, etc.) exists in that database. If it does, it will return a Valid message to the app user and any related information (the ‘Response’ text). If the value is not in the database, it will return an Invalid message.
  2. Enable your app-users to see information related to the scanned barcode value right after each scan. In the Response, you can show them a plain text, structured text, HTML, and web content to help them in their assigned task.

Example Use Cases

  • Tickets with barcodes scanned will be matched to determine authenticity
  • Check if an item or asset exists in the database and show a description
  • Verify if a member, student or employee’s ID is valid and optionally their photo

Filling a Database

Filling a database is the next step. Our accepted format is simple.

CodeREADr supports the CSV (Comma Separated Values) file type, allowing you to quickly add barcodes to a database. These CSV files must be in the proper format or they will not be read correctly.  Also, you can use TXT files if they follow the proper format. Not following this format will result in an upload failure.


  • IMPORTANT: Excel can add hidden characters to the first column of the first row of a CSV file. That creates a validation problem. Google Sheets and Notepad do not have the same problem. However, if you prefer to use Excel, you should include column headers when editing your CSV file to avoid the validation problem.
  • The system will reject CSV files with more than 3 columns.
  • You must save it as a comma-delimited CSV file or TXT file.


Required Column Description
Yes 1 Value – Barcode to validate (100 character limit – contact support for options if you need more characters)
No 2 Response – Simple text, structured text, HTML, or web content for the app user to see after a scan.
No 3 Validity -Status of the value when scanned.
“1” for a valid response (the default).
“0” for an invalid response.

Note on Column 2: If you want to present the app user with text from multiple columns within your CSV file, use the concatenate function of your Excel, Sheets or other database programs. Then, merge those columns into one field before importing into CodeREADr.

Advanced Steps

  • Trim Values Function – Trim Values (the default) means that the server will remove any leading or trailing spaces that appear in the barcode value. However, if you want them there, un-select that option.
  • Webify – The Response text can be text; or text with clickable URLs; or presented using HTML (online or offline).
  • Invisible Characters – Sometimes the formatting in a CSV file adds invisible characters, polluting the data. Simply move the values into a TXT file, either by opening it in a text editor like Notepad or copy and pasting the values manually. Then, find the formatting errors, delete them, and move the values back into the file.
  • Contextual Variables – The Response text can present specific information to the app-user based on SCAN_VALUE, USER_NAME, USER_ID, and SERVICE_ID. For more information about using contextual variables in Response text, review here.
  • Languages and Special Character – If you’re importing special characters, you’ll need to use UTF-8 character formatting. So, if you are not sure how to save and export as UTF-8, please use Google Search for instructions. They will vary depending on the database service you use (e.g. Excel, Google Sheets, etc.).

Exporting a Database

On the Export tab of your database, you will see two options: Export Database and Export Barcode

Exporting your database from the CSV Export option will give you a spreadsheet of all your current uploaded values and response texts.

Exporting your database from the Barcode Export option will generate a zip file of all the current database QR codes. More on this can be found in our article on generating barcode images.

Alternatives to Importing a CSV File

You can add the values manually to a database. However, it won’t always be time-efficient to do so. Adding values this way can be done at any time, even after importing values from a file or auto-filling them. Simply navigate to the database you wish to add value to, go to the “Add” tab, and manually enter your barcode value and response.

Importing the values from a CSV or TXT file will be useful if the code values exist already, as we’ve shown. However, if you have a web developer on staff, they can make use of our codeREADr API to automatically insert values and responses from other web apps and integrations.

Auto-fill is a good option if you want to generate values for your barcodes. Also, you can use these to print these codes. After filling the database, export a CSV file full of these values and codes, and send them to be printed. However, if you already have codes you want to scan, do not use auto-fill.

Go to Top