Skip to content
WooCommerce

How to accept crypto payments on WooCommerce

A practical WooCommerce crypto payment setup guide: choose a gateway, install BluPay, test checkout and webhooks, and launch safely.

BluPayPublished Updated 9 min read

What you need before accepting crypto

A WooCommerce store can add cryptocurrency without rebuilding its checkout. The practical route is a payment gateway plugin: it adds a payment method, creates an invoice when the order is placed, sends the buyer to a secure payment page, and updates the WooCommerce order when the blockchain payment confirms.

Before installation, review the BluPay WooCommerce crypto payment plugin, make sure WordPress and WooCommerce are current, HTTPS is enabled, and you can place a normal test order. You also need a BluPay merchant shop, an API key, and a webhook secret. Start with a sandbox shop key to simulate invoice and order updates without moving real funds.

BluPay requires WordPress 6.2+, WooCommerce 7.0+, and PHP 7.4+. It registers classic and block checkout support and declares compatibility with High-Performance Order Storage (HPOS).

Choose the right crypto gateway model

The most important decision is custodial versus self-custodied payment processing. A self-custodied setup can send funds directly to wallets you control, but your team must manage addresses, chain monitoring, confirmations, refund operations, exchange-rate timing, and private-key security. A custodial gateway handles that payment infrastructure and records the funds in a merchant balance.

BluPay is custodial. The buyer chooses an enabled asset and network on the hosted checkout, BluPay monitors the payment, and the WooCommerce plugin receives status updates through signed webhooks. That keeps wallet keys and blockchain listeners away from your WordPress installation. Review the security model and your business’s compliance requirements before choosing any provider.

Also compare the operational details: supported coins and networks, settlement options, gateway and network fees, refund workflow, checkout-block compatibility, webhook security, and sandbox quality. A long coin list is less useful than reliable support for the assets your customers actually use. BluPay’s current supported assets include stablecoins and native assets across Tron, Ethereum, BNB Smart Chain, Bitcoin, and Solana.

Set up BluPay on WooCommerce in six steps

  1. Create a shop. Register for BluPay, add a shop, select who covers the service and network fees, and generate a sandbox API key. Each key belongs to one shop, which limits its scope.
  2. Install the plugin. Download BluPay for WooCommerce. In WordPress, go to Plugins → Add New Plugin → Upload Plugin, choose the ZIP, install it, and activate it.
  3. Open the payment settings. Go to WooCommerce → Settings → Payments → BluPay (Crypto). Enable the gateway and select Sandbox while testing. Sandbox and Production use the same hosted API; the shop API key determines the payment mode. Selecting Sandbox does not make a live shop key a sandbox key.
  4. Add credentials. Paste the sandbox shop API key and its webhook secret. Shop ID is optional because the API key already identifies the shop. The default Processing preference uses normal WooCommerce payment completion, which normally selects Processing or Completed based on the order items. Choose Completed only when paid orders should be marked complete without further fulfilment. Review unresolved payment completion before retrying.
  5. Register the webhook. Copy the read-only webhook URL shown in WooCommerce and add it to the BluPay shop. This endpoint is how a confirmed payment reaches your order system even if the customer closes the browser.
  6. Save and test the connection. Save the gateway settings, then use Test Connection. BluPay should now appear as “Pay with crypto” in checkout. You can customize the title and short customer-facing description.

Test the complete payment lifecycle

Do not stop after seeing the payment method in checkout. A useful test starts with a new WooCommerce order and ends with the correct final order state. Test both classic checkout and block checkout if your theme exposes both.

  • Place an order and select BluPay as the payment method.
  • Confirm the store creates one BluPay invoice and redirects to its hosted payment URL.
  • Check the order total and currency sent to the invoice.
  • Simulate payment in sandbox and verify the order moves from Pending payment to Processing or Completed.
  • Confirm the invoice link and any available crypto amount, asset, network and transaction hash are recorded after successful payment completion.
  • Send the same webhook event twice and verify the second delivery does not apply the order transition again.
  • Test an invalid signature and an old timestamp; both should be rejected.

BluPay gateway events can be logged under WooCommerce → Status → Logs with the source blupay. Keep logging on during testing and the first production transactions, then review your data-retention policy before leaving verbose logs enabled indefinitely.

Crypto payment status and WooCommerce shipping

Keep your existing shipping and fulfilment workflow. BluPay provides payment updates; your store remains responsible for packing, shipping, and delivery. A customer returning from hosted checkout, or a transaction appearing on a blockchain explorer, is not by itself confirmation that the invoice is fully paid.

The table shows default status mappings. Actual transitions depend on the order’s payment history and the installed plugin version. If an order is already paid or payment completion is unresolved, review the invoice and order notes before changing its status or fulfilling it.

BluPay invoiceWooCommerce orderFulfilment check
Created or PendingPending paymentWait for a fully paid invoice before shipping.
PaidProcessing or Completed Verify payment and follow your fulfilment workflow. Review unresolved completion before retrying.
Partially or PartiallyExpiredOn holdReview the amount received and resolve the remaining balance before fulfilment.
ExpiredFailedCheck for any payment received and arrange the next step with the customer.
CanceledCancelledReview the invoice and any received funds before closing the order.

If a paid invoice still has a Pending payment order, compare the invoice link, order notes, and the last webhook shown in the plugin settings. Check the webhook URL and secret, and review the crypto payment webhook guide for signature and delivery diagnostics. If payment completion is unresolved, review payment, stock and notifications before retrying.

WooCommerce crypto payment security checklist

Payment plugins sit at a sensitive boundary between checkout, an external API, and order fulfilment. HTTPS is the minimum. In addition, protect WordPress administrator accounts with strong unique passwords and two-factor authentication, restrict who can view or change payment settings, and keep WordPress, WooCommerce, the theme, and every plugin patched.

Treat the BluPay API key and webhook secret like passwords. Do not paste them into support tickets, screenshots, analytics, or public repositories. If either value is exposed, rotate it immediately. The plugin masks secrets in settings and uses the API key in an HTTP request header rather than placing it in a URL.

A redirect back to your store is not proof of payment. Customers can close or manipulate browser navigation, so fulfilment must follow a verified server-to-server event. BluPay webhooks use HMAC-SHA256 signatures, a timestamp window, and event identifiers. The plugin verifies these before changing the order, which reduces forged and replayed status updates.

Understand fees, refunds, and accounting

Review the BluPay pricing page and your shop’s fee policy before launch. Confirm which fees are included in the customer’s payment and which are deducted from the merchant balance.

Crypto payments should still enter the same accounting and fulfilment controls as card or bank payments. Record the WooCommerce order total, fiat currency, received crypto asset and amount, transaction identifier, gateway fees, and settlement value. Decide how your business handles underpayments, overpayments, expired invoices, refunds, and exchange-rate changes before launch. Your local tax and accounting treatment may depend on jurisdiction, so obtain professional advice where required.

Frequently asked questions

Can WooCommerce accept USDT?

Yes. With a crypto payment gateway such as BluPay, a WooCommerce store can offer USDT on enabled networks alongside other supported assets.

Does the store need its own crypto wallet?

Not with a custodial gateway. BluPay provides the payment address and credits the confirmed payment to the merchant balance, so the WordPress server does not store wallet private keys.

Does BluPay work with WooCommerce Checkout blocks?

The BluPay plugin registers a payment method for classic checkout and WooCommerce Checkout blocks, and declares HPOS compatibility. Test it with your store’s theme and extensions before launch.

How does WooCommerce know a crypto payment is complete?

BluPay verifies the webhook signature and timestamp. For an eligible Paid invoice, BluPay uses WooCommerce payment completion. WooCommerce normally selects Processing or Completed based on the order items; the Completed preference can mark a paid order complete. Unresolved completion needs review.

Ready to accept crypto?

Create a BluPay shop, test in sandbox, and move to production when your flow is ready.