| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Point of Sale (point_of_sale) • Discuss (mail) • Inventory (stock) |
| Lines of code | 1428 |
| Technical Name |
pos_novitus_printer |
| License | LGPL-3 |
| Website | https://www.digicyfr.com |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Point of Sale (point_of_sale) • Discuss (mail) • Inventory (stock) |
| Lines of code | 1428 |
| Technical Name |
pos_novitus_printer |
| License | LGPL-3 |
| Website | https://www.digicyfr.com |
POS Novitus Online Fiscal Printer
NoviAPI v1.0.4 integration for Odoo 17 POS — Polish fiscal compliance
Features
Verified NoviAPI Protocol
Full 3-step command flow (POST → PUT confirm → GET poll) with JWT token
authentication and automatic PATCH refresh.
Automatic Fiscal Receipts
Fiscal receipts print automatically when completing POS orders.
Uses direct_io serial protocol commands for maximum compatibility.
Cash Drawer Control
Open the cash drawer via direct_io $d command through the fiscal printer.
PTU Tax Rate Mapping
Map Polish VAT rates to Novitus PTU letters:
A=23%, B=8%, C=5%, D=0%, E=exempt.
Daily Z-Report
Print daily fiscal Z-reports with automatic queue safety check.
Integrated into the POS close-session screen.
Complete Error Handling
Handles all NoviAPI error codes: 400, 401, 403, 404, 409, 429, 500, 507.
Clear Polish error messages for cashiers.
Supported Printers
All Novitus online fiscal printers with NoviAPI v1 support:
- Novitus POINT (ONLINE 3.0)
- Novitus HD II Online (ONLINE 2.0)
- Novitus BONO Online
- Novitus DEON Online
How It Works
- Install the module in Odoo 17
- Configure printer IP, port, and PTU tax mappings
- Test the connection with the built-in Test Connection button
- Start selling — fiscal receipts print automatically
Technical Highlights
- NoviAPI v1.0.4 verified 3-step command flow
- JWT token caching with automatic PATCH refresh (saves rate limit)
- Decimal arithmetic with ROUND_HALF_UP (prevents printer error 20)
- Receipt cancellation via DELETE if PUT fails (prevents stuck jobs)
- Queue check before daily Z-report (prevents 409 errors)
- Connection test timeout: 5 seconds (fast failure feedback)
- API call timeout: 30 seconds (sufficient for receipt printing)
Support
Documentation
Complete installation guide and troubleshooting in the README.
View on GitHub
Get Help
Email: info@digicyfr.com
Website: www.digicyfr.com
Issues: GitHub Issues
Free and open source (LGPL-3 License).
Developed by Digicyfr Polska — Odoo Experts in Warsaw, Poland.
Please log in to comment on this module