ERP Adapter
The ERP Adapter is a crucial component of the Reeve platform, designed to facilitate seamless integration with existing Enterprise Resource Planning (ERP) systems. It acts as a bridge, enabling to retrieve financial data from various ERP systems and ensuring that this data can be processed and reported within the Reeve platform. There will be multiple adapters available, each tailored to specific ERP systems, allowing for flexibility and adaptability in integrating with different organisational setups.
Currently, there are two adapters available:
- Oracle Netsuite
- CSV import
Generally speaking the ERP adapter is an interface, which needs to be implemented for each specific Adapter. To add a new ERP adapter you need to take care of listening and process the following events:
- ScheduledIngestionEvent: This event is triggered to initiate the ingestion of data from the ERP system. The adapter should implement the logic to connect to the ERP system, retrieve the necessary financial data, and prepare it for processing.
- TransactionbatchCreatedEvent: This event is triggered when a batch of transactions is created. The adapter should start the sending of transactions chunks afterward.
The general flow of the ERP adapter is as follows:
Multiple ERP Adapters
When multiple ERP Adapters are available in the scope of a Reeve instance, the user can controll which one to use by setting the following payload:
{
"extractorType": "NETSUITE" // or "CSV" ,
...
}
The accounting core will accept all extraction and reconcilation request and send a Spring Event. The implementing ERP Adapter needs to take care to only process the relevant events. The new adapter can be added as a dependency to the Reeve application and it will be loaded in the Spring Context.
How to add a new ERP Adapter
To add a new ERP adapter, you need to implement the ErpAdapter
interface, which defines the methods required for data retrieval and processing.
This interface includes methods for connecting to the ERP system, retrieving financial data, and processing transactions.
The interface definition can be found here: Reeve ERP Adapter .