Skip to content
All work

Integration Architecture

ERP Integration Platform

Internal partner and employee platforms providing secure 24/7 web access to SAP Business One, with Saltbox-orchestrated workflows connecting ERP, HR, and finance systems.

01 The problem
Partners and staff needed 24/7 web access to an ERP that was never built to face the web.
02 The hard part
Protecting the system of record while integrations multiplied — each point-to-point connector a permanent liability for a small team.
03 The outcome
A hub-and-spoke platform. Portals read from projections, the ERP stays protected, and new integrations join in straight lines.

Context

Vision33 runs its business on SAP Business One. Partners and employees needed round-the-clock web access to ERP data — orders, billing, HR records — but the ERP itself is a transactional system of record, not a web backend. Meanwhile, each new system (HR, finance, third-party SaaS) was being wired to the ERP with its own point-to-point connector, and the data silos between them were growing.

Constraints

  • The ERP cannot absorb web-scale read traffic or be exposed directly to partner-facing applications.
  • Financial and HR data demand strict access control — partner and employee views are entirely different trust levels.
  • Integrations had to be maintainable by a small team: every new point-to-point connector added a permanent maintenance liability.

Architecture

SAP Business One ERP · system of record Saltbox integration workflows SQL Server operational store Cloud Functions Azure · AWS automation Partner Portal ASP.NET Core Employee Portal ASP.NET Core
Portals read from the operational store; Saltbox workflows and cloud functions keep it in sync with the ERP, HR, and finance systems.

The portals are ASP.NET Core applications that read from a SQL Server operational store rather than querying the ERP live. Saltbox workflows and Azure/AWS cloud functions own the synchronization: they move data between SAP Business One, HR, and finance systems, and keep the operational store current. The ERP stays the single system of record; everything else is a projection of it.

Decisions & Trade-offs

  • Integration hub over point-to-point connectors. Centralizing flows on Saltbox trades an added platform dependency for linear (not quadratic) growth in connections — and one place to monitor, retry, and audit every flow.
  • Replicate-and-serve over live ERP queries. Serving reads from the operational store accepts bounded staleness in exchange for 24/7 availability and full isolation of the ERP from web traffic. For the workflows involved, minutes-old data is indistinguishable from live.
  • Two portals, one platform. Partner and employee applications share the data layer and integration workflows but are separate apps — the trust boundary is enforced by architecture, not by role checks inside a shared codebase.

Impact

The platform eliminated the data silos between ERP, HR, and finance, gave partners and employees secure self-service access without touching the ERP directly, and became the foundation the automated billing engine was built on. It has been in continuous production use and active evolution for years — from .NET Framework origins to .NET Core and cloud deployment.

Next case · Financial Automation

Automated Billing & Tax Engine