web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Finance | Project Operations, Human Resources, ...
Suggested Answer

FnO Business events; what is the correct use?

(2) ShareShare
ReportReport
Posted on by 6
Hi all,
 
I am looking at integration patterns for Finance and Operations. I once saw people use business events to trigger external systems to - for example - execute an API call to extract data and load it in an external system. I was just reading the documentation about these business events, and it states:
 
'If your intent is to transfer data to a recipient and, in effect, realize a data export scenario, you don't have a good use case for business events. In fact, the use of business events for data transfer scenarios is a misuse of the business events framework. Such scenarios must continue to use data export mechanisms that are already available in data management.' (Business events developer documentation - Finance & Operations | Dynamics 365 | Microsoft Learn)
 
This - for me - seems that using business events is not the way to go, but what would be? The way I am looking at right now is creating a (python) script that extracts, transforms and loads the data in an external system; but this script has to be executed sometime, for example when data is changed. This could be achieved with business events, but according to the documentation is not the right use case.
 
What are my possibilities? Is my way of thinking correct or do I have to go and use X++ for example, or 'misuse' the business events, or is this an actual correct use, since I am only sending a message to an external system (that extracts the data form FnO)?
 
Thankyou in advance.
I have the same question (0)
  • Suggested answer
    Layan Jwei Profile Picture
    8,112 Super User 2025 Season 2 on at
    Hi Pinjata,
     
    Business events are used to send notifications to an external system about an event that happened in FO, so the payload should be small otherwise it will slow the system.
     
    So if u want to return alot of data, then yes business events is not an option, as here you need to export the data so you need to look for sth else.
     
    But you can combine both, i mean u can use business events to notify the external system that the customer got created for example (by sending maybe customer account, party number and dataAreaId in the payload), then the other system can call odata or custom service to retrieve more information about the customer. So it's like you are notifying the system to request more data from F&O
     
    Choosing the correct integration methods depends on alot of factors like if u want the data in real time or not, how frequent it will be called and if volume of data is high..etc
     
    For example odata is not good for high volume.
     
    Thanks,
    Layan Jweihan
    Please mark this answer as "Verified" if it solved your issue. In order to help others who will face a similar issue in the future
  • Pinjata76 Profile Picture
    6 on at
    Hi Layan,
     
    Thank you for your answer, this answers most of my questions. However, some questions still occur:
    - Lets say I need (close to) live data for a limited amount of entities. I'd use the business events in the way you described; for simple messages to another system that then asks more data from FnO. Business events for both create and update are configured. On average, 10-20 calls a day will be made to the external system (and using OData to FnO). Would this be suitable?
     
    - If I need the current existing data in the external system as well. Since there are only a few (about 5) entities I need, would it be suitable to 'misuse' OData for this initial write?
     
    - In case above is not the case; am I correct i'd need to use Data Projects?
     
    Thank you again for your answer!
  • Suggested answer
    Layan Jwei Profile Picture
    8,112 Super User 2025 Season 2 on at
    Hi Pinjata,

    So are you saying that you are expecting around 20 business events a day to be triggered out of FO? and 20 calls a day to FO to get more data?
    but if you want to do the same for 5 entities, which now means 100 BEs a day in addition to 100 calls to FO a day?
    if yes, then i think it would be still suitable as you are not killing the system alot. But the question now, how much data is going to be returned by odata in each call? if the volume is high like maybe 100K records, then that's not an option as I mentioned before that odata performance is poor. In this case you need another integration method like Batch Data APIs and DMF. Also if it's not required for the data to reach the other system near real time, then you can also consider not using business events.

    You can check this link for other integration methods
    https://learn.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/data-entities/integration-overview

    Thanks,
    Layan Jweihan
    Please mark this answer as "Verified" if it solved your issue. In order to help others who will face a similar issue in the future

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > Finance | Project Operations, Human Resources, AX, GP, SL

#1
Martin Dráb Profile Picture

Martin Dráb 611 Most Valuable Professional

#2
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 529 Super User 2025 Season 2

#3
Sohaib Cheema Profile Picture

Sohaib Cheema 285 User Group Leader

Last 30 days Overall leaderboard

Product updates

Dynamics 365 release plans