Resource Base
Table of contents

Thanks for downloading Dynamsoft Barcode Reader Package!

Your download will start shortly. If your download does not begin, click here to retry.

How to set full license in version 8.x

Different methods are used for setting trial and full license keys. In our demo or sample applications, we use .InitLicense() or .ProductKeys to set trial license keys.

For the purchased version, you need to use initLicenseFromDLS() to set the Handshake Codes for your licenses.

You can set the license by following the steps below:

  1. Activate the license
  2. Configure the license (optional)
  3. Set the license in the code

Activate the license

Once you purchase a full license from our online store, you can find your license information at Customer Portal.

To activate the license, click “Please first activate the license”.


On the next page, set an Alias for your license or leave the default Alias and click the “Activate” button.

Read more on What is an Alias


On the following popup window, click the “OK” button.


Then you can see the message “Activation secceeded!…”. Click “configure this new license item at this page” to continue.


You can repeat the above steps to activate other license keys.

Configure the license (optional)

After the license is activated, the Handshake Code will be generated automatically. Read more on What is a Handshake Code.

Basically, you can skip the step. But if you would like to edit the Handshake Codes for the license or view the statistics of a handshake code, please refer to how to manage the handshake code.

Set the license in the code

Code snippet in JavaScript:

    Dynamsoft.DBR.BarcodeReader.organizationID = "YOUR-ORGANIZATION-ID";// Please replace the organizationID with your own
    let reader = await Dynamsoft.DBR.BarcodeReader.createInstance();

Code snippet in C:

   char errorBuf[512];
   DMDLSConnectionParameters paramters;
   paramters.organizationID = "YOUR-ORGANIZATION-ID"; // Please replace the organizationID with your own
   DBR_InitLicenseFromDLS(&paramters, errorBuf, 512);

Code snippet in C++:

   int iRet = -1;
   char szErrorMsg[256];
   DM_DLSConnectionParameters dlspar;    
   dlspar.organizationID = "YOUR-ORGANIZATION-ID"; // Please replace the organizationID with your own
   iRet = CBarcodeReader::InitLicenseFromDLS(&dlspar, szErrorMsg, 256);
   if (iRet != DBR_OK)
        printf("Error code: %d. Error message: %s\n", iRet, szErrorMsg);
        return -1;

Code snippet in C#:

   DMDLSConnectionParameters dlspar = BarcodeReader.InitDLSConnectionParamters();           
   dlspar.OrganizationID = "YOUR-ORGANIZATION-ID"; // Please replace the organizationID with your own
   EnumErrorCode iRet = BarcodeReader.InitLicenseFromDLS(dlspar, out strErrorMSG);

Code snippet in Java:

   DMDLSConnectionParameters dlspar = BarcodeReader.initDLSConnectionParameters();
   dlspar.organizationID = "YOUR-ORGANIZATION-ID"; // Please replace the organizationID with your own

Code snippet in iOS (Objective-C):

   iDMDLSConnectionParameters* dls = [[iDMDLSConnectionParameters alloc] init];
   dls.organizationID = @"YOUR-ORGANIZATION-ID"; // Please replace the organizationID with your own
   _dbr = [[DynamsoftBarcodeReader alloc] initLicenseFromDLS:dls verificationDelegate:self];
- (void)DLSLicenseVerificationCallback:(bool)isSuccess error:(NSError * _Nullable)error
    NSNumber* boolNumber = [NSNumber numberWithBool:isSuccess];
    dispatch_async(dispatch_get_main_queue(), ^{
    [self->m_verificationReceiver performSelector:self->m_verificationCallback withObject:boolNumber withObject:error];
        NSLog(@"ifsuccess : %@",boolNumber);
        NSLog(@"error code: %ld:",(long)error.code);
        NSLog(@"errormsg : %@",error.userInfo);
        //UIImage *image =[UIImage imageNamed:@"AllSupportedBarcodeTypes.bmp"];
        //NSError* errormsg = nil;
        //NSArray* readResult = [_dbr decodeImage:image withTemplate:@"" error:&errormsg];

Code snippet in iOS(Swift):

  let dls = iDMDLSConnectionParameters();
  dls.organizationID = "YOUR-ORGANIZATION-ID";
  barcodeReader = DynamsoftBarcodeReader(licenseFromDLS: dls, verificationDelegate: self)
  func dlsLicenseVerificationCallback(_ isSuccess: Bool, error: Error?)
     //TODO add your code for license verification

Code snippet in Android:

   DBRDLSLicenseVerificationListener dlsListener = new DBRDLSLicenseVerificationListener() {
      public void DLSLicenseVerificationCallback(boolean success, Exception error) {
   DMDLSConnectionParameters parameters = new DMDLSConnectionParameters();
   parameters.organizationID = "YOUR-ORGANIZATION-ID"; // Please replace the organizationID with your own

Code snippet in Python:

 reader = BarcodeReader()
 connection_paras = reader.init_dls_connection_parameters()
 # Please replace the organizationID with your own
 connection_paras.organization_id = "YOUR-ORGANIZATION-ID"
     error = reader.init_licesne_from_dls(connection_paras)
     if error[0] != EnumErrorCode.DBR_OK:
 except BarcodeReaderError as bre:

Code snippet in Xamarin: Please refer to this article.

If you run into any issues, please contact Dynamsoft Support.


All license usage data is submitted to the Dynamsoft License Server (DLS) hosted by Dynamsoft. You can

Read more about the mechanism behind license tracking.

This page is compatible for:

Version 7.5.0

Is this page helpful?

YesYes NoNo

In this article:

latest version

  • Latest version
  • Version 8.6.0
  • Version 8.4.0
  • Version 8.2.5
  • Version 8.2.3
  • Version 8.2.1
  • Version 8.2.0
  • Version 8.1.3
  • Version 8.1.2
  • Version 8.1.0
  • Version 8.0.0
  • Version 7.6.0
  • Version 7.5.0
Change +
© 2003–2021 Dynamsoft. All rights reserved.
Privacy Statement / Site Map / Home / Purchase / Support