Simply put, certain functionalities in APPUiO Cloud are implemented in third party systems. APPUiO Cloud is intended to be provided by resellers. This influences how the architecture is abstracting components that aren’t part of APPUiO Cloud

APPUiO Cloud features a plugin-like architecture with defined APIs or behavioral contracts. Adapters (foreign systems) will implement such an API so that they can be integrated into APPUiO Cloud. Examples are an ERP system for invoicing or payment services.

See also Foreign components as Adapters requirement.

Example 1. Let us take invoicing as an example

Invoicing most likely will be the need to integrate with an ERP system. Is very unlikely that potential resellers use the same ERP. And even if they do, their configuration and processes are probably not the same. In consequence, we need an architecture where APPUiO Cloud is ERP-agnostic but allows easy integration.

In contrast, a payment service needs to be integrated for billing.