PMISUITE Beta Repository
Beta-stage PMISuite addons for Odoo 18 Community, covering Slovenian accounting, Nextcloud integration, and permission-aware AI operations.
Addons
| Addon | Scope | License |
|---|---|---|
| l10n_si_account_tax_unece | Fiscal-position UNECE categories and tax defaults, refreshed on module updates. | AGPL-3 |
| l10n_si_einvoice | Slovenian e-SLOG invoice and credit-note import/export. | AGPL-3 |
| l10n_si_fiscal_cash_register | FURS fiscal invoice confirmation and business-premise registration. | LGPL-3 |
| pmis_ai_browser_operator | Authorized AI commands, server-side orchestration, and permission-aware execution. | LGPL-3 |
| pmis_nextcloud | Nextcloud account discovery, reviewed contact pairing, and CardDAV contact linking. | LGPL-3 |
Each addon's README describes its features, configuration, access roles, workflows, and limitations.
The AI operator also has a user manual with step-by-step configuration, daily workflows, and screenshots with explanations. It includes skill creation and assignment, guidance versioning, and a supervised draft-quotation example with screenshots from a synthetic disposable database. One AI bot can select and combine assigned business skills for CRM, quotations, and sales orders, with versioned guidance and the existing permission boundaries. Its model, wizard, view, data, and test filenames follow the full technical model names; each Python class has a separate source file.
The FURS addon has a user manual covering certificate and device configuration, invoice fiscalization, retries, recovery, and screenshots with synthetic data. Its README TODO tracks the current Odoo 18 navigation and payment-hook blockers and the remaining production acceptance work; screenshots do not prove live FURS acceptance.
The e-SLOG addon has a user manual covering configuration, invoice and credit-note export, email attachments, optional HTTP transmission, and supplier bill import with screenshots. The addon also extracts embedded invoice XML from real PDFs, requires one VAT classification per line, and distinguishes local export from confirmation. Exported clauses use the invoice's fiscal-position notes first, allowing fiscal positions with a shared tax to supply different clauses; tax notes and VATEX reasons remain fallbacks. Categories likewise use fiscal-position tax mappings on both invoice lines and summaries. The tax addon initializes known regimes and refreshes metadata on every module update; unclassified and tripartite roles require explicit configuration.
Dependencies and installation
Provide Odoo 18 Community and make this repository available on its addons path. Install the repository's Python dependencies from requirements.txt in the configured Odoo Python environment. Non-Python service runtimes and optional external companions have additional prerequisites documented in the relevant addon README.
Provide the Odoo addons declared in each module's __manifest__.py.
External dependencies include l10n_si2, l10n_si_config,
account_tax_unece, uom_unece, account_invoice_import, and
account_invoice_export. oca_dependencies.txt lists OCA
repository dependencies; additional localization repositories are required.
Install only the modules needed for your workflow. The tax-metadata addon auto-installs when its dependencies are present; the other addons are selected explicitly. External services and account credentials are configured separately, following the relevant addon README.
Integration boundaries
- The e-invoice addon uses the tax-metadata addon and OCA invoice import/export interfaces. Generating a document is separate from external transmission.
- Nextcloud and FURS integrations can perform external writes. Configure their destinations, credentials, and access roles before use.
- AI command authorization does not grant additional Odoo permissions or company access. Available actions depend on installed apps, the assigned user's rights, and provider eligibility.
Development
pyproject.toml defines Ruff policy for Python 3.12 with a
100-character line limit. pytest.ini and
conftest.py configure repository tests; addon suites live under
their respective tests/ directories. Use the configured PMIVerse test and lint
runners with a scope limited to the affected addons. Database-backed tests require
an authorized disposable database; external-service tests require separate opt-in.
READMEs are maintained directly. The generated badges describe published runner results, not necessarily the current checkout.
Support and licensing
Use the Bug Tracker and Credits sections in the addon READMEs for support and maintainer details. Report issues with synthetic examples and redacted evidence. LICENSE and the individual addon manifests and notices define licensing.
Related repositories
Glassworking measurement, production-planning, reporting, and Opty-Way export
modules are maintained in
vertical-glass-working.
The pmis_backorder addon is maintained in the stock-accounting repository.
TODO
No separate repository-level development work is currently tracked. Addon-specific code improvements belong in the TODO sections of their respective READMEs.