AUGForums.com

An Acumatica User Group

  • Forums
  • Podcast
  • Blog
  • Rolodex
  • Login
  • Start Here
  • Courses
  • Register

Push Notifications & Webhooks – xRP Summit 2020

June 17, 2020 by Tim Rodman

For the fourth year in a row, Acumatica held a virtual developer conference. Here are my notes from the Acumatica Mobile Framework session.

Acumatica Cloud xRP Summit 2020

I created separate blog posts for my notes from each session.


Day 1 (Wednesday, June 17, 2020)

09:00am – Welcome & Kick-off – Ajoy & Mark

11:30am – Acumatica Mobile Framework – Cesar Betances

12:00pm – Push Notifications & Webhooks – Marco Villaseñor (this post)

01:50pm – Acumatica Workflow Engine – Stan Lesin


Day 2 (Thursday, June 18, 2020)

12:30pm – Acumatica Developer Roadmap – Mike C. & Andrew


Now for Push Notifications and Web Hooks with Marco #CloudxRPSummit pic.twitter.com/DMYEOTtqPm

— Tim Rodman (@TimRodman) June 17, 2020

Webhooks and Push Notifications working together #CloudxRPSummit pic.twitter.com/eOXPfxZW0B

— Tim Rodman (@TimRodman) June 17, 2020

Why Marco is excited about Webhooks #CloudxRPSummit pic.twitter.com/EkK2IvmZSJ

— Tim Rodman (@TimRodman) June 17, 2020

Webhooks are new and improved in #Acumatica 2020 R1 #CloudxRPSummit pic.twitter.com/sK5pvuLCQN

— Tim Rodman (@TimRodman) June 17, 2020

Webhooks allow an external application to tell Acumatica when something happens rather than having to repeatedly ask on a recurring schedule. #CloudxRPSummit

— Tim Rodman (@TimRodman) June 17, 2020

Push Notifications send data in JSON format, allowing you to notify an external application when something happens in Acumatica #CloudxRPSummit pic.twitter.com/f6hQAiMgU7

— Tim Rodman (@TimRodman) June 17, 2020

Now time for some fun #CloudxRPSummit pic.twitter.com/2Tzs4g9wKt

— Tim Rodman (@TimRodman) June 17, 2020

Our example is to sync Non-Stock Items between Acumatica Instances #CloudxRPSummit pic.twitter.com/t9UcC7RJJW

— Tim Rodman (@TimRodman) June 17, 2020

Nice visual way of showing the two Acumatica Instances #CloudxRPSummit pic.twitter.com/ReHzQYsKc4

— Tim Rodman (@TimRodman) June 17, 2020

Before we do anything, looks like this #CloudxRPSummit pic.twitter.com/faGHMG05eL

— Tim Rodman (@TimRodman) June 17, 2020

Adding new item on left. Then it appears on the right. #CloudxRPSummit pic.twitter.com/rIVbwjqg2Y

— Tim Rodman (@TimRodman) June 17, 2020

How we push data on the left which uses a Generic Inquiry #CloudxRPSummit pic.twitter.com/9ico08WIXQ

— Tim Rodman (@TimRodman) June 17, 2020

How we receive something on the right #CloudxRPSummit pic.twitter.com/row9GoOvwM

— Tim Rodman (@TimRodman) June 17, 2020

Now looking at how to create a Webhook in Acumatica #CloudxRPSummit pic.twitter.com/axK1noJAFa

— Tim Rodman (@TimRodman) June 17, 2020

Seems like the Push Notification is easier to create than the Webhook. The Webhook has to understand the structure of the data that it's going to receive. #CloudxRPSummit pic.twitter.com/Ck1iOJJHDl

— Tim Rodman (@TimRodman) June 17, 2020

Here's an example of a Push Notification "payload" #CloudxRPSummit pic.twitter.com/qxPKfZoAhw

— Tim Rodman (@TimRodman) June 17, 2020

The ID and Timestamp are an important part of why this structure is stable. #CloudxRPSummit pic.twitter.com/LT4Of0osnt

— Tim Rodman (@TimRodman) June 17, 2020

Now for the Webhook, defined with some C# code in a Customization Project that implements the IWebhookHandler interface. This is what reads the information and executes the business logic that we want to see. #CloudxRPSummit pic.twitter.com/0wiwmqTbU7

— Tim Rodman (@TimRodman) June 17, 2020

Here's a more detailed Webhook example #CloudxRPSummit pic.twitter.com/3XVWobVftZ

— Tim Rodman (@TimRodman) June 17, 2020

When you register the Webhook, Acumatica generates a URL that any subscriber can send data to. Because of that, it's recommended to implement some kind of authorization like this. Here's a simple example that looks for "secretValue" in the payload. #CloudxRPSummit pic.twitter.com/ySifn8YXo6

— Tim Rodman (@TimRodman) June 17, 2020

This reads the JSON data and converts it, including adding a Note that it was added by the Webhook. #CloudxRPSummit pic.twitter.com/MZe4TUcfDa

— Tim Rodman (@TimRodman) June 17, 2020

All of that code is compiled into a DLL. Our DLL will appear in the "Implementation Class" field on the Webhooks screen. Then Acumatica gives us a URL. Notice the Webhook was also added to the Customization Project for easy publishing to another environment. #CloudxRPSummit pic.twitter.com/1ax1YVopmQ

— Tim Rodman (@TimRodman) June 17, 2020

Some final recommendations for Webhooks. Important to keep them as simple as possible because they run instantaneously in real-time. #CloudxRPSummit pic.twitter.com/qqKdAAofUE

— Tim Rodman (@TimRodman) June 17, 2020

An overview of the simpler part which is the Push Notification that sent data from the left-hand side to the Webhook on the right-hand side. #CloudxRPSummit pic.twitter.com/PSUC40l3XP

— Tim Rodman (@TimRodman) June 17, 2020

Note the "Header Name" and "Header Value" fields which is how we implemented simple authentication #CloudxRPSummit pic.twitter.com/Fpui5DeJxI

— Tim Rodman (@TimRodman) June 17, 2020

Here's the Generic Inquiry data where the Push Notification detects any updates/inserts to the data #CloudxRPSummit pic.twitter.com/bBiFK71GLc

— Tim Rodman (@TimRodman) June 17, 2020

Use the REQUEST HISTORY on the Webhooks screen to monitor Webhooks #CloudxRPSummit pic.twitter.com/n9Kyq68b3n

— Tim Rodman (@TimRodman) June 17, 2020

Use the Process Push Notifications screen to monitor Push Notifications #CloudxRPSummit pic.twitter.com/TUJLxaY7AT

— Tim Rodman (@TimRodman) June 17, 2020

Tips from Vladimir Perov for Push Notifications #CloudxRPSummit pic.twitter.com/NxqsHZ7tH5

— Tim Rodman (@TimRodman) June 17, 2020

Here's a nice summary of Webhooks and Push Notifications #CloudxRPSummit pic.twitter.com/dr0D8Wr2B4

— Tim Rodman (@TimRodman) June 17, 2020

Webhooks are a critical component of Acumatica as the critical "one version of the truth" ERP system in an organization. #CloudxRPSummit pic.twitter.com/GlCjabudtb

— Tim Rodman (@TimRodman) June 17, 2020

Filed Under: Acumatica Learning Tagged With: Acumatica, Acumatica Blog, Acumatica Learning, Acumatica Training, Acumatica xRP Summit 2020

By using this website, you agree to our Terms of Use (click here)

Online Members

Recent Blog Posts

  • EP 37: Jody Lorincz, IT Manager at MHR Brands, sharing his Acumatica Customer Story (Podcast) January 13, 2021
  • EP 36: What Motivates ERP Veteran Nicole Ronchetti To Participate in Acu-Connect (Podcast) January 8, 2021
  • Acumatica and Scanco WMS – A Cautionary Tale for ISVs January 6, 2021
  • EP 35: Ideas for AUGForums.com Live with Ryan Brown (Podcast) December 12, 2020
  • EP 34: Talking Acumatica eCommerce and the Next Normal for Distribution, Wholesale, and Manufacturing with Ted Stenstrom (Podcast) December 11, 2020
Acumatica Learning Resources

Recent Forum Posts

  • RE: Adding bill description on check stub

    @cfritsch Chip great modifications. Just a quick questi...

    By Jswartz, 7 hours ago

  • RE: Setting Up System Accounts with Individual Email Accounts for all Users

    Cory, Did your company end up making a decision o...

    By nsmith, 11 hours ago

  • Best way to Learn Microsoft PowerApps

    Hi All, I recently started PowerApps Training at Mind...

    By Steveskok, 23 hours ago

  • RE: Referencing @Me in CRActivity on 2020R2

    For example, to use @Me on an Opportunity, I join the C...

    By FamousMortimer, 2 days ago

  • Customer Master Export scenario Showing duplicate field values

    HI, Appreciate if any one could help me out on th...

    By Siva Katakam, 2 days ago

  • RE: Help automating creation of Employee Time Activities

    You don't need a RefNoteView to import task activities.

    By programfred, 2 days ago

  • RE: Adding Custom Pictures to Acumatica Login Screen - Picture Size

    @kingcarlos this is great thanks 👍 there is just one ...

    By daniel, 2 days ago

  • RE: Adding Branch/company name to a unit set report

    I use =@UnitText to pull the name from the descriptions...

    By Cerese Carlstrom, 2 days ago

  • RE: Removing an errant, overused credit

    Unfortunately, it wouldn't allow a payment against it, ...

    By canawrot, 3 days ago

Recent Tweets

Terms of Use & Disclaimers :: Privacy Policy

Copyright © 2021 · AUG Forums, LLC. All rights reserved. This website is not owned, affiliated with, or endorsed by Acumatica, Inc.