WooCommerce plugin
Accept USDT and USDC in WooCommerce
The Wolf Pay plugin adds USDT and USDC to WooCommerce checkout: hosted payment page, orders completed by signed webhooks, refunds from the order screen.
Updated · Wolf Pay team
Wolf Pay is open in test mode: you can sign up, integrate and run test payments today. Live payments open once our custody partner goes live.
Key points
- Adds a USDT/USDC payment method to the classic checkout and the Cart & Checkout blocks. HPOS compatible.
- Customers pay on a hosted Wolf Pay page; orders move to Processing automatically when the payment confirms.
- Underpaid orders go on hold with the amounts; overpaid ones complete with a note.
- Refund from the WooCommerce order screen, straight back to the customer's wallet.
- Free plugin (GPL). Wolf Pay charges 1% per payment, $3 minimum.
What the plugin does
- USDC on Base, Ethereum, Arbitrum, Polygon and Solana, and USDT on TRON, Ethereum and Solana.
- A hosted checkout: no wallet code or addresses on your site. The customer sees the amount, the address, a QR code and a countdown.
- Orders complete themselves from signed webhooks (HMAC-SHA256, 5-minute replay window). Before marking an order paid, the plugin also asks the Wolf Pay API for the payment and checks the order, amount, coin and mode, so a leaked webhook secret alone can't mark orders paid.
- Underpayments put the order on hold with the amount received and the amount short. Overpayments complete the order with a note so you can refund the extra.
- Refunds from the order screen go back to the wallet the customer paid from.
- Safe retries: payments and refunds are created with an idempotency key, so a double click never creates two payments.
- Test mode with simulate buttons for paying in full, too little, too much, or letting it expire.
Requirements
- WordPress 6.0+, WooCommerce 7.0+, PHP 7.4+
- Store currency set to US dollar (1 USD = 1 USDC/USDT)
- A Wolf Pay account and a secret API key
Install in 8 steps
- Download the plugin and upload it in Plugins → Add New → Upload Plugin, then activate it.
- Check WooCommerce → Settings → General → Currency is United States (US) dollar.
- In the Wolf Pay dashboard, go to Developers and create a test secret key (
wp_test_…). - In WordPress, open WooCommerce → Settings → Payments → Wolf Pay (USDC / USDT), enable it and paste the key.
- Choose the coin and network customers will pay with.
- Copy the webhook URL shown on the settings page (
https://yourstore.com/wc-api/wolf_pay/). In Wolf Pay, add it under Developers → Webhooks, then paste the signing secret (whsec_…) back into WooCommerce. - Click Send test in the Wolf Pay dashboard: the delivery should show HTTP 200.
- Place a test order, pay it with the simulate buttons, and check it moves to Processing. Then switch to a live key and a live webhook endpoint.
If the payment method doesn't show at checkout
It only shows when it's enabled, the store currency is USD, a valid key is saved, and the chosen coin and network are available in that key's mode. The plugin shows an admin notice when the currency is the problem.
Frequently asked questions
Is there a WooCommerce plugin for USDT payments?
Yes. The Wolf Pay plugin for WooCommerce accepts USDT on TRON, Ethereum and Solana and USDC on Base, Ethereum, Arbitrum, Polygon and Solana, and completes orders automatically from signed webhooks.
Does the plugin work with WooCommerce Blocks checkout?
Yes. It works with both the classic checkout and the Cart & Checkout blocks, and with High-Performance Order Storage (HPOS).
What happens if the customer never pays?
When the Wolf Pay payment expires (60 minutes by default, configurable from 15 to 1,440), the order is marked Failed if it's still pending. The customer can pay a failed order again from their account.
Can I use the plugin if my store currency isn't USD?
Not yet. Stablecoins are pegged to the US dollar, so the payment method is hidden for other store currencies.