Last Modified June 10, 2020

Configuration of eCommerce Connectors

  1. Overview
  2. Supported eCommerce Solutions
  3. Subscription Licensing
  4. Feature Licensing
  5. DNA DIRECT Connector
  6. Just in Time Code Generation with eCommerce
  7. How a transaction is validated


Connecting your eCommerce solution to software_DNA is fast and easy and allows a fully automated License fulfillment process for your customers and 24/7 sales for your business.

By connecting an eCommerce solution, all the completed purchase transactions are relayed to the software_DNA servers, processed, and a License Activation Code is generated or reserved (configurable setting) and issued to your customer, either by software_DNA or by the eCommerce solution. An Email is sent to the purchaser, and for some eCommerce systems, the License Activation Code is displayed on the Purchase Confirmation screen of the eCommerce solution.

You can optionaly receive notification emails for each completed eCommerce transaction. Key information from each transaction is stored on the DNA Servers and can be viewed and downloaded from the Code View and Report screens.

We have detailed Integration Guides for each of the eCommerce solutions that we currently support. The Guides include instructions and screen shots for configuring the connection on both the software_DNA Control Panel, and on the eCommerce Control Panel. Don’t hesitate to contact us at for any questions on how to set up these connections.
See eCommerce Connector Guides   .

If you manage your own store-front application for eCommerce, you can use our DIRECT Connector to directly connect to the software_DNA Servers (see below)


Supported eCommerce Solutions

We currently support the following eCommerce solutions

You can connect multiple eCommerce systems to the same product simultaneously if required.

If your eCommerce solution of choice is not listed, please contact Technical Support for guidance.


Subscription Licensing with software_DNA

Subscription Licensing is defined as a license scheme requiring periodic payments (ex: monthly payments) to keep the software license active. If the periodic payments are stopped or the Susbcription is cancelled, then the software license is disabled.

A Subscription Licensing offering requires the connection of two critial components:

  • A secure Licensing solution for the software application to provide control over the subscription and protection from piracy (i.e. software_DNA)
  • A Subscription Manager (i.e. eCommerce solution or store-front solution) to manage the financial side of the subscription (i.e. sign-up, payments, changes, cancellations)

See Subscription Licensing     for details on the eCommerce Connections that currently support Subscription Licensing.


Feature-Based Licensing with software_DNA

With Feature-Based Licensing you can offer multiple variants of your application at different price points using configuration information embedded in the software_DNA License file (the ".CDM" License file). You can specify Features or attributes for a specific License Code that your Application can use to tailor its features / capabilities on start-up (for example "Extended Templates").

Depending on the eCommerce solution, the following is supported:

  • Feature Data configured in software_DNA
  • Feature Data configured in the eCommerce system, which overrides the software_DNA configuration
  • License Code Validation prior to accepting an Feature Upgrade purchase and prior to updating the existing License Code with new Feature Data from the eCommerce solution

See Feature-Based Licensing     for details.


DNA DIRECT Connector

Our DIRECT Connector interface allows you to connect your website/server directly to software_DNA servers to generate, reserve and retrieve License Activation Codes similar to the eCommerce connections. Ideal when you want to fully manage the purchase experience for your customers, although requires some efforts for coding and managing your own store-front.

Using the DIRECT Connector Interface, you can:

Action Description
Send a License Code

distribute a License Activation Codes directly to your users via email automatically, typically following a purchase of your software by a buyer on your storefront.

This is similar to working with eCommerce Systems like KAGI, PayPal, PayPro, FastSpring, etc, except that it is your website or storefront that is sending the "trigger" to the software_DNA server

Get a License Code

retrieve License Activation Code(s) back to your server (via the HTTP response), typically following a purchase of your software by a buyer on your store-front.

In this case, you would be responsible for communicating the License Activation Code(s) to the buyer. software_DNA would not send an email to the buyer

Get an Evaluation License Code

retrieve an Evaluation License Code(s) back to your server (via the HTTP response), typically after a potential buyer fills out an Evaluation registration form on your store-front.

In this case, you would be responsible for communicating the Evaluation License Code to the potential buyer. software_DNA would not send an email to the potential buyer.

Validate a License

verify that a License Code is valid before accepting an upgrade order for that specific License Code or for the new version of your application

Recharge a License

Recharge an existing License Activation Code, typically following a purchase of a Timed License renewal for your software by a buyer on your store-front.

The specified "renewal" period (in days) would be added to the expiration period of the existing License Activation Code.

For more information on how to implement "Timed Licenses and Renewals", see Timed Licenses and Renewals  

Revoke / Ban a License

Will revoke / Ban a License on the DNA Server. The next time the License is used and performs a DNA Server Validation, the License will be disabled.

Query a License

allows you to retrieve a License Activation Code with the User email address

For more information, consult the DIRECT Integration Guide available.


Just-in-Time or Reserve Setting for allocating License Codes with eCommerce

Two methods are possible for the allocation of License Codes to fulfill an eCommerce transaction. The recommended approach is Just-in-Time, as this ensures a fully automated, 24/7 fulfillment process for your License Activation Codes, but a non-JIT approach can be requested:

Just-In-Time (JIT)

When a valid eCommerce transaction is received, software_DNA will generate in real-time a new License Activation Code based on the Code Generation settings specified for the product.

The License Activation Code state will be set to "Reserved" to indicate the License Code has been distributer to a user.

With this setting, you do not need to generate codes yourself, they are automatically generated as required. Existing available codes will not be used and continue to be available for manual distribution if required.

non-JIT or Reserve

When a valid eCommerce transaction is received, software_DNA will select the next Available License Activation Code, reserve it and distribute the License Code to the user via email or back to the eCommerce system.

License Codes must be available or the transaction will fail, so it is important to ensure sufficient License Codes are always availble and set the "Low Activation Code Warning" thresholds in the Product Configuration so that you are notified by email when the available License Codes falls below this threshold.

You would use this method if you plan to generate your own License Codes and upload them to software_DNA. You will need to generate or Upload License codes on a regular basis.


What happens when the DNA Server receives an eCommerce Transaction

When a purchase confirmation is received by the DNA Server, the following will occur:

  • The "confirmation" is authenticated and the content provided is validated. The content will include identification fields that are configured on the eCommerce system AND in the software_DNA eCommerce configuration and these must match for the transaction to be processed. Validations include verifying that the software price is above the <Minimum Software Price> setting of the Product.

  • A License Activation Code is "reserved" or "generated" by the DNA Server. This is an option set up in the Control Panel. the License Code is generated using the Code Generation settings for this product.

  • The License Activation Code is then sent to the user’s email address or sent back to the eCommerce system (depends on the eCommerce system). If the DNA Server sends the email, it uses the Send Activation Code custom Email. The content of the email can be customized for each Product from the Product View screens.
    See Custom Emails     for details.

  • Reporting options are available for you and set at the Control Panel. Emails can be sent for each transaction or you can download the information from the Control Panel for a given period of time.