Release notes / WP Sell Services
Free Plugin Plugin

WP Sell Services

Dokan and WC Vendors were built for physical products. Selling services on them means constant workarounds for requirements, milestones, and disputes. WP Sell Services was designed for service workflows from day one.

2 releases
v1.1.0 latest
April 26, 2026 shipped

v1.1.0 Latest

April 26, 2026
New 1 Note 42

New

  • Milestone Contracts, Paid Extensions, Proposal Contracts (Fixed vs Milestone), Earnings Ledger & CSV Export

Note

  • *Admin UX Consistency**
  • Vendors, Withdrawals, and Moderation admin pages now share the same shell - wrapper, heading, stats strip, and filter row - so operators see a consistent surface regardless of which list they open
  • Moderation gains a 4-card stats strip (Total / Pending / Approved / Rejected) matching the other two listing pages
  • Stats cards use a unified responsive grid (`auto-fit` minmax 150px) that collapses from 5-up on desktop to 2-up at 390px without page-specific media queries
  • *First-Time Guide (Admin + Frontend)**
  • Shepherd.js-powered 8-step admin walkthrough auto-opens on the WP Sell Services dashboard the first time an admin lands there - welcome → dashboard cards → quick actions → services → vendors → orders → settings → finish
  • "Replay tour" trigger on both the admin dashboard header and the frontend dashboard header so users can re-run the walkthrough on demand
  • REST endpoint `POST /wpss/v1/tour/complete` for completion persistence
  • `wpss_tour_steps` filter so Pro (and other extensions) can append custom steps
  • *Action Scheduler Migration**
  • All recurring jobs (order lifecycle sweeps, dispute deadlines, audit-log retention, sub-order cleanups, auto-withdrawal, vendor-stat refresh, seller-level recalc) now run on Action Scheduler instead of WP-Cron
  • Durable retry, admin-visible action history (Tools → Scheduled Actions), and no more dispute cron blocking page loads
  • `Services\Scheduler` facade wraps AS so every scheduling call routes through one entry point - tests can stub it, and the `wpss` / `wpss-pro` group convention lets the deactivator sweep everything in one call
  • `composer.json` pins `woocommerce/action-scheduler ^3.8`
  • *Empty-State Polish**
  • New `Services\Icon::render()` helper emits Lucide icon placeholders (safe-to-echo, attrs escaped, name slug-sanitized) - pairs with the `lucide` vendor library already loaded by the tour
  • Shared `.wpss-empty-state` BEM block on both admin and frontend - icon + title + body + CTA, collapses to full-width CTA stack below 640px
  • Orders + Disputes admin wrap the WP_List_Table in the shared `.wpss-list-card` shell so filters and body match the Vendors / Withdrawals / Moderation layout
  • `OrdersListTable::no_items()`, `DisputesListTable::no_items()`, `[wpss_dashboard]` buyer-orders tab, and the vendor-profile services section all emit the designed empty-state instead of bare "No X found." sentences
  • Help tabs added to Orders + Disputes admin screens linking to the plugin docs and workflow guides
  • *Database Refactor**
  • `SchemaManager::get_tables()` and `::uninstall()` now iterate `self::CORE_TABLES` - adding a plugin table is one edit instead of three, and uninstall drops in FK-safe reverse dependency order
  • *Milestone Contracts (Upwork-style)**
  • Vendors choose Fixed or Milestone contract type when submitting a proposal
  • *Paid Extensions (catalog orders)**
  • Buyers accept and pay, or decline with one click
  • Commission is split at payment time; vendor wallet credited immediately
  • Parent order deadline extends by the quoted days on acceptance
  • Extensions are mutually exclusive with milestone contracts - a single order only ever shows one flow
  • *Vendor Intro Video**
  • Vendors can add an Introduction section with a short intro video to their public profile
  • Renders above the vendor's tagline and bio on the profile page
  • *Earnings Ledger & CSV Export (Pro)**
  • Wallet dashboard surfaces a dated ledger of every transaction - Earning, Tip, Extension, Milestone, Withdrawal, Credit, Debit, Dispute Refund
  • CSV export streams the same rows plus a summary block (Total Credits, Total Debits, Net, Tips, Total Withdrawn)
  • Compatible with QuickBooks, Xero, Wave, and spreadsheet tools
  • *Money-Flow Integrity**
  • `mark_as_paid` skips the `pending_requirements` transition on tip / extension / milestone sub-orders so buyers don't receive "Complete your requirements" emails on a tip they just sent
  • *Architecture**
  • 7 new email templates: 4 milestone (proposed / paid / submitted / approved) + 3 extension (proposed / approved / declined), each with plain-text fallback
  • New REST endpoints for milestones, extensions, and proposal contract type - full mobile-app parity
  • *Documentation**

v1.0.0

April 2, 2026
Note 33

Note

  • *Marketplace Core**
  • Image gallery, video embeds, FAQs, and requirements per service
  • *Order Workflow**
  • Complete order lifecycle with 11 distinct statuses
  • Requirements collection before work begins
  • File delivery system with buyer approval workflow
  • Revision request and deadline extension management
  • *Vendor System**
  • Vendor registration with open, approval, or closed modes
  • Unified vendor dashboard with earnings, orders, and analytics
  • Portfolio showcase, vacation mode, and profile customization
  • Commission tracking and withdrawal requests with admin approval
  • *Buyer Features**
  • Post buyer requests for vendors to bid on
  • Browse and compare vendor proposals
  • Favorites/wishlist, optional tipping, and complete purchase history
  • *Reviews, Disputes, and Notifications**
  • 5-star multi-criteria rating system with moderation queue
  • Structured dispute workflow with admin mediation and multiple resolution types
  • 26 configurable email notification types with template overrides
  • *Payments and Earnings**
  • Standalone checkout with offline gateway (no WooCommerce required)
  • Earnings dashboard with automated withdrawal scheduling
  • *Developer Features**
  • 21 REST API controllers with 125+ endpoints and batch endpoint for mobile apps
  • 100% REST coverage for all user-facing features
  • 6 Gutenberg blocks and 19 shortcodes
  • Template override system compatible with any theme
  • SEO schema markup with Yoast and RankMath integration
  • 9 extension hooks for Pro plugin integration
  • 17 custom database tables with PSR-4 autoloaded architecture
  • 100+ action and filter hooks for extensibility
  • WP 6.7+ compatible (lazy-loaded translations)