Maintenance contract
Last updated: 1 March 2026
Article 1. Definitions
The following terms have the meaning indicated below within the framework of this contract:
- Publisher: Planopti SA, publisher of the Software, provider of maintenance services.
- Client: the legal entity holding the Planopti licence and signatory of this contract.
- Software: the Planopti application as a whole, including the dashboard, the CP-SAT engine, the SQLite database, and the export tools.
- Infrastructure: the physical or virtual server of the Client on which the Software is deployed on-premise.
- Update: new version of the Software including bug fixes, functional improvements, and optimisations.
- Patch: minor update targeting the resolution of an identified bug or vulnerability.
- Incident: any malfunction of the Software reported by the Client according to the procedure described in Article 7.
- Business hours: Monday to Friday, 8:00 to 18:00, in the time zone of the Publisher's registered office (currently Geneva, CET/CEST), excluding official public holidays of the canton.
- Scheduler: the user designated by the Client as responsible for the daily use of the dashboard (entering staff, slots, requirements, constraints, schedule generation).
- Technical contact: the person designated by the Client as the point of contact for exchanges with the Publisher's support.
Article 2. Subject matter
This contract defines the conditions under which the Publisher provides maintenance and technical support for the Software deployed on the Client's Infrastructure. It supplements and refers to the conditions of the Planopti software licence.
The maintenance contract takes effect on the date of final acceptance of the Software (signed acceptance report) or, failing that, on the date of effective go-live.
Article 3. Included services
The maintenance contract covers the following services:
- Software updates: bug fixes, dashboard functional improvements, CP-SAT engine optimisations, dependency updates (Google OR-Tools, Python, libraries).
- Technical support: email assistance with defined service levels (Article 6).
- Seasonal recalibration: adjustment of solver parameters for summer and winter activity cycles (Article 5).
- Remote interventions: diagnosis and resolution on the Client's Infrastructure, on explicit request (Article 8).
- Documentation: changelog for each update, documentation of new features, update procedures.
- Compatibility monitoring: monitoring of Software compatibility with changes to supported operating systems.
Article 4. Software updates
Updates are delivered as new versions. The application procedure is documented and requires no outbound internet access from the Client's server. The Client schedules the update at a time that suits them.
Delivery procedure:
- The Publisher notifies the Client by email of the availability of a new version.
- The notification includes the complete changelog, any technical prerequisites, and the update procedure.
- The update is transmitted via the secure channel agreed upon during installation (encrypted transfer or physical media).
- The Client applies the update according to the procedure provided. In case of difficulty, the Publisher's support is available according to the SLAs of Article 6.
Update content:
- Bug fixes and regression fixes reported by clients or identified internally.
- Dashboard improvements: interface, ergonomics, new views, new export formats.
- CP-SAT engine optimisations: search strategies, heuristics, improvement of solving times.
- Update of Google OR-Tools to the latest stable versions.
- Improvements to constraint management, business rules, and audit features.
Backward compatibility: updates are backward compatible. The SQLite database, Client configurations (slots, requirements, constraints, staff), and generated schedules are preserved. Where a schema migration is required, it is applied automatically on the first start of the new version and documented in the changelog.
Rollback: in case of a problem after an update, the Client can revert to the previous version according to the rollback procedure provided. The Publisher documents this procedure in the documentation of each version. Database snapshots allow the previous state of data to be restored if necessary.
Article 5. Seasonal recalibration
Operational activity varies according to summer cycles (generally April to October) and winter cycles (generally November to March). The maintenance contract includes two (2) annual recalibrations to adapt solver parameters to these variations.
Each recalibration includes:
- Optimisation penalty adjustment: coverage, equity, rest, and consecutive days coefficients are reviewed based on the expected activity volume for the season.
- Solver parameter revision: solving time, search strategies, tolerance thresholds for OPTIMAL and FEASIBLE scores.
- Seasonal workforce analysis: accounting for staff variations (temporary contracts, seasonal workers, part-time staff) and their qualifications over the season.
- Joint validation: the recalibration is validated with the Client's scheduler before the first generation of the season. A test schedule is generated for verification.
Recalibration is performed remotely. The Client transmits the necessary information (forecast staffing, activity programme, season-specific constraints). The Publisher adjusts the parameters and provides a recalibration report documenting the changes made.
Additional recalibrations (outside the seasonal programme) may be requested and are billed separately on quote.
Article 6. Service levels (SLA)
Technical support is provided by email. The support levels are as follows:
- Priority 1, Blocking incident: the solver no longer generates a schedule (systematic INFEASIBLE status with no identifiable reason), the dashboard is inaccessible, confirmed data loss. Acknowledgement within 4 business hours. Resolution or workaround within 24 business hours.
- Priority 2, Major incident: incorrect solver result (hard constraints not respected), Excel or PDF export error, malfunction of a dashboard module (staff, slots, requirements, constraints, absences). Acknowledgement within 8 business hours. Resolution within 72 business hours.
- Priority 3, Minor incident: display anomaly, non-compliant behaviour with no impact on schedule generation, cosmetic error. Acknowledgement within 48 business hours. Fix included in the next update.
- Priority 4, Enhancement request: suggestion for functional improvement, request for new export format, addition of indicator in the dashboard. Evaluated and prioritised quarterly. The Publisher is not obliged to implement every enhancement request.
"Acknowledgement" means qualified receipt of the incident with an initial analysis and action plan. "Resolution" means the definitive fix or provision of a functional workaround allowing activity to resume.
SLA commitments apply during business hours as defined in Article 1. An extended on-call option (evenings, weekends, public holidays) is available on quote under a "Custom" contract.
In case of repeated SLA non-compliance (three incidents of the same priority out of time over a six-month period), the Client may request a proportional credit on the annual maintenance fee, capped at 15% of the annual amount.
Article 7. Incident reporting procedure
To benefit from the SLAs defined in Article 6, the Client reports incidents according to the following procedure:
- The report is made by the technical contact designated by the Client, by email to the support address communicated during installation.
- The report includes: the description of the problem, the estimated priority, the reproduction steps, the expected behaviour, and the observed behaviour.
- The Client attaches, where possible, the anonymised diagnostic report that can be generated from the dashboard. This report contains solver parameters, statistics from the last generation, and technical logs, with no personal staff data.
- The Publisher acknowledges receipt of the incident and confirms or adjusts the priority within the applicable acknowledgement time.
Incidents reported by persons not designated as technical contact, or reported through a channel other than the support email, are handled on a best-effort basis without SLA commitment.
Article 8. Remote interventions
Remote interventions on the Client's Infrastructure are carried out exclusively on explicit written request from the Client, according to the following procedure:
- The Client grants temporary access by the means of their choice: VPN, remote access tool approved by the Client, or SSH tunnel.
- The intervention is strictly limited to the subject of the request and the time necessary for its resolution.
- Access is revoked by the Client immediately after the intervention. The Publisher retains no access credentials.
- No Client data is extracted, copied, or transmitted during the intervention, unless otherwise agreed in writing by the Client.
- The Publisher's personnel carrying out the intervention are subject to the confidentiality obligations defined in Article 13.
- An intervention report is provided to the Client within 48 hours, detailing the actions taken, findings, and any recommendations.
The Client retains the right to refuse any remote intervention. In this case, support is limited to email assistance and analysis of anonymised diagnostic reports.
Article 9. Supported versions
The Publisher provides support and maintenance for the current version of the Software and the immediately preceding version (N and N-1).
- Security patches are provided for versions N and N-1.
- New features are integrated only in the current version (N).
- Beyond two versions behind, support is provided on a best-effort basis without SLA commitment. The Publisher recommends updating to the current version.
The Publisher communicates an indicative version schedule (roadmap) once a year. This schedule is informational and does not constitute a contractual commitment on features or delivery dates.
Supported environments: the Software is supported on Linux and Windows Server operating systems. Compatibility with other environments is provided on a best-effort basis and may be the subject of a Custom contract.
Article 10. Exclusions
The following services are not covered by the maintenance contract and are subject to separate quotes:
- Bespoke developments: new modules, specific features, connectors with third-party systems (HR software, ERP, activity programme, time-and-attendance system).
- Additional training beyond the initial training included in the annual licence.
- On-site interventions (physical travel to Client premises).
- Migration to a new server, infrastructure change, or multi-site deployment.
- Data recovery following a hardware failure of the Client's Infrastructure not covered by backups made by the Client.
- Incidents resulting from modification of the Software by the Client or an unauthorised third party.
- Incidents resulting from a runtime environment not compliant with technical prerequisites (insufficient resources, unsupported operating system).
- Extended on-call outside business hours, unless specifically subscribed.
Article 11. Client obligations
To enable the proper performance of the maintenance contract, the Client undertakes to:
- Maintain the Infrastructure in compliance with the technical prerequisites communicated by the Publisher (sufficient CPU/RAM resources, available disk space).
- Perform regular backups of the SQLite database, at minimum before each update. The dashboard includes a snapshot function; the Client may also back up the database file directly.
- Apply provided updates within a reasonable time, and at minimum apply security patches within thirty (30) days.
- Designate a technical contact and a deputy for exchanges with support, and communicate their contact details to the Publisher.
- Report any incident according to the procedure of Article 7, within a reasonable time after becoming aware of it.
- Not modify, decompile, or alter the Software without written authorisation from the Publisher.
- Transmit the information necessary for seasonal recalibration (staffing, activity programme) within the agreed deadlines.
Non-compliance with these obligations may result in suspension of SLA commitments until regularisation, without prejudice to the Publisher's other rights.
Article 12. Publisher obligations
The Publisher undertakes to:
- Provide updates and patches in accordance with the service levels defined in this contract.
- Comply with the acknowledgement and resolution times defined in Article 6 for properly reported incidents.
- Carry out the two annual seasonal recalibrations included in the contract.
- Ensure backward compatibility of updates with the Client's existing data and configurations.
- Provide complete documentation for each update (changelog, installation procedure, rollback procedure).
- Notify the Client within a reasonable time of any security vulnerability identified in the Software or its dependencies.
- Never access the Client's Infrastructure without their explicit written request.
- Subject its intervening personnel to the confidentiality obligations defined in Article 13.
Article 13. Confidentiality
In the course of performing this contract, each party may have access to confidential information of the other party: technical data, solver parameters, information about the Client's organisation, commercial terms.
- Each party undertakes not to disclose the other party's confidential information to third parties, except as required by law.
- Confidential information is used exclusively for the purposes of performing this contract.
- The Publisher's personnel who may intervene remotely or have access to Client data are subject to a contractual confidentiality obligation.
- The on-premise architecture of the Software ensures that the Publisher has, in normal operation, no access to the Client's data. Access is only possible during a remote intervention requested by the Client (Article 8).
Confidentiality obligations survive the expiry or termination of this contract for a period of five (5) years.
Article 14. Liability
The Publisher undertakes to apply its best efforts in the performance of maintenance services. Maintenance constitutes a best-efforts obligation and not an obligation of result.
- The Publisher does not guarantee the absence of bugs in the Software, but undertakes to fix them within the deadlines defined in Article 6.
- The Publisher's liability under this contract is capped, for all causes combined, at the amount of the current annual maintenance fee.
- The Publisher cannot be held liable for indirect damages, data losses resulting from a hardware failure of the Client's Infrastructure, or operating losses consequential to an incident.
- The Client is responsible for their backups. The Publisher is not responsible for data loss in the absence of backups made by the Client in accordance with Article 11.
Article 15. Term and renewal
The maintenance contract is concluded for a period of one (1) year from its effective date.
It is tacitly renewable for successive periods of one (1) year, unless terminated by either party under the conditions provided in Article 16.
Article 16. Termination
Termination at expiry: either party may terminate the contract with three (3) months' notice before the anniversary expiry date, by written notification (email with acknowledgement of receipt or registered letter).
Termination for cause: in case of serious breach by one party of its obligations, the other party may terminate the contract with thirty (30) days' notice, after a formal notice remaining unfulfilled for fifteen (15) days. The following in particular constitute serious breaches:
- By the Client: non-payment of the annual fee within thirty (30) days of its due date, unauthorised modification of the Software.
- By the Publisher: repeated non-compliance with SLAs (as defined in Article 6), breach of confidentiality obligations.
Article 17. Effects of maintenance cessation
In case of non-renewal or termination of the maintenance contract:
- The Software continues to operate in its last installed version, in accordance with the licence in force.
- The Client retains all their data, configurations, and generated schedules.
- The Client no longer benefits from updates, security patches, technical support, or seasonal recalibrations.
- The Client remains responsible for maintaining their Infrastructure (server security, backups).
- Reactivation of the maintenance contract after an interruption may require a prior upgrade to the current version of the Software, billed on quote.
Article 18. Pricing
The maintenance contract is subject to an annual fee, communicated on quote. The fee is adapted to the size of the Client's organisation (number of agents, functional groups, slots).
The fee covers all services described in Articles 3 to 8. Services outside the scope (Article 10) are billed separately on a quote accepted by the Client.
The fee is revisable at each annual renewal with two (2) months' notice. In case of disagreement on the new fee, the Client may terminate the contract at expiry without penalty.
The fee is payable annually, in advance, on the anniversary expiry date. Payment terms (deadline, payment method) are specified in the quote or purchase order.
Article 19. Force majeure
Neither party shall be held liable for a delay or failure in its obligations resulting from a force majeure event within the meaning of Swiss law: natural disaster, pandemic, armed conflict, governmental measure, widespread telecommunications or energy failure.
The affected party notifies the other party as soon as possible and takes all reasonable measures to limit the consequences of the event. The affected obligations are suspended for the duration of the event.
If the force majeure event extends beyond ninety (90) days, either party may terminate the contract without penalty by written notification.
Article 20. Applicable law and dispute resolution
This contract is governed by Swiss law, to the exclusion of its conflict of laws rules and the Vienna Convention on Contracts for the International Sale of Goods (CISG).
The parties undertake to seek an amicable solution to any dispute relating to this contract. Failing agreement within thirty (30) days, the dispute shall be finally settled by arbitration under the Rules of Arbitration of the International Chamber of Commerce (ICC). The arbitral tribunal shall consist of one (1) arbitrator. The seat of arbitration is Geneva, Switzerland. The language of arbitration is French.