Skip to main content

WooCommerce Crypto Payment Plugin: Accept USDC and USDT

· 6 min read
OrcaRail
Crypto payment rails for web2 apps

To accept crypto on WooCommerce, you install a payment plugin that sends shoppers to a crypto checkout and marks the order paid when the payment confirms. Most stores want stablecoins such as USDC and USDT, so the price does not move between checkout and payment.

This guide compares popular WooCommerce crypto payment plugins and then sets up the OrcaRail plugin step by step, starting in test mode with no real funds.

Disclosure: OrcaRail publishes this blog and makes one of the plugins below. Facts about other plugins come from their WordPress.org pages, checked on 1 November 2026. Plugins change, so check the page before you install.

What to look for in a WooCommerce crypto plugin​

  • Stablecoins and networks. Check that the plugin accepts the tokens your customers hold, on cheap networks such as Base, Polygon or Solana.
  • Verified webhooks. The order should become paid only after a signed server-to-server notice, never from the browser redirect alone.
  • Checkout Blocks and HPOS. New WooCommerce stores use the block checkout and High-Performance Order Storage. Older plugins may not support them.
  • Test mode. You should be able to place a test order on a testnet before going live.
  • Fees and custody. Know the per-payment fee and whether funds go to your own wallet or to a provider account.
PluginProvider fee (as stated)CustodyCheckout BlocksActive installs
OrcaRail for WooCommerce0.5% hosted, first 100 transactions freeNon-custodial by default: your withdrawal addressesYesNew (GitHub release)
BTCPay for WooCommerce"Zero fees" (you run BTCPay Server)"Self-custodial"Fixes in changelog1,000+
CoinGate for WooCommerce"Starting at 1%"Funds land in your CoinGate accountYes (v2.3.0)400+
NOWPayments for WooCommerceNot statedNot statedYes3,000+

Notes from the pages:

  • BTCPay is Bitcoin-focused and needs a BTCPay Server, which you host or rent.
  • CoinGate's page warns the plugin "hasn't been tested with the latest 3 major releases of WordPress."
  • NOWPayments for WooCommerce is developed by CoderPress, and lists crypto subscriptions only in its Pro version.

How the OrcaRail plugin works​

The OrcaRail WooCommerce plugin is open source (MIT) and uses OrcaRail's hosted checkout.

  1. At checkout, the plugin creates and confirms a payment intent with the PHP SDK.
  2. The shopper is redirected to the OrcaRail pay page and pays in crypto.
  3. When the shopper returns, the plugin checks the payment with the API. It never trusts the redirect alone.
  4. The plugin calls complete on the paid intent. An hourly WP-Cron job does the same for recent orders whose shopper never came back.
  5. A signed webhook updates the WooCommerce order. Updates are idempotent, so retries do not double-process.

Supported: one-time products, classic checkout and Checkout Blocks, HPOS, verified webhooks, test mode. Not supported yet: refunds through WooCommerce, WooCommerce Subscriptions and saved payment methods, express wallets. You choose one token and network to receive; for recurring billing, use the OrcaRail subscriptions API.

Set up the OrcaRail WooCommerce plugin​

Requirements: PHP 8.1+, WordPress 6.4+, WooCommerce 8.0+, and an OrcaRail account.

  1. Download the plugin. Get the latest ZIP from GitHub releases. It includes its dependencies, so you do not need Composer.
  2. Install and activate it. In WordPress, go to Plugins → Add New → Upload Plugin, upload the ZIP and activate.
  3. Create a sandbox key. In the OrcaRail dashboard, open Go to sandbox and create an API key (ak_test_…). Sandboxes run on testnets with no real funds. See Create a sandbox.
  4. Pick the token and network you receive. For example USDC on a testnet now, and USDC on Base when you go live. Token and network IDs come from GET /payments/networks and GET /payments/networks/:id/tokens. See Networks and tokens.
  5. Fill in the settings. Open WooCommerce → Settings → Payments → OrcaRail, fill the Test fields (key, secret, webhook signing secret, token ID, network ID) and enable Test mode.
  6. Set the webhook URL. In the OrcaRail dashboard, set the API key's webhook URL to the one shown in the plugin settings: https://your-store.example/?wc-api=wc_gateway_orcarail&orcarail=webhook. See Webhook signatures.
  7. Place a test order. On the testnet pay page you can simulate the payment without a wallet. Check that the order moves to paid.
  8. Go live. Create a live API key (ak_live_…) in your live organization, fill the live fields with a mainnet token and network, and disable test mode. See Going live.

A live store ignores sandbox webhook events, and a store in test mode ignores live ones, so you cannot mix them up by accident.

What it costs​

Hosted OrcaRail charges 0.5% of each completed transaction, and the first 100 transactions are free. A 100 USD order costs 0.50 USD. The plugin itself is free. Network fees are separate. See pricing and Fees and limits.

FAQ​

What is the best WooCommerce crypto plugin?​

It depends on what you want to receive. For Bitcoin with self-hosting, BTCPay is mature. For stablecoins such as USDC and USDT on EVM chains and Solana, paid to your own wallet, OrcaRail is built for that. Compare fees, custody and Checkout Blocks support in the table above.

Can I accept USDT on WooCommerce?​

Yes. Set the plugin's token and network to USDT on a supported network, such as Ethereum, Polygon or Arbitrum. Tron (TRC20) is not supported yet. See how to accept USDT payments.

When does a WooCommerce order become paid?​

After the payment is confirmed on-chain and the plugin has verified it with the OrcaRail API, through the webhook or the return check. A browser redirect alone never marks an order paid.

Does the plugin support WooCommerce Subscriptions?​

Not yet. The plugin handles one-time payments. For recurring billing, use OrcaRail subscriptions directly or read recurring crypto payments.

Can I test without real crypto?​

Yes. Enable Test mode with your sandbox keys. Orders run on testnets, and you can simulate the payment on the pay page.


Get the plugin · Start in the sandbox · Pricing