Appease a customer
A customer can report an unsatisfied experience with a CSR or there can be a delay in the delivery of products. In such situations, the user must be able to appease the customer to avoid a return or cancellation of the order.
Solution
The following section describes APIs, user exits, services, and other components.
A user can
apply a customer appeasement to an order by using the "Appease Customer"
related task in the Order Summary screen. When
the user chooses to apply an appeasement, the Appease Customer screen
is displayed. The getCompleteOrderLineList
API is
called to display the order lines.
The user must select a reason
code to apply an appeasement. The getCommonCodeList
API
is called with the CodeType
as YCD_APPEASEMENT_RSN
to
retrieve the reason codes.
The user can choose to apply the customer appeasement at the order or order line level. When the user chooses to apply the appeasement to the entire order, the user cannot select individual order lines. However, when the user chooses to apply the appeasement at the order line level, the user can select the individual order lines.
The screen also displays the previous
customer appeasement notes. The getNoteList
API is
called to display the previous customer appeasements notes. The user
who applied the appeasement, date, and time when the appeasement was
applied are displayed. The OrderHeaderKey
and the YCD_CUSTOMER_APPEASE
ReasonCode
attribute
are passed in the input to the API.
YCDGetAppeasementOffersUE
user
exit is invoked to retrieve the appeasement options. The appeasement
options are displayed based on the offer types that are returned by
the user exit. An OfferType
can have one of the following
values: FLAT_AMOUNT_ORDER
PERCENT_ORDER
PERCENT_FUTURE_ORDER
VARIABLE_AMOUNT_ORDER
VARIABLE_FUTURE_AMOUNT_ORDER
VARIABLE_PERCENT_AMOUNT_ORDER
VARIABLE_PERCENT_FUTURE_AMOUNT_ORDER
For each offer type that is returned by the user exit,
a corresponding offer description is displayed. The default description
for an offer type is driven by the isccs_bundle.js
file
in the <install_dir>/isccs/resources/bundle/nls/ directory.
This file can be modified to suit your implementation.
YCDGetAppeasementOffersUE
user
exit returns the following information for every appeasement offer:Preferred
: If the value of this attribute isY
, the appeasement offer is preferred and is selected by default.OfferAmount
: This attribute is used to display the offer amount in the description of the offer.ChargeName
andChargeCategory
: The charge name and the charge category used to provide the discount. These attributes are used while generating an invoice.IsPercent
: This attribute indicates whether the appeasement offer is provided as a percentage of the order amount or not.IsVariable
: This attribute indicates whether the offer is variable or fixed. If the value isY
, the logged in user can specify the discount on the order.DiscountPercent
: If the discount is offered as a percentage on the order amount, the percentage is returned in this attribute.IsFuture
: This attribute indicates whether the appeasement is applicable to current order or future orders.
The user must enter a note that describes the reason
for applying an appeasement. A default note is displayed for each
appeasement offer, the note content is driven by the isccs_bundle.js
file.
However, the user can modify the note on the user interface as required.
changeOrder
: This API is called to create a note with theReasonCode
attribute asYCD_CUSTOMER_APPEASE
.recordInvoiceCreation
: This API is called to create a credit memo. Invoices are always associated with the sales order. When a customer appeasement is applied from the return order flow, the invoice that is generated, is associated with the sales order. Therefore, you can view the credit memo by using the "View All Invoices" related task in the Order Summary screen of the order.
When the user applies an appeasement that is applicable
for future orders, the YCDSendFutureOrderCustomerAppeasementUE
user
exit is invoked. The appeasement offered is recorded but applied only
on the customer's future orders.
Implementation
- You must configure the customer appeasement reasons. For more information, see the Sterling Business Center System Configuration.
- You must configure the
ChargeCategory
asDiscount
. For more information about configuring the charge name and the charge category, see the Channel Applications Manager. - Applying customer appeasements to an order is a permission-controlled task. For information about assigning resource permissions to a user group, see the Administering user group permissions.
- Variable appeasement offers are permission-controlled. Out-of-the-box, only an administrator user can apply a variable appeasement. For information about administering user group permissions, see Administering user group permissions.
For more information about the APIs and user exits, see the Javadoc.
End-user impact
The user can provide discounts by applying appeasements to an order, to avoid customer dissatisfaction.