Netfluence Corporation

NETFLUENCE CORPORATION

Knowledge Base

Customer Support and Change Request Ticketing System [DRAFT]

Published: Nov 24, 2019 11:51:55 PM

NOTE:

This document is still in progress. To comment, please use the Google document found on this link: https://docs.google.com/document/d/1IG35oYYHCtMoWsgJjh67JjyuKrckJJbnTSApgyVpZog/edit#heading=h.clpd7a8dkxrp

 

Last Updated: 2019-11-22


 

Abstract

 

Netfluence is a platinum-tiered HubSpot partner agency engaged in A) selling a Visual Page Builder for the HubSpot platform as a standalone product, B) providing custom Hubspot website development and C) technical support for all aspects of HubSpot (e.g. campaigns, workflows, analytics, integrations, CRM customizations, etc) to allow its clients to maximize use of the platform and ultimately generate more revenue or save on costs through business process automation.

Netfluence is a multi-site company, with an office in the US (FL) and two office locations in the Philippines (Mandaluyong and Legazpi). In addition, Netfluence has went all-in on the HubSpot platform and has consolidated all of its project management, time-tracking, internal communications and marketing efforts within its HubSpot portal (w/ Marketing Hub Professional, Sales Hub Enterprise & Service Hub Professional.

To better organize client issues or change requests internally and to provide a venue for clients to easily report and track issues/requests, Netfluence needs to have a Customer Support and Change Request Ticketing System. The system will be used by both internal Netfluence team members as well Netfluence’s clients as an interface for ad hoc communication. Ultimately, the system should provide Netfluence’s clients a better customer experience than Email, Slack or other tools mainly designed for mere messaging.

 

 

Phase I: Point the Fire Hose Away from Daniel

 

PHASE 1 NEEDS ANALYSIS:


At present, Daniel has to intercept all client and prospect communications (emails/texts/phone calls/video calls/FB Messenger) organize, execute and respond back to clients...for Visual Page Builder Projects, Ad hoc development projects, and our new Technical Support retainers.

BIG PICTURE OBJECTIVE PHASE 1:  A) All of these communication touch-points need to be taken over by our team in Legazpi for inbound communications of any type. (Outbound communications will remain funneled through Daniel for Phase 1 as is already the case)

The first phase is needed for the Netfluence team to immediately have a process and take over inbound communications, execution and outbound communication drafts around ‘Technical Support Retainers’ to free up Daniel’s bandwidth for sales and marketing.

 

 

NARRATIVE REQUIREMENTS:

 

At the beginning of Daniel’s shift, he has to be able to go to the ‘ALL CUSTOMERS’ pipeline for a summary for all inbound communications received and to be sent out, including: client communications, project updates, responses to one-off requests (tickets), meeting requests and important pieces of information.

1) There has to be a central Inbox for literally all communications Daniel receives regardless of medium.

2) A Netfluence employee has to literally review every one of those communications and decision them:

       a) Action Needed? Yes or No. If Yes:  

--> New Ticket/Issue?

--> Existing Issue?

--> Should a note be produced for Daniel to receive at the beginning of his next shift? 

(i.e. scheduling request, or comment Daniel should know about from a customer)

        b) Save for reference Y/N),
        c) Non essential information? (message can be discarded). 

 

NOTE: The greatest challenge in this process will be how to handle topic/issue continuations (topics nested in non-related threads or emails, or disconnected messages that are actually related)


3) The Netfluence employee then has to categorize and organize every bit of information into:

      1. If an action is needed to an existing issue:
      2. If an action is needed to a new issue:
      3. If a scheduling request is received
      4. If information does not require action but is something that needs to be communicated
    •           If information needs to be saved for reference


4) The Netfluence employee ensures that all information is within the ‘All Customers’ pipeline.

 

ticketingsysstructure

 

PHASE 1 GRANULAR GOALS: 

 

  1. Free up Daniel from having to intercept communications, execute tasks and prepare outbound communications related to technical support retainers.
  2. Create a process that is able to allow the team in Legazpi to take over all work around Technical Support Retainers, including:
    1. Intercepting and categorizing inbound requests;
    2. Executing all work involved and creating structure, documentation, and tracking documents;
    3. And creating client communication drafts for Daniel to be able to directly send out to clients. 
  3. Create centralized GUIs for:
    1. The team in Legazpi to have one place to see all inbound communications;
    2. The team in Legazpi to have a visualized way of moving tickets along stages;
    3. Daniel to have one place to look for all outbound communications.
  4. Set up the team in Legazpi to be able to respond to and/or resolve to customer-filed tickets in a timely manner (within 24 hours).
  5. Include a QA process to ensure the quality of work.

 

Phase I - Business Requirements

 

A) All inbound communications received by Daniel through email or phone must be made visible to the team in Legazpi.

A CENTRAL GUI FOR ALL INBOUND COMMUNICATIONS: HubSpot’s Inbox feature should be set up as the central GUI for the team in Legazpi to look into all inbound communications. Using the Inbox will allow for tickets to be easily created through the ‘Create Deal’ functionality on the right side nav of the inbox.

inbox

  •  

 

 

INBOUND EMAILS: Integrate and sync daniel.fonseca@netfluencecorp.com as a ‘Team Email’ to HubSpot so all emails are made visible through HubSpot’s Inbox feature

 

PHONE CALLS: https://uberconference.com/netfluence must be set up as the main conference link to be used for ALL client calls. This will enable calls summaries that are sent out after phone calls to appear in the inbox as an email. The team in Legazpi will need to watch out for all Uberconference emails to download the transcription and recording. 

Sample Call Summary Email from Uberconference:

 

samplephonecall

 

 

FACEBOOK MESSENGER: Facebook Messenger must be integrated to HubSpot so all incoming messages are displayed in the inbox.

 

TEXT MESSAGES: A virtual phone number must be set up and made known to clients. The virtual number will be set up to forward texts to Daniel’s phone and to daniel.fonseca@netfluencecorp.com so text messages are displayed in the inbox.

 

PHONE CALLS: A virtual phone number must be set up and made known to clients. All calls made to the phone number must be recorded and auto-forwarded and transcribed. All recordings and transcriptions will be forwarded to daniel.fonseca@netfluencecorp.com.

 

B)  Set up a deals object-based ticketing pipeline to allow for tracking for execution of each ticket.

ARCHITECTURE NOTE: It has been decided that tickets will be stored and will be handled within the deals object. (Yes, the deals object even though HubSpot has a native ticketing system). Here’s why:

HubSpot’s Ticketing System requires payment for every Service Hub Professional user. This isn’t scalable as costs associated will be higher with  the more resources we have to manage tickets.

HubSpot’s Tickets object and Ticketing System has less configuration, automation and reporting features than the more refined deals object. \

Not all clients will have access to the Ticketing System while the CRM is free… So, running a 2-way sync (a future-requirement) will always be possible whether or not a client has access to the ticketing system.

 

CREATE A PIPELINE CALLED “TECHNICAL SUPPORT TICKETS” and SET IT UP WITH THE FOLLOWING DEAL STAGES:

Uncategorized & Unassigned - This stage is the placeholder bucket for where tickets that have not been automatically segmented and assigned will be added for review by the project coordinator. If all clients have been accounted for in the workflow logic for auto-assignment, there should be no ticket that would fall under this status. Any ticket that falls under this status will need logic added for auto-assignment by the project coordinator.

Assigned & To Do - These are tickets that are queued for investigation. Any ticket that has been assigned to a Netfluence resource with a billing type of  ‘Billable’, ‘Non-Billable’, and ‘Charge to Retainer Hours’ will go next.

Awaiting Client Hours Authorization - This stage will be for any ticket flagged to “Need Client Authorization for Hours.” CSMs will have to add a LOE and trigger a response to the client to state the task LOE for approval. Once the client approves the LOE, the billing type will be automatically changed to ‘Billable.’ An acknowledgment receipt of the authorization will be automatically sent to the client.

In Progress - Tickets that are in progress will be added to this stage.

On-Hold | Need Data from the Client - Tickets that are blocked for any reason (need credentials, questions that need to be answered by the client, etc) will be put to this stage. A follow-up email to the client with what’s needed will be automatically sent to the client in 24-hour increments as long as the ticket is in this stage.

For Internal Review - This is where the solution and communication to the client will be QA’ed.

For Client Review - When a ticket is moved to this stage, the client will receive an Email that the solution is for review. They have 48 hours to review and approve. If approval is not received in 72 hours, the ticket will automatically be moved to ‘closed.’

Closed - All completed tickets will be moved here.

 

C)  Sync Deal-based Tickets to the Customer Card.

ANY NOTES WRITTEN INTO THE TICKET CARD SHOULD BE SYNCED (AUTOMATED) AS A NOTES INTO THE CUSTOMER CARD WITH THE FOLLOWING TAGS:

TICKET TITLE

TICKET CREATED DATE

ORIGINAL CLIENT REQUEST

TICKET LINK

ticketsample

 

 

A CRM EXTENDER MUST BE INCORPORATED INTO THE CUSTOMER CARD’S RIGHT SIDE PANE TO DISPLAY ALL TICKETS ASSOCIATED TO THE CUSTOMER WITH THE FOLLOWING DATA POINTS:

TICKET TITLE (hyperlinked to the associated ticket in the deals pipeline)

TICKET CREATED DATE

ASSIGNED TO

STATUS

ticketlistsample

 

 

Phase I - Action Items

 

ACTION ITEMS

LOE

Daniel to configure the HubSpot Sales Gmail Chrome Extension to exclude all personal and emails with sensitive information from synching to HubSpot.

 

 

< 1 Hour

Set-up the dedicated email address (daniel.fonseca@netfluencecorp.com) as a new Email channel via Conversations > Inbox in HubSpot.

 

 

< 1 Hour

Create custom Deal properties to tag specific ticket data points:

  • Client
  • Billing Type
  • Priority Level
  • Level of Effort (LOE)

 

Create a new deal pipeline called “TECHNICAL SUPPORT TICKETS” with the following deal stages that will serve as the ticket statuses:

  • Uncategorized & Unassigned
  • Assigned & To Do
  • Awaiting Client Hours Authorization
  • In Progress
  • On-Hold | Need Data from the Client
  • For Internal Review
  • For Client Review
  • Closed

 

 

 

 

 

 

 

1 Hour

 

 

 

 

Phase I Project Timeline


 

 

Phase II: Enable Technical Support Ticketing via Email

 

PHASE 2: Email-Based Ticket Filing Basic Use Case - The objective of phase 2 is to:

  1. Enable Technical Support Retainer clients to file tickets and receive updates on previously filed tickets via email.
  2. Enable the Netfluence team to visualize and manage tickets through its own HubSpot portal’s deals pipeline.


PHASE 2 NEEDS ANALYSIS: The second phase is needed for the Netfluence team to have a process for allowing for tickets around the ‘Technical Support Retainer’ to be submitted directly from clients. This enables tickets to be assigned directly from the client to Technical Research Associates in Legazpi to solve client requests.

 

Phase II - Business Requirements

 

A) Accessible and Easy-to-Use Channels for Clients to Input Details for Support Tickets

EMAIL-BASED TICKET SUBMISSION: A dedicated Netfluence address must be created to receive incoming tickets to allow for clients to send emails to file tickets. 

    • The dedicated email address has to be synced and integrated to HubSpot for HubSpot to ‘listen’ to emails received. 
    • Once an email is received, automation through a workflow should be in place to create and associate a client to the deal within a deal pipeline dedicated to receiving and managing tickets.
    •  
  • FORM-BASED TICKET SUBMISSION: There should be a form with the following fields to allow for clients to raise issues or change requests.

  1. Name (required field)
  2. Email Address (required field)
  3. Title (required field)
  4. Support Type Needed (Drop Down: Visual Page Builder Issue | Website Change Request | Need for Documentation | Technical Support | Sales & General Information | Billing)
  5. Description and Steps to Replicate Issue (required field)
  6. Reference Link - URL to Reproduce the Issue
  7. Prioritization: (Critical | High | Low)
  8. Screenshot Upload
    FORM SHOULD BE EMBEDDED TO A SUPPORT PAGE: The form should be embedded onto a support page within the Netfluence website with URL https://netfluencecorp.com/support  with clear verbiage on the page to submit info through the form to get in touch with Netfluence. The page should also set the expectation that all submissions will be looked into and responded to within 1-2 business day

    Links to the support page should be added within Netfluence’s main website’s header and footer so clients are able to navigate to it. 
    •  

THE FORM SHOULD BE EMBEDDED TO THE CLIENT’S PORTAL VIA A CRM EXTENSION: The form should be accessible via a CRM extender in contacts, company and deal objects in client portals.

 

B) Tickets will be stored in a pipeline within the deals object of Netfluence’s HubSpot portal which will be integrated and synced to a counterpart pipeline in the clients’ HubSpot portals.

IMPORTANT NOTE: It has been decided that tickets will be stored and will be handled within the deals object. (Yes, deals object even though HubSpot has a native ticketing system). Here’s why:

  1. HubSpot’s Ticketing System requires payment for every Service Hub Professional user. This isn’t scalable as costs associated will be higher with  the more resources we have to manage tickets.
  2. HubSpot’s Tickets object and Ticketing System has less configuration, automation and reporting features than the more refined deals object. 
  3. Not all clients will have access to the Ticketing System while the CRM is free… So, running a 2-way sync will always be possible whether or not a client has access to the ticketing system.
      • DEAL PIPELINE AS STORAGE AND VISUALIZATION TOOL: All tickets submitted will have a corresponding deal created in the ticketing pipeline. All tickets will be moved through deal stages to indicate high-level ticket status and to trigger automated notifications.
        1.  
        2. RESPONSES TO THE CLIENT SHOULD BE SENT THROUGH THE NATIVE DEAL-BASED EMAIL FUNCTIONALITY (ACTIVITY) - Any communication to the client will be sent via email through email functionality. This will allow for emails back-and-forth to be tracked within the same card.
        3.  
        4. INTERNAL NOTES / DRAFTS LOGGED THROUGH THE NATIVE NOTES FUNCTIONALITY (ACTIVITY) - Notes will be the primary venue for logging internal comments or response drafts that need to be proofread or wordsmithed.
        5.  
        6. SNIPPETS - Snippets must will be set up to create templates that can be used to respond to customer requests.

 

    • NETFLUENCE-TO-CLIENT HUBSPOT PORTAL DEAL PIPELINE 2-WAY SYNCHRONIZATION - The deal pipeline containing all tickets in Netfluence’s portal will have a mirrored view in the client’s portal that will reflect all back-and-forth communications and ticket statuses.

      1. EMAILS SENT FROM THE NETFLUENCE PORTAL WILL APPEAR AS NOTES IN THE CLIENT’S PORTAL - In order for communications from the Netfluence portal (sent as an email), to be shown on the counterpart deal in the client’s portal,  the contents of which will need to be synced to the client’s portal as a note that is authored by a Netfluence rep.
      2.  
      3. NETFLUENCE INTERNAL INFO SHOULD NOT BE SYNCED - All information used by Netfluence internally such as billing types and internal communications should not be mirrored in the client’s portal.
      4.  
      5. STAGES/STATUSES SHOULD BE SYNCED: All deals in the clients’ ticket pipeline in their own portal should match the stage for where the ticket is in Netfluence’s portal.

 

 

C) The System Should have Automated Internal Segmentation with a Failsafe for Manual Segmentation for Anything That Falls through the Cracks

    • TICKET TAGGING: Each ticket should have tags that allow for the following data points to be flagged:

      1. Client
      2. Billing Type (Billable | Non-Billable | Charge to Retainer Hours | Need Client Approval for Billable Hours)
      3. Priority Level (Critical, High, Low)
      4. Critical - Drop what’s being worked on and knock this out ASAP
      5. High - Spend 70% of allotted retainer hours on high priority tickets each day
      6. Low - Spend 30% of allotted retainer hours on high priority tickets each day
      7. Level of Effort (LOE) - This will be where estimation for hours to knock the ticket out will be inputted.
      8.  
    • TICKET TAGGING AUTOMATION: There should be automated rules (scalable and easy-to-update workflows) to assign tickets by client, billing type and prioritization depending on client input. Once a ticket is received, any ticket determined by the system to fall under a specific client will automatically assign billing type. For example: 
    •  
      1. If an Email comes from an @polycor.com Email address and with a support type needed of “Technical Support” automatically associate the ticket to the customer ‘Polycor’ and set up the billing type as ‘Charge to Retainer Hours’
      2. If an Email comes from an @cloudbakers.com Email address with a support type of “Website Changes”, automatically associate the ticket to the customer “Cloudbakers” then set billing type as “Need Client Approval for Billable Hours”
      3.  
  • DEAL PIPELINE STAGES (TICKET STATUSES)
  •  
    • Uncategorized & Unassigned - This stage is the placeholder bucket for where tickets that have not been automatically segmented and assigned will be added for review by the project coordinator. If all clients have been accounted for in the workflow logic for auto-assignment, there should be no ticket that would fall under this status. Any ticket that falls under this status will need logic added for auto-assignment by the project coordinator.
    • Assigned & To Do - These are tickets that are queued for investigation. Any ticket that has been assigned to a Netfluence resource with a billing type of  ‘Billable’, ‘Non-Billable’, and ‘Charge to Retainer Hours’ will go next.
    • Awaiting Client Hours Authorization - This stage will be for any ticket flagged to “Need Client Authorization for Hours.” CSMs will have to add a LOE and trigger a response to the client to state the task LOE for approval. Once the client approves the LOE, the billing type will be automatically changed to ‘Billable.’ An acknowledgment receipt of the authorization will be automatically sent to the client.
    • In Progress - Tickets that are in progress will be added to this stage.
    • On-Hold | Need Data from the Client - Tickets that are blocked for any reason (need credentials, questions that need to be answered by the client, etc) will be put to this stage. A follow-up email to the client with what’s needed will be automatically sent to the client in 24-hour increments as long as the ticket is in this stage.
    • For Internal Review - This is where the solution and communication to the client will be QA’ed. 
    • For Client Review - When a ticket is moved to this stage, the client will receive an Email that the solution is for review. They have 48 hours to review and approve. If approval is not received in 72 hours, the ticket will automatically be moved to ‘closed.’
    • Closed - All completed tickets will be moved here.

 

D) Automated Client Notifications Should Be Set Up


  • UPDATE NOTIFICATIONS: The client has to receive the following updates as tickets move through stages:
  1. Ticket Received by Netfluence - Will be sent upon ticket submission. 
  2. Hours Authorization Required - Will be sent to the client when hours need to be authorized prior to execution. The Email has to have a CTA to approve the hours needed.
  3. Ticket in Progress - Will be sent once the ticket is moved to in progress.
  4. Ticket Needs Info from the Client - This will be sent to the client with information on what’s needed (answers to specific questions, assets, images, etc) for ticket to be completed
  5. Completed and Need Approval - Will be sent when the ticket is moved to ‘For Client Review.’ The Email has to have a CTA to approve the work that’s been rendered.
  6. Ticket Closed - Will be sent when the ticket is moved to ‘Closed’
  7.  
  •  
  • EMAIL PERSONALIZATION TOKENS: All email notifications sent must have details about the ticket included in the body of the email:
  •  
  • Link to the ticket - This will be a link to deal in client’s own portal.
    • Ticket Title
    • Ticket Description
    • Ticket Status
    • Netfluence’s Response

 

 

E) Netfluence Internal Ticket Stages & Flow

 

internalticketstageandflow

 



F) Deal Pipeline as the Client Ticket Portal with a Dashboard to Help Visualize Statuses for the Client

The deal pipeline within the client’s portal representing all tickets sent to Netfluence will serve as the ticketing portal where statuses for each ticket will be visualized..

The client should also have a ticket creation form available in the portal through a CRM extension.

The client should also be able to see all tickets needing hours authorization easily. There has to be an ability to bulk approve all hours.

 

G) Syncing up to Project Management — ‘All Customer Cards’

  • Tickets show up through CRM Extender

 

 

PHASE II - ACTION ITEMS

 

ACTION ITEMS

LOE

Set-up the dedicated email address (support@netfluencecorp.com) as a new Email channel via Conversations > Inbox in HubSpot.  Configure this email to automatically create a ticket within the Support Pipeline every time a new email is received.

< 1 Hour

Create custom Deal properties to tag specific ticket data points:

  • Client
  • Billing Type
  • Priority Level
  • Level of Effort (LOE)

 

Create a new deal pipeline with the following stages (ticket statuses)

  • Uncategorized & Unassigned
  • Assigned & To Do
  • Awaiting Client Hours Authorization
  • In Progress
  • On-Hold | Need Data from the Client
  • For Internal Review
  • For Client Review
  • Closed

 

 

 

 

 

 

 

 

 

1 Hour

Create a ticket-based workflow to create a deal within the pipeline dedicated to receiving and managing tickets.

 

Enrollment criteria:

  • Pipeline is any of ‘Support Pipeline’ (Ticket)

 

Actions

  • Create a Deal within the Support Pipeline
  • Copy all contact and company association from the ticket
  • Copy the Email subject and Email body into the deal notes
  • Set-up conditional statements wherein a specific client will be automatically assigned a billing type. E.g. If email ends with ‘@polycor.com’, and support type is  ‘Technical Support’, set billing type to: ‘Charge to Retainer Hours’

 

 

 

 

 

 

 

 

 

 

 

3 - 4 Hours

 

Phase II Project Timeline


 

Phase III: HubSpot-Based Ticketing System with all the Bells and Whistles

 

PHASE 3: HubSpot-Based Ticketing System with all the Bells and Whistles - The objective of phase 2 is to:

  1. Enable Technical Support Retainer and Visual Page Builder clients to file tickets through additional channels (i.e. from within their own HubSpot portals or form on the Netfluence site)
  2. Enable clients to visualize and respond to tickets through a deals pipeline dedicated to ticketing within their own CRM. This is achieved through HubSpot-HubSpot portal integration and synchronization.
  3. Enable clients to visualize ticket counts, tickets that need input from them, tickets that need to be reviewed, etc through custom widgets on the HubSpot dashboard.

 

PHASE 3 NEEDS ANALYSIS: This full-on system allows for the Netfluence team and its clients to have a better experience as clients will be able to have better visualization and can correspond with the team through their own HubSpot portals.

 

III. Proposed Solution - Overview

 

This project will be completed in 2 phases.

 

 

 

 

 

ABOUT THIS SCOPE OF WORK

The above scope of work (SOW) represents an estimate of hours to complete the Customer Support and  Change Request Ticketing System for Netfluence based on requirements detailed in this document.