Blockchain Ardor Part 7: Tutorial on Custom Bundlers for Child Chain Transactions on the Ardor Platform — Account Property Bundler Template
Welcome back to the Blockchain Ardor — Medium Series! This article provides details on how to set up a custom transaction bundler for child chain transactions. If you are new to the concept of bundlers and the way they help businesses sponsor end user fees and hedge against market volatility, it is recommended that you begin with the Basic Bundlers article here.
In August 2018, Jelurida released 5 custom bundler templates that can be interwoven to create complex customized fee structures for end users for blockchain based apps and services. In this article, we will be reviewing the process for creating a whitelist of accounts so that your bundler only pays to package transactions originating from those accounts. For a list of the other bundler templates that are available, see the release notes here. Remember these are some common options to make adoption easier for businesses — but if these do not meet your needs, the option to write your own custom bundler is always available.
The information presented in this piece represents a modified version of the information in the 10-minute long video on youtube titled, “Blockchain Ardor: Demo of Custom Bundlers, 0 Transaction Fees for App Users, and Hedging” — available here.
If you would like to set-up a custom bundler, you must hold a minimum of 1000 Ardor in your wallet and you must download the Full Ardor Client Wallet from the Jelurida website. An article explaining the download process is available here.
Limiting the Transactions You Pay to Bundle: Account Property Bundler
Consider this — if you were to set up a basic bundler like we did in the previous article in this series here, and you set the “Minimum Rate” to 0, there is a high likelihood the network would be spammed and your Ardor would be burned through with no value creation. This is because literally anyone could take advantage of your 0-fee bundler. With the Account Property Bundler, we can limit this pool of participants. Businesses that charge membership fees already have a list of verified accounts. Therefore, you can utilize the Account Property Bundler to create a whitelist so that your Bundler only packages 0 fee or low-fee transactions originating from those accounts.
Setting Up the Account Property Bundler
This process is a bit more advanced but it only takes a couple of minutes. The first thing we need to do is edit the nxt.properties file in the “conf” folder within the Ardor application because this functionality is not available by default. If you aren’t familiar with the nxt.properties file, please refer to the resources here.
Open your nxt.properties file and add the following:
Save the updates.
Next, fully shut down your Ardor node. Once it is off, start the node again.
Log in to the Ignis chain.
Once we log in, let’s select “Account Properties.”
In the upper right corner, click “Set.”
A new dialogue appears.
Here, we will enter the first whitelisted address in the “Recipient” line. Under “Property” we will enter “bundling” and under value we do not need to enter anything. Perhaps you have client ID numbers or other information you want to include.
Enter your passphrase, click calculate, and then hit “Set Property.” Wait for the next block to update and you will see the account listing on the “Outgoing” tab of the Account Properties.
Editing and Updating Account Properties
You can edit this update or delete the properties of this account using the functions in the “Actions” column. Or, simply continue setting up more whitelisted accounts. Once you are satisfied with the accounts on your list, you’ll need to launch your Bundler with the special rate using the process described in the Basic Bundler article here.
Creating Tiered Fee Structures with Bundlers
An important point to understand is this — the Bundler on this node will only function for the accounts listed here. If you would like to run a tiered fee structure, you will need to run a separate node, whitelist, and bundler per tier. For example, if you want a public bundler at the market rate and one with 0 fees for your paying members, you will need to run 2 nodes — the public node could utilize the basic bundler functionality, while the 0 fee member rates could be achieved by creating a verified list of accounts using the Account Property Bundler on a separate node.
Closing Thoughts on Bundlers
That’s it for bundling. Feel free to begin experimenting with this powerful functionality and remember to take full advantage of the 5 custom bundler templates provided by Jelurida (details here). Additionally, developers are always welcome to create their own custom Bundlers at any time.
Hopefully, this article provided a sense of the strategic business design of the Ardor platform. The multi-chain environment has created the ability for businesses to customize fees for their end users while operating with predictable day-to-day transaction rates.
Continuing Your Learning
Continue exploring the revolutionary features of Ardor here by reading about the new Transaction Voucher function, which eliminates the potential for wiring or sending funds to the wrong account address. Transaction Vouchers make it easy to send dual signature invoices and share distributions on the blockchain. They also make it possible to create counterfeit-proof “deposit” and “withdrawal” vouchers.
Turing-complete lightweight contracts represent the next generation in smart contract technology and it’s a feature exclusive to the Ardor ecosystem. These contracts eliminate costly data migrations and make it cheaper and easier for businesses to integrate their operations with the blockchain. Oracle contracts are also a possibility.Written guidance on lightweight contracts is available here and here, and a 25-minute seminar discussing the technology is available here.
Blockchain Ardor Part 7: Tutorial on Custom Bundlers for Child Chain Transactions on the Ardor… was originally published in Ardor on Medium, where people are continuing the conversation by highlighting and responding to this story.