Workday Real Time Data to External System

Hello Community,

Today I wanted to showcase/discuss how our team uses Workday (our ERP) Business Process Notifications + Make (our IPaaS) to write real time status updates on Purchase Requisitions to ServiceNow (our ticketing system).

This is an interesting problem to solve because Workday’s Notification Web Service is limited to only provide updates upon completion of a business process. The other solution of using an outbound EIB on the business process to send data to a webhook also comes with a lot of drawbacks and maintenance. So the solution presented here of using Workday’s built in Notifications on a Business Process with Make’s Mailhook seems like an excellent solution.

The integration will make use of Workday’s Business Process Notifications, Make’s Mailhook (webhook but for emails), Workday Query Language, and an API call back to ServiceNow with the updated status.

See screenshot here for the Workday Notifications on the Requisition Event BP - of course this can be applied to other Business Processes.

See screenshot here for the make.com scenario with an overview of the automation/integrations. Next I will go into more detail on the steps to set up this kind of integration.

  1. In Make, create a custom mailhook trigger, and save the generated email address.
  2. In Workday, create the notifications for each step where you want to send an update in real time to another system. Ensure to use the Make mailhook address created in step 1. Note in my design the ‘subject’ is critical for sending the status and the reference id to Make, and I use a colon : to separate (which will be important in the next step).
  3. In Make, see screenshot below, we use some built in functions to parse out the Status and RQ Number.

  1. In Make, see screenshot below, we use a WQL call to get the ServiceNow System ID and the Purchase Order if the PO was issued. The key here is for future enhancements we have the connection built to add additional enrichments in this 1 module (Like who is the approval with now, or what type of step is the item on).

  1. In Make, using a simple switch statement we keep our code clean, and again we provide some flexibility for future enrichment/enhancements.

  1. In Make, our last step is to write the message back to the ServiceNow ticket. This provides real time status updates to the business (the requester, anyone on the watchlist, and the procurement team) - and it ensures as we move towards ServiceNow being the entry point for all things at our company, the information is readily available where our users are spending their time.

That’s it for this showcase, and I believe I have officially spent more time writing this post then it took me to actually build this integration!

I think the key here is now that we have this code and know how it works it will be very fast to copy and use this same approach across other parts of our business.

5 Likes