SAP Business One API integration.
What we build.
Service Layer integrations
REST/OData integrations that read and create business partners, items, orders, deliveries, invoices and payments in SAP Business One over HTTP, with sessions, paging and batch requests handled properly.
DI API integrations
Where the Service Layer does not cover an object or a function, a .NET service on a Windows machine with the SAP client and DI API installed posts the document, with SAP’s own validation.
Banks
Bank statement files imported and matched to open invoices, and payment files exported from SAP Business One in the format your bank accepts, with the result of each file recorded.
Logistics, 3PL and couriers
Delivery notes and shipment requests sent to a logistics provider or courier, tracking numbers and status written back, and stock movements from a 3PL warehouse reconciled with SAP.
Marketplaces and e-commerce
Orders, stock, prices and shipment status exchanged between SAP Business One and online shops or marketplaces, with the external order number kept on the SAP document.
CRMs and other systems
Customers, quotations, orders and balances synchronised with a CRM, a field-service tool, a BI or reporting platform, or any system that offers an API, a file export or a database view.
Payment gateways
Payments confirmed by a gateway recorded in SAP Business One as incoming payments against the invoice; card details stay on the gateway’s side.
Monitoring and error handling
A log of every call, an error queue for failed messages with controlled retries, and an alert when something needs a person.
See also: SAP Business One e-invoicing integration · WhatsApp AI agents connected to your ERP · MCP server development for SAP Business One
Service Layer or DI API: which one fits?
The Service Layer is SAP’s REST (OData) API for SAP Business One. It is plain HTTP, so any system that can call a web API can use it, and it runs on the SAP server, so nothing has to be installed on the machine that calls it. It is our first choice for new integrations.
The DI API is a COM library that must be installed, with the SAP Business One client, on a Windows machine, and it is used from .NET code. We choose it where the Service Layer does not cover an object or a function, or where an existing add-on already uses it. Both write documents with SAP’s own validation, and both work on SQL Server and SAP HANA.
Built for teams like yours.
Companies re-keying orders, shipments or bank lines between SAP Business One and another system
Companies adding a new sales channel, logistics provider or payment gateway to SAP Business One
SAP Business One partners that need a team to build and support an integration for a customer
How a project runs.
- Scoping: a free discovery call, then a written specification: which systems talk to each other, which documents and fields move in which direction, how often, and what happens when a message fails, with a fixed price per phase.
- Interface design: field mapping between SAP Business One and the other system, the unique external ID stored in a user-defined field, and the rules for duplicates, partial failures and changes made on both sides.
- Build with weekly demos: the integration runs against test data and a copy of your company database, so you correct the flow early.
- Testing: normal cases and failures: the other system is down, a message arrives twice, an item or partner does not exist, a period is locked.
- Documentation: interface specification, configuration, log and error-queue handling, and how to deploy updates.
- Go-live: deployment on your server or cloud, a controlled first run on live data, then roll-out.
- Support: 3 months of free support after go-live: fixes and small adjustments, then optional monthly support.
How do you stop duplicate documents in SAP Business One?
Every document that comes from another system carries that system’s unique ID, for example the order number, stored in a user-defined field on the SAP document. Before the integration creates anything, it checks whether a document with that ID already exists, so a message that arrives twice, or a job that is run again after a failure, never creates a second invoice or order.
What happens when a call fails?
The message goes to an error queue with the reason, and is retried in a controlled way. Temporary problems, such as the other system being offline or an expired Service Layer session, are retried; business errors, such as a missing item or a locked period, wait in the queue until a person fixes the data. Every call is logged, so you can see what was sent, what SAP answered and why something failed.
How does the integration read data from SAP Business One?
Through the Service Layer, using entity requests with $select and $filter for simple reads, and saved SQL queries called through the SQLQueries service for views that join several tables. Reads can use SQL Server or SAP HANA queries. Writes never go directly into SAP tables with SQL, because that skips SAP’s validation and can corrupt data.
Who owns the integration code?
You do. The client owns the source code, database and documentation after each paid phase. You can host and maintain the integration yourself, hand it to another developer, or ask us to keep supporting it.
What support do you get after go-live?
Every integration includes 3 months of free post-go-live support for fixes and small adjustments, then optional monthly support. If you need a defined response time, ask for it in the proposal so it is written into the support terms.
Where we have done this.
WhatsApp AI sales and purchasing agent tied to ERP
An AI agent on WhatsApp that replies to customers, sends invoices and statements from the ERP, takes orders and negotiates purchases within predefined limits.
Read case study →Saudi ArabiaZATCA Phase 2 bridge for SAP Business One
A ready-to-install bridge that clears and reports SAP Business One invoices to ZATCA, with a friendly web interface on top of a background sync service.
Read case study →Related guides: SAP B1 Service Layer guide (login, $filter, paging) · Service Layer SQLQueries errors and fixes · DI API error codes (-5002, -1029, -2035) · SBO_SP_TransactionNotification examples (SQL Server and HANA)
Free tools: Service Layer request builder · OCRD table (business partners) · ORDR table (sales orders) · ODLN table (deliveries) · ORCT table (incoming payments) · OVPM table (outgoing payments)
SAP Business One API integration: common questions
Should we use the Service Layer or the DI API for our integration?
Usually the Service Layer: it is REST over HTTP, needs nothing installed on the calling machine and suits web and cloud systems. The DI API is a COM library that needs the SAP client on a Windows machine; we use it where the Service Layer does not cover an object or a function. Both validate documents as SAP Business One does, and we help you choose in the specification.
Does the integration work on both SQL Server and SAP HANA?
Yes. The Service Layer and the DI API behave the same on both. Where an integration reads data through saved SQL queries, we write them for your database, SQL Server or HANA, and test them on a copy of your company.
How do you prevent duplicate invoices and orders?
Each document carries the unique ID of the other system, stored in a user-defined field, and the integration checks for it before creating anything. A message that arrives twice, or a job that is repeated after a failure, finds the existing document and does not create another.
Do you write directly into the SAP Business One database?
No. Documents and master data are created and updated only through the Service Layer or the DI API, so SAP’s own validation, numbering and posting logic always apply. Direct SQL is used for reading, never for writing to SAP tables.
What happens if the other system or SAP is offline?
Failed messages go to an error queue with the reason and are retried in a controlled way; nothing is lost and nothing is posted twice. Business errors, such as a missing item, wait for a person to fix the data, and the log shows what was sent and what SAP answered.
Is Kodenova an SAP partner?
No. Kodenova is independent and works alongside your SAP partner. Your partner keeps the licences and the SAP Business One system; we specify, build, test and support the integration. How API access relates to your SAP licences depends on your SAP agreement, so check it with your partner.
SAP Business One development
Any add-on your business needs: plant maintenance, payroll, approvals, warehouse, integrations and reports for SAP Business One.
WhatsApp automationWhatsApp AI agents
AI sales, support and purchasing agents on WhatsApp text and voice, connected to your ERP and CRM.
E-invoicingE-invoicing integration
Government e-invoicing connected directly to SAP Business One and ERPs: ZATCA, SRI, FEL, DTE and Panama FE.
Model Context ProtocolMCP server development
Connect ChatGPT, Claude and other AI assistants to your ERP, database or internal tools through the Model Context Protocol.
SAP Business One e-commerceSAP Business One e-commerce integration
Shopify, WooCommerce and Magento connected to SAP Business One: items, stock, prices, orders, customers, invoices, payments and fulfilment status.
SAP Business One supportSAP Business One development support and retainer
After the 3 free months: a monthly retainer for bug fixes, SAP B1 upgrade testing, HANA compatibility, small changes, new reports and integration monitoring.
Ready to get started?
Tell us what you need. You get a clear technical answer, a fixed scope and a price, usually within 24 hours.
