Tasdid for WooCommerce

Add a Pay with USDT option to your WooCommerce store. Customers pay with their own crypto wallet via QR code; you cash out in USD via cash, Whish, OMT, or crypto from the Tasdid dashboard.

Compatible with WordPress 6.0+ and WooCommerce 7.0+. PHP 7.4+.

How it works

  1. Customer reaches checkout and picks Pay with USDT (via Tasdid).
  2. The plugin calls our REST API to create a payment for the order total.
  3. Customer is redirected to our hosted checkout page, gets a USDT deposit address on BNB Smart Chain (BSC), and scans the QR with any USDT wallet.
  4. The watcher detects the on-chain transfer, waits for confirmations, and POSTs a signed webhook back to your WP site.
  5. The plugin verifies the signature and marks the order Completed.

Install

Download the plugin

tasdid-for-woocommerce-0.1.0.zip — distribution via wordpress.org is in progress. Until then, grab it from the GitHub releases page.

Download from GitHub
  1. In your WordPress admin: Plugins → Add New → Upload Plugin. Pick the zip and install.
  2. Click Activate.
  3. Go to WooCommerce → Settings → Payments → Tasdid.

Configure

1. Paste your API key

In the Tasdid dashboard, go to API keys and generate a new key. It starts with tsd_live_. Paste it into the API key field on the WP settings page.

2. Set up the webhook

Still on the WP settings page, copy the webhook URL it shows you. It'll look something like https://yourshop.com/wp-json/tasdid/v1/webhook.
In the Tasdid dashboard, go to Webhooks → Add an endpoint and paste that URL. Copy the whsec_... secret back into the WP settings page's Webhook signing secret field.

3. Enable + save

Tick Show Tasdid at checkout, click Save changes, and you're done. Place a test order to verify the redirect to the hosted checkout works.

Event mapping

The plugin translates Tasdid's payment events into WooCommerce order statuses automatically:

Tasdid eventWooCommerce status
payment.confirmingon-hold
payment.paidcompleted (via payment_complete)
payment.overpaidcompleted
payment.underpaidon-hold (manual review)
payment.expiredcancelled

Each transition adds a note on the order with the Tasdid reference and the on-chain transaction hash, so you can audit from the WC order admin.

FAQ

Do I need to write code?
No. Two fields in the settings page: API key and webhook secret.
Does it support subscriptions?
v1 supports one-off payments only. Subscriptions are on the roadmap.
What if the customer closes the checkout tab?
The payment window stays open for 30 minutes by default. If no payment lands, Tasdid fires payment.expired and the plugin cancels the order automatically.
Can I test without going live?
Yes. Generate a tsd_test_ key and complete test payments with POST /api/v1/payments/:id/test_complete — fully simulated, no real money. A successful test payment is also required before your live keys can take real payments.

Source code

The plugin source lives in the Tasdid monorepo at packages/woocommerce-plugin/. PRs and bug reports are welcome.

Build the zip yourself
cd packages/woocommerce-plugin
zip -r ../../dist/tasdid-for-woocommerce-0.1.0.zip . -x "*.DS_Store" "README.md"