Sansbank Sansbank Dev Docs ← Back to Dev Center

Dash Evolution BTCPay Server Plugin

This plugin extends BTCPay Server to enable users to receive payments via Dash on the Evolution Platform — both the shielded pool (Orchard / ZK) and unshielded Platform Addresses (DIP-17).

Warning: This plugin shares a single Dash Evolution wallet across all the stores in the BTCPay Server instance. Use this plugin only if you are not sharing your instance.

BTCPay Server store with the DASHE payment method enabled

Features

  • Shielded payments (Orchard / ZK protocol) — privacy-preserving Dash receives
  • Platform Addresses (DIP-17) — unshielded Evolution Platform credits
  • Single payment method code (DASHE) — the handler multiplexes internally between shielded and Platform Address transports
  • Native FFI integration — uses the platform-wallet-ffi Rust library for wallet operations
  • Automatic invoice settlement — background sync service detects incoming payments and marks invoices paid

Architecture

Unlike transparent Dash (which uses NBXplorer), Evolution Dash uses:

  • Rust FFI (libplatform_wallet_ffi) for shielded note scanning and Platform Address sync
  • DAPI (Dash Platform API) for blockchain state — no local node required
  • Bech32m addresses (BIP-350) for shielded receives

Choose your path

  • Installation — prerequisites, the native platform-wallet-ffi library, and building/installing the plugin.
  • Deploy with Docker — a complete, verified step-by-step production deployment on a fresh VPS.
  • Configuration — the full environment-variable reference.
  • Usage — create an invoice and take a payment end to end.
  • Limitations — current demo-scope constraints to be aware of.
  • Development — build from source and explore the project structure.

Quick start (terminal)

A short terminal walkthrough — clone the repo, build the plugin, bring the stack up with Docker, and confirm the DASHE payment method is live:

Terminal walkthrough: clone, build, and deploy the Dash Evolution plugin

Acknowledgments

  • Built on the Dash Platform Rust SDK
  • Follows the BTCPay Server plugin architecture established by the Monero and Zcash plugins