Title: JAD Bank Receipt Upload for WooCommerce
Author: JAD Plugins
Published: <strong>September 6, 2026</strong>
Last modified: September 6, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/jad-bank-receipt-upload-for-woocommerce.
svg)

# JAD Bank Receipt Upload for WooCommerce

 By [JAD Plugins](https://profiles.wordpress.org/jadplugins/)

[Download](https://downloads.wordpress.org/plugin/jad-bank-receipt-upload-for-woocommerce.zip)

 * [Details](https://wordpress.org/plugins/jad-bank-receipt-upload-for-woocommerce/#description)
 * [Reviews](https://wordpress.org/plugins/jad-bank-receipt-upload-for-woocommerce/#reviews)
 *  [Installation](https://wordpress.org/plugins/jad-bank-receipt-upload-for-woocommerce/#installation)
 * [Development](https://wordpress.org/plugins/jad-bank-receipt-upload-for-woocommerce/#developers)

 [Support](https://wordpress.org/support/plugin/jad-bank-receipt-upload-for-woocommerce/)

## Description

JAD Bank Receipt Upload for WooCommerce extends WooCommerce Direct Bank Transfer(
BACS) with an optional proof-of-payment upload workflow.

This is an independent extension for WooCommerce and is not affiliated with or endorsed
by WooCommerce.

Customers can upload a receipt during checkout, on the Pay for Order page, or on
the Order Received page. Administrators can view, upload, replace, approve, reject,
or remove receipts from the WooCommerce order screen.

The plugin supports JPG, JPEG, PNG, and PDF files up to 5 MB. Receipt files are 
stored in a protected directory and delivered only after the order and requester
are authorized.

#### Receipt Storage and Retention

Receipt files use randomized storage folders and filenames. Apache and IIS protection
files deny direct requests, while receipt previews and downloads are served through
WordPress after authorization. Nginx administrators can additionally deny direct
web access to the `/wp-content/uploads/bruw/` directory in the site’s server configuration.

Temporary checkout receipts that are not attached to an order are automatically 
deleted after 24 hours. A salted, one-way connection identifier limits excessive
anonymous temporary uploads; the original address is not stored by the plugin.

Order receipt files remain with their WooCommerce order and are deleted when that
order is permanently deleted. By default, settings and remaining receipts are preserved
when the plugin is uninstalled to prevent accidental accounting-data loss. Enable“
Delete plugin settings and stored receipt files when the plugin is uninstalled” 
under Data Retention to remove them during uninstall.

#### External Services

This plugin includes the Freemius SDK for optional usage opt-in, product updates,
upgrade links, licensing for the separately distributed PRO plugin, and optional
deactivation feedback. The free plugin remains usable without opting in.

When an administrator explicitly opts in or submits optional feedback, Freemius 
may receive site, WordPress, PHP, plugin, administrator, and diagnostic information
needed to provide those services. No customer receipt file or bank-account detail
is sent to Freemius by this plugin.

Freemius Terms of Service: https://freemius.com/terms/

Freemius Privacy Policy: https://freemius.com/privacy/

#### How It Works

 1. The customer selects Direct Bank Transfer.
 2. The configured bank details and exact payment amount are displayed.
 3. The customer makes the transfer.
 4. The customer optionally uploads a receipt.
 5. An administrator verifies the transfer and approves or rejects the receipt.

#### Free Version

The WordPress.org version is complete and fully functional. It includes:

 * WooCommerce Direct Bank Transfer integration
 * One configurable bank account
 * Optional receipt uploads during checkout
 * Receipt uploads on Pay for Order and Order Received pages
 * JPG, JPEG, PNG, and PDF support up to 5 MB
 * Protected receipt storage and authorized delivery
 * Receipt preview, removal, and replacement
 * Upload progress and mobile camera/file chooser support
 * Automatic deletion of removed receipt files
 * Administrator receipt upload and replacement
 * Administrator receipt approval and rejection
 * Customer locking after a receipt is approved
 * Exact transfer amount and order-number Bank Message display
 * Copy buttons for bank details
 * Direct Bank Transfer payment icon

#### Separate PRO Plugin

JAD Bank Receipt Upload for WooCommerce PRO is distributed as a separate plugin.
No PRO implementation is bundled, disabled, restricted, or locked inside this WordPress.
org package.

The separate PRO plugin adds:

 * Unlimited banks and customer bank selection
 * Automatic receipt and WooCommerce order status changes
 * Receipt management from My Account
 * Administrator-selected rejection reasons and customer rejection emails
 * Direct replacement and receipt-upload links sent by email
 * Payment-method changes after ordering
 * Required checkout receipt uploads
 * Role, username, upload, removal, approval, and rejection permissions

## Installation

 1. Install and activate WooCommerce.
 2. Upload and activate JAD Bank Receipt Upload for WooCommerce.
 3. Go to WooCommerce > Bank Receipt Upload.
 4. Configure the gateway and bank account.
 5. Save the gateway settings and bank details.
 6. Place a test BACS order before accepting live payments.

## FAQ

### Does the plugin process or confirm bank payments?

No. It collects payment receipts. An administrator must verify the transfer in the
relevant bank account.

### Which files are supported?

JPG, JPEG, PNG, and PDF files up to 5 MB.

### Are receipt files public?

No public receipt URL is displayed. The plugin uses randomized storage folders and
filenames, installs Apache/IIS deny rules, and serves receipts through an authorization
check. Administrators, the order owner, or a guest with the matching order key can
access the relevant receipt. Nginx administrators should apply the deny rule shown
on the settings page for additional server-level protection.

### Can administrators upload receipts?

Yes. Users with the WooCommerce management capability can upload or replace receipts
on the order screen.

### Are checkout uploads required?

No. Receipt uploads are optional in this version.

### How many bank accounts can I configure?

This version supports one bank account. Unlimited banks are implemented only in 
the separately distributed PRO plugin.

### What happens when a receipt is approved?

The receipt is locked against customer replacement or removal. Administrators can
still manage it from the order screen.

### What happens when a receipt is rejected?

The rejected file is removed, and the customer can upload a replacement from the
Order Received page.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“JAD Bank Receipt Upload for WooCommerce” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ JAD Plugins ](https://profiles.wordpress.org/jadplugins/)

[Translate “JAD Bank Receipt Upload for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/jad-bank-receipt-upload-for-woocommerce)

### Interested in development?

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

## Changelog

#### 2.0.4

 * Added automatic cleanup of abandoned temporary checkout receipts.
 * Added anonymous upload throttling using a salted one-way connection identifier.
 * Added randomized private storage folders in addition to randomized filenames.
 * Deleted managed receipt files when their WooCommerce orders are permanently deleted.
 * Added optional complete data deletion during uninstall while preserving data 
   by default.
 * Added Freemius external-service and receipt-retention documentation.
 * Added Nginx protection guidance and an extra directory-index protection file.
 * Added the minimum WordPress version to the main plugin header.
 * Improved template attribute escaping and asset versioning.
 * Fixed infinite recursion in the WordPress upload-directory filter when uploading
   receipts.
 * Removed the persistent Nginx guidance notice from the settings screen.
 * Updated the Freemius premium suffix capitalization to `PRO`.
 * Configured the Free build as non-premium with a separate premium version and 
   paid plans.
 * Registered uninstall handling through Freemius’s `after_uninstall` hook while
   continuing to preserve plugin data.
 * Removed the standalone `uninstall.php` file for Freemius deployment compatibility.

#### 2.0.3

 * Moved bank-save nonce verification into the AJAX callback for clear WordPressCS
   recognition.

#### 2.0.2

 * Hide customer-facing bank and receipt controls until a usable bank is configured.
 * Restore the bank-name button and shipping-method check before opening bank details.
 * Reset replacement-upload progress from zero and show live upload status.
 * Remove temporary receipt files when checkout total changes.

#### 2.0.1

 * Renamed the plugin to JAD Bank Receipt Upload for WooCommerce.
 * Updated the repository slug and translation domain to `jad-bank-receipt-upload-
   for-woocommerce`.
 * Refactored the free plugin around a genuine single-bank data model.
 * Removed dormant functionality belonging to the separately distributed PRO plugin.
 * Retained the complete customer and administrator receipt workflow.

#### 2.0.0

 * Added a complete customer and administrator receipt workflow.
 * Added capability and nonce checks to every state-changing request.
 * Added protected receipt delivery and safe managed-path deletion.
 * Added one configurable bank account with custom display fields.
 * Added immediate receipt preview replacement on customer and administrator screens.

## Meta

 *  Version **2.0.4**
 *  Last updated **12 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [bank transfer](https://wordpress.org/plugins/tags/bank-transfer/)[payment receipt](https://wordpress.org/plugins/tags/payment-receipt/)
   [woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/jad-bank-receipt-upload-for-woocommerce/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/jad-bank-receipt-upload-for-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/jad-bank-receipt-upload-for-woocommerce/reviews/)

## Contributors

 *   [ JAD Plugins ](https://profiles.wordpress.org/jadplugins/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/jad-bank-receipt-upload-for-woocommerce/)