{"id":341832,"date":"2026-07-22T07:49:49","date_gmt":"2026-07-22T07:49:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/kubelio-payment-confirmation-for-woocommerce\/"},"modified":"2026-07-22T07:49:37","modified_gmt":"2026-07-22T07:49:37","slug":"kubelio-payment-confirmation","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/kubelio-payment-confirmation\/","author":23501359,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.2","stable_tag":"1.0.2","tested":"7.0.2","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Kubelio Payment Confirmation for WooCommerce","header_author":"Kubelio","header_description":"A simple WooCommerce Bank Payment Confirmation form. Allow customers to easily upload bank transfer receipts (payment proof).","assets_banners_color":"a1bfbe","last_updated":"2026-07-22 07:49:37","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/kubelio.com\/kubelio-payment-confirmation","header_author_uri":"https:\/\/kubelio.com\/about-us","rating":0,"author_block_rating":0,"active_installs":0,"downloads":37,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"kubelio","date":"2026-07-22 07:49:37"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3618132,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3618132,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3618132,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3618132,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3618132,"resolution":"1","location":"assets","locale":"","width":1400,"height":647},"screenshot-10.png":{"filename":"screenshot-10.png","revision":3618132,"resolution":"10","location":"assets","locale":"","width":1400,"height":474},"screenshot-11.png":{"filename":"screenshot-11.png","revision":3618132,"resolution":"11","location":"assets","locale":"","width":1398,"height":845},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3618132,"resolution":"2","location":"assets","locale":"","width":1398,"height":1058},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3618132,"resolution":"3","location":"assets","locale":"","width":1398,"height":894},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3618132,"resolution":"4","location":"assets","locale":"","width":1400,"height":471},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3618132,"resolution":"5","location":"assets","locale":"","width":1400,"height":629},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3618132,"resolution":"6","location":"assets","locale":"","width":1400,"height":797},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3618132,"resolution":"7","location":"assets","locale":"","width":1400,"height":796},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3618132,"resolution":"8","location":"assets","locale":"","width":1400,"height":799},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3618132,"resolution":"9","location":"assets","locale":"","width":1500,"height":799}},"screenshots":{"1":"Payment confirmation button on the order detail page in My Account","2":"Payment proof submission form for customers","3":"Confirmation status after submitting proof \u2013 \"Under Review\"","4":"Payment confirmation button on the order list page in My Account","5":"List of payment confirmations submitted by customers (admin view)","6":"Admin verification form for reviewing payment proof","7":"Payment confirmation proof and status shown in the WooCommerce order quick view","8":"Payment confirmation proof and status shown on the order detail page","9":"Email notification settings for customers and admin","10":"Order lookup page for guest checkout \u2013 accessed directly instead of via the confirmation button link","11":"Payment confirmation status after verification \u2013 \"Confirmed\""}},"plugin_section":[],"plugin_tags":[127760,267607,262021,272751,286],"plugin_category":[45],"plugin_contributors":[263936],"plugin_business_model":[],"class_list":["post-341832","plugin","type-plugin","status-publish","hentry","plugin_tags-bank-transfer","plugin_tags-payment-confirmation","plugin_tags-payment-receipt","plugin_tags-upload-payment-proof","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-kubelio","plugin_committers-kubelio"],"banners":{"banner":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/banner-772x250.png?rev=3618132","banner_2x":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/banner-1544x500.png?rev=3618132","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/icon-128x128.png?rev=3618132","icon_2x":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/icon-256x256.png?rev=3618132","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-1.png?rev=3618132","caption":"Payment confirmation button on the order detail page in My Account"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-2.png?rev=3618132","caption":"Payment proof submission form for customers"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-3.png?rev=3618132","caption":"Confirmation status after submitting proof \u2013 \"Under Review\""},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-4.png?rev=3618132","caption":"Payment confirmation button on the order list page in My Account"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-5.png?rev=3618132","caption":"List of payment confirmations submitted by customers (admin view)"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-6.png?rev=3618132","caption":"Admin verification form for reviewing payment proof"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-7.png?rev=3618132","caption":"Payment confirmation proof and status shown in the WooCommerce order quick view"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-8.png?rev=3618132","caption":"Payment confirmation proof and status shown on the order detail page"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-9.png?rev=3618132","caption":"Email notification settings for customers and admin"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-10.png?rev=3618132","caption":"Order lookup page for guest checkout \u2013 accessed directly instead of via the confirmation button link"},{"src":"https:\/\/ps.w.org\/kubelio-payment-confirmation\/assets\/screenshot-11.png?rev=3618132","caption":"Payment confirmation status after verification \u2013 \"Confirmed\""}],"raw_content":"<!--section=description-->\n<p>Accepting manual bank transfers in WooCommerce just got a whole lot easier! <strong>Kubelio Payment Confirmation<\/strong> adds a beautiful, user-friendly bank payment confirmation form where your customers can upload their bank transfer receipts (payment proof) after checkout.<\/p>\n\n<p>Say goodbye to manually checking WhatsApp or emails for transfer receipts. Manage and approve every bank payment directly from a dedicated screen in your WordPress Admin!<\/p>\n\n<h3>Why Choose Kubelio Payment Confirmation?<\/h3>\n\n<p>Most payment confirmation plugins are either too complicated to set up or lack essential security features. We built this to be powerful yet zero-configuration:<\/p>\n\n<ul>\n<li><strong>Instant Setup:<\/strong> Just activate the plugin! A \"Payment Confirmation\" page is automatically generated and ready to use.<\/li>\n<li><strong>Seamless WooCommerce Integration:<\/strong> Reads your existing Direct Bank Transfer (BACS) accounts automatically. No duplicate data entry.<\/li>\n<li><strong>Works for Everyone:<\/strong> Both registered customers and guests can submit and track a payment confirmation \u2014 no account required.<\/li>\n<li><strong>Modern Upload Experience:<\/strong> Supports drag &amp; drop for JPG, PNG, WebP, and PDF files.<\/li>\n<li><strong>Smart Image Compression:<\/strong> Automatically resizes oversized photos and converts them to next-gen <strong>WebP<\/strong> formats to save your server disk space.<\/li>\n<li><strong>Built-in Spam Protection:<\/strong> Honeypot anti-spam and rate-limiting (per IP and per Order) to protect your server from malicious file uploads.<\/li>\n<li><strong>Secure Storage:<\/strong> Uploaded receipts are stored privately outside the public Media Library. No one can guess the URL or index them on Google.<\/li>\n<\/ul>\n\n<h4>How it works<\/h4>\n\n<ol>\n<li>After checkout, the customer sees a \"Confirm Payment\" link \u2014 on the Thank You page, in My Account, and\/or in the order confirmation email, depending on your settings.<\/li>\n<li>The link opens a form where the customer enters their transfer details and uploads proof of payment (JPG, PNG, or PDF), with drag &amp; drop support and a plain file input as fallback.<\/li>\n<li>Both guests and registered customers can submit and track a payment confirmation the same way \u2014 no account is required.<\/li>\n<li>Every submission appears under WooCommerce \u2192 Confirmations, together with the proof image and the order's details in one review modal.<\/li>\n<li>Approving a confirmation moves the order to a WooCommerce status you configure (Processing by default). Rejecting a confirmation, or the customer simply submitting proof, does not change the order's WooCommerce status.<\/li>\n<\/ol>\n\n<h4>Works with any WooCommerce theme<\/h4>\n\n<p>The plugin relies on WooCommerce's own hooks and templates rather than theme-specific markup, so it works alongside the theme you're already using \u2014 no custom templates to install.<\/p>\n\n<h4>Flexible confirmation page via shortcode<\/h4>\n\n<p>On activation, the plugin automatically creates a \"Payment Confirmation\" page and inserts its shortcode into it, so the form is available right away at <code>yourdomain.com\/payment-confirmation<\/code> \u2014 no setup needed.<\/p>\n\n<p>Want to use a different page instead? Just place the <code>[kubelio_payment_confirmation]<\/code> shortcode on any page or post of your choice.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li>Works with WooCommerce's own Direct Bank Transfer (BACS) accounts \u2014 bank details are read from WooCommerce settings.<\/li>\n<li>Mark any active payment gateway as requiring confirmation, not just BACS.<\/li>\n<li>Drag &amp; drop proof upload (JPG, PNG, WebP, PDF).<\/li>\n<li>Configurable display locations: Thank You page, My Account order detail, My Account order list, and the order confirmation email.<\/li>\n<li>Dedicated review screen under WooCommerce \u2192 Confirmations, with a modal showing the proof image and order\/customer details together.<\/li>\n<li>Lightbox preview for the proof image, plus a summary in WooCommerce's own order-list quick-view modal.<\/li>\n<li>Submission limits (per order, per IP) and honeypot spam protection.<\/li>\n<li>Proof files are stored privately (outside the public Media Library) and served only through an access-controlled endpoint \u2014 never a guessable public URL, and never indexable by search engines.<\/li>\n<li>Automatic image compression \u2014 optional resizing (matches your Media Settings \"Large size\") and WebP conversion, keeping storage and email attachment size down.<\/li>\n<\/ul>\n\n<p>Full setup guide and documentation: <a href=\"https:\/\/docs.kubelio.com\/docs\/payment-confirmation\/\">docs.kubelio.com\/docs\/payment-confirmation<\/a><\/p>\n\n<h3>Third-Party Libraries<\/h3>\n\n<p>This plugin bundles or depends on the following open-source libraries:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/github.com\/wapiclo\/wapic-fields\">Wapic Fields<\/a> (v2.3.0, GPLv2 License) \u2014 renders the plugin's own Settings screen fields.<\/li>\n<li><a href=\"https:\/\/www.dropzone.dev\/\">Dropzone.js<\/a> (v5.9.3, MIT License) \u2014 drag &amp; drop proof upload on the customer confirmation form.<\/li>\n<li><a href=\"https:\/\/biati-digital.github.io\/glightbox\/\">GLightbox<\/a> (v3.3.1, MIT License) \u2014 proof image lightbox on the admin Confirmations screen.<\/li>\n<li><a href=\"https:\/\/plyr.io\/\">Plyr<\/a> (v3.8.4, MIT License) \u2014 media player used by GLightbox for video playback.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/<\/code> directory, or install the plugin through the Plugins screen in WordPress directly.<\/li>\n<li>Activate the plugin through the \"Plugins\" screen in WordPress.<\/li>\n<li>Make sure WooCommerce is installed and active \u2014 this plugin requires it.<\/li>\n<li>Go to Kubelio \u2192 Confirmation to choose which payment methods require confirmation and where the \"Confirm Payment\" link should appear.<\/li>\n<li>Review incoming submissions under WooCommerce \u2192 Confirmations.<\/li>\n<\/ol>\n\n<p>For a full walkthrough with screenshots, see the <a href=\"https:\/\/docs.kubelio.com\/docs\/payment-confirmation\/\">Payment Confirmation documentation<\/a>.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20replace%20woocommerce%27s%20own%20direct%20bank%20transfer%20%28bacs%29%20settings%3F\"><h3>Does this replace WooCommerce's own Direct Bank Transfer (BACS) settings?<\/h3><\/dt>\n<dd><p>No. Bank account details are read directly from WooCommerce \u2192 Settings \u2192 Payments \u2192 Direct bank transfer, so there's only one place to manage them.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20with%20a%20payment%20gateway%20other%20than%20bacs%3F\"><h3>Can I use this with a payment gateway other than BACS?<\/h3><\/dt>\n<dd><p>Yes. The \"Applicable Payment Methods\" setting lets you mark any active gateway as requiring manual confirmation.<\/p><\/dd>\n<dt id=\"does%20approving%20a%20confirmation%20change%20the%20order%20status%3F\"><h3>Does approving a confirmation change the order status?<\/h3><\/dt>\n<dd><p>Yes \u2014 approving moves the order to the status configured in Settings (Processing by default). Submitting proof and rejecting a confirmation do not change the order's WooCommerce status; only the plugin's own internal record does.<\/p><\/dd>\n<dt id=\"where%20can%20customers%20confirm%20their%20payment%3F\"><h3>Where can customers confirm their payment?<\/h3><\/dt>\n<dd><p>Wherever you enable it in Settings: the Thank You page, My Account's order detail page, My Account's order list, and\/or a button in the customer's order confirmation email.<\/p><\/dd>\n<dt id=\"do%20customers%20need%20an%20account%20to%20submit%20a%20payment%20confirmation%3F\"><h3>Do customers need an account to submit a payment confirmation?<\/h3><\/dt>\n<dd><p>No. Guests and registered members can both submit and track their confirmation the same way.<\/p><\/dd>\n<dt id=\"will%20this%20work%20with%20my%20theme%3F\"><h3>Will this work with my theme?<\/h3><\/dt>\n<dd><p>Yes. The plugin relies on WooCommerce's own hooks and templates rather than theme-specific markup, so it works with any properly coded WooCommerce theme.<\/p><\/dd>\n<dt id=\"do%20i%20need%20to%20set%20up%20a%20confirmation%20page%20myself%3F\"><h3>Do I need to set up a confirmation page myself?<\/h3><\/dt>\n<dd><p>No. The plugin creates a \"Payment Confirmation\" page automatically on activation, available at <code>yourdomain.com\/payment-confirmation<\/code>. If you'd rather use a different page, add the <code>[kubelio_payment_confirmation]<\/code> shortcode to any page or post.<\/p><\/dd>\n<dt id=\"is%20the%20uploaded%20payment%20proof%20file%20secure%3F\"><h3>Is the uploaded payment proof file secure?<\/h3><\/dt>\n<dd><p>Yes. Proof files can contain sensitive banking details (account numbers, names, amounts), so they're never stored in the public Media Library and never linked to directly. Each file is saved with a randomized name in a protected folder, and every view \u2014 from wp-admin's review screens \u2014 goes through an access-controlled endpoint gated by admin permission. There's no public URL to guess, share, or accidentally have indexed by a search engine.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20compress%20or%20resize%20uploaded%20images%3F\"><h3>Does the plugin compress or resize uploaded images?<\/h3><\/dt>\n<dd><p>Optionally, yes. Under Kubelio \u2192 Confirmation \u2192 Upload Proof, \"Resize Large Images\" (on by default) shrinks oversized photos down to your site's own Media Settings \"Large size\" limit, and \"Convert to WebP\" (off by default) can re-encode them to a smaller format. Both keep storage usage and email attachment size down without needing to resize photos yourself before uploading. Neither ever enlarges a smaller image or applies to PDF uploads.<\/p><\/dd>\n<dt id=\"does%20the%20payment%20proof%20get%20sent%20by%20email%3F\"><h3>Does the payment proof get sent by email?<\/h3><\/dt>\n<dd><p>Only once, and only as a real attachment \u2014 never as a link. The \"Confirmation Received\" email sent right after a customer submits their proof includes the file itself as an attachment (this can be turned off in settings). No other notification email \u2014 to the admin or the customer \u2014 includes the proof file in any form, by attachment or by link.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fix: Updated bundled Plyr library from 3.7.8 to 3.8.4.<\/li>\n<li>Fix: Updated bundled GLightbox library from 3.3.0 to 3.3.1.<\/li>\n<li>Fix: Updated Wapic Fields dependency to 2.3.0, which bundles an updated Select2 (4.1.0).<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Improve: Added unminified versions of all CSS and JS assets for easier debugging.<\/li>\n<li>Improve: Bundled Plyr library locally to replace external CDN dependency.<\/li>\n<li>Fix: \"Confirm Payment\" button not appearing on Thank You page with FSE\/block-based themes.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"A simple WooCommerce Bank Payment Confirmation form. Allow customers to easily upload bank transfer receipts (payment proof).","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/341832","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=341832"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/kubelio"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=341832"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=341832"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=341832"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=341832"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=341832"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=341832"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}