Donations & Custom Amount for WooCommerce
Let visitors pay a custom amount through WooCommerce - perfect for donations, fundraising, pay-what-you-want, and installment payments. Includes a flexible payment form, smart pre-filled links, tracking codes, and a full reporting system. Use shortcode [donations_custom_payment_form].
by Mostafa Sadeghi · github.com/mostafasadeghidev/donations-custom-amount-for-woocommerce · website
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/mostafasadeghidev/donations-custom-amount-for-woocommerce/releases/download/v7.7.3/donations-custom-payment-7.7.3.zipReadme
💳 Donations & Custom Amount for WooCommerce
Let visitors pay any amount they choose — perfect for donations, fundraising, pay‑what‑you‑want, and installment payments.
A lightweight WooCommerce plugin that adds a form where visitors enter a custom amount and pay it through your existing WooCommerce checkout. One shortcode, two audiences:
- 🎗️ Donations / fundraising — supporters choose how much to give.
- 🧾 Custom & installment payments — a customer pays a purchase in parts, one payment at a time.
No new payment gateway, no complex setup — it works with the gateways you already have.
✨ Features
- 💰 Custom‑amount form with configurable min/max and one‑click suggested amounts
- 🔗 Smart pre‑filled links —
?amount=,?code=,?desc=fill the form for the customer - 🔖 Tracking codes to group related payments (an installment contract or a donation campaign)
- 📊 Full reporting page — stats, live search, custom date range, and CSV export (Excel‑friendly, UTF‑8)
- 🧾 Orders‑list column that flags payments made through the form (works on HPOS & legacy)
- 🎉 Custom thank‑you message on the order‑received page
- 🎨 Full color customization with transparency (alpha) for every element
- 🛡️ Built‑in anti‑spam — honeypot, signed time‑trap, and per‑IP rate limiting (invisible to real users)
- ⚡ WooCommerce HPOS compatible — reporting works identically on new and legacy order storage
- 🌐 Multilingual — ships fully translated in 7 languages: English, Persian (فارسی), Kurdish — Sorani (کوردی), German, Spanish, French, and Arabic (العربية)
- 📱 Responsive & RTL‑ready
📸 Screenshots
| Reports | Settings |
|---|---|
![]() |
![]() |
✅ Requirements
- WordPress 5.0+
- WooCommerce 5.0+
- PHP 7.4+
🚀 Installation
-
Download the latest release ZIP.
-
In your dashboard go to Plugins → Add New → Upload Plugin and choose the ZIP.
-
Activate the plugin (make sure WooCommerce is installed and active).
-
Create a page (e.g. named
pay) and add the shortcode:[donations_custom_payment_form] -
Configure everything under Custom Amount in your dashboard menu.
📝 Usage
Shortcode
Place this anywhere to show the payment form:
[donations_custom_payment_form]
Smart links
Pre‑fill the form through the link you send to customers. All parameters are optional:
| Parameter | What it does |
|---|---|
amount |
Pre‑fills the amount field |
code |
Pre‑fills the tracking code (installment contract or campaign) |
desc |
Pre‑fills the "Payment For" field |
Installment example — set each installment's amount and reuse one code for the whole purchase:
https://your-site.com/pay/?amount=34000&code=MOB-AHM
Donation campaign example — leave the amount out so supporters choose it:
https://your-site.com/pay/?code=SCHOOL
The legacy short link
…/pay/?55000still works too.
📊 Tracking & reports
Give every related payment the same tracking code, then open Custom Amount → Reports and search that code to see all related payments side by side — with their total and count. You can also:
- Filter by today / week / month / year or a custom date range
- Use live search (name, email, order #, amount, code, or "Payment For")
- Export to CSV with the current filters applied
⚠️ Good to know (limitations)
This plugin is a custom‑amount collector, not a product/inventory system. By design:
- Payments are collected under a single virtual product — they are not linked to your real store products, so stock isn't reduced and the amount doesn't appear under a specific product in WooCommerce sales reports.
- Installments are tracked by code, not counted automatically.
- There is no automatic recurring charge — each installment is paid manually by the customer (send them the next link when it's due).
- Each installment becomes its own order, linked to the others only by the shared code.
❓ FAQ
Does it require WooCommerce? Yes — it uses your existing WooCommerce checkout and gateways.
Is it compatible with HPOS (High‑Performance Order Storage)? Yes, fully. Reporting works identically on both storage modes.
Will it work for a right‑to‑left site? Yes, the form and admin are RTL‑ready.
Which languages are included? Seven, all fully translated: English, Persian (فارسی), Kurdish — Sorani (کوردی), German, Spanish, French, and Arabic (العربية).
📜 Changelog
See CHANGELOG.md for the full history.
🤝 Contributing
Issues and pull requests are welcome. Please see CONTRIBUTING.md.
📄 License
Licensed under the GPL v2 or later — see license.txt.
👤 Author
Mostafa Sadeghi — GitHub
Read the full README on GitHub →
Releases
| Tag | Published | Asset | Downloads |
|---|---|---|---|
| v7.7.3 | Jul 26, 2026 | donations-custom-payment-7.7.3.zip | 0 |

