Recurrent Tickets in GLPI 11: Automatic Preventive Maintenance and the 3 Traps

How to set up recurrent tickets in GLPI 11 for preventive maintenance and what our test showed: a monthly recurrence on the 31st drifts to the 3rd, an invalid preliminary creation creates nothing and an empty template creates a blank ticket.

In this article5 sections

GLPI opens preventive maintenance tickets on its own: printer cleaning, backup testing, service password changes, access reviews. We tested recurrent tickets in GLPI 11 and they work, but three details make preventive maintenance disappear or come out wrong without any warning. A monthly recurrence that starts on the 31st ends up falling on the 3rd. A preliminary creation longer than the periodicity means GLPI never creates anything. And a template without fields generates a blank ticket.

What recurrent tickets are for

Every routine that today depends on someone remembering:

  • Preventive maintenance of printers, UPS units and server room air conditioning.
  • Backup restore testing (a backup that has never been restored is not a backup; see backup and disaster recovery in GLPI).
  • Quarterly review of access rights and inactive accounts.
  • Renewal of certificates, licenses and domains.
  • Month-opening and month-closing checklists.

The ticket is born on the right day, with category, group and description ready, enters the queue and counts toward the SLA like any other.

How to configure it

1. Create the ticket template

The recurrent ticket has no title or description of its own: it copies everything from a Ticket template. In the template's predefined fields, fill in at least:

  • Title and description (with the task checklist);
  • Category and type (usually Request);
  • Assigned group, so the ticket is not born without an owner;
  • Urgency or priority.

2. Create the recurrent ticket

In Assistance > Recurrent tickets:

Field What to enter
Active Yes
Ticket template The template from step 1
Start date The first occurrence (day and time)
End date Optional; after it, GLPI stops creating tickets
Periodicity From 1 hour to 10 years (hours, days, months or years)
Preliminary creation How long before the occurrence the ticket should be opened (up to 2 weeks)
Calendar Optional; pushes creation to the next working day and time

In the items tab, link the assets (the printer, the server) so the ticket is born already linked to them.

3. Check the automatic action

Tickets are created by the RecurrentItems automatic action, which runs every hour. In practice, the ticket may appear up to an hour after the scheduled time. If the exact time matters, use a preliminary creation of at least 1 hour. And GLPI's cron must be running (see step 6 of how to install GLPI 11).

The test: where recurrence goes wrong

We used GLPI 11's own calculation to see the next dates in cases that often cause problems, and we created real tickets in our test entity (fictitious data, deleted afterwards).

Illustration: a monthly recurrence starting on January 31 falls on the 31st, 3rd, 3rd, 3rd; starting on January 28 it always falls on the 28th
GLPI adds 1 month to the date: Jan 31 becomes Mar 3 and the recurrence stays on the 3rd. Dates computed by GLPI 11.0.7, NexTool test, October 4, 2026.
Case Next dates GLPI calculated What happens
Monthly starting Jan 31 Jan 31, Mar 3, Apr 3, May 3 Slips to the 3rd and stays there forever
Monthly starting Jan 28 Jan 28, Feb 28, Mar 28, Apr 28 Correct
Weekly starting on a Saturday, without calendar Oct 10, Oct 17, Oct 24 (Saturdays) Creates on the weekend
Weekly starting on a Saturday, with calendar Oct 12, Oct 19, Oct 26 (Mondays) Moves to the next working day
Daily with a 2-day preliminary creation none (next date empty) Never creates anything
Template with title and description ticket created with both Correct
Template without any field ticket created with empty title and description A blank ticket enters the queue

The three pitfalls

1. The 29th, 30th or 31st in a monthly recurrence

With a periodicity in months, GLPI adds "1 month" to the date. February has no 31st, so Jan 31 + 1 month becomes Mar 3, and from then on the recurrence stays on the 3rd. The "last day of the month" preventive task becomes the "3rd of the month" one.

Solution: start monthly recurrences between the 1st and the 28th. If it has to be at the end of the month, use the 28th and a preliminary creation.

2. Preliminary creation longer than the periodicity

In a daily recurrent ticket with a 2-day preliminary creation, GLPI considers the configuration invalid and leaves the next date empty. On screen, the recurrent ticket shows as active; in practice, it creates nothing.

Solution: the preliminary creation must be shorter than the periodicity. After saving, check that the next creation date has been filled in.

3. Template without fields

If the template has no title or description, GLPI creates the ticket anyway, blank. Nobody knows what to do with it, and it sits idle in the queue.

Solution: title, description, category and group in the template, always. And open the recurrent ticket's history: each creation leaves a message, including when it fails.

Best practices

  • One recurrent ticket per routine, with the routine and the periodicity in the name ("Printer preventive maintenance - monthly").
  • Checklist in the description, with what to do and how to record the result.
  • Calendar with holidays so tickets are not created on non-working days: see how to generate and link holiday calendars.
  • Proportional resolution SLA: a monthly preventive task does not need the SLA of an incident.
  • Quarterly review of the recurrent ticket list: replaced equipment, a routine that changed, an expired end date.
  • Changes can be recurrent too (Assistance > Recurrent changes), for planned maintenance windows.

NexTool test on October 4, 2026, on our support team's GLPI 11.0.7, in a test entity with fictitious data. The next dates were calculated by GLPI's own function; the test templates, recurrent tickets and tickets were deleted at the end.

Frequently Asked Questions

Create a ticket template with title, description, category and group, then a recurrent ticket under Assistance > Recurrent tickets, with the template, start date, periodicity and, optionally, a calendar.

The most common causes are a preliminary creation longer than the periodicity, which leaves the next date empty, an end date already in the past, and a stopped GLPI cron. The RecurrentItems automatic action runs hourly.

GLPI adds 1 month to the date. Starting on the 31st, February pushes it to March 3, and the recurrence stays on the 3rd. Start monthly recurrences between the 1st and the 28th.

Only if you choose a calendar on the recurrent ticket. With a calendar, creation moves to the next working day and hour; without one, the ticket is created on a Saturday, for example.

Yes. In the items tab of the recurrent ticket, link the printer, server or other asset, and every ticket created is already linked to it.

Comments

Comments on this post come from GitHub (giscus). When you load them, your browser connects to GitHub, which receives your IP address and may set its own cookies.

To load them automatically, enable functional cookies

Need help?