{"id":308153,"date":"2026-05-10T11:11:01","date_gmt":"2026-05-10T11:11:01","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/integrate-paddle-payment-for-woocommerce\/"},"modified":"2026-06-13T14:07:49","modified_gmt":"2026-06-13T14:07:49","slug":"salemint-paddle-checkout-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/ru.wordpress.org\/plugins\/salemint-paddle-checkout-for-woocommerce\/","author":20304384,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2","stable_tag":"1.2","tested":"7.0","requires":"6.0","requires_php":"8.1","requires_plugins":null,"header_name":"SaleMint Paddle Checkout for WooCommerce","header_author":"Istiaq Nirab","header_description":"Seamless paddle integration for WooCommerce","assets_banners_color":"eae3c4","last_updated":"2026-06-13 14:07:49","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/salemint-paddle-checkout-for-woocommerce\/","header_author_uri":"https:\/\/nirab.me","rating":0,"author_block_rating":0,"active_installs":0,"downloads":223,"num_ratings":0,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"ok9xnirab","date":"2026-05-10 11:10:40"},"1.1.0":{"tag":"1.1.0","author":"ok9xnirab","date":"2026-06-10 22:35:40"},"1.2":{"tag":"1.2","author":"ok9xnirab","date":"2026-06-13 14:07:49"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3527730,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3527730,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3527730,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3527730,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.1.0","1.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3527730,"resolution":"1","location":"assets","locale":"","width":2562,"height":1568},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3527730,"resolution":"2","location":"assets","locale":"","width":2880,"height":2146},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3527730,"resolution":"3","location":"assets","locale":"","width":2880,"height":1572},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3527730,"resolution":"4","location":"assets","locale":"","width":3064,"height":1984},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3571138,"resolution":"5","location":"assets","locale":"","width":3230,"height":2942},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3527730,"resolution":"6","location":"assets","locale":"","width":2880,"height":1768},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3568142,"resolution":"7","location":"assets","locale":"","width":2860,"height":2598}},"screenshots":{"1":"WooCommerce Payment Methods page.","2":"Gateway settings screen \u2014 configure API credentials, tax mode, and checkout appearance.","3":"Paddle payment method option on WooCommerce checkout page.","4":"Paddle checkout modal on the WooCommerce checkout page.","5":"WooCommerce admin order detail showing the Paddle transaction ID and synced order totals with taxes.","6":"Paddle payment method option on WooCommerce order-pay page.","7":"Order with Coupon and Fee."}},"plugin_section":[],"plugin_tags":[6886,187025,6593,2012,286],"plugin_category":[45],"plugin_contributors":[208397],"plugin_business_model":[],"class_list":["post-308153","plugin","type-plugin","status-publish","hentry","plugin_tags-digital-goods","plugin_tags-paddle","plugin_tags-payment-gateway","plugin_tags-tax","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-ok9xnirab","plugin_committers-ok9xnirab"],"banners":{"banner":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/banner-772x250.png?rev=3527730","banner_2x":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/banner-1544x500.png?rev=3527730","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/icon-128x128.png?rev=3527730","icon_2x":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/icon-256x256.png?rev=3527730","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-1.png?rev=3527730","caption":"WooCommerce Payment Methods page."},{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-2.png?rev=3527730","caption":"Gateway settings screen \u2014 configure API credentials, tax mode, and checkout appearance."},{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-3.png?rev=3527730","caption":"Paddle payment method option on WooCommerce checkout page."},{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-4.png?rev=3527730","caption":"Paddle checkout modal on the WooCommerce checkout page."},{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-5.png?rev=3571138","caption":"WooCommerce admin order detail showing the Paddle transaction ID and synced order totals with taxes."},{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-6.png?rev=3527730","caption":"Paddle payment method option on WooCommerce order-pay page."},{"src":"https:\/\/ps.w.org\/salemint-paddle-checkout-for-woocommerce\/assets\/screenshot-7.png?rev=3568142","caption":"Order with Coupon and Fee."}],"raw_content":"<!--section=description-->\n<p><strong>SaleMint Paddle Checkout for WooCommerce<\/strong> connects your WooCommerce store to <a href=\"https:\/\/paddle.com\">Paddle<\/a>, 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.<\/p>\n\n<h4>How it works<\/h4>\n\n<p>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 \u2014 including any tax Paddle applied \u2014 and updates the WooCommerce order to match, so your records are always accurate.<\/p>\n\n<h4>Key features<\/h4>\n\n<ul>\n<li><strong>Classic checkout &amp; WooCommerce Blocks<\/strong> \u2014 Works with both the classic WooCommerce checkout and the modern block-based checkout.<\/li>\n<li><strong>Modal or full-page checkout<\/strong> \u2014 Choose between an overlay modal or a full-page Paddle checkout, configurable from the gateway settings.<\/li>\n<li><strong>Sandbox \/ live mode<\/strong> \u2014 Toggle between Paddle's sandbox environment for testing and the live environment for production, without touching any code.<\/li>\n<li><strong>Digital-only enforcement<\/strong> \u2014 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.<\/li>\n<li><strong>Paddle tax categories<\/strong> \u2014 Assign a Paddle tax category (e.g. <em>standard<\/em>, <em>digital-goods<\/em>, <em>ebooks<\/em>, <em>SaaS<\/em>, <em>software<\/em>) to products, with a configurable store-wide default. Supports all 13 Paddle tax classifications.<\/li>\n<li><strong>Coupon sync<\/strong> \u2014 WooCommerce coupons applied at checkout are forwarded to Paddle as discounts, so the transaction amount in Paddle always reflects the discounted total.<\/li>\n<li><strong>Cart fee sync<\/strong> \u2014 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.<\/li>\n<li><strong>Automatic order totals sync<\/strong> \u2014 After payment, the plugin synchronises WooCommerce order totals \u2014 including line-item subtotals, discounts, fees, tax lines, and the grand total \u2014 with the values reported by Paddle. An order note is added documenting the sync for auditing purposes.<\/li>\n<li><strong>Transaction &amp; invoice ID tracking<\/strong> \u2014 The Paddle transaction ID and invoice ID are saved directly to the WooCommerce order and visible on the order detail screen.<\/li>\n<li><strong>Transaction URL<\/strong> \u2014 A direct link to the Paddle transaction is saved with each order so you can jump straight to the Paddle dashboard from WooCommerce.<\/li>\n<li><strong>Refund support<\/strong> \u2014 Initiate full or partial refunds from the standard WooCommerce refund interface; the plugin forwards the refund to Paddle automatically.<\/li>\n<li><strong>Invoice button on order screen<\/strong> \u2014 A one-click button on the admin single-order page lets you open or download the Paddle-generated invoice without leaving WooCommerce.<\/li>\n<li><strong>Order-pay page support<\/strong> \u2014 Customers can retry a failed or pending payment from the WooCommerce order-pay page; billing details are pre-populated automatically.<\/li>\n<li><strong>Light and dark themes<\/strong> \u2014 Choose between Paddle's light and dark checkout UI to match your store's design.<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>PHP 8.1 or higher<\/li>\n<li>WordPress 6.0 or higher<\/li>\n<li>WooCommerce (latest recommended)<\/li>\n<li>A <a href=\"https:\/\/paddle.com\">Paddle account<\/a> with an API key and client-side token<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>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.<\/p>\n\n<h4>Paddle JavaScript SDK<\/h4>\n\n<p>The Paddle checkout SDK is loaded from Paddle's CDN on any page where the payment gateway is active:<\/p>\n\n<ul>\n<li><strong>Production:<\/strong> <code>https:\/\/cdn.paddle.com\/paddle\/v2\/paddle.js<\/code><\/li>\n<li><strong>Sandbox:<\/strong> same URL (environment is set via the client-side token)<\/li>\n<\/ul>\n\n<p>This script is provided by Paddle.com Inc. and is required to open the hosted checkout modal.<\/p>\n\n<ul>\n<li><a href=\"https:\/\/paddle.com\">Paddle website<\/a><\/li>\n<li><a href=\"https:\/\/www.paddle.com\/legal\/terms\">Paddle Terms of Service<\/a><\/li>\n<li><a href=\"https:\/\/www.paddle.com\/legal\/privacy\">Paddle Privacy Policy<\/a><\/li>\n<\/ul>\n\n<h4>Paddle REST API<\/h4>\n\n<p>The plugin communicates with the Paddle REST API from your server to create transactions and retrieve order details:<\/p>\n\n<ul>\n<li><strong>Production:<\/strong> <code>https:\/\/api.paddle.com<\/code><\/li>\n<li><strong>Sandbox:<\/strong> <code>https:\/\/sandbox-api.paddle.com<\/code><\/li>\n<\/ul>\n\n<p>Data sent includes order line items, customer billing information (email, country, postcode), and currency. No data is sent unless a customer initiates checkout.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"why%20does%20the%20paddle%20payment%20option%20disappear%20at%20checkout%3F\"><h3>Why does the Paddle payment option disappear at checkout?<\/h3><\/dt>\n<dd><p>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 \u2014 or complete its purchase through a different payment method \u2014 and Paddle will reappear for the remaining digital items.<\/p><\/dd>\n<dt id=\"my%20order%20total%20is%20different%20after%20payment.%20is%20that%20normal%3F\"><h3>My order total is different after payment. Is that normal?<\/h3><\/dt>\n<dd><p>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 \u2014 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.<\/p><\/dd>\n<dt id=\"where%20can%20i%20find%20the%20paddle%20transaction%20id%20for%20an%20order%3F\"><h3>Where can I find the Paddle transaction ID for an order?<\/h3><\/dt>\n<dd><p>Open the order in <strong>WooCommerce \u2192 Orders<\/strong>, then look in the order meta section. The transaction ID is stored under <code>_paddle_transaction_id<\/code> and the invoice ID under <code>_paddle_invoice_id<\/code>.<\/p><\/dd>\n<dt id=\"what%20currencies%20are%20supported%3F\"><h3>What currencies are supported?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"are%20woocommerce%20coupons%20passed%20to%20paddle%3F\"><h3>Are WooCommerce coupons passed to Paddle?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"are%20extra%20cart%20fees%20%28e.g.%20handling%20fees%29%20passed%20to%20paddle%3F\"><h3>Are extra cart fees (e.g. handling fees) passed to Paddle?<\/h3><\/dt>\n<dd><p>Yes. Any fees added to the cart \u2014 such as handling fees or surcharges \u2014 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.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20subscriptions%20or%20recurring%20payments%3F\"><h3>Does the plugin support subscriptions or recurring payments?<\/h3><\/dt>\n<dd><p>Not in the current version. This plugin processes one-time transactions only. Subscription and recurring payment support is planned for a future release.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20handle%20refunds%3F\"><h3>Does the plugin handle refunds?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"how%20do%20i%20switch%20from%20sandbox%20to%20live%20mode%3F\"><h3>How do I switch from sandbox to live mode?<\/h3><\/dt>\n<dd><p>Go to <strong>WooCommerce \u2192 Settings \u2192 Payments \u2192 Paddle Payment for WooCommerce<\/strong>, uncheck <strong>Sandbox Mode<\/strong>, enter your live API key and client-side token, and save. No other changes are required.<\/p><\/dd>\n<dt id=\"what%20php%20and%20woocommerce%20versions%20are%20required%3F\"><h3>What PHP and WooCommerce versions are required?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2<\/h4>\n\n<ul>\n<li>NEW - Refund support added.<\/li>\n<li>NEW - Transaction url support added.<\/li>\n<li>NEW - Invoice button on admin single-order page added.<\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>Fix fatal error during plugin activation.<\/li>\n<li>Fix order-pay access error.<\/li>\n<li>Fix cookie check failed during create-transaction api on block checkout.<\/li>\n<li>NEW - Coupon sync added.<\/li>\n<li>NEW - Cart Fee support added with sync.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Classic checkout and WooCommerce Blocks support.<\/li>\n<li>Modal and full-page checkout variants.<\/li>\n<li>Automatic order totals sync from Paddle after payment.<\/li>\n<li>Paddle transaction ID and invoice ID saved to WooCommerce orders.<\/li>\n<li>Automatic gateway hiding for carts containing physical products.<\/li>\n<li>Sandbox and live mode toggle.<\/li>\n<li>Support for all 13 Paddle tax categories.<\/li>\n<li>Light and dark checkout themes.<\/li>\n<li>Order-pay page support for payment retries.<\/li>\n<\/ul>","raw_excerpt":"Accept payments for digital products through Paddle&#039;s managed checkout \u2014 with automatic tax calculation and order sync for WooCommerce.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/308153","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=308153"}],"author":[{"embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ok9xnirab"}],"wp:attachment":[{"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=308153"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=308153"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=308153"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=308153"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=308153"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ru.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=308153"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}