- Project Overview
Trin operates an online aquatics marketplace at aquaticsmarket.com using Ultimate Woo Auction Pro and requires the plugin to be made compatible with the Dokan multivendor marketplace plugin. This proposal covers the complete development of a Dokan integration addon that enables vendors to create and manage auction products directly from the Dokan vendor dashboard.
The integration will be built as a manually activated addon within the existing plugin architecture, consistent with how all existing addons work. It activates only when enabled by the admin and Dokan is installed — ensuring zero impact on existing setups.
The four core development areas are:
- Vendor Auction Creation — vendors can create auction products with full auction settings directly from the Dokan dashboard
- Vendor Dashboard Pages — a dedicated Auctions section in the Dokan vendor sidebar with auction listing and detail/edit pages
- Order & Commission — auction sale orders integrate automatically with Dokan’s vendor commission and earnings system
- Admin Controls — per-vendor auction permission management and auction status visibility across the Dokan product listing
- Customer Requirements
- Migration from WCFM to Dokan
- Client is actively migrating multivendor platform from WC Frontend Manager (WCFM) to Dokan due to WCFM support concerns
- The auction plugin must work fully with Dokan after migration
- During the transition period (both plugins temporarily active), the plugin must handle the conflict gracefully with an admin notice rather than breaking
- Vendor Auction Creation
- Vendors must be able to create auction products directly from the Dokan vendor dashboard
- Auction product type must appear in the Dokan product type selector
- All auction configuration fields must be available: auction type, opening price, reserve price, bid increment, start and end dates
- Full Auction Feature Support
- Normal and Reverse auction types must both be supported
- Proxy bidding must work correctly for vendor-created auctions
- Silent bidding must work correctly for vendor-created auctions
- Reserve price setting must be available to vendors
- Buy It Now option must be configurable per auction
- Variable bid increment must be supported
- Theme Compatibility
- Integration must work with the client’s existing Blocksy theme — no theme change is required
- Auction display on frontend (timers, bid forms, status badges) must render correctly with Blocksy active
- Dokan Commission Support
- Vendor earnings and admin commission must calculate correctly on auction sales
- When an auction ends and an order is created, Dokan must split the order and assign the correct vendor commission automatically
- Vendor must be able to view auction earnings and request withdrawal through the standard Dokan earnings dashboard
- Existing Functionality Preserved
- All current auction features (bidding engine, emails, cron jobs, shortcodes, addons) must continue to work without any changes
- The Dokan addon must have zero impact on the plugin when Dokan is not installed or the addon is not enabled
- The existing WCFM addon must continue to work without modification
- Vendor Dashboard Auction Pages
- Vendors need a dedicated Auctions section accessible from the Dokan vendor sidebar
- Auction listing page showing all vendor’s auctions with status, current bid, and dates
- Auction detail/edit page for managing individual auctions and viewing bid history
- Admin Controls
- Admin must be able to enable or disable auction creation capability per individual vendor
- Admin retains full control of all auction lifecycle actions (Force End, Force Make Live, Choose Winner, Relist, Remind to Pay)
- Vendors cannot perform lifecycle actions — these remain admin-only
- Technical Approach
3.1 Architecture
- Built as a manually activated addon following the same architecture as all existing addons (Buyer’s Premium, SMS Notification, etc.)
- Admin enables the Dokan addon from the License & Addon settings page — same toggle pattern as existing addons
- The addon only loads when it is both enabled by admin and Dokan is active on the site
- Zero changes to the core plugin when the addon is not enabled
3.2 Addon Activation & Conflict Handling
- Dokan addon enabled and Dokan active: addon loads and all vendor features become available
- Dokan addon enabled but Dokan not installed: admin notice shown informing that Dokan plugin is required
- Dokan addon enabled and WCFM also active simultaneously: admin notice shown asking to deactivate one — neither addon loads during this conflict state
- Dokan addon not enabled: nothing loads, full existing plugin behavior unchanged
3.3 Vendor Creates an Auction
- Vendor logs into Dokan dashboard and selects Add New Product
- Vendor selects Auction as the product type from the product type dropdown
- Auction-specific fields appear: selling type, auction type, product condition, proxy bidding, silent bidding, opening price, reserve price, buy now price, start date, end date, bid increment, and variable bid increment
- Vendor fills in all details and publishes the product
- Auction goes live on the storefront as per the scheduled start date, processed by the existing auction engine
3.4 Vendor Manages Auctions
- Vendor accesses the dedicated Auctions page from the Dokan vendor sidebar navigation
- Auction listing page displays all vendor’s auctions with status badges (Live, Ended, Pending, Sold), current bid amount, total bids, start date, and end date
- Vendor can filter auctions by status and navigate to individual auction detail pages
- Auction detail page shows full auction settings, current auction status, and a read-only bid history table showing bidder names, bid amounts, and timestamps
- Lifecycle actions (Force End Now, Force Make Live, Choose Winner, Relist, Remind to Pay) remain admin-only and are not exposed to vendors
3.5 Bidding Process
- Buyers bid on vendor auctions through the standard frontend — no changes to the existing bidding engine
- All bid notifications (outbid, won, lost) continue to fire via existing email system
- Vendor receives email notification when their auction receives a bid or when their auction ends
3.6 Auction Ends & Order Created
- When auction ends, the winner is determined automatically by the existing auction engine
- An order is created and assigned to the vendor
- Dokan intercepts the order creation via its standard WooCommerce order hooks and calculates vendor commission automatically
- Vendor sees earnings in their Dokan dashboard and can request withdrawal through the standard Dokan withdraw system
- Winner receives payment instructions as normal through the existing email system
3.7 Admin Controls
- Admin can enable or disable auction creation permission per individual vendor via a toggle on the vendor profile page
- When a vendor is restricted, the Auction product type is hidden from their dashboard and the Auctions menu is not shown
- All vendors are enabled by default — admin can restrict individual vendors as needed
- All existing admin auction management features (manage auctions, bids list, force actions, reports) remain unchanged
Scope Note: This proposal covers integration with Dokan Lite (free version) only. Dokan Pro module integration is not included in this scope. The effort estimate and technical approach have been prepared based on a direct source code review of Dokan Lite v5.0.1, ensuring all integration points, hooks, and template interactions are verified against the actual plugin codebase rather than documentation alone.
- Effort — Design & Development
4.1 Plugin Detection & Conditional Loading
- Add Dokan detection block to the addon loader — checks for Dokan Lite and Dokan Pro in active plugins
- Implement mutual exclusion logic: if both WCFM and Dokan are active, load neither and show admin notice
- Implement Dokan-not-installed notice when addon is enabled but Dokan is missing
- Register addon in the existing License & Addon settings page with manual activation toggle
- Test: all conflict scenarios (Dokan only, WCFM only, both, neither) behave correctly
Estimated effort: 3 hours
4.2 Register Auction Product Type in Vendor Dashboard
- Hook into Dokan product types filter to add Auction as a selectable product type
- Implement vendor permission check — only show Auction type if vendor has auction permission enabled
- Add JavaScript show/hide logic: when Auction type is selected, hide standard WooCommerce price/inventory fields and show auction-specific fields
- Test: Auction type appears for permitted vendors and is hidden for restricted vendors
Estimated effort: 2 hours
4.3 Auction Fields in Vendor Product Edit Form
- Inject auction fields section into the Dokan product edit form using the correct Dokan hooks
- Build all auction configuration fields: selling type, auction type, product condition, proxy bidding toggle, silent bidding toggle, opening price, reserve price, buy now price, start date with datepicker, end date with datepicker, fixed bid increment, variable bid increment with dynamic row UI
- Style all fields to match Dokan’s form styling conventions
- Build JavaScript for datepicker initialisation, conditional field visibility, and variable bid increment row management
- Ensure fields pre-populate correctly when editing an existing auction
- Test: all field types render, validate, and display correctly for new and existing auctions
Estimated effort: 8 hours
4.4 Save Auction Meta from Vendor Form
- Hook into Dokan product save hooks for both new product creation and product updates
- Save all auction meta fields: auction type, condition, opening price, reserve price, bid increment, start date, end date, proxy setting, silent setting, selling type, variable increment data
- Implement server-side validation: end date must be after start date, opening price must be greater than zero, bid increment must be greater than zero
- Set the WooCommerce product type taxonomy term to auction on save
- Test: all meta fields save and reload correctly, validation errors are shown to vendor
Estimated effort: 4 hours
4.5 Auctions Menu in Vendor Dashboard Navigation
- Register a new Auctions query variable for the vendor dashboard URL routing
- Add Auctions menu item to the Dokan vendor sidebar navigation with gavel icon and correct position
- Hook into the custom template loader to serve the auction list or detail page based on URL
- Flush rewrite rules on addon activation to register the new endpoint
- Test: Auctions menu appears in sidebar, navigation works correctly, URL resolves to correct page
Estimated effort: 3 hours
4.6 Vendor Auction Listing Page
- Build vendor auction listing page template showing all auctions created by the logged-in vendor
- Display columns: product thumbnail, auction title linked to frontend, status badge, current bid, total bids, start date, end date
- Implement status badges: Live (green), Ended (red), Pending (orange), Sold (blue) derived from auction meta
- Build status filter tabs: All, Live, Ended, Pending, Sold
- Implement pagination for vendors with large numbers of auctions
- Add Add New Auction button linking to Dokan product edit with auction type pre-selected
- Show empty state message for vendors with no auctions
- Test: listing, filtering, pagination, and status badges all work correctly
Estimated effort: 8 hours
4.7 Vendor Auction Detail/Edit Page
- Build vendor auction detail page with product info section (title, description, images, categories) and auction settings section (all fields from 4.3)
- Add read-only auction status section showing current status, current bid amount, highest bidder display name, and time remaining
- Add read-only bid history table: bidder display name, bid amount, date and time
- Pre-populate all fields from existing auction meta when editing
- Reuse save logic from 4.4 for form submission
- Ensure no lifecycle action buttons (End Now, Relist, etc.) are exposed to vendors
- Test: detail page loads correctly for all auction states, all fields save correctly, bid history displays accurately
Estimated effort: 10 hours
4.8 Auto-Order Compatibility with Dokan Commission
- Verify that programmatic orders created by the auction auto-order system trigger Dokan’s vendor order split correctly
- Ensure the vendor ID meta is set on auto-created orders so Dokan assigns the order to the correct vendor
- Implement fallback: if Dokan’s order hooks do not fire automatically for cron-triggered orders, trigger them explicitly after order creation
- Test with both automatic order creation (auction ends via cron) and manual payment flow (winner clicks Pay Now)
- Verify commission is calculated correctly and appears in the vendor’s Dokan earnings
- Test edge cases: Buyer’s Premium addon active alongside Dokan commission
Estimated effort: 6 hours
4.9 Vendor Earnings Display for Auction Orders
- Verify auction orders appear correctly in the vendor’s Dokan Orders page
- Verify vendor earnings reflect the correct amount after admin commission deduction
- Verify vendor can request withdrawal for auction earnings through the standard Dokan withdraw system
- Test refund handling: if an auction order is refunded, confirm the Dokan vendor balance adjusts correctly
- Test: end-to-end earnings flow from auction close through to vendor withdrawal request
Estimated effort: 3 hours
4.10 Admin Control — Per-Vendor Auction Permission
- Add an auction permission toggle to the Dokan admin vendor profile edit page
- Store permission as vendor user meta
- Apply permission check in the product type filter: hide Auction type for restricted vendors
- Apply permission check in the dashboard navigation: hide Auctions menu for restricted vendors
- Default: all vendors have auction permission enabled
- Test: enabling and disabling permission per vendor correctly shows or hides auction features
Estimated effort: 4 hours
4.11 Auction Status in Dokan Product Listing
- Display auction-specific status badge (Live, Ended, Pending) alongside the standard WooCommerce status in the Dokan vendor product listing table
- Show current bid amount for auction products in the product listing
- Ensure non-auction products are unaffected
- Test: auction status and bid info display correctly in the product listing for all auction states
Estimated effort: 3 hours
4.12 Email Notifications — Vendor Awareness
- Review all auction email triggers and identify those where the vendor (auction creator) should be notified
- Add vendor as recipient for: bid placed on their auction, auction ended with a winner, auction ended with no bids, payment received for their auction
- Implement check: only add vendor email when the product author is a Dokan vendor
- Ensure bidder-facing emails (outbid, won, lost, remind to pay) are unchanged
- Test: vendor receives correct emails for all relevant auction events
Estimated effort: 4 hours
4.13 Frontend Auction Display — Vendor Store Page
- Verify that auction products display correctly on Dokan vendor store pages
- Confirm countdown timer renders on vendor store product cards
- Confirm Bid Now button appears instead of Add to Cart for auction products on store pages
- Confirm current bid price displays instead of regular price
- Confirm ended auction status displays correctly
- Fix any edge cases found where existing frontend hooks do not apply on Dokan store pages
- Test: all auction display elements render correctly on vendor store pages with Blocksy theme active
Estimated effort: 3 hours
4.14 Integration Testing
- End-to-end test: vendor creates auction, buyer bids, auction ends, order created, vendor receives earnings
- Test all auction types: Normal, Reverse, Proxy, Silent, Buy It Now, Variable Increment
- Test addon conflict scenarios: Dokan only, WCFM only, both active, neither active
- Test vendor permission: enable and disable per vendor, confirm UI changes correctly
- Test multi-vendor scenario: multiple vendors each with their own auctions running simultaneously
- Test deactivating Dokan after addon is enabled: confirm zero errors and full core functionality restored
- Test with Blocksy theme active throughout all scenarios
- Verify all 20 test cases from the test specification pass
Estimated effort: 8 hours
- Effort Snapshot
| Deliverable |
Hours |
| Plugin Detection & Conditional Loading |
3 |
| Register Auction Product Type in Vendor Dashboard |
2 |
| Auction Fields in Vendor Product Edit Form |
8 |
| Save Auction Meta from Vendor Form |
4 |
| Auctions Menu in Vendor Dashboard Navigation |
3 |
| Vendor Auction Listing Page |
8 |
| Vendor Auction Detail/Edit Page |
10 |
| Auto-Order Compatibility with Dokan Commission |
6 |
| Vendor Earnings Display for Auction Orders |
3 |
| Admin Control — Per-Vendor Auction Permission |
4 |
| Auction Status in Dokan Product Listing |
3 |
| Email Notifications — Vendor Awareness |
4 |
| Frontend Auction Display — Vendor Store Page |
3 |
| Integration Testing |
8 |
| TOTAL ESTIMATED HOURS |
69 |
| Note: The Dokan addon has zero impact on the core auction plugin when not enabled. All existing auction features, the WCFM addon, and all other addons continue to work exactly as before without any changes. |
- Deliverables
The following deliverables will be provided as part of this engagement:
- Dokan integration addon — manually activatable addon within Ultimate Woo Auction Pro; auto-detects Dokan and loads only when enabled; zero impact on existing setup when not active
- Vendor auction creation — full auction product creation from the Dokan vendor dashboard with all auction field types supported
- Vendor auction dashboard pages — dedicated Auctions section in the Dokan vendor sidebar with listing page (status, bids, dates, filters) and detail/edit page (settings, bid history)
- Order & commission integration — auction auto-orders integrate with Dokan’s vendor commission and earnings system; vendor earnings visible in Dokan dashboard and available for withdrawal
- Admin vendor permission control — per-vendor toggle to enable or disable auction creation capability from the Dokan admin vendor profile
- Email notifications — vendor receives relevant auction event emails (bid placed, auction ended, payment received) in addition to all existing bidder-facing notifications
- Frontend store page compatibility — auction products display correctly on Dokan vendor store pages with Blocksy theme: countdown timer, bid button, current bid price, and auction status
- Conflict handling — graceful admin notices for WCFM + Dokan conflict and missing Dokan plugin scenarios
- Delivery — plugin ZIP for self-installation, or deployment on a staging clone of aquaticsmarket.com for testing before go-live
- Commercials & Payment
Project Cost
Total Estimated Effort: 69 hours
Hourly Rate: USD 45 / hour
Standard Rate: USD 3,105
Final Price: USD 999 (after discount)
Why We Are Offering a Discount
We are offering a significantly reduced rate on this engagement for two reasons: first, we see this integration as a valuable contribution to expanding the reach and market visibility of Ultimate Woo Auction Pro within the Dokan ecosystem — we want to invest in making our plugin known and trusted across more multivendor platforms; and second, we genuinely want to lower the cost of this integration for your business. This discount reflects our commitment to a long-term relationship and the success of this integration, not a reduction in quality or scope of delivery.