You can ensure that a group of events, including the triggering action, are executed in order as a set using synchronous API Smart Events. This lets you think in terms of a larger task where synchronous API Smart Events are sub tasks. On failure of any sub task, nothing is saved (not even the triggering action), and the system issues an error message.

In addition to providing a grouping mechanism, this feature also eliminates the possibility of collision, concurrency, and overwriting between events since they are executed one after another.

How it works

When an action triggers a synchronous API Smart Event, the system attempts to execute all synchronous events that are part of the resulting chain of actions. This is done in alphabetical order according to the Smart Link IDs, and it occurs before the triggering action is committed. If the chain executes successfully, the triggering action is saved and any asynchronous Smart Events are then executed as well. If the chain has a failure, the triggering action is not saved, the synchronous API Smart Events are rolled back, and no asynchronous Smart Events (of any type) are executed.

You can see if your Smart Events were executed in your offline job history.

Creating synchronous API Smart Events

When creating API Smart Events in the Sage Intacct UI:

Best practices

Though powerful, synchronous API Smart Events add a level of complexity, so you should be thoughtful in your approach. For this reason, we recommend the following:

Provide feedback