Yes, Mendix does documentation on integrations: https://docs.mendix.com/refguide/integration. Pretty complete, and with follow-up pages
They are actually being modest because there are even more techniques. ChatGpt has been so nice to list them all:
Mendix provides a range of techniques for creating integrations with external systems, allowing apps to consume and expose data and functionality. These techniques are broadly categorized into consuming external services (e.g., calling REST or SOAP APIs) and exposing services (so other systems can connect to your Mendix app). Here's an overview of the main techniques:
🔁 Consuming External Services
1. Call REST Services
Built-in REST activity in microflows.
Supports GET, POST, PUT, DELETE, custom headers, authentication (Basic, OAuth, etc.), and JSON/XML.
You can import/export mappings using JSON structures and generate domain models from them.
2. Call SOAP Web Services
Supports WSDL import to generate the domain model and service operations.
Less common nowadays compared to REST, but still supported.
3. Database Replication / ETL
Using the Database Connector module (from the Mendix Marketplace) to connect directly to external SQL databases.
Best suited for read-heavy use cases or syncing reference data.
4. Java Actions
Use custom Java code to integrate with SDKs, APIs, file systems, or services not natively supported by Mendix.
Offers maximum flexibility and performance.
5. External Entities (OData)
In Mendix 10+, you can consume OData services as external entities directly in your domain model.
No need to create data replication logic.
6. Webhooks / Event-Based APIs
Use REST endpoints or custom Java code to receive webhook payloads from external systems.
📤 Exposing Services
1. Expose REST Services
Easily create REST endpoints from microflows or nanoflows.
Use custom HTTP methods, headers, and authentication.
Define contracts using export mappings.
2. Expose OData Services
Make your Mendix data model available via OData v4, enabling other systems (like BI tools) to query data directly.
3. Expose SOAP Services
You can expose microflows as SOAP operations by defining them in a WSDL.
🔄 Event-Based / Messaging Integrations
1. Mendix Kafka Connector / MQTT Connector
Useful for high-volume, real-time integrations with IoT or event-driven architectures.
2. RabbitMQ / JMS Integration
Via Java or community modules.
📁 File-Based Integration
1. SFTP / FTP Modules
From the Marketplace (e.g., Mendix SFTP module).
Used for batch processing, exchanging CSV/XML files.
2. Excel / CSV Import/Export
Built-in functionality and Marketplace modules (e.g., ExcelImporter, CSVImporter).
📚 Common Integration Patterns
Polling: Periodically checking an external system (via scheduled events).
Push-based: External systems call Mendix endpoints (e.g., via webhook).
Data synchronization: Using intermediate staging tables or entities for data validation and transformation.
Would you like a visual overview or a more Mendix-specific best practices guide (e.g., when to use REST vs. OData in Enexis-type projects)?