Skip to main content
The Jobs & Scheduling tools help you book jobs, assign employees, manage shifts, sync with Google Calendar, track job time, and record mileage. This guide walks through the practical flows for each.

At a glance

Google Calendar sync

Connect a Google account and push jobs and shifts out, or pull busy blocks in.

Scheduling jobs

Book a job, assign people, and check who’s actually available before you commit.

Managing shifts

Draft, publish, and sync employee shifts so the team knows when they’re working.

Tracking time and mileage

Record how long each job took and how far each vehicle drove.

Connecting Google Calendar

Google Calendar sync is configured per user, not per organization. Every team member who wants to sync their work calendar connects their own Google account. You can do this on either surface.
1

Open Google Calendar settings

Open Settings → Google Calendar.
2

Authorize Google

Tap Connect Google Calendar. The Google sign-in flow opens in the system browser. ShineCRM requests calendar read and write access for the account you choose.
3

Pick which calendar receives ShineCRM appointments

Under Appointments target, choose which of your Google calendars ShineCRM should write jobs to. Most operators pick their primary work calendar.
4

Pick which calendar receives shifts (optional)

Under Shifts target, choose which calendar receives published shifts. Owners and dispatchers can leave this blank if they don’t have shifts.
5

Pick which calendars feed in busy blocks (optional)

Under Busy calendars, check any calendars whose events should show up in the ShineCRM scheduler as unavailability.
6

Save

Tap Save in the header.
You can disconnect at any time from the same settings page. Disconnecting stops new syncs but does not delete events that have already been written to Google Calendar.

Job calendar sync

Once Google Calendar is connected and a “jobs” calendar is selected:
  • Creating a job in ShineCRM writes a matching event to your selected Google Calendar.
  • Changing the job time in ShineCRM updates the event on Google Calendar.
  • Reassigning a job updates each affected person’s calendar.
  • Cancelling a job removes the event.
You don’t need to edit Google Calendar manually. Treat ShineCRM as the source of truth and the calendar will follow.

Shift calendar sync

If shifts are part of your role and you’ve selected a shifts calendar:
  • Published shifts write to your selected Google Calendar.
  • Shift changes after publish update the calendar event.
  • Each user controls their own shift calendar destination, so the dispatcher’s shifts calendar and a crew member’s shifts calendar can be different calendars on different Google accounts.
Shifts that are still in draft (not yet published) do not sync to Google Calendar.

Busy-block sync

Busy-block sync runs in the opposite direction: events on your Google Calendar are imported into ShineCRM so the scheduler can show them as conflicts.
  • The background sync runs automatically about every 5 minutes.
  • You can also force a manual sync from the Google Calendar settings screen.
  • Imported busy blocks appear on the schedule but are not editable from inside ShineCRM. To change them, edit the source event in Google Calendar.
Busy blocks help owners avoid booking employees when they’re already unavailable, without requiring everyone to put every personal commitment into ShineCRM.

Scheduling jobs

1

Open the schedule

Click Schedule in the sidebar, or open the calendar view from a contact’s profile.
2

Create the job

Click on a date and time. Add the service details and any notes.
3

Assign one or more users

Select the crew member or members who will do the work. ShineCRM supports multiple users on the same job.
4

Check conflicts before saving

Review the schedule for the chosen day. Booked jobs, scheduled shifts, and imported Google Calendar busy blocks all appear in the same view so you can see who’s actually free.
5

Save the job

Once saved, the job appears on the schedule. If Google Calendar sync is enabled, the matching event also appears in the calendars of each assigned user.

Managing shifts

Shift planning works on both surfaces. The web dashboard is usually faster for building a full week from scratch (more screen space); the mobile app is fine for quick edits and publishing.
1

Open shift planning

Open Schedule → Shifts (or the equivalent menu for your role).
2

Build the draft

Add shifts for each employee for the week (or whatever window you plan). While you’re drafting, employees are not notified and nothing syncs to Google Calendar yet.
3

Review

Check the draft. Adjust as needed. This is the “private working copy” phase.
4

Publish

Hit Publish when the schedule is ready. Published shifts become visible to employees and sync to any Google calendars employees have set as their shifts destination.
5

Make changes after publish

Edit a published shift any time. The updated time/employee assignment writes back to the connected Google Calendar(s).

Tracking job time

ShineCRM records both scheduled time (what you booked) and actual time (how long the job really took). Both end up on the job profile and the customer profile.
The mobile app is the best place to track time live on a job: start the timer when you arrive, stop it when you leave.
1

Open the job

From the Schedule, a contact, or the Jobs list, tap the job you’re recording time against.
2

Start the timer

Tap Start to begin tracking. The timer keeps running in the background while you work.
3

Stop the timer

Tap Stop when the job is done. The actual duration is recorded against the job.
4

Review history

On the customer’s profile, you’ll see scheduled vs actual time for every past job.
For multi-user jobs, time can be attributed to each assigned employee so labor cost rolls up correctly per person.

Tracking mileage

Each mileage entry records a start and end odometer reading against a vehicle, and optionally a job. Mileage tracking works on both surfaces; vehicles are also managed on both surfaces under Settings → Vehicles.
Best for recording mileage in the field, right after a job.
1

Open Mileage

Open the Mileage screen and tap + to start a new entry. (Or open it from a job’s profile to pre-fill the job.)
2

Select the vehicle

Pick the vehicle that was used. If the vehicle isn’t in your list yet, add it from Settings → Vehicles.
3

Enter odometer readings

Enter the start odometer and end odometer in km. ShineCRM computes the distance and bumps the vehicle’s current odometer if the end value is higher than the last known reading.
4

Attach a job (optional)

Link the entry to a specific job so the mileage rolls up against that job too.
5

Save

Tap Save in the header.

Frequently asked

Can different users sync to different Google accounts? Yes. Sync is configured per user, so each team member connects their own Google account independently. What happens if I disconnect Google Calendar? New jobs and shift changes stop writing to Google. Events that were already pushed stay where they are. Busy-block import also stops until you reconnect. Do imported busy blocks expose private event details to my whole team? ShineCRM uses Google Calendar busy-block data to show when you’re unavailable, not full event details. The scheduler shows a block of unavailable time so owners can avoid double-booking, without surfacing personal event titles or attendees to the wider team. Are draft shifts visible to employees? No. Draft shifts are private to whoever is building the schedule until they’re explicitly published. Can I force a calendar refresh if I just made a change in Google Calendar? Yes. Open the Google Calendar settings page and use the manual sync control. Otherwise the next automatic sync runs within about five minutes.