This case study documents a systems integration and financial automation project carried out at a Portuguese B2B distribution SME, with 120 employees, annual revenue of 28 million euros and operations in Portugal, Spain and France. The company used 6 different systems that did not communicate with each other, resulting in duplicated data, frequent errors and operational delays that directly affected profitability.
The company and the problem
The company operated with a model typical of many growing SMEs: as it grew, it acquired software for different needs without an integration plan. The result was a fragmented ecosystem where the team acted as "human middleware", copying data between systems several times a day.
The concrete problems:
- Delayed invoicing: on average, 4 to 7 business days passed between delivery confirmation and invoice issuance. With 800 to 1,200 invoices per month, this represented a systematic delay in revenue.
- Manual bank reconciliation: 3 bank accounts in 3 countries, with 2,000 to 3,000 transactions per month. One person spent 3 days a week on reconciliation.
- Inconsistent customer data: the same customer had different data in the CRM, the ERP and the invoicing system. Changes to address, NIF (Portuguese tax ID) or commercial terms had to be updated in 3 places.
- Manual reporting: the monthly management report took 5 days to compile because it required gathering data from multiple systems.
The systems ecosystem
| System | Function | Relevant data |
|---|---|---|
| Primavera ERP | Accounting, stock, purchasing | Items, stock, accounting entries |
| HubSpot CRM | Sales management, leads, opportunities | Customers, opportunities, sales history |
| InvoiceXpress | Certified invoicing | Invoices, credit notes, receipts |
| In-house WMS | Warehouse management | Locations, picking, shipments |
| B2B e-commerce platform | Customers' online orders | Orders, cart, catalogue |
| Excel | Reporting, reconciliation, ad-hoc analysis | Manually consolidated data |
None of these systems communicated directly with the others. The team of 4 people in the finance and administrative area spent more than 50 percent of their time transferring data between systems.
Solution architecture
The solution designed was based on three principles:
- Central data hub: instead of integrating each system with all the others (which would create 15 point-to-point integrations), a central hub was built to receive and distribute data. Each system has a single integration with the hub (see integration architecture).
- Single source of truth: for each type of data, the master system was defined. Customers: CRM. Items and stock: ERP. Invoices: invoicing system. Changes made in the master propagate automatically to the other systems.
- Events as triggers: every relevant action (new order, delivery confirmed, payment received) generates an event that automatically triggers the following processes.
Automations implemented
Order-to-invoice flow:
- The customer places an order on the B2B platform, or the salesperson logs it in the CRM.
- The order enters the ERP and the WMS automatically.
- The WMS generates the picking list and, after shipment, confirms delivery.
- Delivery confirmation automatically generates the invoice in InvoiceXpress and sends it to the customer.
- The invoice is automatically recorded in Primavera's accounting.
Automatic bank reconciliation:
- Bank statements imported automatically via API from the 3 banks.
- The system cross-references transactions with issued invoices using reference, amount and NIF.
- Automatic matches (85 percent of cases) are posted with no intervention.
- Ambiguous cases (15 percent) are presented to the user with a suggested match (see financial automation).
Automatic collections:
- Invoices overdue by more than 3 days generate an automatic reminder email to the customer.
- Overdue by more than 15 days: a second reminder with a more formal tone.
- Overdue by more than 30 days: alert to the responsible salesperson and automatic blocking of new orders (see collections management).
Results and metrics
After 4 months of operation with the systems integrated:
- Invoicing time: from 4-7 days after delivery to same-day invoicing. Direct impact on cash flow.
- Bank reconciliation: from 3 days/week to 2 hours/week (85% automatic).
- DSO: from 58 days to 39 days, thanks to immediate invoicing and automatic collections.
- Data errors: 95% reduction in transcription errors between systems.
- Management reporting: from 5 days of compilation to real-time availability via dashboard.
- FTE saved: 1.8 FTE redeployed from transcription tasks to analysis and customer management.
The total project investment was 95,000 euros (including middleware licensing, development and training), with an estimated annual return of 180,000 euros. Payback of 6 months.
Recommendations for similar projects
- Do a complete inventory: before starting, list all the systems, all the data flows and all the manual transcription points. Most companies discover more systems than they thought they had.
- Define the master for each piece of data: the question "what is the source of truth for this data?" must be answered before any integration.
- Start with the flow that has the greatest financial impact: in this case, the order-to-invoice flow. The impact on cash flow justified the entire investment.
- Plan for exceptions: 80 percent of cases follow the normal flow. The 20 percent of exceptions consume 80 percent of the design time. Do not ignore them.
- Monitor continuously: after go-live, monitor automatic matching rates, errors and exceptions. Adjust rules based on real data (see how to prepare your company).