Enhancing Customer Experience: Streamlining Orders With Custom Email Notifications in IBM Cloud
IBM Cloud allows customers to simplify their order management process by using custom email notifications through Event Notifications.
Join the DZone community and get the full member experience.
Join For FreeLet's consider the operations manager of a thriving online business specializing in handmade crafts. This operations manager understood the importance of catering to their loyal customer base, some of whom resided in different time zones. In their quest to provide exceptional service, they faced a challenge—how to ensure that customers could place orders as soon as new shipments of their artisanal products arrived.
The answer to this predicament came in the form of the Custom Email Destination feature within IBM Cloud Event Notifications. With this innovative tool at their disposal, the business was able to establish a dedicated email address that would automatically provide notifications whenever a fresh shipment of their crafts became available for purchase. This approach eliminated the need for customers to constantly monitor the business's website or social media channels for updates.
Picture this scenario—every Monday at 9 AM EST, the business receives a new shipment of handmade soaps. To facilitate seamless ordering, they created the email address order@myhandmadesoapshop.com. As soon as a shipment arrived and was ready for purchase, IBM Cloud Event Notifications would promptly send an email from this custom address, complete with comprehensive details about the new shipment, including pricing and product availability.
Customers could then effortlessly respond to the email, specifying their order details, such as quantity and desired items. It was a hassle-free process, ensuring they could place orders promptly without delay.
By implementing the Custom Email Destination feature in IBM Cloud Event Notifications, the business transformed the way its customers stayed informed about new shipments. Gone were the days of waiting for updates to be posted online. Instead, customers received timely email notifications, allowing them to place orders instantly via this convenient channel. It was a win-win situation, saving both the business and its customers valuable time.
Let’s look at how to set up and use the Custom Email Destination feature in IBM Cloud Event Notifications.
Step 1: Create an IBM Cloud Event Notifications Service Instance
- Log in to your IBM Cloud account.
- In the IBM Cloud catalog, search Event Notifications > Event Notifications.
- Select a Region from the list of supported regions and Select a pricing plan.
- Provide a Service name.
- Select a resource group.
- Click Create.
Step 2: Create a Custom API Source
- Navigate to the Source section within the created event notification instance.
- Click on Add > API Source.
- Provide a name and description for the API source.
- Click on Save.
Step 3: Create an IBM Cloud Event Notifications Destination
In this step, you will make sure that a custom email destination exists where notifications will be forwarded.
- In the Event Notifications UI, go to Destinations.
- Create a destination
- From the navigation, click Destinations > Add.
- Provide a name for your destination (e.g., myhandmadesoapshop).
- Select Custom Email as the destination type.
- Add the domain name (e.g., myhandmadesoapshop.com).
- Click Add.
Step 4: Configuring a Custom Email Destination
You can configure a custom email destination in the Destinations tab. As part of the configuration, enter the domain name to be used for sending emails.
Custom Domain Name Verification
After you create the destination with your domain name, make sure it's validated for the right ownership. This will prevent misuse of your domain and keep away from bad actors. To verify your custom domain name, follow these steps:
- Select the configure overflow menu for the destination you want to verify.
- Create a Sender Policy Framework (SPF), which is used to authenticate the sender of an email. SPF specifies the mail servers that are allowed to send email to your domain.
- Open your DNS hosting provider for the domain name configured.
- Create a new TXT record with your domain name registerer with the name and value provided in the configure screen for SPF.
- Create DomainKeys Identified Mail (DKIM), which allows an organization to take responsibility for transmitting a message by signing it. DKIM allows the receiver to check that the email that claimed to have come from a specific domain is authorized by the owner of that domain.
- Open your DNS hosting provider for the domain name configured.
- Create a new TXT record with your domain name registerer with the name and value provided in the configure screen for DKIM.
- Save the TXT records.
- On the destination verify screen, click on the Verify buttons for both SPF and DKIM.
Note: Some of the common verification issues could be that the domain name is spelled incorrectly or the DNS record for the domain is not updated correctly. Verify if the SPF/DKIM values are copied correctly. The DNS propagation may take up to 72 hours to be updated across the internet.
Step 5: Create an IBM Cloud Event Notifications topic
Next, you will define an IBM Cloud Event Notifications topic that will receive an event from IBM Cloud Secrets Manager.
- Click Topics
- Click Create. The Topic details panels will open.
- In the Topic details, enter the following:
- Enter the Name for your topic (e.g., myhandmadesoapshop orders).
- For Source, select the IBM Cloud Event Notifications source, which is named as ArtisanAqua Soaps in this example.
- Click Add a condition. (if you do not click Add a condition before you click Create, the topic will be created with no conditions associated with it.)
- Click Create. Your topic will be displayed in the Topics list.
Step 6: Create an IBM Cloud Event Notifications Email Subscription
In this step, you will configure who will receive an Email alert when a notification is processed.
- Click Subscriptions
- Click Create. The Create a Subscription panel opens.
- In the Create a subscription panel, enter the following:
- Enter the Name for your subscription (e.g., myhandmadesoapshopSubscription).
- For Topic, select the topic you created (e.g., myhandmadesoapshop orders).
- For Destination, select myhandmadesoapshop.
- For Recipients, enter a valid email address (e.g., MyEmail@MyCompany.com).
- Click Create. Your subscription will be added to the Subscriptions list.
You can configure your own template for custom email invitations and notifications.
The following is a custom email invitation template:
<html>
<head>
<title>
IBM Event Notifications
</title>
</head>
<body>
<p>
Hello! Invitation template
</p>
<table>
<tbody>
<tr>
<td>
Hello, here's the invitation link: {{ ibmen_invitation }}
</td>
</tr>
</tbody>
</table>
</body>
</html>
Custom email notification template:
<html lang="en">
<head>
</head>
<body>
<div class="container">
<h1>
New Product Information
</h1>
<p>
Hello {{ibmenreferer personalization ibmenmailto 'name'}}, Good {{data.greet}}
</p>
<div class="product-info">
<h2>
{{data.name}}
</h2>
<p>
Price: ${{data.price}}
</p>
<p>
Description: {{ibmendefaultshort}}
</p>
<p>
Rating: {{data.rating}}
</p>
</div>
<p>
Thank you for your interest in our new product!
</p>
<p>
Best regards,
</p>
<p>
IBM Cloud
</p>
<h5>
If you don't wish to receive these messages click here:{{ibmen_unsubscription}}
</h5>
</div>
</body>
</html>
Step 7: Send a Test Email to the Custom Email Destination
Send notifications body from the instance. For more information about Event Notifications payloads, see here.
Example request:
curl -X POST — location — header “Authorization: Bearer {iam_token}” — header “Content-Type: application/json” “{base_url}/v1/instances/{instance_id}/notifications”
Example JSON body for sending notifications to various destinations:
{
"id": "b2198eb8-04b1-48ec-a78c-ee87694dd845",
"time": "06/06/2022, 14:23:01",
"type": "com.ibm.cloud.order.alert:update",
"message_text": "Hi, Welcome from the IBM Cloud - Event Notifications service!",
"source": "apisource/saopshop",
"specversion": "1.0",
"ibmensourceid": "d6f08a53-05f6-465f-903e-03db3fa91b64:api",
"data": {
"greet": "Afternoon",
"create_time": "2022-07-06T09:19:45.213429645Z",
"create_timestamp": 1657099185,
"issuer": "IBM Cloud Event Notifications",
"issuer_url": "https://cloud.ibm.com,
"long_description": "Success! Your order is placed.",
"payload_type": "test",
"reported_by": {
"id": "compliance",
"title": "IBM Cloud Event Notifications",
"url": "https://cloud.ibm.com/"
},
"severity": "LOW",
"short_description": "Success! Your order is placed.",
"transaction_id": "e539778e-4915-4586-b4c9-48e44af5c010",
"name": "IBM Cloud Event Notifications",
"price": "100",
"rating": "4.9"
},
"datacontenttype": "application/json",
"ibmendefaultlong": "This is a original long message",
"ibmendefaultshort": "IBM Cloud Event Notifications is a routing service that provides information about critical
events in your IBM Cloud account",
"ibmenfcmbody": "{\"notification\":{\"title\":\"Hello Pradeep, Your Order summary - Soap1 ($20)
and Soap2 ($11) is on its way!\",\"time_to_live\":100}}",
"ibmenpushto": "{\"platforms\":[\"push_chrome\"]}",
"ibmenmailto": "[\"pgopalgo@myhandmadesoapshop.com\"]",
"personalization": {
"pgopalgo@myhandmadesoapshop.com": {
"name": "Pradeep"
}
}
}
Get Started With IBM Cloud Event Notifications
In summary, Custom Email Destination in IBM Cloud Event Notifications enabled the business to establish a seamless communication channel with their customers. This translated into faster order processing times and heightened customer satisfaction. It's a testament to their commitment to enhancing the customer experience and streamlining operations.
This case study may inspire other businesses to explore similar solutions for improving customer engagement and satisfaction.
Published at DZone with permission of Pradeep Gopalgowda. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments