What you need before you start
- Easy Digital Downloads 3.7 or newer on WordPress 6.2 or newer (tested on EDD 3.7.1.1 and WordPress 7.1.3).
- Your site reachable at its public https address. Payment confirmations are sent to
https://your-site/index.php?edd-listener=paygate_crypto. - A wallet address for each network you want to accept. Step 1 explains which ones.
Prepare your payout wallets
Crypto is forwarded to your own wallet addresses, one for each coin or network you want to accept. Prepare them before you start:
- Bitcoin (BTC): your Bitcoin address (usually starts with
bc1). - Solana (SOL and Solana tokens such as USDC and USDT on Solana): your Solana address.
- Monero (XMR) and Zcash (ZEC): your Monero and Zcash addresses.
- Ethereum and EVM networks (ETH, ERC20, BEP20, Polygon, Arbitrum, Base, Optimism, Avalanche-C): one
0xaddress covers all of them. - Any other coin you want, for example Litecoin, Dogecoin, Bitcoin Cash, Tron (TRC20 USDT) or TON.
Use self-custodial wallets that only you control (Trust Wallet, Exodus, Phantom for Solana, Cake Wallet for Monero, a hardware wallet and so on). Never use exchange deposit addresses, and always paste the address for the right network: a Bitcoin address in the Bitcoin field, a Solana address in the Solana field.
Download the plugin
Download the latest version from our GitHub repository: EDD-Crypto-Payment-Gateway-main.zip. Keep it zipped. It is free and open source; the code is on GitHub.
Install and activate the plugin
- In WordPress, open Plugins › Add New Plugin and click Upload Plugin.
- Choose
EDD-Crypto-Payment-Gateway-main.zip(do not unzip it) and click Install Now. - Click Activate Plugin. PayGate.to Crypto Payments for Easy Digital Downloads now appears in your plugin list.

Turn on the crypto gateway
Open Downloads › Settings › Payments › General. Under Active Gateways, switch on PayGate.to Crypto Payments. You can also pick it as the Default Gateway. Click Save Changes.

Leave Enable Test Mode off: PayGate.to has no test mode, small real payments are the way to test.
Enter your wallets
On the same page, open the PayGate.to Crypto tab. Fill in a wallet for each network you want to accept and leave the others empty: an empty network is not offered. Customers pay on the secure hosted multi-coin page, where they pick any coin of your networks and see the exact amount, the address and a QR code.

| Setting | What it does |
|---|---|
| Network wallets | EVM (one 0x address for ETH, USDT and USDC on Ethereum, BNB Chain, Polygon, Arbitrum, Base, Optimism, Avalanche), Bitcoin, Litecoin, Solana, Tron, Bitcoin Cash, Dogecoin, Monero, Zcash and TON. |
| The customer pays the network fee | Tick to add the estimated blockchain fee for forwarding the payment to the amount the customer sends. |
| Underpayment tolerance | Payments this much below the amount due still complete the order (crypto prices move, some wallets round). Default 2%. |
| Dedicated API endpoint, Checkout domain, colour, logo URL | Optional. See the custom domain guide. |
Click Save Changes.
Test with an order
Add a download to the cart, open the checkout and choose Crypto (Bitcoin, USDT, Solana…). After Purchase, the customer picks a coin on the hosted page and sends the amount shown.

Each coin has its own minimum. If the order is below it, the hosted page asks the customer to choose another coin. See the minimum per coin.
The order completes and you are paid out
When the payment is confirmed on the blockchain, the crypto is forwarded instantly to your wallet and the order is marked Completed. The order is priced in the coin the customer chose when the confirmation arrives; if a coin moves a lot while the payment confirms, raise the Underpayment tolerance. Every confirmation is written to the order’s Notes:
| Order | Meaning |
|---|---|
| Completed, note “received … TXID in” | The order was paid. |
| On Hold, note “underpaid” | Less than the amount due arrived, beyond your tolerance. The funds are in your wallet: settle with the customer. |
| On Hold, unknown coin or payout to another wallet | Check the note before releasing the order. Contact support if the payout did not go to your wallets. |
| Note “extra payment” | The order was already completed or refunded. Refund the customer if needed. |

All settings explained
| Setting | What it does | Default |
|---|---|---|
| Network wallets | EVM, Bitcoin, Litecoin, Solana, Tron, Bitcoin Cash, Dogecoin, Monero, Zcash, TON. Empty = not accepted. | Empty |
| The customer pays the network fee | Adds the forwarding fee to the amount the customer sends. | Off |
| Underpayment tolerance | 0%, 1%, 2%, 3%, 5% or 10%. | 2% |
| Dedicated API endpoint | Your free DDoS-protected API endpoint. | api.paygate.to |
| Checkout domain, colour, logo URL | Branding for the hosted page. | checkout.paygate.to |
Troubleshooting and FAQ
Are Monero, Zcash and Solana really supported with instant payouts?
Yes. PayGate.to is the only crypto payment gateway with instant payouts for Solana (SOL), Monero (XMR), Zcash (ZEC) and Bitcoin (BTC). Fill in those wallets and the coins appear on the hosted page.
The crypto method is not at checkout.
Switch on PayGate.to Crypto Payments under Active Gateways and fill in at least one wallet.
The customer paid but the order is still pending.
The payment may still be confirming on the blockchain. Otherwise open the order’s Notes: no PayGate.to note means the confirmation could not reach your site (check Settings › General, maintenance mode, firewalls, security plugins blocking index.php?edd-listener=paygate_crypto).
The customer sent too little.
The order is put on hold with an “underpaid” note. The funds received are already in your wallet; settle the difference with the customer, or allow a larger Underpayment tolerance.
What are the fees?
1.5% flat rate plus blockchain fees. Tick The customer pays the network fee to let customers cover the blockchain fee.
Do I need an account, API key or KYC?
No registration and no KYC for you or your customers. Your wallet addresses are all you need.
How do I update the plugin?
Upload the latest zip the same way and choose Replace current with uploaded. Your settings are kept.
Other platforms and next steps
The same crypto gateway is available for every major platform:
Stuck? Our team replies fast.Send us your platform, a screenshot and the order number if you have one.
Chat with support