How to use Cancel my order Smart Skill?
- Getting Started
- Bot Building
- Smart Agent Chat
- Conversation Design
-
Developer Guides
Code Step Integration Static Step Integration Shopify Integration SETU Integration Exotel Integration CIBIL integration Freshdesk KMS Integration PayU Integration Zendesk Guide Integration Twilio Integration Razorpay Integration LeadSquared Integration USU(Unymira) Integration Helo(VivaConnect) Integration Salesforce KMS Integration Stripe Integration PayPal Integration CleverTap Integration Fynd Integration HubSpot Integration Magento Integration WooCommerce Integration Microsoft Dynamics 365 Integration
- Deployment
- External Agent Tool Setup
- Analytics & Reporting
- Notifications
- Commerce Plus
- Troubleshooting Guides
- Release Notes
Table of Contents
Cancel my orderPurpose of the skillRequirementsLimitationsHow to make changes to the skill?How to analyze your skill post go-live?The Ecommerce Smart Skills are eligible to fulfill critical customer support queries. The Smart Skills are selected based on market research and user behavior of the retail vertical.
Cancel my order
When users are not satisfied with the placed order, they can cancel their order on the IVA by choosing an in-transit order.
- A user can initiate an order cancellation via the IVA. The IVA will first present the active orders eligible for the cancellation to the user. The user selects the order to be canceled.
- The IVA will then fulfill the cancellation request via a Cancel Order API.
You can refer to this template on Conversation Studio with the name ecommerce cancel my order.
Name of the skill on Conversation Studio - cancel order
Purpose of the skill:
- Allow user to place a return/replacement request on an ordered item
- The IVA will present the list of user's active orders
- The user can proceed by selecting a specific order for cancellation
- The IVA will ask the reason for the cancellation of the order from the user
- The IVA then creates a cancellation request for the selected order and sends the reference ID to the user.
What’s the design template going to look like?
The skill is designed to keep in mind quick resolution & added value to the user. Reach out to the Conversation Designer for access to the design lucidchart or PDF.
Requirements
- The smart skill assumes the end-user is authenticated already.
- If you wish to add an authentication flow within the bot, you can combine this with the OTP authentication Smart Skill.
- For users already logged into your platform (website, apps, etc), authentication can happen via custom signup.
- The client has 2 APIs already developed with them -
- Get orders via a unique User ID.
- Cancel order request via unique order ID, the user ID.
Limitations
This is a no-code smart skill if the APIs are developed to match the API structure added in the skill. If the business has additional rules or logic to be implemented for this use case, you will need to make changes accordingly (read more in the changes section). If the client wants to add further APIs, they will need to add more steps to this smart skill.
How to make changes to the skill?
For UI-related or bot response changes, refer to Generic smart skill.
API calls are made on 2 code steps in the skill
API 1 - Get orders via a unique user ID(collected during authentication)
Name of step - fetch order
Approach - In order to invoke the API, we need the user’s phone number (request parameter) which would have been collected during authentication.
The sequence of events in the code and where to change them-
Section 1 is used to pull all entities & variables from other steps.
Section 2 is used to make a call to get_order_items() function by passing a phone number as a function parameter which will return an API response that contains all user order(s) with a flag key to determine the order eligibility for cancellation.
Section 3 is used to handle API success cases and also checks whether the user has any order(s) or not and passes the corresponding response HSL to the output step which will, in turn, get displayed to the user.
Section 4 handles the API error/timeout cases.
Section 5 is used to send the final response to the output step
Section 6 contains the Sample API response and also API-related details which are required to invoke the API.
Example: API endpoint, payload, header, etc which can be configured as per the requirement.
Section 7 can be used to edit the design properties required to change the look and feel of the Carousel HSL like height and width.
Section 8 can be used to edit actionable properties related to carousels in order to define both the existence & action of CTAs(Call to action).
Section 9 can be used to edit details like title, sub_title, or descriptions of the carousel.
Section Name | Nature of Changes possible | API Contract |
Section 6 - Fetches all the user’s orders details |
|
Request:Phone number of the user { "phone_number": "8888456788" } Response: { "results": { "orderList": [ { "orderId": "", "orderAmount": “” , "orderDt": " ", "itemsName": "HealthKart", "orderImg": "" } "statusCode": 200 } |
Section 7 |
|
API 2 - Cancel order via a unique order ID (selected by the user from the carousel)
Name of step - cancel order
Approach - In order to invoke the API, we need the unique order id(request parameter) collected once the user confirms the order for which they want to request cancellation.
The sequence of events in the code and where to change them-
Section 1 is used to pull all entities & variables from other steps.
Section 2 is used to make API call by calling the cancel_myorder() function and passing order_id and order_cancel_reason as a function parameter.
Section 3 & 4 are used to handle API success cases and API error/timeout cases respectively.
Section 5 is used to send the final response to the output steps.
Section 6 contains the Sample API response and also API-related details which are required to invoke the API.
Example: API endpoint, payload, header, etc which can be configured as per the requirement.
Section 7 can be used to edit the design properties required to change the look and feel of the Carousel HSL like height and width.
Section 8 can be used to edit details like title, sub_title, or descriptions of the carousel.
Section Name | Nature of Changes possible | API Contract |
Section 6 - Cancel user order |
|
Request : { "order_id" : " ", "phone_number" : " ", "cancel_reason" : " " } Response : { "success": true, "message": "Order cancelled successfully", "ref_id": "1234" } |
How to analyze your skill post go-live?
Create smart funnels on our Intelligent Analytics to analyze how many users are able to reach the end of the chat flow and successfully able to cancel his/her order
- Smartfunnel suggestion: How many users were able to view their order(s) successfully
- Start point: cancel order start step
- Endpoints:
- All order
- Single order
- No order
- Smartfunnel suggestion: How many users were able to view their cancel their order successfully
- Start point: cancel order start step
- Endpoints:
- Final output