| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Calendar (calendar)
• Discuss (mail) |
| Lines of code | 403 |
| Technical Name |
ks_holidays |
| License | OPL-1 |
| Versions | 16.0 17.0 18.0 19.0 |
KS Holidays
Automatic public holiday import for any country — synced to Calendar and Absence Planner
How It Works
KS Holidays fetches official public holidays for any country from the free date.nager.at API v3 and stores them per company in Odoo. The country and — if set — the federal state configured on the company record are used automatically to retrieve exactly the right holidays. With a single button click, all holidays are pushed into the Odoo Calendar (visible for every company user) and into the Absence / Leave Planner (HR public holidays).
Configure holidays directly in the company settings — choose country, state, and year, then fetch with one click.
Public holidays are automatically written to the HR Time Off planner — employees see them as official absence days without any manual entry.
Monthly calendar view showing synced public holidays as all-day events — clearly visible alongside regular appointments.
Day view of a public holiday — the event spans the full day and includes the holiday name as fetched from the API.
Core Features
Country & State Aware
Reads the country and federal state from the company record. If a state is set, only holidays that apply to that specific state are imported — no manual filtering needed.
Calendar Integration
Holidays are created as all-day calendar events visible to every internal user of the company. Holiday events are read-only for regular users; only administrators can delete them.
Custom Holidays
Manually added holiday entries are preserved when re-fetching from the API. Custom entries are clearly marked with a dedicated flag.
Absence Planner (HR) Sync
Holidays are synchronised as public-holiday leaves into the HR Absence Planner
(resource.calendar.leaves), scoped to the company's work schedule.
Multi-company setups are fully supported.
Multi-Company Ready
Each company fetches and stores its own holidays independently. Work schedules are automatically separated per company to prevent conflicts.
Multi-Language Support
Fully translated in English, German, French and Spanish. State names are displayed in full text (e.g. “Western Australia” instead of “AU-WA”).
How to Use
- Go to Settings → Companies and open a company.
- Make sure Country (and optionally State) is set.
- Switch to the Holidays tab.
- Select the year and the desired filter (national, state-specific, or both).
- Click “Fetch Holidays” to import from date.nager.at.
- Click “Sync to Calendar” to push holidays to the Odoo Calendar and the Absence Planner.
Supported Countries
All countries supported by the date.nager.at API are available, including (but not limited to): Germany, Austria, Switzerland, France, Spain, United Kingdom, United States, Australia, Canada, and 90+ more. The full list is available at date.nager.at.
Disclaimer — Use at Your Own Risk
This module retrieves holiday data from the third-party service date.nager.at. The accuracy, completeness and availability of that data are outside our control. Holiday data may be incomplete, incorrect or subject to change without notice. Always verify public holiday information with official sources before relying on it for business-critical decisions. The module and its data are provided as is, without warranty of any kind. Use is entirely at your own risk.
Need Professional Odoo Support?
Remote Odoo development, server administration, custom modules and API integrations.
Contact UsOdoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module