How to add an Altcoin

Bitcoin is the only focus of the project and its core developers. However, opt-in integrations are available for several altcoins:

  • BGold (BTG) (also known as Bitcoin Gold)

  • BPlus (XBC) (also known as Bitcoin Plus)

  • Bitcore (BTX)

  • Dash (DASH)

  • Dogecoin (DOGE)

  • Feathercoin (FTC)

  • Groestlcoin (GRS)

  • Litecoin (LTC)

  • Monacoin (MONA)

  • Polis (POLIS)

  • Viacoin (VIA)

Altcoins are maintained by their respective communities.

For more information, check the Altcoin FAQ page.

How can I add an altcoin to BTCPayServer?

The steps for having a coin added are:

  1. Add support for your crypto to NBitcoin, NBxplorer, and BTCPayServer. (Use examples from other coins)

  2. Create your own docker image (Example for BTC)

  3. Create a docker-compose fragment (Example for BTC)

  4. Add your CryptoDefinition (Example for BTC)

When testing your coin, DO NOT USE build.sh, since it uses a pre-built docker image.

Instead, install .NET Core 2.1 SDK and run:

BTCPAYGEN_CRYPTO1="EXAMPLE-COIN"
BTCPAYGEN_SUBNAME="test"
cd docker-compose-generator/src
dotnet run

This will generate your docker-compose in the Generated folder, which you can then run and test.

Note: BTCPay developers do not implement alternative coins on request. Adding a new coin explicitly depends on the community and developers of those coins. Furthermore, BTCPay developers do not spend excessive time testing nor maintaining the altcoins. If you're submitting a PR for a new coin, make sure that your image works. If the altcoin integration is not actively maintained it will be removed from BTCPay.