Barcode and QR code keyboard scanner app

Barcode & QR

Best barcode scanning performance from a mobile app

- Created by Nikola Antonov

Barcode and QR code keyboard scanner app

Why is it special?

With this keyboard you don't need all of those expensive third party barcode scanners.

You can save tons of money

Easy to use

Extremely easy to use! Easy step by step installation

Great performance

Very small footprint. Very efficient in terms of performance!


Can be customized based on client's needs. (functional and stylistic)

Scan and enter barcodes and QR codes into any app with this android barcode scanner keyboard! Download “Barcode & QR code Keyboard”, the best barcode scanner keyboard available on Google Play. The innovative “Barcode & QR code Keyboard” enables you to scan barcode and QR code data directly into apps. The scanned data appears immediately - as typed by yourself - in the active input field of the app you are currently using. “Barcode & QR code Keyboard” also includes functionality for multiple barcodes and QR codes scanned at a time. Now stop reading and start downloading this extremely fast, performing and accurate barcode QR scanner keyboard ever! Do you want some more details about it? Here you go then!

EAN-13, EAN-8, UPC-A, UPC-E, Code-39, Code-93, Code-128, ITF, Codabar, QR Code, Data Matrix, PDF-417, AZTEC

Scanner reads the following formats:

  • 1D barcodes: EAN-13, EAN-8, UPC-A, UPC-E, Code-39, Code-93, Code-128, ITF, Codabar
  • 2D barcodes: QR Code, Data Matrix, PDF-417, AZTEC

Awesome Features

Multiple barcodes mode

The application can scan multiple barcodes at a time.

Scan with automatic flashlight

Automatically start the flashlight before each scan

Read particular formats

Select which formats should be read

Auto submit

Automatically send enter key event after each scan

Small focus area

Scan a very small portion of the screen which gives you the ability for very precise scanning

Scan with volume key down

Start the scanning process using the volume key down button


REST API support. Very easy integration with third party apps using REST communication









Pricing Plan

  • Please Contact us for more information about pricing multiple devices.
  • For each customer, a custom build can be made with custom functionalities
  • Each customer which uses a custom build, pays a lifetime license.
  • The price of the license depends on the number of licenses the client needs.
  • Also this custom-builds can be customized so the keyboard can be stylized based on the corporate colors and logo of the client.


Web Integration

This code snippet shows you an example in plain JS, how you can integrate the scanning functionality inside your Web application:

// IMPORTANT! You need the app with version 7.8.0 installed on the device!
// This code is just for demonstration purposes!
// To call the scanner from your web app, you have to href this url
// niko.barcode.keyboard://scan/yourDesiredUrlEncodedPath#{CODE}
// Example: <`a href="niko.barcode.keyboard://scan/yourDesiredUrlEncodedPath#{CODE}">test<`/a>

function processBarcode(barcode){
    // Create div element and set the barcode value inside this div
    var div = document.createElement("div");
    div.innerHTML = barcode;

function nikoBarcodeListener(e){
    // Event listener for processing scanned data
    localStorage["nikoBarcodeKeyboard"] = "";
    if(e.url.split("\#")[0] === window.location.href){

    window.removeEventListener("storage", nikoBarcodeListener, false);

if(window.location.hash !== ""){
    localStorage["nikoBarcodeKeyboard"] = window.location.hash.substr(1);
    window.location.href="about:blank";//In case self.close is disabled
    // register event listener for capturing url changes
    window.addEventListener("hashchange", function(e){
        window.removeEventListener("storage", nikoBarcodeListener, false);
        var hash = window.location.hash.substr(1);
        if (hash !== "") {
            window.location.hash = "";
    }, false);

function startScanner(){
    // This function will trigger the scanning process for the current url
    // Set currentUrl so the scanner will know where to return the result
    var currentUrl = window.location.href.split("\#")[0];
    // Register event listener which will process the scanned data after scanning is completed
    window.addEventListener("storage", nikoBarcodeListener, false);
    // You need to add the {CODE} placeholder in your url string so the scanner can replace it with the value"niko.barcode.keyboard://scan/" + encodeURIComponent(currentUrl + "#{CODE}"),'_self');

// Then you add for example a button which will trigger the scanner
<`button onclick="startScanner()">Start scanning<`/button>

Third party android app integration

This code snippet shows you an example, how you can use Niko Barcode & QR code keyboard from third party apps:

public class MainActivity extends AppCompatActivity {

    private Integer MY_REQUEST_CODE = 1333; // set this value to whatever you want
    private TextView textView;

    protected void onCreate(Bundle savedInstanceState) {

        Button button = findViewById(;
        textView = findViewById(;
        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {

    protected void startTheScanner() {
        Intent i = new Intent("com.nikosoft.nikokeyboard.START_BARCODE_SCAN");
        startActivityForResult(i, MY_REQUEST_CODE);

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(requestCode == MY_REQUEST_CODE) {
            if(resultCode == Activity.RESULT_OK){
                String value = data.getStringExtra("barcode_value");

REST API integration

This are the steps to configure the REST API

REST Configuration
1. Choose event on which you want the barcode value to be sent .
2. Type in your desired URL to send the data to.
URL ex:
3. (Optional) Type in client username
4. (Optional) Type in client password

JSON POST example:
{"barcode_data":"123457","username":"niko keyboard","password":"1234"}

Privacy policy

Last Modified: July 1, 2022

1. What is this app all about?

Niko Barcode & QR code Keyboard is fast and fun way to easily scan barcodes. It is an Android software keyboard with integrated barcode reader.

2. What information does this app collect?

This app requires to use the CAMERA of the phone only for scanning barcode data. It does not collect or save any of the scanned data on third party remote servers. It does not collect or save any of the data that the user is typing while using the keyboard. This app collects only Google Analytics information.

3. How analytics information is used?

Google analytics information is used only for analysing users behaviour withing the app. What parts of the app are most used.

4. Is this analytics information shared?

No, all analytics data is private for the developer.

5. Revisions to the Privacy Policy

I may change this Privacy Policy from time to time. But when I do, I’ll let you know one way or another. Sometimes, I’ll let you know by revising the date at the top of the Privacy Policy that’s available on this website and mobile application.