Title: SaleMint – Paddle Checkout for WooCommerce
Author: Istiaq Nirab
Published: <strong>May 10, 2026</strong>
Last modified: August 13, 2026

---

Search plugins

![](https://ps.w.org/salemint-paddle-checkout-for-woocommerce/assets/banner-772x250.
png?rev=3527730)

![](https://ps.w.org/salemint-paddle-checkout-for-woocommerce/assets/icon-256x256.
png?rev=3527730)

# SaleMint – Paddle Checkout for WooCommerce

 By [Istiaq Nirab](https://profiles.wordpress.org/ok9xnirab/)

[Download](https://downloads.wordpress.org/plugin/salemint-paddle-checkout-for-woocommerce.1.3.1.zip)

 * [Details](https://wordpress.org/plugins/salemint-paddle-checkout-for-woocommerce/#description)
 * [Reviews](https://wordpress.org/plugins/salemint-paddle-checkout-for-woocommerce/#reviews)
 * [Development](https://wordpress.org/plugins/salemint-paddle-checkout-for-woocommerce/#developers)

 [Support](https://wordpress.org/support/plugin/salemint-paddle-checkout-for-woocommerce/)

## Description

**SaleMint – Paddle Checkout for WooCommerce** connects your WooCommerce store to
[Paddle](https://paddle.com), a merchant-of-record payment platform built for digital
products. Paddle handles the checkout, tax calculation, and invoicing, while this
plugin keeps your WooCommerce orders fully in sync.

> **Need subscriptions?** This free plugin handles one-time payments. For recurring
> billing, free trials, a Buy Now button, a self-serve customer portal, and one-
> click invoices, see **[SaleMint Paddle Pro](https://salemint.io/plugins/paddle-for-woocommerce)**—
> it’s a superset of this plugin, so nothing you’re already using changes. Full 
> setup docs: [salemint.io/docs/paddle/introduction](https://salemint.io/docs/paddle/introduction).

#### How it works

When a customer places an order, the plugin opens Paddle’s hosted checkout (modal
or full-page). After the customer completes payment, the Paddle transaction ID is
captured and attached to the WooCommerce order. The plugin then fetches the authoritative
order totals from Paddle — including any tax Paddle applied — and updates the WooCommerce
order to match, so your records are always accurate.

#### Key features

 * **Classic checkout & WooCommerce Blocks** — Works with both the classic WooCommerce
   checkout and the modern block-based checkout.
 * **Modal or full-page checkout** — Choose between an overlay modal or a full-page
   Paddle checkout, configurable from the gateway settings.
 * **Sandbox / live mode** — Toggle between Paddle’s sandbox environment for testing
   and the live environment for production, without touching any code.
 * **Digital-only enforcement** — The Paddle payment option is automatically hidden
   whenever the cart contains a physical product that requires shipping. This prevents
   it from appearing for orders Paddle cannot fulfil.
 * **Paddle tax categories** — Assign a Paddle tax category (e.g. _standard_, _digital-
   goods_, _ebooks_, _SaaS_, _software_) to products, with a configurable store-
   wide default. Supports all 13 Paddle tax classifications.
 * **Coupon sync** — WooCommerce coupons applied at checkout are forwarded to Paddle
   as discounts, so the transaction amount in Paddle always reflects the discounted
   total.
 * **Cart fee sync** — Extra fees added to the cart (e.g. handling fees or surcharges)
   are passed to Paddle as line items and synced back after payment, keeping both
   records consistent.
 * **Automatic order totals sync** — After payment, the plugin synchronises WooCommerce
   order totals — including line-item subtotals, discounts, fees, tax lines, and
   the grand total — with the values reported by Paddle. An order note is added 
   documenting the sync for auditing purposes.
 * **Transaction & invoice ID tracking** — The Paddle transaction ID and invoice
   ID are saved directly to the WooCommerce order and visible on the order detail
   screen.
 * **Transaction URL** — A direct link to the Paddle transaction is saved with each
   order so you can jump straight to the Paddle dashboard from WooCommerce.
 * **Refund support** — Initiate full or partial refunds from the standard WooCommerce
   refund interface; the plugin forwards the refund to Paddle automatically.
 * **Invoice button on order screen** — A one-click button on the admin single-order
   page lets you open or download the Paddle-generated invoice without leaving WooCommerce.
 * **Order-pay page support** — Customers can retry a failed or pending payment 
   from the WooCommerce order-pay page; billing details are pre-populated automatically.
 * **Light and dark themes** — Choose between Paddle’s light and dark checkout UI
   to match your store’s design.

#### Free vs Pro

Everything above is free, forever. **[SaleMint Paddle Pro](https://salemint.io/plugins/paddle-for-woocommerce)**
is an add-on that layers recurring billing and its supporting tools on top — install
it alongside this plugin and every free feature keeps working unchanged.

**Pro adds:**

 * Per-product Paddle tax category override
 * WooCommerce Subscriptions support
 * Signup fee handling
 * Free trial support
 * Auto-renewal via webhook, with HMAC-SHA256 signature verification
 * Early renewal
 * Update payment method from My Account
 * Self-serve customer portal
 * Buy Now button (Gutenberg block and Elementor widget)
 * Customer invoices (View & Generate, cached and auto-regenerated)

See the full [Pro documentation](https://salemint.io/docs/paddle/introduction) or
[get Pro](https://checkout.freemius.com/plugin/29396/plan/54483/licenses/1/?coupon=earlysupporters).

#### Requirements

 * PHP 8.1 or higher
 * WordPress 6.0 or higher
 * WooCommerce (latest recommended)
 * A [Paddle account](https://paddle.com) with an API key and client-side token

### External Services

This plugin connects to Paddle’s servers to process payments and load the Paddle
JavaScript SDK. By using this plugin you agree to Paddle’s terms and privacy policy.

#### Paddle JavaScript SDK

The Paddle checkout SDK is loaded from Paddle’s CDN on any page where the payment
gateway is active:

 * **Production:** `https://cdn.paddle.com/paddle/v2/paddle.js`
 * **Sandbox:** same URL (environment is set via the client-side token)

This script is provided by Paddle.com Inc. and is required to open the hosted checkout
modal.

 * [Paddle website](https://paddle.com)
 * [Paddle Terms of Service](https://www.paddle.com/legal/terms)
 * [Paddle Privacy Policy](https://www.paddle.com/legal/privacy)

#### Paddle REST API

The plugin communicates with the Paddle REST API from your server to create transactions
and retrieve order details:

 * **Production:** `https://api.paddle.com`
 * **Sandbox:** `https://sandbox-api.paddle.com`

Data sent includes order line items, customer billing information (email, country,
postcode), and currency. No data is sent unless a customer initiates checkout.

## Screenshots

[⌊WooCommerce Payment Methods page.⌉⌊WooCommerce Payment Methods page.⌉[

WooCommerce Payment Methods page.

[⌊Gateway settings screen — configure API credentials, tax mode, and checkout appearance.⌉⌊
Gateway settings screen — configure API credentials, tax mode, and checkout appearance
.⌉[

Gateway settings screen — configure API credentials, tax mode, and checkout appearance.

[⌊Paddle payment method option on WooCommerce checkout page.⌉⌊Paddle payment method
option on WooCommerce checkout page.⌉[

Paddle payment method option on WooCommerce checkout page.

[⌊Paddle checkout modal on the WooCommerce checkout page.⌉⌊Paddle checkout modal
on the WooCommerce checkout page.⌉[

Paddle checkout modal on the WooCommerce checkout page.

[⌊WooCommerce admin order detail showing the Paddle transaction ID and synced order
totals with taxes.⌉⌊WooCommerce admin order detail showing the Paddle transaction
ID and synced order totals with taxes.⌉[

WooCommerce admin order detail showing the Paddle transaction ID and synced order
totals with taxes.

[⌊Paddle payment method option on WooCommerce order-pay page.⌉⌊Paddle payment method
option on WooCommerce order-pay page.⌉[

Paddle payment method option on WooCommerce order-pay page.

[⌊Order with Coupon and Fee.⌉⌊Order with Coupon and Fee.⌉[

Order with Coupon and Fee.

## FAQ

### Why does the Paddle payment option disappear at checkout?

Paddle is designed for digital goods. If your cart contains any product that requires
physical shipping, the Paddle payment option is automatically hidden. Remove the
physical item — or complete its purchase through a different payment method — and
Paddle will reappear for the remaining digital items.

### My order total is different after payment. Is that normal?

Yes, this is intentional. Paddle acts as a merchant of record and calculates tax
authoritatively based on the customer’s location. After a successful payment, the
plugin fetches the final totals directly from Paddle and updates the WooCommerce
order to match — including any tax Paddle applied that differs from the original
WooCommerce estimate. An order note is added every time this sync occurs so you 
have a clear audit trail.

### Where can I find the Paddle transaction ID for an order?

Open the order in **WooCommerce  Orders**, then look in the order meta section. 
The transaction ID is stored under `_paddle_transaction_id` and the invoice ID under`
_paddle_invoice_id`.

### What currencies are supported?

Any currency supported by your Paddle account. The plugin correctly handles both
standard currencies (e.g. USD, EUR, GBP) and zero-decimal currencies (e.g. JPY, 
KRW) without any additional configuration.

### Are WooCommerce coupons passed to Paddle?

Yes. When a customer applies a coupon at checkout, the discount is forwarded to 
Paddle so the transaction amount matches the discounted WooCommerce total. The coupon
value is also reflected in the order totals sync after payment.

### Are extra cart fees (e.g. handling fees) passed to Paddle?

Yes. Any fees added to the cart — such as handling fees or surcharges — are sent
to Paddle as separate line items. After payment, these fee amounts are synced back
to the WooCommerce order to keep both records consistent.

### Does the plugin support subscriptions or recurring payments?

The free core processes one-time transactions only. For recurring billing — subscriptions,
free trials, auto-renewal, early renewal, and a customer portal — install **[SaleMint Paddle Pro](https://salemint.io/plugins/paddle-for-woocommerce)**
alongside this plugin. Pro also adds a Buy Now button and one-click customer invoices.
See the [Pro documentation](https://salemint.io/docs/paddle/introduction) for setup
steps.

### Does the plugin handle refunds?

Yes. You can issue full or partial refunds directly from the WooCommerce order screen
using the standard refund interface. The plugin forwards the refund request to Paddle
automatically and records the result in the order notes.

### How do I switch from sandbox to live mode?

Go to **WooCommerce  Settings  Payments  Paddle Payment for WooCommerce**, uncheck**
Sandbox Mode**, enter your live API key and client-side token, and save. No other
changes are required.

### What PHP and WooCommerce versions are required?

PHP 8.1 or higher is required. The plugin is tested against the latest stable release
of WooCommerce; using a recent version is strongly recommended.

### Is there a Pro version?

Yes. **[SaleMint Paddle Pro](https://salemint.io/plugins/paddle-for-woocommerce)**
is an add-on for this free plugin that adds native WooCommerce Subscriptions support,
free trials, auto-renewal, early renewal, a Buy Now button (Gutenberg block and 
Elementor widget), a self-serve customer portal, and one-click customer invoices.
Install it alongside the free core — every free feature keeps working exactly as
before. Documentation is available at [salemint.io/docs/paddle/introduction](https://salemint.io/docs/paddle/introduction).

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“SaleMint – Paddle Checkout for WooCommerce” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ Istiaq Nirab ](https://profiles.wordpress.org/ok9xnirab/)

[Translate “SaleMint – Paddle Checkout for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/salemint-paddle-checkout-for-woocommerce)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/salemint-paddle-checkout-for-woocommerce/),
check out the [SVN repository](https://plugins.svn.wordpress.org/salemint-paddle-checkout-for-woocommerce/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/salemint-paddle-checkout-for-woocommerce/)
by [RSS](https://plugins.trac.wordpress.org/log/salemint-paddle-checkout-for-woocommerce/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.3.1

 * WC tested up to: 11.0.
 * Tested up to: 7.1.

#### 1.3

 * NEW – “Enable/Disable” settings added on gateway settings.
 * IMPROVEMENT – Add settings page link on plugin action links.
 * IMPROVEMENT – PHP version incompatibility notice added.
 * FIX – Fixed paddle checkout procced without checkout field validation.
 * FIX – Cloudflare error when paddle throw error in `create-transaction` API.
 * FIX – Fixed paddle assets loaded outside of checkout page.
 * UPDATE – Ready for pro plugin v1.0.0

#### 1.2

 * NEW – Refund support added.
 * NEW – Transaction url support added.
 * NEW – Invoice button on admin single-order page added.

#### 1.1

 * Fix fatal error during plugin activation.
 * Fix order-pay access error.
 * Fix cookie check failed during create-transaction api on block checkout.
 * NEW – Coupon sync added.
 * NEW – Cart Fee support added with sync.

#### 1.0.0

 * Initial release.
 * Classic checkout and WooCommerce Blocks support.
 * Modal and full-page checkout variants.
 * Automatic order totals sync from Paddle after payment.
 * Paddle transaction ID and invoice ID saved to WooCommerce orders.
 * Automatic gateway hiding for carts containing physical products.
 * Sandbox and live mode toggle.
 * Support for all 13 Paddle tax categories.
 * Light and dark checkout themes.
 * Order-pay page support for payment retries.

## Meta

 *  Version **1.3.1**
 *  Last updated **1 month ago**
 *  Active installations **20+**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 8.1 or higher **
 * Tags
 * [digital goods](https://wordpress.org/plugins/tags/digital-goods/)[paddle](https://wordpress.org/plugins/tags/paddle/)
   [payment gateway](https://wordpress.org/plugins/tags/payment-gateway/)[tax](https://wordpress.org/plugins/tags/tax/)
   [woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/salemint-paddle-checkout-for-woocommerce/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/salemint-paddle-checkout-for-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/salemint-paddle-checkout-for-woocommerce/reviews/)

## Contributors

 *   [ Istiaq Nirab ](https://profiles.wordpress.org/ok9xnirab/)

## Support

Issues resolved in last two months:

     1 out of 1

 [View support forum](https://wordpress.org/support/plugin/salemint-paddle-checkout-for-woocommerce/)