---
title: "Custom Purpose"
manual: "Klaro! Consent Manager"
version: "3.0"
permalink: "https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:howto-custom-purpose@3.0"
source: "Integrator/HowTo/CustomPurpose/Index.rst"
rendered: "2026-09-24T10:59:28+00:00"
---

# Custom Purpose {#howto-custom-purpose}

-   [TSconfig](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:tsconfig@3.0)
-   [XLIFF](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:xliff@3.0)
-   [Backend](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:backend@3.0)
-   [Frontend](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:frontend@3.0)

## TSconfig {#tsconfig}

Create your new purpose (for example with the key `mycoolpurpose`) via
TSconfig in the following form. The resulting option is available in the
[service purpose field](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:for-editors-service-general@3.0) and the
[configuration purpose order field](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:for-editors-configuration-general@3.0).

```typoscript
TCEFORM {
  tx_klaroconsentmanager_service.purposes.addItems {
    mycoolpurpose = LLL:EXT:sitepackage/Resources/Private/Language/Klaro/locallang.xlf:purposes.mycoolpurpose.title
    mycoolpurpose.group = custom
  }
  # Also copy this configuration to the `purpose_order` field of the klaro configuration
  tx_klaroconsentmanager_configuration.purpose_order.addItems < .tx_klaroconsentmanager_service.purposes.addItems
}
```

## XLIFF {#xliff}

In your [custom XLIFF](https://docs.typo3.org/permalink/erhaweb/klaro-consent-manager:howto-reference-xliff@3.0) file, create new labels
for your custom key:

```xml
<trans-unit id="purposes.mycoolpurpose.title">
    <source>My Cool Purpose</source>
</trans-unit>
<trans-unit id="purposes.mycoolpurpose.description">
    <source>This is the description of the new purpose.</source>
</trans-unit>
```

## Backend {#backend}

In the backend, the new purpose is now visible for services and as part of the
sorting in the Klaro configuration under the defined title.

![Custom purpose option in a TYPO3 backend service record](../../../Images/HowTo-CustomPurpose-Backend.png)

## Frontend {#frontend}

If the purpose of a service referenced in the Klaro configuration has been assigned, it also appears in the Consent Management modal in the frontend.

![Custom purpose displayed in the Klaro consent modal](../../../Images/HowTo-CustomPurpose-Frontend.png)
