Skip to content

Multi-Vendor Mode

Out of the box the plugin serves a single seller. Multi-Vendor Mode (Settings → General) turns it into marketplace plumbing: each request belongs to one vendor, vendors are notified directly and manage their own requests, and you decide how much they see and control.

How vendors work

The vendor of an item is its post author. Enable Multi-Vendor Mode and:

  • A quote request is restricted to a single vendor at a time (mixing items from two vendors prompts the customer to finish or clear the current request first).
  • The vendor receives the new-request email, with the option to silence the admin copy ("Disable Admin Notifications").
  • Vendors manage their requests on the vendor dashboard or the My Quotes admin menu — always scoped to their own requests.

Vendors need real accounts

Each vendor must be a WordPress user (with a valid email) who authors their items. Admins are exempt from every vendor restriction — so to test the vendor experience, use an actual non-admin vendor account, not your admin login.

Vendor profiles (Voxel-friendly)

On marketplaces where vendors have a public profile listing (e.g. a Voxel partner post type), you usually want the profile's name — not the WordPress username — on quotes and emails. Two settings:

  • Vendor Profile Post Type — the profile post type's slug (e.g. partner). The vendor's profile title then replaces their username everywhere: dashboards, request views, emails, the admin vendor filter.

  • Vendor City/Location Field Key — optional key of a city field on the profile, appended after the name: "Piccoli viaggiatori — Catania". Works whether your theme stores the field as a custom field or as a taxonomy — Voxel's own "City" field type, for instance, creates a taxonomy rather than a meta field, and the plugin checks both. Leave it empty and an obviously-named city field or taxonomy is found automatically; a general "location" or "address" field is never used, since it may hold a full street address. The settings screen shows what your vendor names currently resolve to, and lists the actual fields and taxonomies found on your profile posts underneath the setting, so you don't have to guess.

  • Vendor Email Field Key — optional key of an email field on the profile. Marketplaces often keep two different addresses: the WordPress account belongs to whoever administers the listing, while the business address on the profile is the one customers should reach and the one the vendor actually watches. Set this and the profile address is used for the vendor's notifications and shown as their contact details. It falls back to the account email whenever the field is empty or isn't a valid address, so a mistyped key can never cost a vendor their notifications.

Contact masking

For lead-based business models, Hide Customer Contact Details from Vendors (off by default) masks the customer's name, email, and phone (like m***@***) in every vendor view and vendor email — until the customer accepts the quote, at which point the details are revealed and a Contact Customer button appears on the vendor's dashboard. The customer gets the equivalent in the other direction once they accept: a Contact [Vendor] button on their own dashboard, plus a dedicated email with the vendor's contact details — the only way a guest customer without an account receives them. Combined with the accept/decline flow, this supports the "vendor sees the lead only after a committed customer" model. Admins always see everything on their own screens — what a vendor is sent is decided by the setting alone, so a request you submit yourself as an administrator still reaches the vendor masked.

Vendor permissions

SettingDefaultEffect
Lock Status After Customer DecisiononAccepted requests can only be Completed; Rejected ones can't be changed
Allow Vendors to Cancel After QuotingonOff makes a sent quote final for the vendor
Allow Vendors to Delete Their SubmissionsoffOn restores a Delete button; otherwise vendors cancel (with a reason) and only admins delete

All three are enforced on the server, not just hidden in the interface.

Built by Code Wattz.