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.

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-ffiRust 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-ffilibrary, 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:

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