Hello Adrian Żyła,
The best way to find out is to try it out in small, in use case like yours i would advice to use OData this is cleanest way to do it and does a lot of the synchronisation by itself.
With mendix you can easily consume and publish odata, so i really think this is the way to go for you.
Hope this helps,
Good luck
We are in process of building our solution using multi-app architecture. AS of now , we are successful in running few apps and implemented different strategies , depending on the situations.
OData as external entities (data hub) allows you to expose data from one app to another without replicating the data in full. You essentially get a "view" or "read-only" access to the shared entity in the other app. You can treat them as regular entities in the domain model and build pages , have associations ,etc. ( there are certain restrictions though on the owners) . It should be manageable. This is pretty simple to do.
We use REST API , in certain situations.
OData is internally as API call .
When dealing with high-volume data (such as in batch processes), making API calls for each record or set of data can be inefficient. Replicate the customer info in the app that you are running the batch process. By syncing shared data into the app running the batch process before initiating the batch logic, you can avoid the performance hit of frequent API calls.
When you split into multiple apps , try to limit dependency across apps.