Frequently asked questions
Everything about Paddle for WooCommerce — setup, pricing, webhooks, security.
General
What is the Paddle for WooCommerce plugin? +
PimiPay is a WooCommerce Paddle plugin that integrates Paddle Billing with your store. It handles product synchronization, one-time and recurring checkout, refunds, real-time webhooks, and automatic order management — so you can accept payments worldwide with minimal setup.
Is PimiPay a WordPress plugin or a hosted service? +
It is a WordPress plugin that you install on your own site. Nothing is hosted for you and your store does not move anywhere: orders, customers and products stay in your own WordPress database, and Paddle is used only to take the payment and handle the tax. That is the difference between this and selling through a hosted storefront, where your catalogue and customer records live on someone else's platform.
Do I need a Paddle account to use PimiPay with WooCommerce? +
Yes, you need an active Paddle Billing account. You can sign up for free at paddle.com. The plugin works with both sandbox (staging) and production environments for easy testing before going live.
What are the system requirements for Paddle for WooCommerce? +
- PHP 8.3 or higher - WordPress 7.0.3 or higher - WooCommerce 4.0 or higher - An active Paddle Billing account - SSL certificate (HTTPS required for webhooks)
Does Paddle for WooCommerce work with HPOS (High-Performance Order Storage)? +
Yes. The plugin fully supports WooCommerce High-Performance Order Storage (HPOS), which is the modern order storage architecture. Your store is future-proof whether you use HPOS or the legacy post-based order storage.
Does Paddle for WooCommerce work with the WooCommerce Cart and Checkout blocks? +
Yes. The gateway is registered with the WooCommerce Cart & Checkout Blocks as well as the classic checkout, so Paddle appears as a payment method either way and payment completes on the order confirmation page in both flows. Availability is decided on the server, so the method disappears from the block checkout when the API is not configured or a cart item has not been synced to Paddle. Stores on a WooCommerce version without Blocks are unaffected.
Can I use Paddle alongside Stripe or PayPal in WooCommerce? +
Yes. PimiPay for Paddle registers as a standard WooCommerce payment gateway. Customers can choose between Paddle and any other active gateways (Stripe, PayPal, etc.) at checkout.
Products & Checkout
Does Paddle for WooCommerce support variable products? +
Yes. The plugin fully supports both simple and variable products. Each variation is synced as a separate price in Paddle, allowing customers to purchase any variation through the checkout modal.
Do WooCommerce coupons work with Paddle? +
Yes, since version 1.7.0. Set Pricing to Order total (WooCommerce → Settings → Payments → Paddle) and the plugin creates the Paddle transaction from the order's own lines, after WooCommerce has applied the coupon. Paddle then charges exactly the total the customer saw in the cart, and the Paddle checkout shows that figure when it opens. In the default Catalog price mode, Paddle charges the price synced to each product, so a WooCommerce coupon cannot be applied. Rather than overcharge, the plugin hides the Paddle payment method when the cart carries a coupon discount, and the customer is shown your other gateways instead. Paddle's own discount-code field is a separate thing: a code entered there reduces what Paddle charges without changing the WooCommerce order. If all your discounts are WooCommerce coupons, the Discount Codes setting hides that field so customers see one place to enter a code.
What is the difference between Catalog price and Order total pricing? +
They decide what Paddle charges, and you pick one in the Pricing setting. - Catalog price (the default) opens the checkout with the Paddle price synced from each product. It is how the plugin has always worked: the amount lives in Paddle, and WooCommerce coupons and fees do not reach it. A cart with a coupon discount or a negative fee hides the gateway rather than charging the wrong amount. - Order total creates the Paddle transaction from the WooCommerce order itself — its line items, fees and shipping lines — with fixed amounts. Whatever changed the total in WooCommerce is charged by Paddle as WooCommerce recorded it, and the Paddle checkout opens showing that real total. Products must be synced to Paddle in both modes, because each line references its Paddle product for reporting, but in Order total mode the synced price no longer matters. Tax follows your Paddle account setting in both modes: added on top for a tax-exclusive account, carved out for a tax-inclusive one. In Order total mode the transaction is prepared before the checkout opens and reused if the customer reloads the page. If the order changes, a fresh one is created; paying either still marks the order paid, and an order note records any amount mismatch. Order total is opt-in in 1.7.0, and a later release will make it the default.
Do dynamic prices, fees and shipping reach the Paddle checkout? +
In Order total mode, yes. Anything that changes the WooCommerce total — dynamic or per-customer pricing, role-based prices, "name your price" fields, fees, shipping lines — is billed by Paddle exactly as WooCommerce recorded it, because the plugin sends the order's own lines rather than a catalog price. The one thing Paddle cannot represent is a negative fee, a line that reduces the total. The plugin refuses those in both modes and hides the gateway rather than overcharge, so give that reduction as a coupon instead. In Catalog price mode none of this applies: Paddle charges the synced product price, so a dynamic price shown in your store is not what the customer is billed. If your store changes prices at runtime, Order total is the mode to use.
How do I sync WooCommerce products to Paddle? +
Go to your WooCommerce Products page in WordPress Admin, hover over any product, and click "Sync with Paddle". The plugin creates the product and all its variations in Paddle automatically, storing the Paddle IDs as product meta for future reference.
Can I sync WooCommerce products to Paddle in bulk? +
Yes, three ways: - Select any number of products on the Products screen and choose "Sync with Paddle" from the Bulk actions dropdown. If the selection is large enough that the sync runs out of time, it stops early and tells you how many products were not synced, so you can run it again for the rest. - Tag the products you sell through Paddle (default tag: "paddle") and enable Auto-Sync. All tagged products are then synced on a schedule you choose, including price changes. - Sync any single product from its row on the products list using the "Sync with Paddle" action link.
Can two WooCommerce products share the same Paddle product? +
No, and the plugin now stops you doing it by accident. If you set a Paddle Product ID that another WooCommerce product already holds, the save is rejected and the sync stops rather than quietly taking the link over. This matters because two products sharing one Paddle product also share its prices: in Catalog price mode both charge the same amount at checkout no matter what WooCommerce displays, and syncing either one rewrites what the other sells at. It is invisible for as long as the two happen to cost the same, which is exactly the situation right after duplicating a product — so duplicates are created unsynced too.
Can I sell physical products through Paddle? +
No. Paddle is a merchant of record for digital products and software, and its terms do not cover shipping physical goods. This is a Paddle restriction, not a plugin limitation. The catch is that nothing fails visibly — a Paddle checkout containing a physical product completes normally, and the problem surfaces later as a rejected payout or an account review. Because of that, the plugin has an option to hide Paddle automatically whenever the cart contains a product that is not marked Virtual, so those customers are shown your other payment methods instead. It is off by default, so enabling it is your choice.
How does the Paddle checkout work in WooCommerce? +
When a customer places an order and selects Paddle as the payment method, they are redirected to the order confirmation page where the Paddle checkout appears automatically, pre-filled with the customer's email and name. This works the same way on the classic checkout and the Cart & Checkout Blocks. After successful payment, the order status is updated via webhooks.
Can the Paddle checkout be inline on the page instead of a popup? +
Yes. The Checkout Display setting offers two modes: - Overlay (popup) — the default. Paddle's hosted checkout opens on top of your page. This is the simpler, more thoroughly tested path. - Inline (embedded in the page) — Paddle renders the payment form into a container in the page, so nothing pops up. Inline mode renders the payment form only, so your page stays responsible for showing the order summary, and custom checkout templates may need some styling work. If the container is missing, the plugin falls back to the overlay rather than leaving the customer with no way to pay.
Can I change how the Paddle checkout looks, or what language it is in? +
Both, from the gateway settings. Checkout Theme switches Paddle's own checkout between light (Paddle's default) and dark, which matters if your store is dark and a white checkout drops on top of it. It changes the Paddle checkout only, not your store around it. Checkout Language decides which language Paddle shows the checkout in. By default Paddle follows the customer's browser, even when they have deliberately switched your store to another language. Setting it to match the store language sends Paddle whatever language WordPress is currently serving, so a multilingual store built with WPML or Polylang gets the right checkout language automatically on every request, with no mapping to maintain. If the store's language is not one Paddle's checkout supports, it falls back to following the browser rather than sending Paddle something it would reject.
What payment methods can customers use in the Paddle checkout? +
Paddle supports credit and debit cards, PayPal, Apple Pay, Google Pay, and local methods such as iDEAL and Alipay, depending on the customer's country. PimiPay inherits all payment methods available in your Paddle account — no extra configuration needed.
Does Paddle handle sales tax and VAT for WooCommerce orders? +
Yes. Paddle acts as a Merchant of Record (MoR), which means they handle sales tax, VAT, and GST calculations and remittance automatically in supported regions. You don't need to worry about tax compliance — Paddle takes care of it.
Can I refund a Paddle order from WooCommerce? +
Yes. Use WooCommerce's own refund button on the order edit screen, in full or in part, and the plugin sends the refund to Paddle as a refund adjustment. Paddle approves some refunds immediately and reviews others manually, which can take days. While a refund is awaiting approval no money has moved, so the plugin deliberately does not record a WooCommerce refund yet — the adjustment is stored on the order with a note explaining that it is pending. Once Paddle approves it, the refund appears on the order automatically; if Paddle rejects it, an order note says so instead.
What happens if I refund from the Paddle dashboard instead of WooCommerce? +
An approved refund made in the Paddle dashboard is synced into WooCommerce as a refund on the matching order, so both sides stay in step without any manual work. This is also the route to use when an order's currency differs from its Paddle transaction currency — those amounts cannot be mapped one to one, so the plugin refuses the refund locally and leaves it to the dashboard, from where it syncs back.
Can customers download Paddle invoices and update their card from My Account? +
Yes. A Manage Billing item is added to My Account for customers who have paid with Paddle. It takes them straight into Paddle's hosted customer portal, where they can see their payment history, download invoices and update their card — no second login. Customers with a subscription reach the same portal from My Account → Subscriptions, which replaces the Manage Billing item for them. The portal session is created fresh on each click, since Paddle's portal links are short-lived, and nothing is stored on your site.
Does Paddle for WooCommerce support subscriptions? +
Yes, since 2.0.0. Turn on Subscriptions in the Paddle gateway settings, set a simple virtual product's Billing to Recurring (daily, weekly, monthly or yearly), sync it, and Paddle creates the subscription at checkout and charges every renewal. Each renewal appears in WooCommerce as its own order linked to the first one, and customers manage their subscription in the Paddle customer portal from My Account → Subscriptions. You do not need the WooCommerce Subscriptions extension. It is off by default, so nothing changes until you switch it on.
What is Paddle cart recovery and how does it work with WooCommerce? +
Cart recovery handles Paddle's recovery email links. If a customer abandons checkout, Paddle can send a recovery email. When the customer clicks the link, they are brought back to their pending order on your site where they can complete the payment.
Webhooks & Security
Are Paddle webhooks required for the WooCommerce plugin? +
Not strictly, but they are highly recommended for automatic order status updates. Without webhooks, orders can still be verified on the thank you page, but you won't get real-time updates for refunds, cancellations, or other payment events. The plugin makes webhook setup easy.
How does the plugin verify Paddle webhooks? +
All incoming webhook notifications from Paddle are verified using HMAC SHA256 signature verification. The plugin checks the signature header against your webhook secret to ensure the notification is authentic and hasn't been tampered with.
How does the Paddle for WooCommerce plugin keep my store secure? +
Every notification and payment is verified before it changes an order. Webhook notifications are verified with HMAC SHA256 signatures, and all transactions are validated server-side before order completion — the plugin checks that payment amounts match order totals and verifies transaction status. API keys are stored in WordPress options.
How do I know my Paddle webhooks are working? +
The gateway settings include a webhook health panel for the environment you are configured against. It shows a traffic light with the current state and a suggested fix when something is wrong — no webhook secret configured, nothing ever delivered, the last delivery rejected, or nothing verified in over a week — alongside when the last delivery arrived, what event it was, and how it was handled. "Show recent deliveries" fetches the 15 most recent notifications from Paddle with their event, status, time and attempt count, and each row has a Replay button that asks Paddle to send that delivery again. The panel is built from a privacy-safe local summary — timestamps, event type, result and counters — so opening the settings page never waits on the Paddle API, and no payloads or customer data are stored.
What happens if a Paddle webhook delivery fails? +
Paddle automatically retries failed webhook deliveries. The webhook health panel in the gateway settings shows the failure and its likely cause, and lets you replay any recent delivery once the problem is fixed. With debug logging enabled the plugin also logs every webhook event, so you can diagnose issues from the WooCommerce Status page.
How does the plugin validate a Paddle payment before completing the order? +
After a customer completes payment, the plugin verifies the transaction server-side with the Paddle API. It checks that the transaction status is valid, the payment amount matches the order total, and the custom data (order ID) matches. Only after all checks pass is the order marked as completed.
Setup & Configuration
How do I install Paddle for WooCommerce? +
Download the plugin zip file, upload it via WordPress Admin (Plugins → Add New → Upload), or extract it to wp-content/plugins/. Activate the plugin from the Plugins page.
What Paddle credentials does the WooCommerce plugin need? +
You need three things from your Paddle dashboard: - Seller ID — Your numeric Paddle seller ID, used to initialize the checkout overlay - API Key — For server-side API calls (product sync, transaction verification) - Webhook Secret — For verifying webhook signatures. Registering the webhook from the settings screen usually fills this in for you, since creating the destination is the one moment Paddle returns the secret; paste it yourself only if the destination already existed. You can configure separate credentials for sandbox and production environments.
Can I test Paddle in sandbox mode before going live? +
Yes. The plugin supports separate staging (sandbox) and production configurations. Enter your Paddle sandbox credentials, test the full checkout flow with test card numbers, and switch to production when you're ready. No code changes needed.
How do I check that my Paddle setup is healthy? +
Two places, both inside WordPress. Tools → Site Health runs six checks while the gateway is enabled: whether an API key and webhook secret are set for the environment you are transacting in, whether a webhook is registered, whether deliveries are arriving and being processed, whether auto sync is scheduled, and whether any product's last sync failed. Each failing check says what breaks in practice and links to the screen where you fix it. WooCommerce → Status has a Paddle section covering the same ground as a report you can copy and paste. It never includes your API key or webhook secret by value, so it is safe to send to support. These are the failures that are otherwise silent — nothing on the store looks broken, orders simply stop completing or products stop syncing. The matching admin notices also clear themselves once the problem is gone, so you never have to guess whether dismissing one hid a real issue.
How do I enable debug logging for the Paddle gateway? +
Enable the "Debug Log" option in the plugin's WooCommerce payment gateway settings. Logs are written to the standard WooCommerce log and can be viewed from WooCommerce → Status → Logs. Disable logging in production for optimal performance.
Pricing & Licensing
How much does Paddle for WooCommerce cost? +
$59 a year for a single site (one domain). That includes every feature, premium email support, and 1 year of updates.
Are there any fees on top of the plugin license? +
The plugin license is the only cost from PimiPay. Paddle charges its own transaction fees (typically 5% + $0.50 per transaction) which are separate from the plugin license. Check Paddle's pricing page for current rates.
Can I see the Paddle fee on a WooCommerce order? +
Yes. Orders paid with Paddle get a Paddle Transaction Details panel on the order edit screen showing the transaction status, payment method, subtotal, tax and grand total, and Paddle's fee alongside your earnings. The transaction ID links through to the right Paddle dashboard for the environment that processed it, and a View invoice (PDF) link is generated on demand, because Paddle's invoice URLs expire after about an hour.
What happens after I buy the plugin? +
You receive a download link and license key via email. Download the plugin zip, install it on your WordPress site, and enter your license key under WooCommerce → PimiPay License. Your license key enables automatic updates for 1 year.
What happens when my PimiPay license expires? +
The plugin continues to work indefinitely after your license expires. You just won't receive new updates or support until you renew. Renewal is at the same rate.
Can I use one PimiPay license on multiple sites? +
The Single Site license is valid for one domain. If you need licenses for additional sites, purchase a separate license for each. Contact support@pimipay.com for volume pricing.
Does PimiPay offer refunds on the plugin? +
Yes, we offer a 30-day money-back guarantee. If you're not satisfied for any reason, contact us at support@pimipay.com within 30 days of purchase for a full refund.
Is there a free trial of Paddle for WooCommerce? +
There is no free trial at this time. You can review the full feature set on the homepage before purchasing. We offer a 30-day money-back guarantee if you're not satisfied.
Support & Updates
How do I get support for Paddle for WooCommerce? +
All license holders get access to premium email support at support@pimipay.com. We typically respond within 24 hours on business days.
How do automatic updates work for the PimiPay plugin? +
The plugin integrates with the WordPress update system. When a new version is available, you'll see a notification in your WordPress admin and can update with one click — just like any other plugin. An active license key is required to receive updates.
Where is the Paddle for WooCommerce documentation? +
Documentation is available at pimipay.com/docs. It covers installation, configuration, product sync, webhooks, and troubleshooting.
Where is the Paddle for WooCommerce changelog? +
The full changelog is available at pimipay.com/changelog. Each release includes details about new features, improvements, and bug fixes.
Subscriptions
Can I sell subscriptions in WooCommerce without the WooCommerce Subscriptions plugin? +
Yes, if you sell through Paddle. Since PimiPay 2.0.0 you set a simple virtual product's Billing to Recurring, sync it, and Paddle creates the subscription at checkout and charges every renewal itself. WooCommerce does not need the WooCommerce Subscriptions extension or any other add-on, and each renewal is recorded in WooCommerce as its own order linked to the first one.
Does Paddle work with the WooCommerce Subscriptions extension? +
Not through PimiPay, and you do not need it to. PimiPay uses Paddle as the subscription engine, so a product of the WooCommerce Subscriptions type is not something Paddle can bill, and the gateway hides itself when one is in the cart. Set the product's Billing to Recurring in PimiPay's own Paddle tab instead.
How do Paddle subscription renewals show up in WooCommerce? +
Each renewal becomes its own WooCommerce order. When Paddle charges a renewal, PimiPay creates a new order for the recurring items, marks it paid with the Paddle transaction ID, and links it to the original order. The original order's screen lists its renewals, and the orders list can be filtered to subscription parents or renewals. WooCommerce's own "order complete" email is not sent for renewals because Paddle already sends the receipt.
How do customers cancel or pause a Paddle subscription bought through WooCommerce? +
In the Paddle customer portal. My Account → Subscriptions lists each subscription with its status, billing interval and next payment, and each row's Manage button opens the portal, where the customer can cancel, pause or update the card. Nothing is changed from WooCommerce itself, which is what keeps the amount Paddle charges and the amount WooCommerce records identical.
What happens when a subscription payment fails? +
Paddle retries the card and sends its own reminder emails; PimiPay adds a note to the original order and leaves the customer's download access in place while the subscription is past due. Only when Paddle marks the subscription canceled does PimiPay remove download access for the recurring products, and it restores that access if the subscription is reactivated. Order statuses are never changed by subscription state.
Can I offer a free trial on a Paddle subscription in WooCommerce? +
Not yet. The trial field exists in the code but is hidden, because a trial would record the first WooCommerce order at the full price while Paddle charges nothing that day. Trials are on the roadmap; do not buy on the assumption they arrive by a given date.
Which billing intervals does Paddle for WooCommerce support? +
Daily, weekly, monthly or yearly, every 1 to 365 periods, so "every 3 months" or "every 2 weeks" are fine. A cart can hold one-time products alongside recurring ones, but all recurring items in one cart must share the same interval, because Paddle creates one subscription per checkout.
Can a WooCommerce product be sold both one-time and as a subscription? +
No. A product is either one-time or recurring. If you want both, create two products. Recurring billing is also limited to simple virtual products: variable products and anything that needs shipping stay one-time, which matches Paddle's own rule that it is a merchant of record for digital goods.
Do WooCommerce coupons apply to Paddle subscriptions? +
Not to the recurring items. A recurring line is always billed at its synced Paddle price, so if a coupon reduces one, Paddle is not offered at checkout; the classic checkout explains why and asks the customer to remove the coupon. Coupons still work on one-time products in Order total pricing mode as before.
How much does it cost to sell subscriptions with Paddle in WooCommerce? +
The PimiPay licence, $59 a year for one site, plus Paddle's own fee on each charge (5% + 50¢ at Paddle's published rate as of September 2026, renewals included). There is no subscription-plugin fee on top: the other Paddle gateways for WooCommerce we compared in September 2026 route recurring billing through the WooCommerce Subscriptions extension, which is $279 a year at woocommerce.com at the time of writing.
What happens if I turn the Subscriptions setting off in PimiPay? +
Paddle keeps billing every existing subscription; nothing on your site can stop that. Renewals stop being recorded as WooCommerce orders, recurring products can no longer be bought with Paddle, and the My Account tab disappears. The setting shows how many subscriptions are live on the store before you untick it.