How it works

SAP Business One (HANA, on-premise) ⇄ Odoo HR & Payroll
Demo Book a demo

Your sales, purchases and expenses stay in SAP Business One. Your people, salaries and payroll stay in Odoo. The Bridge copies the finance numbers into Odoo every 15 minutes, so HR and management see both on one dashboard. Once a month it sends the payroll back to SAP as a Journal Voucher, which waits for your accountant to check and post.

YOUR OFFICE · on-premise CLOUD · Odoo SAP Business One HANA database · office server firewall: no ports opened Bridge agent read-only HANA user outbound HTTPS only every 15 minutes 🔒 Odoo HR · Payroll · Dashboards finance data → Odoo payroll → SAP (unposted)
One way: SAP → Odoo (sales, purchases, expenses, payments, cost centres)Only the payroll Journal Voucher goes back, and it waits for approval in SAP
1

Read from SAP, safely

A small agent in your office reads SAP B1 with a read-only database user. It only sends data out over HTTPS, so no port is opened on your firewall and nothing can change SAP from outside.

2

Show it in Odoo

Sales, purchases, expenses and payments arrive in Odoo every 15 minutes, matched to your employees and departments. HR and management see cost and revenue side by side.

3

Payroll back, for approval

After payroll is approved in Odoo, the Bridge creates one Journal Voucher in SAP. It is not posted: finance is notified, the accountant checks it, and clicks Post.

Last sync2 min agoAll good
Records synced today0from SAP to Odoo
Data sinceJan 2020full history loaded once
Changes made in SAP by the Bridge0only Journal Vouchers, unposted

Running SAP for finance and Odoo for HR?

We connect them without changing how your finance team works.

Book a free 20-minute call

Every sync is logged. If something fails, for example an employee in SAP has no match in Odoo, it shows here with a clear reason and a retry button. Nothing is skipped silently.

StatusRunningnext sync in 14:52
Synced today4,862records
Average sync time38 sfor 15 minutes of changes
Needs attention1mapping missing

What is synced

From SAPTo OdooTodayLastStatus

Live log

Set once, used every sync. Each SAP item is linked to its place in Odoo. Hover over a line to see the link. Missing links are shown in the Sync monitor, never guessed.

SAP Business One

Odoo

These dashboards live in Odoo. The SAP numbers come through the Bridge; the Odoo numbers come from HR and payroll. Together they answer questions neither system can answer alone.

Payroll cost as % of sales Odoo÷SAP0
Sales per employee (month) SAP÷Odoo0
Sales commission due SAP→Payroll0added to this month's payroll
Expenses per employee SAP÷Odoo0

Sales vs payroll cost, last 6 months

Sales (SAP)Payroll cost (Odoo)

Sales per department vs headcount

Department = SAP cost centre, linked to the Odoo department.

Top salespeople this month and their commission

Employee (Odoo)SAP sales employeeSales (SAP)Commission

Commission rule in Odoo: 2% above target. Sales come from SAP invoices minus credit notes.

Expenses by department vs headcount

DepartmentStaffExpenses (SAP)Per person

Expenses = SAP purchase invoices and journal entries on expense accounts, by cost centre.

Payroll is calculated and approved in Odoo. The Bridge then creates one Journal Voucher in SAP with the totals by cost centre. A Journal Voucher in SAP is not posted: it waits. Finance gets a notice, the accountant checks it and clicks Post. Only then does it become a journal entry in the books.

🧮
Payroll approvedOdoo · Sep 2026
⇄
Voucher createdSAP · not posted
🔔
Finance notifiedSAP alert + WhatsApp
🔎
Accountant checksin SAP
✅
Postedjournal entry, status back in Odoo
SAP Business One · Journal Voucherwaiting
Voucher no.–
Posting date30.09.2026
RemarksPayroll September 2026 · from Odoo run PR/2026/09
Journal entrynot posted yet
G/L accountCost centreDebitCredit
Total
POSTED

Why a Journal Voucher, not a direct posting?

Your accountant stays in control of the books. Nothing reaches the general ledger until a person in finance has checked it in SAP. If something is wrong, they correct it in Odoo and the Bridge sends a new voucher.