Skip to content
DevMarket
Odoo ModulesWordPress PluginsWordPress ThemesShopify ThemesApp TemplatesScripts & UtilitiesBlogSell on DevMarket
ModuleOdooNew

IP Address & Time-Based Login Restrictions for Odoo 19 – Office-Only Sign-In and Working Hours

Let people sign in only from your office or VPN addresses and only at working hours, per user or user group. Covers the login page, the API and open sessions, with a lock-out guard and an off switch.

No reviews yet0 salesby TAQNIXUpdated Oct 22, 2026

Description

A password should not be the only door

Staff reuse passwords, share them, and type them on any computer. IP Address & Time-Based Login Restrictions adds two limits most companies already want: sign in only from your office or VPN addresses, and only during working hours, with different rules for different teams.

A login restriction rule for each team

Rules per user or user group

  • Apply a rule to user groups, to named users, or to everybody
  • Exceptions for chosen users or groups; administrators are exempt by default so they can always fix a wrong rule
  • A person must satisfy every rule that applies to them
IP addresses and working hours you control

Addresses and hours

  • IP addresses: single, CIDR networks, ranges, wildcards and IPv6, with comments
  • Time windows: days, hours, night shifts that run past midnight, and a time zone for each window
  • Your own message on the login page, with the person's address in it
The right password from the wrong place is refused

Enforced everywhere

  • The login page and the web client session
  • JSON-RPC and XML-RPC, including calls that send the user id and password (or an API key) every time
  • Open sessions: when the window closes, the next click signs the person out
  • Every refusal is logged, kept 90 days, and counted on the rule
Designed not to lock you out

Built not to lock you out

  • A lock-out guard refuses to save a rule that would block you right now
  • Test a Login shows what a given user, address and time would get, without signing anybody in
  • “Your address now” shows what Odoo sees for you, which is the first thing to check behind a proxy
  • An environment switch turns every rule off if the worst happens
Features of IP and Time-Based Login Restrictions

Honest about the limits

It is one more layer, not a replacement for a firewall, a VPN or two-factor authentication. Behind a reverse proxy, enable Odoo's proxy mode so that real client addresses are seen. The documentation explains it step by step.

Documented and tested

Illustrated documentation in English and Arabic, an Arabic translation of the module and 34 automated tests, including the real login page.

What's included

  • taqnix_login_restrictions.zip: the Odoo 19 module (with Arabic translation)
  • Illustrated documentation in English and Arabic (HTML and PDF)
  • Automated tests, licence file (OPL-1) and changelog

Requirements

Odoo 19.0. If Odoo runs behind a reverse proxy, enable proxy mode so that real client addresses are seen.

What's in the download

The files in the archive you can download after you buy.

  • Full source code
  • Documentation
  • Installation guide
  • Automated tests
  • Licence file
  • Changelog

Customer reviews

Write a review

No reviews yet. Bought this item? Be the first to review it.

Usage

Install and use it in a few lines.

engine = env['taqnix.login.engine']
rule, reason = engine.check(user, '198.51.100.7')   # (rule, 'ip') or (None, None)

Documentation

Setup, settings and troubleshooting, written by the author.

Open the documentation

Changelog

Every release, newest first.

v1.0.0

1.0.0 – Initial release

  • Rules per user or user group, with exceptions and administrators exempt by default
  • Allowed IP addresses (single, CIDR, range, wildcard, IPv6) and time windows (days, hours, night shifts, time zone per window)
  • Enforced at the login page, JSON-RPC, XML-RPC, calls with uid and password, and open sessions
  • Log of blocked sign-ins, Test a Login tool, lock-out guard, environment off switch
  • Custom refusal message, Arabic translation, automated tests including the real login page

Frequently asked questions

Does it block people who know the password?

Yes. The check happens after the password is verified: a person who breaks a rule gets your message instead of being signed in. A wrong password still says “Wrong login/password”.

Which address formats can I use?

A single address, a network such as 10.0.0.0/8, a range 192.168.1.10-192.168.1.50, a wildcard 192.168.1.*, and IPv6 addresses or networks. Text after # is a comment.

Does it work behind Nginx or a load balancer?

Yes, once Odoo runs in proxy mode and the proxy sends X-Forwarded-For. The field “Your address now” on a rule shows what Odoo sees, so you can check before you rely on it.

Can I lock myself out?

Odoo refuses to save a rule that would block you right now, administrators are exempt unless you say otherwise, and an environment switch turns every rule off.

Are API and XML-RPC logins covered?

Yes: the login page, session logins, authenticate calls, and calls that send the user id and password or an API key every time. Open sessions can be ended when the window closes.

Can different teams have different hours?

Yes. Make one rule per team, each with its own groups, addresses and time windows, and a time zone per window. A person must satisfy every rule that applies to them.

Is there a record of blocked sign-ins?

Yes. Every refusal is logged with the login, the address, the reason and the rule, kept for 90 days. Each rule also counts the last 30 days.

Does it support Arabic?

Yes. The module ships an Arabic translation, and the documentation is available in Arabic with right-to-left layout.

More from TAQNIX

  • ModuleNew

    Customer Outstanding Balances Widget for Odoo 19 – Overdue Amount Banner on the Sales Order, Both Directions

    See what a customer owes you, what is overdue and what you owe them, in a banner at the top of the sales order. Red when the delay is serious. Live from your accounting, Arabic included.

    by TAQNIX
    No reviews yet
    Sales:0$34.00
  • ModuleNew

    Digital File Sales & Secure Token Downloader for Odoo 19 – Personal Time-Limited Links with Download Counter

    Sell PDFs, templates and any file from Odoo. When the sales order is confirmed the customer gets a personal download link by email, valid for N days and N downloads, with a full download log.

    by TAQNIX
    No reviews yet
    Sales:0$49.00
  • ModuleNew

    Advanced POS Receipt & Invoice Customizer for Odoo 19 – 5 Styles Each, Amount in Words, Barcode

    Choose the look of your invoices, quotations and Point of Sale receipts in the company settings: five styles each, accent colour, amount in words (Arabic too), signature boxes, order barcode and small print.

    by TAQNIX
    No reviews yet
    Sales:0$39.00
  • ModuleNew

    Bulk Excel Attendance Importer for Odoo 19 – Excel and CSV, Checked Before Import, One-Click Undo

    Import attendance from Excel or CSV in four steps: upload, map the columns, check every row, import. Night shifts, time zones, Arabic digits, and a one-click undo of the whole import.

    by TAQNIX
    No reviews yet
    Sales:0$34.00

Similar items

  • ModuleNew

    Customer Outstanding Balances Widget for Odoo 19 – Overdue Amount Banner on the Sales Order, Both Directions

    See what a customer owes you, what is overdue and what you owe them, in a banner at the top of the sales order. Red when the delay is serious. Live from your accounting, Arabic included.

    by TAQNIX
    No reviews yet
    Sales:0$34.00
  • ModuleNew

    Digital File Sales & Secure Token Downloader for Odoo 19 – Personal Time-Limited Links with Download Counter

    Sell PDFs, templates and any file from Odoo. When the sales order is confirmed the customer gets a personal download link by email, valid for N days and N downloads, with a full download log.

    by TAQNIX
    No reviews yet
    Sales:0$49.00
  • ModuleNew

    Advanced POS Receipt & Invoice Customizer for Odoo 19 – 5 Styles Each, Amount in Words, Barcode

    Choose the look of your invoices, quotations and Point of Sale receipts in the company settings: five styles each, accent colour, amount in words (Arabic too), signature boxes, order barcode and small print.

    by TAQNIX
    No reviews yet
    Sales:0$39.00
  • ModuleNew

    Bulk Excel Attendance Importer for Odoo 19 – Excel and CSV, Checked Before Import, One-Click Undo

    Import attendance from Excel or CSV in four steps: upload, map the columns, check every row, import. Night shifts, time zones, Arabic digits, and a one-click undo of the whole import.

    by TAQNIX
    No reviews yet
    Sales:0$34.00