To accept crypto payments on WooCommerce, install a crypto payment gateway plugin, paste in your API key, choose which coins to accept (Bitcoin, Ethereum, USDT), enable the method at checkout, and test one order. With a non-custodial gateway the funds land directly in your own wallet and there is no coding. This guide walks through the full setup, end to end, in under an hour.
Why Add Crypto to WooCommerce?
WooCommerce powers a large share of online stores worldwide. Adding crypto checkout means reaching customers who prefer paying with Bitcoin or USDT, while avoiding the typical 2-3% card processing fee on every order and eliminating chargebacks, since on-chain payments are final. For the bigger picture, see how to accept crypto payments on WooCommerce and how crypto payments eliminate chargebacks.
What You Need Before You Start
- A live WooCommerce store (WordPress + the WooCommerce plugin installed)
- A CryptoGate account with at least one wallet address configured
- Your CryptoGate API key (from your dashboard)
- HTTPS enabled on your store (required for secure checkout and webhooks)
If you do not have an account yet, you can create a CryptoGate account in a couple of minutes.
Step 1 - Install the CryptoGate Plugin
In your WordPress admin, go to Plugins → Add New and search for CryptoGate Payments. Install and activate it. Alternatively, download the plugin ZIP from your CryptoGate dashboard and upload it manually via Plugins → Upload Plugin, then activate.
Step 2 - Configure the Plugin
Go to WooCommerce → Settings → Payments. You will see a new entry called CryptoGate - Crypto Payments. Click Manage and fill in the following fields:
| Field | What to enter |
|---|---|
| API Key | The key from your CryptoGate dashboard |
| Accepted Coins | Tick the coins you want to offer (BTC, ETH, LTC, DOGE, USDT, USDC, etc.) |
| Payment Window | How long customers have to send funds (default: 30 minutes) |
| Order Status on Payment | Processing or Completed, depending on your fulfillment flow |
| Title at Checkout | What the customer sees, e.g. Pay with Crypto |
Save changes. Each coin you tick must have a corresponding wallet address configured in your CryptoGate account, or that coin will not appear at checkout.
Step 3 - Enable the Payment Method
Back on the Payments tab, toggle CryptoGate to Enabled. It will now appear as a checkout option alongside cards and PayPal. You can drag it up or down in the list to control its position at checkout.
Step 4 - Confirm the Webhook
The plugin updates orders automatically when a payment confirms on-chain, using a webhook. The plugin registers its own endpoint, typically:
https://yourstore.com/wc-api/cryptogate
Make sure this URL is reachable from the public internet and not blocked by a firewall or security plugin. If you want to understand exactly what arrives and how it is verified, read our guide to handling crypto payment webhooks.
Step 5 - Test the Checkout Flow
Add a product to your cart and proceed to checkout. Select Pay with Crypto. You should be redirected to a CryptoGate payment page showing the exact amount to send, a QR code, and a countdown timer.
Use sandbox mode (toggle in your CryptoGate dashboard) to simulate a completed payment without spending real funds. Once confirmed, verify that the WooCommerce order status updates automatically to the status you set in Step 2.
Step 6 - Go Live
Switch your API key from sandbox to live mode. Run one real transaction with a small amount to confirm the full flow works end to end:
- Customer selects crypto at checkout
- Payment page shows the amount, coin, and QR code
- Customer sends funds; the blockchain confirms the transaction
- The webhook fires and the WooCommerce order status updates
- Your normal fulfillment is triggered
Troubleshooting
The payment page does not load
Check that your API key is correct and your CryptoGate account has at least one wallet address added for the coin the customer selected. A coin with no wallet address will not render a payment page.
Order status does not update after payment
Verify that your webhook URL is reachable from the internet. The plugin receives a POST request at https://yourstore.com/wc-api/cryptogate - make sure no firewall or security plugin is blocking it, and that your store is served over HTTPS.
A customer underpaid or overpaid
Crypto amounts can vary slightly due to network fees or rate movement during the payment window. The gateway flags partial and overpaid orders so you can review them before fulfilling. Decide a policy in advance for small shortfalls.
How It Compares to Other Platforms
The same gateway works across major e-commerce platforms. If you also run a Shopify store, see our Shopify crypto payments guide, and for the building blocks behind any integration, read how crypto payment gateways work.
Summary
WooCommerce crypto integration takes under an hour: install the plugin, add your API key, enable the payment method, confirm the webhook, and test. Your store will accept Bitcoin, Ethereum, and USDT with zero coding and funds going directly to your own wallet. Create your CryptoGate account to get your API key and start.
Frequently Asked Questions
How do I accept crypto payments on WooCommerce?
Install a crypto payment gateway plugin, paste in your API key, tick the coins you want to accept, enable the method on the WooCommerce Payments tab, and test one order in sandbox mode before going live. No coding is required.
Do I need to write any code?
No. The plugin handles the checkout option, the hosted payment page, and the webhook that updates your order status automatically. You only paste in an API key and tick a few settings.
Where do the funds go?
With a non-custodial gateway, payments land directly in your own wallet addresses. The gateway never holds your money - it generates the payment page and confirms the on-chain transaction.
Which coins can I accept on WooCommerce?
You can accept major coins like Bitcoin, Ethereum, Litecoin, and Dogecoin, plus stablecoins such as USDT and USDC. Each coin needs a wallet address configured in your account to appear at checkout.
How long does setup take?
Under an hour for most stores. The longest part is usually testing the full flow once in sandbox mode and then running a small real transaction before going live.