This module connects Drupal Webforms to ServiceM8, allowing submitted form data to automatically create jobs or quotes in ServiceM8. It handles features like file uploads, contact duplicate checking, lead source tracking, and customizable field mapping.
ServiceM8 Webform Integration for Drupal
Send Webform submissions to ServiceM8 as fully sorted job cards, with badges, categories and queues set by your customers' answers.
Turn any Drupal Webform into a ServiceM8 job that arrives already sorted.
Every submission creates a job card in ServiceM8 with the customer's details, address and job description mapped exactly where you want them. The answers people give on your form decide what happens next. Their lead source can add a badge. The type of work can set the job category. Urgency or location can drop the job into the right queue. Uploaded photos and files attach to the job, and an automatic diary note can tag your staff and pull in any answer from the form.
Build the form around how your business works, and the module puts each enquiry where it belongs. No copying and pasting, no sorting jobs by hand.
Features
Job creation
- Automatic job creation in ServiceM8 from any webform submission
- Configurable job status (Quote, Work Order, and so on)
- Field mapping for name, company, email, mobile, phone and job description
- Address mapping as a single field, or as separate line 1, line 2, town, county and postcode fields
- Custom mappings for anything non-standard
- File uploads attached to the job (up to 10MB per file)
Sorting jobs by your customers' answers
- Badges applied to every job, plus badge mapping so a form answer (such as lead source) adds the matching badge
- Job category applied to every job, with optional mapping so a form answer sets the category
- Job queue applied to every job, with optional mapping so an enquiry type sends the job into a matching queue
- Badge, category and queue lists pulled live from your ServiceM8 account and cached
Notes and staff tagging
- Automatic diary note added to every job
@staffnametagging to notify the right people in ServiceM8- Webform token support, so any answer can appear in the note, e.g.
[webform_submission:values:budget]
Contacts
- Duplicate contact detection
- Existing companies matched and linked by email or name
Setup and troubleshooting
- Per-form API credentials, or site-wide defaults
- Built-in connection test and help page
- Loading overlay while the submission is processed
- Custom success and error messages
- Debug logging mode for troubleshooting
Requirements
- Drupal 10.1, 11 or 12
- Webform module 6.1 or higher
- ServiceM8 account with API access
- PHP 8.1 or higher
Installation
Using Composer:
composer require 'drupal/servicem8_webform'- Enable the module at Extend, or with
drush en servicem8_webform - Clear caches
Without Composer:
- Download the release archive from this page
- Upload the
servicem8_webformfolder to/modules/custom/on your server - Go to Extend, find ServiceM8 Webform Integration, and install it
- Go to Configuration, Development, Performance and clear all caches
Configuration
- Get your API key from ServiceM8 under Settings, API
- Go to
/admin/config/services/servicem8and enter your credentials - Use the Test Connection button to confirm it works
- Edit any webform, go to Settings, Emails / Handlers, and add the ServiceM8 Job Creator handler
- Map your form fields to ServiceM8 fields
- Optionally set badges, a job category and a job queue to apply to every submission, and map them to form answers
- Optionally add an Automatic Note, which supports
@staffnametags and webform tokens
License
GPL-2.0-or-later
Ask your assistant about ServiceM8 Webform Integration
Check compatibility with your Drupal and PHP version, maintenance and security coverage, from current release data. How it works
Depends on
Dependencies of the latest stable release
- Webform >=6.1
- system Drupal core >=10.1
Required by
Tracked projects that depend on this one
No tracked projects depend on this one yet.