"What do we owe suppliers at month end?" should be a question, not a ticket to the IT department. This copilot has to answer correctly — and refuse to answer rather than give a wrong figure. Subject for a pair of students.
Context
ERPs hold most of a company's financial and logistics information, but their complexity limits day-to-day use: finance and purchasing teams depend on fixed reports or on experts. The project starts on Odoo, which is open source and widely used in Tunisia, with a SAP connector as an extension.
What you will do
- Build a text-to-SQL pipeline over a schema with hundreds of tables: relevant-table selection, generation, self-correction through execution
- Statically analyse every query before it runs: read-only, role-based permissions, cost ceiling
- Automate supplier-invoice reading (OCR, field extraction) and matching against purchase orders
- Detect accounting anomalies (isolation forests, autoencoders)
- Prototype cash-flow forecasting
- Build a set of 200 business questions with reference answers
- Expose everything through a FastAPI service
Technical challenges
- Large schemas that exceed a model's context
- Safety of generated queries: no writes, nothing outside the role's scope
- Reliability of reported figures: a wrong but plausible answer is the worst case
- Highly variable quality of scanned invoices
Deliverables
- A working prototype connected to an Odoo instance and integrated into the B2H platform
- A SAP connector (at least a proof of concept)
- The 200-question business set and evaluation results
- Technical documentation and a demo
- The final-year report
Success criteria
- Accuracy measured on the 200 business questions
- Precision and recall of invoice field extraction
- No write query and no out-of-permission query executed on the test set
- Response times suitable for interactive use
Tech stack
- Text-to-SQL, LLMs
- Odoo API, SAP API
- Document AI, OCR
- Python, FastAPI, scikit-learn
Who we are looking for
- Final-year engineering or master's students with a data or AI background
- Advanced SQL: complex joins, query plans, data modelling
- Some knowledge of accounting or ERPs is appreciated
- High standards on the correctness of numbers
- Fluent French and technical English
Practical details
- Duration: 4 to 6 months (February – June 2027, indicative)
- Supervised by the B2H engineering team, with a weekly check-in
- Integrated into the internal B2H platform (single identity, event bus, shared data)
- How to apply: CV + cover letter, at most 2 subjects per candidate
- Deadline: 15/12/2026

