Next-generation platform

Implementing customer appeasement

When a customer is dissatisfied with an order or product for some reason, a store associate can appease the customer by using suitable appeasement options. This section describes the APIs, services, and other components that are used to implement customer appeasement.

The store associate can search for and identify the order and open the Order summary page. The Appease customer option is available in the Actions menu (Actions menu button). The Appease customer page opens.

When the page opens, the getCommonCodeList API is called with the codeType as YCD_APPEASEMENT_RSN to load the appeasement reasons. The store associate can select either product or order depending upon what the customer is unhappy about.

The order lines or products in the order are displayed when a store associate chooses to provide appeasement for a product. The store associate can choose the product about which the customer is unhappy. The getCompleteOrderLineList API is called to retrieve the order lines.

Appeasement options

To load the appeasement options for an order or product, the YCDGetAppeasementOffersForStoreUE user exit is called. By default, the user exit implementation returns the following appeasement options:
  • 10% discount on current order
  • 10% discount on future order
  • Discount on current order
  • Discount on future order
  • Issue coupon
  • Issue gift card

Based on your selection, a discount on current or future orders can be a flat amount discount on the current order, future order, or the selected order line. You can enter the amount to be discounted from the order total or order line total depending on whether appeasement is for the order or the product.

Depending on the appeasement option that you select, an appropriate logic is executed as follows:
  • When the store associate selects an option that applies to the current order such as 10% discount on current order or Discount on current order, the invokeUE API is called, which in turn calls the YCDProvideAppeasementInStoreUE user exit.
  • When the store associate selects an option that applies to a future order such as 10% discount on future order or Discount on future order, the invokeUE API is called, which in turn calls the YCDSendFutureOrderCustomerAppeasementUE user exit.
  • When the store associate selects Issue coupon as the option, the YCDProvideAppeasementAsCouponUE user exit is called.
  • When the store associate selects Issue gift card as the option, the YCDProvideAppeasementAsGiftCardUE user exit is called.

If Preferred is set as Y for any option in YCDGetAppeasementOffersForStoreUE, then that option is marked as the default.

If OfferType in YCDGetAppeasementOffersForStoreUE includes FLAT_AMOUNT_ORDER or FLAT_AMOUNT_FUTURE_ORDER, the AppeasementVariableAmount (ISF000056) resource permission must be enabled.

Criteria to decide the value option that OfferType supports:
  • If OfferType includes PERCENT, then isPercent is marked as true and the percentage value is shown.
  • If OfferType includes FLAT, then isAmount is marked as true and normal amount value is displayed.

Notes

The getNoteList API is called with the ReasonCode as YCD_CUSTOMER_APPEASE to load the existing notes in the notes panel. In the Add note field, the store associate can enter a note and mark as important, if required.

When the store associate clicks Add, the changeOrder API is called with the ReasonCode as YCD_CUSTOMER_APPEASE, note text, and priority in the input.