Download the plugin (.zip)
Ready-to-upload
pawpayments-for-woocommerce-<version>.zip.View source on GitHub
Source, releases, and issue tracker.
Install
- Download the latest
pawpayments-for-woocommerce-<version>.zipfrom the GitHub Releases page (or build it yourself withzip -r ... woocommerce-plugin). - Plugins → Add New → Upload Plugin, choose the zip, click Install Now, then Activate.
- WooCommerce → Settings → Payments, find PawPayments (Crypto), click Manage.
Configure
Webhook
WooCommerce auto‑registers the handler athttps://<your-store>/?wc-api=pawpayments. The plugin sends this URL as notify_url on every invoice it creates, so you do not need to set a callback URL on the merchant side.
Order lifecycle
- Customer chooses Pay with Crypto and is redirected to a
https://paw.now/invoice#…paywall. - The order is created in On hold with the invoice id stored in
_pawpayments_order_id. - After the on‑chain payment confirms, Paw posts a webhook with
status=success. The plugin verifies theX-Paw-Signatureheader and callspayment_complete()— the order becomes Processing (or Completed for virtual goods) with aPawPayments: Paid X USDT (order …)note.
payment_complete() is natively idempotent, so duplicate webhook deliveries never double‑credit an order. Webhooks carrying a permanent_address_id are silently acknowledged with 200 OK.
Smoke test
OK with HTTP 200, and the order transitions to Processing.
Troubleshooting
Uninstall
Deactivate and delete the plugin via Plugins → Installed Plugins. Settings live inwp_options.woocommerce_pawpayments_settings; remove with wp option delete woocommerce_pawpayments_settings if needed. The plugin does not create any custom database tables.
