Call lists are maintained in the IC Manager role, or a derivative of the IC Manager businessrole.
When planning your call lists, there are a few things to consider:
- What is the purpose of the call list?
- Who should be in the call list?
- Who will be working on the call list?
- When should the call list be active
- Is there an automatic script involved?
- Will the agents be working with CTI (Computer Telephony Integration)?
- How many attempts do you want to do before giving up?
- How many attempts should occur per day?
- Do you want the call list to consider the customer’s calling hours?
- Do you want to call the customer, or a contact person?
- What should happen when the call is rescheduled?
- What are the various reasons for rescheduling?
- In what order would you like customers to be called?
- Is this call list a one-time call list, or a recurring call list?
- Where do you want to ‘feed’ the call list from?
- How do you prevent duplicates in the call list?
- If multiple agents will be working on the same list, how do you prevent another agent calling the same customer minutes after the previous attempt?
Some of these questions may seem less relevant for your process than others, which is a valid assumption, because there would for instance be a big difference in how a B2B call list would be handled compared to a B2C call list (for instance, in a B2C environment, how would you determine the customer’s calling hours, and in a B2B environment, would you have multiple agents working on the same list, or do the agents have their own ‘customer portfolio’ and thus their own call list?).
So when answering these questions, how will this reflect the settings in the system? Let’s take a look at the settings that are done in the call list.
Purpose of the call list
The purpose of the call list is probably the most fundamental question, and will have a relation with many of the other questions, for instance, if the call list serves to sell in a B2B environment, you might want to include a campaign in the call list in order to track the process, the costs and the success of the call list.
If on the other hand the call list for instance serves to remind the customer that it is time to replenish his stock, or to remind the customer to renew the contract, you might want to include an automatic script in the call so that the agent is guided through the call properly and is helped by for instance renewing the contract.
Who should be in the call list
This as well is a fundamental question. This determines for instance how the target group is selected. There can be many sources for the call list. Standard SAP offers the creation and updating of call lists from an SAP CRM Campaign. You can also decide to build an interface to add calls to call lists. You can also maybe think of building logic in an action to add a call to a call list (for instance an after-sales call to be created 3 weeks after selling a product, or adding a call to a call list 2 months before the contract period ends).
Who will be working on the call list
This question determines to whom the call list is assigned. A call list can be assigned to an organizational unit or to a certain user.
When should the call list be active
All call lists have a begin and an end date. When the call list is out of date (or hasn’t started yet), it cannot be selected by the agents, and can thus not be processed (yet).
Is there an automatic script involved
You can attach an automatic script to a call list to guide the agents through the process.
Will the agents be working with CTI (Computer Telephony Integration)?
If CTI has been implemented you can allow the Telephony system to determine the next customer to be called instead of the SAP CRM system. Within CTI, you can choose between manual, automatic and predictive dialing. Manual means the agent has to click before the phone rings, automatic means that the phone will start ringing right after the agent ends the previous call and predictive means that the telephony server will start calling before the agent has ended the call (it predicts the availability of the agent. The more agents you have in the pool, the less risk there is of a customer picking up the phone before the agent is available.
You can create a profile for call lists with CTI, and a profile for without CTI. If you choose the non-CTI profile, call data will not be synchronized to the telephony server and manual dialing will be needed.
How many attempts do you want to do before giving up?
Call lists have a number of attempts. This can be overruled by the number of attempts in the call. When this number is reached, the call is no longer valid, and the agent will get an error message when selecting the call
How many attempts should occur per day?
This may sound as a strange question, but is quite important and can be implemented in several ways. One of them is to implement in the call dispatcher that calls that have a call time (time of the last attempt) within a certain period should not be dispatched to an agent. This way, a customer is only called once per day (or once per 2 hours, depending on what you implement).
Do you want the call list to consider the customer’s calling hours?
If the customer has calling hours maintained, you can have the call list consider these. While outside the calling hours, when an agent selects the call, the system will raise an error that the current time is outside of the customer’s calling hours.
Do you want to call the customer, or a contact person?
This is an important one. If you want to call the customer, this is easy, just add the customer to the call list and you are done.
But what if you are in a B2B environment, and you need to call contact persons. If you know exactly which contact person to call, you can consider adding the contact person directly to the call list. This way, the contact person will be selected in the call. If you have targeted the company though, and you don’t yet know which contact person to call, you can add the company to the call list and leave the selection of the preferred contact person to the agent. In order to enable this, you need to do the right setting in the call list profile though. When a customer is selected, a popup with the contact persons will be raised.
Rescheduling calls and it’s reasons.
Rescheduling calls can be an important step in the process. You can imagine that you might run in to a situation where the customer is currently not available (voicemail, ill, in meeting etc.). Depending on the reason, you might want to reschedule the call to another date/time. Rescheduling can have constraints. For instance, you might not want to reschedule too far in the future, again depending on your process.
In what order would you like customers to be called?
In some cases, this might be very relevant, especially with recurring call lists. The logic on who is called first can be implemented in the call list dispatcher. A logical order would be to first call the customers that have not been called yet, followed by the customers that have had their last try the longest ago.
Is this call list a one-time call list, or a recurring call list?
One-time call lists can be archived when all calls are done, recurring call lists should be kept available for a longer period, and will have calls flowing into the call list.
Where do you want to ‘feed’ the call list from?
Standard SAP allows the creation of calls from a campaign, but you can also implement an (external) interface, or even an action in the post processing framework to add calls to a call list.
How do you prevent duplicates in the call list?
Duplicate calls in a call list can be a real menace, because of course it is not wanted to call a customer shortly after the previous call with the same questions. It is important to think of ways to prevent this. One of the possibilities is to implement a BADI to prevent this. Another option is to for instance implement this in the (external) interface. Both can exist together to have a proper check.
Most of the questions asked can be influenced by settings that are done in the Call List maintenance in the IC Manager role, and some require the implementation of a BADI or a custom class.