Skip to content
Release: Australia · Updated: 2026-03-12 · Official documentation · View source

Field Service Marketplace components

Several types of components are installed with the activation of the Field Service Marketplace feature including tables, roles, system properties, business rules, and script includes.

Tables

Field Service Marketplace adds the following tables:

TableDescription
Marketplace engagement method\[marketplace\_engagement\_method\]This table has the basic rules for engaging with contractors. The engagement methods define the ways contractors can respond to the marketplace requests.
Marketplace request\[marketplace\_request\]This table establishes the relationship between engagement method and work order tasks. This table is populated by the dispatcher with all relevant fields to progress the request.
Marketplace assignment\[marketplace\_assignment\]This table maintains distinct records for each contractor, offering the dispatcher the capability to choose contractors permitted to participate in a marketplace request.
Marketplace response\[marketplace\_response\]This table is designated to gather responses from all contractors regarding their pricing, as well as the intended start and completion dates for the task.
Eligible engagement method\[eligible\_engagement\_method\]This table defines the list of eligible engagements for a marketplace task filter.

Roles

Field Service Marketplace adds the following roles:

RoleDescription
sn_mktplace_core.mktplace_adminAdministrator role can create marketplace engagement methods.
sn_mktplace_core.mktplace_requestorRequestor role can push tasks to the marketplace.
sn_mktplace_core.mktplace_fulfillerFulfiller role can respond to marketplace requests.

System properties

Field Service Marketplace adds the following system properties:

The following table lists the system properties that are required to set up Field Service Marketplace. Navigate to AllSystem Properties list

System propertyDescription
sn\_fsm\_mktplace.maximum\_number\_of\_contractorsMaximum number of contractors to fetch and show for a Marketplace request. - Type: Integer - Default value: 10
sn\_fsm\_mktplace.use\_playbook\_experience\_for\_marketplaceProperty to use playbook experience for marketplace.- Type: true/false - Default value: true
sn\_fsm\_mktplace.wot\_fields\_to\_restrict\_updateComma separated fields to restrict update when Work Order Task is pushed to marketplace. 1. Type: String 2. Default values: location,asset,work_type,estimated_work_duration,estimated_travel_duration,estimated_end,expected_start,expected_travel_start,window_start,window_end,schedule_lock

Task Filters

Field Service Marketplace adds the following task filters:

Task FilterConditionsCriterionFunction
Marketplace tasksEnsure that the Field Service Marketplace plugin is active. For more information, see Activate Field Service Marketplace. Demo data is provided with this plugin.- State is pending dispatch - Location is populatedMatching skills of contractorsDistance between task and contractors Matching mandatory skills of contractorsEligible for marketplace assignment.

Business rules

Field Service Marketplace adds the following business rules:

Business ruleTableDescription
Restrict order change marketplace taskWork Order\[wm\_order\]Blocks suspension of a work order when one of its tasks is pushed to the marketplace.
Restrict fields for marketplace taskWork Order Task\[wm\_task\]Blocks updates to certain work order task fields.
Cancel mp request on task cancellationWork Order Task\[wm\_task\]Cancels any open marketplace request when the work order task is cancelled.
Restrict marketplace task with assignedWork Order Task\[wm\_task\]Blocks a work order task with an assignment group populated and marketplace task set to true.
Restrict updates to marketplace flagWork Order Task\[wm\_task\]Disables changing marketplace task flag of the work order task to false.
Disable changes when open request existsMarketplace engagement method\[marketplace\_engagement\_method\]Disallows changes to the engagement method when an open marketplace is using it.
Disable cost/time update from listMarketplace engagement method\[marketplace\_engagement\_method\]Validates edits of time and cost fields on the marketplace engagement method table list view.
Cancel all assignments and responsesMarketplace request\[marketplace\_request\]Cancels marketplace assignments and inactivate marketplace responses when a marketplace request is canceled.
Validate request insertionMarketplace request\[marketplace\_request\]Blocks the creation of a new marketplace request when an open request exists.
Set assignments to timeout on closeMarketplace request\[marketplace\_request\]Updates the state of marketplace assignment records when a marketplace request is closed.
Create MP Assignment records in draftMarketplace request\[marketplace\_request\]Creates marketplace assignments in the draft state when a marketplace request is created.
Check end time is more than startMarketplace request\[marketplace\_request\]Validates start and end times of the marketplace request.
Cancel old flow on request end updateMarketplace request\[marketplace\_request\]Cancels the old flow responsible for tracking the request end time, when the end time is updated.
Validate assignment insertionMarketplace assignment\[marketplace\_assignment\]Blocks the creation of a new assignment record for a request that isn’t open. Blocks duplicate assignment records for an open request.
Inactivate responses when withdrawnMarketplace assignment\[marketplace\_assignment\]If withdrawn, inactivates response of contractor.
Check close conditionMarketplace assignment\[marketplace\_assignment\]Handles closing marketplace request and flow data records based on its close condition.
Unaward assignments when task is awardedMarketplace assignment\[marketplace\_assignment\]When a task is awarded to a contractor, other contractors' assignment records are marked unawarded.
Query on Assignment for TaskMarketplace assignment\[marketplace\_assignment\]Query business rule on marketplace assignment table
Assigned from marketplaceMarketplace assignment\[marketplace\_assignment\]When a task is awarded to a contractor, closes the request and updates the work order task with the necessary details. Updates the work order task scheduling method to marketplace.
Override wait duration on rejectionMarketplace assignment\[marketplace\_assignment\]For a progressive push request, this BR will override the set wait duration when the current fulfiller receiving the bid, rejects the request
Disable negative in response durationMarketplace response\[marketplace\_response\]Disables insertion of responses with negative duration and checks response's start and end with work order task window start and end.
Update Assignment to acceptMarketplace response\[marketplace\_response\]When a response is received, update the assignment record state of that contractor to accepted.
Validate response insertionMarketplace response\[marketplace\_response\]Blocks insertion of response if the work order task's "Is Fixed Window" flag is true and the response's start and end don’t fall within the work order task window. Blocks creation of responses for requests that aren’t open. Inactivates the previous response when a new response is received from the contractor.
Query on Response for TaskMarketplace response\[marketplace\_response\]Query business rule on marketplace response table.
Evaluate responseMarketplace response\[marketplace\_response\]This BR will help in evaluating the response received for a request, provided the selected engagement method has a response evaluation flow.
Set group resource type for contractorsTask Filter\[dynamic\_schedule\_task\_filter\]This BR will set the resource type to sys\_user\_group for contractor or marketplace task filters.
Validate eligible engagement changesEligible engagement method\[eligible\_engagement\_method\]This BR will validate any insertion or updates made to the eligible engagement method table.

Script includes

Field Service Marketplace adds the following script includes:

Script includeDescription
MarketplaceCoreUtilContains util methods used for generic Marketplace core workflows.
FSMMarketplaceUtilContains util methods used for FSM specific workflows of Marketplace.
FSMMarketplacePlaybookUtilContains util methods used for Playbook workflow of Marketplace.
FieldServiceMarketplaceConstantsHolds constants.
MarketplaceCoreAjaxHelperContains util methods used in Marketplace Core client-side scripts.
FSMMarketplaceAjaxHelperContains util methods used in FSM Marketplace client-side scripts.
FSMMarketplaceCspUtilUtil file that holds methods used in Playbook's CSP.
FieldServiceMarketplaceDaoBaseThe base dao for field service marketplace entities. All the entities can extend this class to re-use the common functionalities
FieldServiceMarketplaceEligibleEngagementsDaoContains all the queries and insertion made on eligible_engagement_method table
MarketplaceTaskProcessorWOTImplWork order task implementation for MarketplaceTaskProcessorExtPoint
MarketplaceTaskProcessorBaseThis class contains default implementation for MarketplaceTaskProcessor. It extends MarketplaceTaskProcessorPicker to choose the correct implementation of the MarketplaceTaskProcessorExtPoint.
MarketplaceTaskAssignmentThis class will contain custom implementations for MarketplaceTaskAssignment. This will be the class that will be used for making any method invocations
MarketplaceTaskAssignmentBaseThis class contains default implementation for MarketplaceTaskAssignment. It extends MarketplaceTaskAssignmentPicker to choose the correct implementation of the MarketplaceTaskAssignmentExtPoint.
FieldServiceMarketplaceEngagementDaoContains all the queries and insertion made on marketplace_engagement_method table
FieldServiceWorkManagementDaoContains all the Work Management related queries
MarketplaceEntityValidatorThis class will contain custom implementations for MarketplaceEntityValidator. This will be the class that will be used for making any method invocations
MarketplaceEntityValidatorBaseThis class contains default implementation for MarketplaceEntityValidator. It extends MarketplaceEntityValidatorPicker to choose the correct implementation of the MarketplaceEntityValidatorExtPoint.
MarketplaceTaskProcessorThis class will contain custom implementations for MarketplaceTaskProcessor. This will be the class that will be used for making any method invocations
FieldServiceMarketplaceResponseDaoContains all the queries and insertion made on marketplace_response table
MarketplaceDynamicSchedulingUtilThis is a util containing methods to be shipped when dynamic scheduling is installed along with marketplace
MarketplaceEntityValidatorAssignmentImplMarketplace Assignment Implementation for MarketplaceEntityValidatorExtPoint
FieldServiceMarketplacePlaybookDaoContains all the queries and insertion made on all playbook related tables
MarketplaceTaskAssignmentWOTImplWork order task implementation for MarketplaceTaskAssignmentExtPoint
FieldServiceMarketplaceRequestDaoContains all the queries and insertion made on marketplace_request table
MarketplaceEntityValidatorRequestImplMarketplace Request Implementation for MarketplaceEntityValidatorExtPoint
MarketplaceEntityValidatorResponseImplMarketplace Response Implementation for MarketplaceEntityValidatorExtPoint
FieldServiceMarketplaceAssignmentDaoContains all the queries and insertion made on marketplace_assignment table
FSMMarketplaceGlobalUtilScript Includes containing utils to be run at a global scope for marketplace module
MarketplaceTaskAssignmentPickerScript include to choose the implementation of the MarketplaceTaskAssignmentExtPoint
MarketplaceCoreExtPointUtilUtililty used by the marketplace module to retrieve extension points
MarketplaceTaskProcessorPickerScript include to choose the implementation of the MarketplaceTaskProcessorExtPoint
MarketplaceCoreConstantsScript Include to hold the constants for marketplace core plugin
MarketplaceEntityValidatorPickerScript include to choose the implementation of the MarketplaceEntityValidatorExtPoint

Parent Topic:Components installed with additional plugins for Field Service Management