Marketplace
Marketplace addon allows independent service providers (vendors) to register to your website, define their availability by setting working hours and holidays, add and edit their biography, confirm and edit/manage their bookings. Addon provides a registration form with configurable fields, creates a bio post/page with booking calendar, calculates and lists commissions.
Addon also provides Multi Store selection option where a store is created for each vendor, vendor becomes store managers and they can register and employ their own service providers.
Required and Recommended Addons
As all vendors are service providers, Service Providers addon is always required. For rescheduling and editing basic booking details Front End Edit addon, for changing every aspect of bookings Front End Booking Management addon is recommended.
Please note that these addons and all the others are included in WP BASE Developer Package.
Registration Options
When a user is registered as a vendor, both WP BASE Vendor (wpb_vendor) and WP BASE Provider (wpb_worker) WordPress user roles are added to their existing roles. You can use one or more of the following methods for registration:
- Manually adding on admin side: When a user is added with role WP BASE Vendor or an existing user’s role is changed as WP BASE Vendor, he/she is automatically registered as vendor. This can be done in WordPress Add User page or better, in WP BASE Vendors page.
- Automatically assign all new users as vendor: If you set default role as WP BASE Vendor, all new users will be registered as vendor
- By using a membership plugin: Marketplace addon supports several membership plugins. When user is registered or promoted to WP BASE Vendor role, he/she is registered as vendor
- By using shortcode: Marketplace provides
app_register
shortcode to create a registration form. Users who apply using this form and verifying their emails will be registered as vendor. - By BuddyPress Member Type: When set so, existing and/or future users of certain BuddyPress member types can be assigned as vendor. To do so, activate BuddyPress/BuddyBoss Integration in Vendor Settings page and select desired member type(s) in Global Settings > Advanced > BuddyPress tab. In the same tab, Also Assign Existing Members setting also allows you to assign existing users of the member type as vendor.
- By “Become A Vendor” Shortcode and Link: You can allow logged in users to apply to be a vendor by adding
app_become_vendor
shortcode to any WordPress page. This shortcode will create a clickable button. There is also a setting which adds a link to the user account page which can be used for the same purpose. - By Listing Submission: When Listing Integration is enabled, as user submits for example a Geodirectory listing, they will be automatically assigned as vendor.
Registration Settings
On Vendor Settings page, the following registration setting fields are provided:
- Registration Page: This is the WordPress page where app_register shortcode is added. This page shows registration form for not logged in visitors. Also user is redirected to this page when they verify their email. Note: As BuddyPress is using the same registration system, ensure that BuddyPress registration page is different than this setting.
- Registration Form Fields: Tick the check boxes that will be used on the registration form. All selected fields will be required to be filled by the applicant.
- Services Provided by Vendor: This is the list of services that vendor is willing to work for. Select the services that applicant allowed to select. If you do not select any service, user will not see a selection menu on the form. Note: A service is always required to define a service provider. Therefore when no services are selected here, provider/vendor will be assigned to the first service in the list of services.
- Auto Approve Vendor: If this settings is Yes, applicants who activate their account will be saved as status approved. If setting is No, their status will be pending and admin is expected to approve their application. Here is a list of vendor status and their meanings:
- Approved: This is the normal status of a vendor. A vendor is a service provider who has a record in Service Providers page, usually having a bio page on which clients can make a booking and an account page on which they can manage their bookings, edit their working hours and change their settings.
- Pending: is the status of a vendor who is waiting for approval from the admin. A pending vendor may have a bio page depending on Create Post for Pending Vendors setting. They are not service providers yet and therefor they cannot edit their working hours, but they can edit personal information and bio page content.
- Declined: If a pending vendor is declined while in pending status, they will be in this status.
- Suspended: A vendor can be taken to suspended status manually or by a membership plugin integration, when membership of the vendor expires. Bio page of a suspended vendor will be taken to draft status so that vendor cannot be booked by clients. Existing bookings will be valid.
Registration Settings – Adding Custom Fields to the Registration Form
All default registration fields are of HTML text type and they are fixed. If you want add more or different type of fields to the registration form, for example user’s birthday, native language, gender, etc., you can achieve this by User Defined Fields addon:
- Visit Display Settings → UDFs page
- Add New UDF if required
- Tick Register? check box
- Tick Required? check box if the field is required
- Click Save UDFs button
Selected UDFs will be displayed in the registration form.
Registration Process – User Experience
- When the visitor fills all the required fields and submits the registration form, submitted data is saved in a special database table called signups. This is the same table that WordPress multi site and BuddyPress are using during their registration process.
- He/she receives an email asking to activate their account. The template for this email can be edited on Global Settings → Email → Validation tab. It is imperative to keep ACTIVATE placeholder which creates the activation link in the email.
- As user clicks the link in the email, he/she is redirected to the same page and a success message is displayed.
- As the account is activated a WordPress user account for him/her is created and previously submitted data is moved to user meta table.
- If Auto Approve Vendor settings is Yes, user can start to use his account now. If setting is No, he/she needs to wait admin approval.
- Admin is notified about new user registration by email.
Registration Process – Admin Actions
- Admin can follow unactivated submissions on Vendor Settings → Unactivated Signups page.
- The table on this page includes applications where user correctly filled the form and a validation email was sent to them, but they did not validate their email address by clicking the link in the email for some reason, e.g. email delivered to spam folder of the user.
- Addon has integrated spam bot protection without the need to use a Captcha, but no protection is possible against human spammers. Admin should decide if the application is genuine.
- Admin can resend activation email, manually activate the account or delete the application in bulk or one-by-one.
Registration Process – Admin Approval
When a vendor is created, admin receives a notification email. Then he can check the application on Vendors page, make changes if required and approve or decline the application. Optionally he can send email to the user by ticking the Send Email check box.
Manually Adding and Managing Vendors
Using Vendors page, admin can register a person as WordPress user and vendor at the same time, or assign an existing WordPress user as vendor. To do so:
- Click Add New button on Vendors page. An empty vendor record will be displayed.
- To register a new person as WordPress user and vendor, leave Select or Register User as Vendor setting as Register new user as vendor and enter at least User login, Password and Email fields. The other fields are optional. Click Add as Vendor button.
- To assign an existing WordPress user as vendor, select the user from Select or Register User as Vendor menu. User’s current data will fill the fields. Optionally make any changes, assign service and click Add as Vendor button.
- You can edit an existing vendor by clicking Edit link below their names. Please note that relevant fields, e.g. Display name and Services Provided will be synchronized with the values seen at Business Settings → Providers page.
GeoDirectory Quick Integration
While there are several methods to integrate GeoDirectory with WP BASE, this one will work with almost default GeoDirectory settings and it allows a quick start:
- Select “GeoDirectory” in Listing Integration setting on Vendor Settings page.
- On the same page select desired CPT in Post Type of the Page setting, e.g. Places (gd_place).
- Clear the Default Page Content setting and Save.
- Go to CPT (e.g. Places) > Settings > Tabs page.
- Add a tab using Custom Fields > Shortcode
- In the Tab Content field enter
[app_book]
Now when a user submits a listing of the selected CPT, a vendor profile will be automatically created and booking calendar will be displayed on the listing.
Other Integrations
Marketplace addon can be integrated with several addons including Geodirectory, UsersWP, Ultimate Member, Better Messages and several membership plugins. Contact our customer support for details about such integrations.
Multi Store – Properties
Multi Store is a selection option of the multi vendor system. When it is activated, it has the following properties:
- When a new vendor is activated, a new location will be created as Store and vendor will be assigned as Store Manager.
- Store Managers manage their stores on the front end using Store Management page created with
[app_store]
shortcode. - By default in Store Management page there are these tabs: Dashboard, Manage Bookings, Schedules, Clients, Stores, Services, Providers, Working Hours, Holidays, Seasonal Schedules, Payment History, Commissions, Store Settings. Any one or more of these tabs can be excluded from the front end using “exclude” attribute of the
[app_store]
shortcode. For details see WP BASE Dev > Help > Shortcodes page on admin side of your website. - These tabs handle similar functions as in Account page or admin side pages, but for the store(s) of the manager. For example Services tab allows adding and editing services for the store. Out of these tabs, these deserve special mention:
- Stores tab corresponds to admin side Locations page and shows list of stores that store manager owns. Note: Store Manager can own more than one store, however second and later stores can be created and assigned only manually by admin.
- Store Settings tab is specific to Store Management page and includes some parts from Provider Settings admin page and some other settings, for example table Start and Table End from working hours settings. In general, settings in these tab override global website settings for the stores of the store manager.
- Using Providers tab, store manager can register new users as service provider or pick service providers who do not have a store assigned and include them in their store. Service Providers may be assigned to only one store.
- Store Manager can manage bookings, services, working hours, holidays of providers of their store.
- In addition to this, in Store Settings tab Store Manager can allow providers to manage their own bookings and services on their Account page created with
[app_account]
shortcode. However, store providers cannot manage their working hours and holidays. - Using Clients tab, store managers can register new users as their clients and also select users in select client field. In this field, users who are already clients of other stores are not visible. Note: Clients may have more than one store if they made purchase from two or more different stores. Such clients are visible in Clients list for all of the related stores.
- If a Store Page is created, booking views on this page will automatically pre-select store (location) as the Location/Service/Provider variable and only services and providers belonging to the store will be selectable by the client.
- Similarly, if there are Provider Bio Pages and Service Connected Posts, in booking views on these pages only related service, provider and store can be selected.
- Commissions for bookings made for providers of a store will be counted as Store Manager’s sales.
- If admin enabled Google Calendar Integration for Locations, store manager can connect their Google Calendar account with store bookings on their account page.
Multi Store – Setup
- Enable Multi Store by setting Multi Store as “Yes” on Vendor Settings page.
- On the same page set Store Page parameters if you desire a store page to be created when location/store is created.
- On a regular WordPress page add
[app_store]
shortcode.
Now when a vendor is created and activated, a location will be created and vendor will be assigned as the store manager. In addition to the vendor bio page, a location page will also be created if selected so.