InstallAware for Windows Installer
 

New Ethereum Setup Project

This template allows you to sell your software directly without having to rely on entities such as banks or credit card companies, leveraging the decentralized Ethereum cryptocurrency and its integrated Blockchain recordkeeping.

The fields and settings below are saved in your new setup project, primarily in the call made to the ETH Transaction plug-in. You may freely revise any of these settings after your project has been created.

Connection

The first step in processing decentralized cryptocurrency transactions is connecting to the Blockchain.

Connect to blockchain through InstallAware's account (low volume)

Select this option to skip the task of setting up and maintaining your own Ethereum node, instead using a pre-defined account.

Since this account is shared by all developers, and peaks at 100,000 queries per day as of this writing, no service level guarantees are available with this option.

When you select this option, the Gateway URL field will be populated automatically for you.

Mainnet (real money)

Transactions will be performed using real Ethereum cryptocurrency.

For production use, ensure to select this option.

Testnet (play money)

Transactions will be performed using freely obtained (and worthless) Ethereum testing cryptocurrency on the Ropsten testnet. Transactions will still be recorded and retrieved normally.

Select this option during testing and development only.

Connect to blockchain using your private account (recommended)

You may configure and maintain your own Ethereum node, or simply create an account at any service provider website to connect to the Blockchain through their professionally serviced node.

When you select this option, the Gateway URL field will not be automatically populated for you - please refer to your service provider documentation for the relevant details.

Again, please refer to your service provider for their service level guarantees available with a connection plan you may choose.

Gateway URL

If it was not automatically populated, type your connection address here.

Product

The next step is to define your product and price.

Suggestions on how to generate your product code

To automatically generate a code, select one of the options available in this drop-down list.

Unique Code

You may type in any unique identifier in this field.

Any variables entered in this field will be resolved at runtime.

Price (in USD)

Type the price of your product in this field.

Do not use any currency symbols or thousand separators.

You may use a period (.) as a decimal separator.

Payment

The last step is entering your payment address, and choosing your licensing model (arising out of how you choose to record your customers's machines on the Blockchain).

Charge for each new installation, even if on the same PC

Your setup script will use the Generate GUID command to create a brand-new unique identifier each time setup is run.

Therefore, since each installation would be recorded under a newly generated unique identifier in the Blockchain, any reinstallations without making a new payment become impossible.

However, if setup is cancelled or fails for any reason, any rendered payment would not be forfeit - the unique identifier would be saved using the Set Variable command's Set Persistent Variable mode.

Charge for each unique Windows instance, even on the same PC

Your setup script will use the Get System Settings command with the Pseudo Unique Machine Identifier parameter to identify each machine based on a registry key created during the first time installation of the operating system.

Since this identifier may not always change after an operating system image has been cloned to different hardware, your software could be reinstalled on a potentially unlimited number of cloned machines with this approach, after having been purchased only once on a clone (or original image).

However, when the operating system is manually reinstalled, this identifier would change - therefore requiring new payments, even if the underlying hardware (and operating system version) did not change at all.

Charge for each unique hardware and operating system combination

Your setup script will use the Generate System ID command to generate a unique hash identifying the current hardware and operating system setup is running on.

Since this hash is immutable as long as the underlying equipment remains unchanged, reinstallations would be permitted in the same exact environment without limitation.

However, upgrading the operating system, or changes to the underlying hardware, would require making a new payment before permitting an installation; as the new hash would not have yet been saved in the Blockchain.

Charge any customer only once, allowing installations anywhere

Your setup script will use the hard-coded string literal UNLIMITED to record installations in the Blockchain, thus permitting unlimited installations everywhere with a single purchase.

Different users would still need to purchase their own copy of the product, but once purchased, the product would be available to them everywhere.

Your Public Key

Type in your Ethereum wallet public key here.

Ensure you update this field - the default value here is only an example, and would forfeit all your revenue!

As of this writing, you may easily create your wallet using third party services such as metamask.io.

Please note that any services you may receive from third parties are subject to their terms entirely.