Push Your Odoo Health
Automatically to NonaGuard
A native Odoo module that automatically sends module inventory, permission audits, and system health data to your monitoring dashboard — every hour, no manual action needed.
Push-based architecture: Odoo sends data outward only. No open inbound ports. Works behind NAT, firewalls, and VPNs.
How the connector works
Data flows Odoo → NonaGuard only. No inbound connections needed. Works behind any firewall or NAT.
Scanning WITH Connector vs WITHOUT Connector
NonaGuard works both ways. The connector adds always-on monitoring and works inside firewalls.
WITHOUT Connector
Direct XML-RPC
NonaGuard connects to your Odoo instance via XML-RPC using admin credentials. Requires network access from our servers to reach your Odoo URL.
- ✓No module installation required
- ✓Works with any Odoo without admin module access
- ✓On-demand scan via dashboard button
- ✗Requires Odoo URL and API key accessible from internet
- ✗Manual scan only — no automatic monitoring
- ✗No heartbeat — instance appears offline between scans
- ✗Blocked by firewalls and private networks
- ✗Less data — no cron health, no perf metrics
WITH Connector
Native Odoo module · Free
Install the NonaGuard connector module on your Odoo instance. The connector pushes data securely to NonaGuard. Works behind firewalls — no inbound ports needed.
- ✓Push-based: Odoo sends data outward — no inbound ports needed
- ✓Hourly automated sync with retry + exponential back-off
- ✓Heartbeat monitoring — always know if instance is alive
- ✓Works behind firewalls, NAT, VPN — zero external exposure
- ✓Remote commands via HMAC-signed webhooks (ping, scan, diagnostics)
- ✓Richer data: cron health, DB stats, security heuristics, perf metrics
- ✓Full audit trail in Odoo native activity log
- ✓Automatic 90-day log cleanup — zero DB bloat
Installation Guide
Select your Odoo version and follow the steps. Install in under 60 seconds.
Download the connector module
Download the NonaGuard Connector for your Odoo version from the Odoo App Store (search NonaGuard Connector) or get the versioned folder from our releases. Requires base + base_setup.
# From App Store Search: NonaGuard Connector → Install # From files (Odoo 17) cp -r nonaguard_connector_17/ /opt/odoo/addons/ # Apps → Update Module List → NonaGuard Connector → Install
Install in your Odoo addons path
Copy the module folder to your Odoo addons directory. In Odoo: Apps → Update Module List. Search for NonaGuard Connector and click Install.
# Add to addons path cp -r nonaguard_connector_17/ /opt/odoo/addons/ # In Odoo UI: Apps → Update Module List → Search "NonaGuard" → Install
Configure API token from NonaGuard dashboard
Log in to nonaguard.com → Settings → Connector Tokens → New Token. Give it a descriptive name. Copy the token — it is shown only once for security. Paste it in Odoo: Settings → General Settings → NonaGuard.
nonaguard.com → Settings → Connector Tokens → New Token → Name it → Copy the token value Odoo: Settings → General Settings → NonaGuard → Paste API Token → Save
Test connection
In Odoo: Settings → General Settings → NonaGuard section. Click Test Connection — you should see a green success message with your Odoo version. Enable automatic sync. Your first Pulse Score appears in the dashboard within minutes.
Odoo: Settings → General Settings → NonaGuard → Test Connection (should show green) → Enable Automatic Sync → Save Dashboard: nonaguard.com → Instances → Your Instance
Connector Features
Everything included. Free module. LGPL-3 license.
One-Click Setup
Install the module, generate a connector token in your dashboard, paste it into Odoo Settings → NonaGuard. Done. No code changes required.
Full Module Inventory
Sends complete module list with versions, authors, installation states, and automatic custom vs standard module detection.
HMAC Webhook Security
All remote commands are signed with HMAC-SHA256 using your API token. The connector rejects any unsigned or tampered request.
Hourly Heartbeat
Automated cron job sends a lightweight health ping every hour, with exponential back-off retry on failures. No missed beats.
Performance Metrics
Collects cron job health, database record counts, query timing data, and system resource metrics for trend analysis.
Security Risk Heuristics
Detects over-privileged security groups, public access on sensitive models, admin users without 2FA, and misconfigured RBAC.
Odoo Activity Log
Full audit trail of all syncs, webhook events, errors, and diagnostics stored natively in Odoo's logging system.
Automatic Cleanup
Sync logs automatically purged after 90 days. Historical scan records kept for trend analysis. Zero database bloat.
Webhook Commands
NonaGuard can send signed commands to your Odoo connector. Every request is verified with HMAC-SHA256.
pingVerify the connector is online. Returns Odoo version and connector version.
{ "status": "pong", "odoo_version": "17.0", "connector_version": "17.0.2.0.0" }trigger_scanForce an immediate data sync instead of waiting for the hourly cron.
{ "status": "scan_triggered" }get_statusReturn current configuration state: token set, sync enabled, instance ID, last sync time and score.
{ "enabled": true, "instance_id": "...", "last_sync": "...", "last_pulse_score": "82" }run_diagnosticsExecute self-tests on the Odoo side: API token, sync status, cron jobs, internet connectivity, DB health.
{ "checks": [{ "name": "API Token", "status": "ok", "message": "Configured" }] }Security Details
POST /nonaguard/webhookX-NonaGuard-SignatureHMAC-SHA256The connector verifies every incoming request by computing HMAC-SHA256 of the sorted JSON body using your stored API token as the signing key. Rejected requests return a 200 + error body — no 4xx — to avoid leaking configuration details.
Future Capabilities
We're building more ways to monitor and manage your Odoo instances.
Remote diagnostics
Run deeper health checks from the dashboard.
Automation actions
Trigger workflows and fixes from NonaGuard.
SSH operations
Secure shell access for advanced maintenance.
Module inspection
Deep analysis of module code and dependencies.
Technical Reference
Data Collected by the Connector
No business data is ever sent. No invoices, contacts, products, orders, or any transactional records. Only structural and configuration metadata.
⚠️ Limitations
- • Requires Odoo Administrator access to install and configure the module.
- • Only supports Odoo community and enterprise editions v15.0 – v19.0.
- • Webhook commands require outbound HTTPS from Odoo to nonaguard.com (port 443).
- • SSH and direct shell commands are not supported — all control is via Odoo's API layer.
- • Maximum 50 active connector tokens per NonaGuard organization.
- • The connector token value is shown only once on creation — copy it immediately.
Frequently Asked Questions
Do I need the connector to use NonaGuard?
No. NonaGuard works without the connector using direct XML-RPC. However, the connector enables hourly automatic sync, heartbeat monitoring, richer data, and remote commands that aren't possible with direct connection.
Does the connector send any business data?
No. The connector only sends structural metadata: module names, versions, permission rules, cron job states, and system configuration. It never reads invoices, contacts, sales orders, or any transactional records.
What happens if the connector loses internet access?
It retries 3 times with exponential back-off (2s, 4s, 8s delays). Each attempt is logged. The next hourly cron will try again automatically. You'll see the error in Odoo's NonaGuard logs.
Can I use the connector behind a corporate firewall?
Yes. Since the connector pushes data outward (Odoo → NonaGuard), you only need outbound HTTPS on port 443 to nonaguard.com. No inbound ports need to be opened. This is the primary advantage over direct XML-RPC.
How do I test if the connector is working?
In Odoo: Settings → General Settings → NonaGuard → Test Connection. You should see a green success message. In the NonaGuard dashboard: Settings → Connector Tokens — check the Last Used time for your token.
Is the connector open source?
Yes. It's licensed under LGPL-3. You can inspect, fork, and modify it freely. The source is available in OCA-compatible format. The manifest is transparent about all dependencies and permissions used.
How do I update the connector to a new version?
Install the new version via the Odoo App Store or replace the folder in your addons path. Run Update Module List → Upgrade NonaGuard Connector. No configuration changes required — your existing API token remains valid.
Ready to monitor your Odoo
automatically?
Free connector module. 14-day free trial. Install in 60 seconds. First Pulse Score in under a minute.