Cancel return orders

A customer must be able to cancel a return or exchange order. This feature gives the provision to cancel a return order placed by a customer, when the customer decides to keep the products. The customer should also be able to cancel any exchange order that is associated with the return order.

Solution

The following section describes APIs, user exits, services, and other components.

A user can cancel return orders or return order lines by using the "Cancel Return" related task from the Return Summary screen. The "Cancel Return" related task is displayed only if the user has the appropriate resource permission.

When the user chooses to cancel a return order, the Cancel Return Order screen is displayed. When the Cancel Return Order screen loads, the getCompleteOrderDetails API is called to retrieve the order modification permissions. If the CANCEL modification type is allowed for the order, the order can be canceled.

The getCompleteOrderLineList API is called to retrieve the order lines in the return order and important details such as invoice creation status and the quantity available to cancel, along with other details.
Note: For bundle products, the components are not displayed.
The getCompleteOrderLineList API retrieves the modification permissions at the order line level. If the CANCEL modification type is allowed for the order lines, individual order lines can be canceled.

The YFSGetOverallStatusUE user exit is called to display the OverallStatus value for each order line.

When the user chooses to cancel all available lines, the option to select individual order lines is disabled. However, when the user chooses to cancel specific order lines, the option to select individual order lines is enabled. If there are no order lines eligible for cancellation, an appropriate message is displayed.

The cancelOrder API is called to cancel a return order or its order lines. When all the order lines in a return order are canceled, the complete return order is canceled.

Note: The "stop delivery request" functionality is not supported for return order cancellation.

If the return order is associated with an exchange order and the user proceeds from the Cancel Return Order screen by click Next, the Cancel Exchange Order screen is displayed. The user can follow the same cancelation procedure as that of a sales order. The user can select the "Cancelation of Exchange not required" option to skip the cancellation of exchange order associated with the return order.

When all the return or exchange order lines are cancelled successfully, the Payment Confirmation screen is displayed. For more information about payment confirmation, see Confirm payments.

Implementation

The following section describes the rules that you must configure.

End-user impact

The user can cancel return or exchange orders even after the return orders are created.