---
title: "Migration from cal to calendarize"
version: "15.0"
source: "AdministratorManual/Migration/MigrateFromCal.rst"
rendered: "2026-10-02T18:05:42+00:00"
---

# Migration from cal to calendarize {#migration-from-cal-to-calendarize}

This will help you to migrate data from cal to calendarize.

## Requirements {#requirements}

> [!WARNING]
> **Attention**
>
> -   Installed extension calendarize (version 12)
> -   Tables from cal (e.g. `tx_cal_*`, ...)
> -   TYPO3 v10.4 (v11 is NOT supported)
>
> <!-- TODO: no Markdown rendering for "deprecated" -->
>
> Was removed in calendarize 13 and later

## Migration {#migration}

### Migration of records {#migration-of-records}

The migration is an upgrade wizard and listed inside the admin tool.
Inside the **Upgrade > Upgrade Wizard** and you should be listed as "Migrate cal event structures to the new calendarize event structures. \[...\]".

> [!IMPORTANT]
> The wizard is only displayed, if the table `tx_cal_event` exists.

It is also possible to execute the wizard from the command line.

```bash
# Run using the identifier 'calendarize_calMigration'
./vendor/bin/typo3 upgrade:run calendarize_calMigration
```

<!-- TODO: no Markdown rendering for "versionchanged" -->

The identifier was formerly called HDNET\Calendarize\Updates\CalMigrationUpdate.

### Migration of plugins {#migration-of-plugins}

The plugins of cal can partially be migrated to plugins of calendarize.
For this take a look at [sypets/cal2calendarize](https://github.com/sypets/cal2calendarize).

### Migrated tables {#migrated-tables}

The wizard uses the default event model and places the result in the same folder as the old records.
To keep track of already migrated records, the `import_id` is a combination of `calMigration:` and the old uid.

#### Events {#events}

The basic / common fields of Calendar Events (`tx_cal_event`) get migrated to the Event model.
For most date options a Configuration record is used.

#### Event Exception (Groups) {#event-exception-groups}

Event exceptions are used to exclude dates in recurring events and can be grouped.

Event Exception Groups (`tx_cal_exception_event_group`) get migrated to Configuration Groups.
The corresponding Event Exceptions (`tx_cal_exception_event`) become single Configurations and are added to the group.
Finally the group gets added to the Events with excluded **Handling**.

#### Categories {#categories}

Older versions of cal (< 2.0) used its own table `cal_category` for categories.
These will be migrated to `sys_categories` of TYPO3.
The newer version using `sys_categories` is also supported.

#### Calendar, Locations, Attendees, Deviations {#calendar-locations-attendees-deviations}

These record types are currently **NOT** migrated.

### Not migrated {#not-migrated}

Be aware that some things are **not** migrated:

-   Templates
-   TypoScript configurations
-   (Plugins)
-   Some fields and tables (e.g. calendar, locations, attendees, deviations, ...)
-   Deviations
-   Additionally fields by other extensions
-   ...
