📅 March 28, 2026 | 👨💻 By Basir Mohammadi | 📁 WordPress, WooCommerce
The Problem: Lost Sales in WooCommerce Stores
Every day, thousands of customers visit WooCommerce stores, find products they love, and leave empty-handed because the item is out of stock. These are lost sales, lost opportunities, and disappointed customers.
As a WooCommerce store owner myself, I faced this problem. I knew there had to be a better way to capture these potential customers and notify them when products become available again.
The Idea: StockMate
That's how StockMate was born. I wanted to create a simple, lightweight plugin that allows customers to subscribe to out-of-stock products and receive automatic email notifications when items are back in stock.
The key requirements were:
- ✅ AJAX-powered subscription (no page reload)
- ✅ Smart waiting count display
- ✅ Reliable email delivery (with SMTP support)
- ✅ Admin dashboard to track subscribers
- ✅ Beautiful and customizable design
The Development Journey
1. Database Structure
I started by designing a simple database table to store subscriber information. The table needed to store:
id, product_id, email, status, created_at, notified_at
This allows me to track who is waiting for which product and whether they've been notified.
2. AJAX Subscription Form
The frontend form needed to be smooth and user-friendly. I implemented an AJAX form that submits without page refresh, providing instant feedback to users.
3. Stock Status Monitoring
I used WooCommerce hooks like woocommerce_product_set_stock and woocommerce_product_set_stock_status to detect when products are restocked.
4. Email Delivery
One of the biggest challenges was ensuring reliable email delivery. I added built-in SMTP support so store owners can configure their email settings directly in the plugin. This works with Gmail, Outlook, SendGrid, and any custom SMTP server.
5. Admin Dashboard
I built a complete admin dashboard with statistics, top products in demand, and recent subscribers. Store owners can see exactly who is waiting for what products.
Challenges I Faced
SMTP Configuration
Getting emails to reliably reach customers (especially Gmail) was tricky. I learned about SPF, DKIM, and DMARC records, and added a helpful guide in the plugin settings.
License System for Pro Version
Creating a license validation system that works with my main site (locengine.com) was challenging but rewarding. I built a REST API endpoint for license validation and deactivation.
Form Templates (Pro)
I wanted to offer beautiful form designs for Pro users. I created 10 unique templates with different styles:
- Default (gradient design)
- Minimal (clean and simple)
- Modern (bold and eye-catching)
- Card Style (like a product card)
- Compact (space-saving)
- Gradient (vibrant colors)
- Dark Mode (sleek dark design)
- Glassmorphism (modern glass effect)
- Outline (clean outlined design)
- Floating (floating label design)
The Result: StockMate
After weeks of development, testing, and refinement, StockMate is now available in two versions:
- Free Version – Available on WordPress.org with core features and free version limitations (50 subscribers, 10 emails per product)
- Pro Version – With unlimited subscribers, CSV export, 10 form templates, priority support, and lifetime updates
What I Learned
Building StockMate taught me a lot about WordPress plugin development, WooCommerce hooks, email delivery, and creating a sustainable business model with a free + pro structure.
Key takeaways:
- Always sanitize and escape user input for security
- Use WordPress coding standards
- Test with different WordPress versions and themes
- Provide clear documentation
- Listen to user feedback
Get StockMate Today
If you're a WooCommerce store owner, StockMate can help you recover lost sales and keep your customers happy. Try the free version from WordPress.org or upgrade to Pro for advanced features!
📦 Download StockMate Free: WordPress.org Plugin Directory
⭐ Get StockMate Pro: Unlock All Features →
Have questions about StockMate? Drop a comment below or reach out via contact page.