SAP Business One · Integration
SAP Business One® integration, built to be watched.
We connect the SAP Business One® solution to the systems around it: eCommerce, sales apps, warehouse tools, websites and third-party APIs, using the SAP Business One SDK, the Service Layer and purpose-built middleware.
What we connect to SAP Business One
The supported doors
Four ways in, and one way that will hurt you
Most integration problems trace back to somebody picking the wrong interface. Here is what each one is actually for.
Service Layer
REST · OData
A REST interface over the OData protocol, running as a service on the server. It speaks HTTP and JSON, which means almost anything can talk to it.
Strengths
- Platform independent
- Stateless, so it scales across processes
- Good fit for web and mobile
- The interface SAP invests in
Limits
- Not every add-on object is exposed
- Some older operations still expect the DI API
When we use it. Our default for anything new: portals, mobile apps, integrations to other systems.
The layer between
Why we never connect two systems directly
A point-to-point connection works until it does not. When it breaks, it breaks silently, and nobody finds out until a customer calls.
- 01
Logs every transaction
What was sent, what came back, and when. Not a success flag: the actual payload, so a dispute six weeks later is answerable.
- 02
Retries sensibly
Transient failures back off and retry. Permanent failures stop and raise, rather than retrying forever and filling a queue nobody watches.
- 03
Alerts a person
A human is told when something needs a decision, with enough context to act. Silent failure is the expensive kind.
- 04
Transforms in one place
Field mappings live in the layer, not scattered through both systems, so a change is one change.
- 05
Isolates change
Swapping a carrier or a payment provider touches the layer, not SAP Business One and not the storefront.
- 06
Can be watched
A screen that shows what moved, what did not and what is queued. Integrations nobody can see are integrations nobody trusts.
Before any code
The data contract
A one-page document settled before development starts. It prevents most of the arguments that surface after go-live.
Every line of it is a question somebody will ask eventually. Answering them in advance costs an hour. Answering them in production costs a week.
- 01
Ownership
Which system is the source of truth for each record. Items and prices are owned by SAP Business One; web content is owned by the portal.
- 02
Triggers
What causes data to move, and in which direction.
- 03
Conflicts
What happens when both sides changed the same record. Decided in advance, not discovered in production.
- 04
Failure
What the user sees, what gets logged, and who is alerted.
- 05
Identity
How records are matched across systems, and what happens when a match is missing.
- 06
Volume
What the interface is expected to carry, and what happens on the day it carries ten times that.
Surviving upgrades
The reason any of this discipline matters
SAP Business One gets upgraded. Integrations built on supported interfaces carry across with minor changes. Integrations that write to tables directly, rely on undocumented behaviour or hard-code version-specific details break, and they break at the worst moment, because upgrades are scheduled for quiet periods and quiet periods are when nobody is watching.
- Integrations are tested against the new version in a test company before your environment moves.
- A runbook exists for each interface, so anyone on the team can operate it.
- Version-specific behaviour is isolated in the layer, not spread through the integration.
What we connect
The systems on the other end
Our own applications, and whatever else you already run.
- CoreSAP Business OneThe system of record everything else reads from and writes to.Overview
- Layer 01B2B eCommerceCustomers who order themselvesA portal with their pricing, live stock and account history. Orders arrive as SAP Business One sales documents.See it
- Layer 02Sales Rep AppCustomers who need a visitReps carry pricing and stock on the route, work with no signal, and sync orders when they reconnect.See it
- Layer 03Inventory CountingMaking the stock figure trueBarcode counts and cycle counts, with variances reviewed before anything posts to the ledger.See it
- Layer 04Price Label PrintingThe shelf edgeLabels generated from the same item and price data, so what is on the shelf matches the invoice.See it
Questions
About integration
Next step
Talk through your SAP Business One project with someone who will actually work on it.
A short conversation about where you are today, what is not working and whether SAP Business One and our team are the right fit. No slide deck.