HOWTO: Choose between available coin adapters

An overview to help you understand the available coin adapters for Bitcoin and Altcoin Wallets, and the differences and trade-offs between them.

Bitcoin and Altcoin Wallets for WordPress is a plugin that allows your users to maintain balances of various cryptocurrencies on your site.

The plugin does not actually contain any wallets; rather it communicates with one or more wallets through coin adapters. This allows the plugin to be wallet-agnostic: the specifics of each wallet back-end are decoupled from the front-end functionality.

Coin adapters are available for free download to anyone who signs up. (This is unlike app extensions, which are made available for download to paying members only.)

CoinPayments.net

type: custodial wallet
technical difficulty: medium
coins: listed here

The easiest way to setup a wallet back-end for most people is through the CoinPayments platform. This is a third-party custodial wallet service, meaning that you do not hold the private keys to the site’s funds. Choose this option if you are unable or unwilling to setup your own full-node wallets.

Complete instructions for installing the coin adapter are here.

Bitcoin core

type: full node wallet
technical difficulty: hard
coins: Bitcoin (BTC)

If you want to connect to a Bitcoin core full node wallet, you can use the build-in Bitcoin core node adapter (i.e. you do not need to install any other coin adapters). You will need to know how to install the wallet on a server (this requires some Linux skills). The advantage is that you hold the private keys to your site’s funds, and you do not rely on a third party wallet. You are also free to control the fees paid to the blockchain for withdrawals, and the number of confirmations that you require for deposits. You will need a server with enough disk space for the Bitcoin blockchain, and you might need to configure your server’s firewall to accept incoming RPC connections from your WordPress site.

Generic instructions for installing Bitcoin core are here, and specific instructions for setting up the coin adapter are here.

Bitcoin forks

type: full node wallet
technical difficulty: hard
coins: many thousands

Any altcoin that is a direct fork of Bitcoin, shares Bitcoin’s RPC API. The procedure is similar to that for Bitcoin core. You will need some knowledge of Linux and system administration to set up and maintain the wallet back-end on a server.

First, install the Full Node Multi Coin Adapter extension, then follow the instructions on the coin adapter’s homepage to add your coin to the plugin.

Monero and other CryptoNote forks

type: full node wallet
technical difficulty: very hard
coins: many

A number of privacy-focused coins are based on CryptoNote. The most prominent one is currently Monero. These coins have a completely different wallet API, so they require a completely different coin adapter. These coins can offer privacy when used correctly. As with other full node wallets, you will need some knowledge of Linux and system administration to set up and maintain the wallet back-end on a server.

Follow the installation instructions given at the homepage for the Monero Coin Adapter extension.

TurtleCoin and forks

type: full node wallet
technical difficulty: hard
coins: many, plus you can create your own

TurtleCoin is a modern privacy-focused coin, originating from CryptoNote, and with a fairly active developer community. The coin is easily forkable, comes with instructions for how to set it up as a service, and comes with a well-designed wallet API. The documentation around all aspects of the coin is excellent.

Follow the installation instructions given at the homepage for the TurtleCoin Adapter extension.

Fiat Coin Adapter extension

type: full node wallet
technical difficulty: very easy
coins: about 170 fiat currencies offered by fixer.io, plus unlimited custom local coins

This one is different. Other coin adapters allow the plugin to communicate with cryptocurrency wallets. Because of the Exchange extension, the need arose to be able to maintain fiat balances on the plugin. This coin adapter allows you to manage deposits and withdrawals from and to a bank account. This involves some manual work that the site’s admin has to do.

Additionally, with this you can define any other type of coin that is not a cryptocurrency, but that is valid only on your site. These can be thought of as store credits, loyalty points, etc. Users will not be able to deposit or withdraw them but they can be exchanged on the site. For example, if you set up an Exchange rate, they can be used for purchases with the WooCommerce payment gateway, or they can be distributed with the Faucet extension.

Installing this adapter is easy and requires very little technical skill. You can follow the installation instructions given here. It is highly recommended, but not strictly necessary, that you set up the fiat coins using fixer.io. This makes exchange rates available to the plugin.

block.io

type: custodial wallet
technical difficulty: easy
coins: Bitcoin, Litecoin, Dogecoin

The block.io coin adapter is another adapter that is available. It uses as its backend a service that offers custodial wallets for Bitcoin, Litecoin and Dogecoin. It is currently not recommended that you use this, since the CoinPayments adapter is more reliable and offers greater flexibility. It remains available for historical reasons.

Installing this adapter is relatively easy but, again, it’s not recommended. If you want a custodial solution, it’s best to use the CoinPayments adapter instead.

ERC-20 tokens

Unfortunately there is no support for ERC-20 tokens at this time (but many well-known ERC-20 tokens can be offered via CoinPayments).

I am aware that there is high demand for this, but there are some technical challenges that make this hard. If there is ever a coin adapter for ERC-20 tokens, there will be an announcement on the blog.

Comments:2

Leave a Reply

Your email address will not be published. Required fields are marked *