---
title: "[EmailToSender]"
manual: "Form"
version: "14.3"
permalink: "https://docs.typo3.org/permalink/typo3/cms-form:prototypes-prototypeidentifier-finishersdefinition-emailtosender@14.3"
source: "I/Config/proto/finishersDefinition/finishers/EmailToSender.rst"
rendered: "2026-09-19T11:59:02+00:00"
---

# \[EmailToSender\] {#prototypes-prototypeidentifier-finishersdefinition-emailtosender}

## Properties {#prototypes-prototypeidentifier-finishersdefinitionemailtosender-properties}

### implementationClassName {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-implementationclassname}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.implementationClassName

-   ***Data type***

    string

-   ***Needed by***

    Frontend

-   ***Mandatory***

    Yes

-   ***Default value***

    ```yaml
    EmailToSender:
      implementationClassName: TYPO3\CMS\Form\Domain\Finishers\EmailFinisher
    ```

-   ***Good to know***

    -   ["Custom finisher implementations"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations@14.3)

-   ***Description***

    Classname which implements the finisher.

### options.subject {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-subject}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.subject

-   ***Data type***

    string

-   ***Needed by***

    Frontend

-   ***Mandatory***

    Yes

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)
    -   ["Translate finisher options"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-frontendrendering-translation-finishers@14.3)

-   ***Description***

    Subject of the email.

### options.recipients {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-recipients}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.recipients

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    Yes

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    Email addresses and names of the recipients (To).

    The form editor in the backend module provides a visual UI to enter an arbitrary
    amount of recipients.

    This option must contain a YAML hash with email addresses as keys and
    recipient names as values:

    ```yaml
    recipients:
      first@example.org: First Recipient
      second@example.org: Second Recipient
    ```

### options.senderAddress {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-senderaddress}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.senderAddress

-   ***Data type***

    string

-   ***Needed by***

    Frontend

-   ***Mandatory***

    Yes

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    Email address of the sender/ visitor (From).

### options.senderName {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-sendername}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.senderName

-   ***Data type***

    string

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    empty string

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    Human-readable name of the sender.

### options.replyToRecipients {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-replytorecipients}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.replyToRecipients

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    Email addresses of to be used as reply-to emails.

### options.carbonCopyRecipients {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-carboncopyrecipients}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.carbonCopyRecipients

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    Email addresses of the copy recipient.

### options.blindCarbonCopyRecipients {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-blindcarboncopyrecipients}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.blindCarbonCopyRecipients

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    Email address of the blind copy recipient.

### options.addHtmlPart {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-addhtmlpart}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.addHtmlPart

-   ***Data type***

    bool

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    true

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    If set, mails will contain a plaintext and HTML part, otherwise only a
    plaintext part. That way, it can be used to disable HTML and enforce
    plaintext-only mails.

### options.attachUploads {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-attachuploads}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.attachUploads

-   ***Data type***

    bool

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    true

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    If set, all uploaded items are attached to the email.

### options.title {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-title}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.title

-   ***Data type***

    string

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)

-   ***Description***

    The title, being shown in the email. The templates are based onFluidEmail.
    The template renders the title field in the header section right above the
    email body. Do not confuse this field with the subject of the email.

### options.translation.language {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-translation-language}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.translation.language

-   ***Data type***

    string

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)
    -   ["Translate finisher options"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-frontendrendering-translation-finishers@14.3)

-   ***Description***

    If not set, the finisher options are translated depending on the current frontend language (if translations exists).
    This option allows you to force translations for a given language isocode, e.g 'da' or 'de'.
    Read [Translate finisher options](https://docs.typo3.org/permalink/typo3/cms-form:concepts-frontendrendering-translation-finishers@14.3) for more informations.

### options.translation.propertiesExcludedFromTranslation {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-translation-propertiesexcludedfromtranslation}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.translation.propertiesExcludedFromTranslation

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)
    -   ["Translate finisher options"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-frontendrendering-translation-finishers@14.3)

-   ***Description***

    Localization from translation files will be skipped for all specified finisher options.

### options.translation.translationFiles {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-translation-translationfiles}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.translation.translationFiles

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)
    -   ["Accessing form runtime values"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor@14.3)
    -   ["Translate finisher options"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-frontendrendering-translation-finishers@14.3)

-   ***Description***

    If set, this translation file(s) will be used for finisher option translations.
    If not set, the translation file(s) from the 'Form' element will be used.
    Read [Translate finisher options](https://docs.typo3.org/permalink/typo3/cms-form:concepts-frontendrendering-translation-finishers@14.3) for more informations.

### options.partialRootPaths {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-partialrootpaths}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.partialRootPaths

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)

-   ***Description***

    Fluid layout paths.

### options.layoutRootPaths {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-layoutrootpaths}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.layoutRootPaths

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)

-   ***Description***

    Fluid partial paths.

### options.variables {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-options-variables}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.options.variables

-   ***Data type***

    array

-   ***Needed by***

    Frontend

-   ***Mandatory***

    No

-   ***Default value***

    undefined

-   ***Good to know***

    -   ["Email finisher"](https://docs.typo3.org/permalink/typo3/cms-form:apireference-finisheroptions-emailfinisher@14.3)

-   ***Description***

    Associative array of variables which are available inside the Fluid template.

### formeditor.iconIdentifier {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-formeditor-iconidentifier}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.formEditor.iconIdentifier

-   ***Data type***

    string

-   ***Needed by***

    Backend (form editor)

-   ***Mandatory***

    Yes

-   ***Default value***

    ```yaml
    EmailToSender:
      formEditor:
        iconIdentifier: form-finisher
        label: formEditor.elements.Form.finisher.EmailToSender.editor.header.label
    ```

-   ***Description***

    An icon identifier which must be registered through the `\TYPO3\CMS\Core\Imaging\IconRegistry`.
    This icon will be shown within the - ["Inspector \[CollectionElementHeaderEditor\]"](https://docs.typo3.org/permalink/typo3/cms-form:prototypes-prototypeidentifier-formelementsdefinition-formelementtypeidentifier-formeditor-editors-collectionelementheadereditor@14.3) if the finisher is selected.

### formeditor.label {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-formeditor-label}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.formEditor.label

-   ***Data type***

    string

-   ***Needed by***

    Backend (form editor)

-   ***Mandatory***

    Yes

-   ***Default value***

    ```yaml
    EmailToSender:
      formEditor:
        iconIdentifier: form-finisher
        label: formEditor.elements.Form.finisher.EmailToSender.editor.header.label
    ```

-   ***Good to know***

    -   ["Translate form editor settings"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-formeditor-translation-formeditor@14.3)

-   ***Description***

    This label will be shown within the - ["Inspector \[CollectionElementHeaderEditor\]"](https://docs.typo3.org/permalink/typo3/cms-form:prototypes-prototypeidentifier-formelementsdefinition-formelementtypeidentifier-formeditor-editors-collectionelementheadereditor@14.3) if the finisher is selected.

### formeditor.predefinedDefaults {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-formeditor-predefineddefaults}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.formEditor.predefinedDefaults

-   ***Data type***

    array

-   ***Needed by***

    Backend (form editor)

-   ***Mandatory***

    No

-   ***Default value***

    ```yaml
    EmailToSender:
      formEditor:
        iconIdentifier: form-finisher
        label: formEditor.elements.Form.finisher.EmailToSender.editor.header.label
        predefinedDefaults:
          options:
            subject: ''
            recipients: {  }
            senderAddress: ''
            senderName: ''
            replyToRecipients: {  }
            carbonCopyRecipients: {  }
            blindCarbonCopyRecipients: {  }
            addHtmlPart: true
            attachUploads: true
            translation:
              language: 'default'
            title: ''
    ```

-   ***Description***

    Defines predefined defaults for finisher options which are prefilled, if the finisher is added to a form.

### FormEngine.label {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-formengine-label}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.FormEngine.label

-   ***Data type***

    array

-   ***Needed by***

    Backend (plugin)

-   ***Mandatory***

    Yes

-   ***Default value***

    ```yaml
    EmailToSender:
      FormEngine:
        label: tt_content.finishersDefinition.EmailToSender.label
    ```

-   ***Good to know***

    -   ["Translate form plugin settings"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-formplugin-translation-formengine@14.3)

-   ***Description***

    Finisher options are overwritable within the `form plugin`.
    If the "Override finisher settings" checkbox is selected within the `form plugin`, every finisher who has a - ["FormEngine"](https://docs.typo3.org/permalink/typo3/cms-form:prototypes-prototypeidentifier-finishersdefinition-finisheridentifier-formengine@14.3) configuration, is shown in a separate tab.
    `label` is the label for such a tab.

### FormEngine.elements {#prototypes-prototypeidentifier-finishersdefinition-emailtosender-formengine-elements}

-   ***Option path***

    prototypes.\<prototypeIdentifier>.finishersDefinition.EmailToSender.FormEngine.elements

-   ***Data type***

    array

-   ***Needed by***

    Backend (plugin)

-   ***Mandatory***

    Yes

-   ***Default value***

    ```yaml
    EmailToSender:
      FormEngine:
        label: tt_content.finishersDefinition.EmailToSender.label
        elements:
          subject:
            label: tt_content.finishersDefinition.EmailToSender.subject.label
            config:
              type: input
              required: true
          recipients:
            title: tt_content.finishersDefinition.EmailToSender.recipients.label
            type: array
            section: true
            sectionItemKey: email
            sectionItemValue: name
            el:
              _arrayContainer:
                type: array
                title: tt_content.finishersDefinition.EmailToSender.recipients.item.label
                el:
                  email:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
                    config:
                      type: email
                      required: true
                  name:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
                    config:
                      type: input
          senderAddress:
            label: tt_content.finishersDefinition.EmailToSender.senderAddress.label
            config:
              type: input
              required: true
          senderName:
            label: tt_content.finishersDefinition.EmailToSender.senderName.label
            config:
              type: input
          replyToRecipients:
            title: tt_content.finishersDefinition.EmailToSender.replyToRecipients.label
            type: array
            section: true
            sectionItemKey: email
            sectionItemValue: name
            el:
              _arrayContainer:
                type: array
                title: tt_content.finishersDefinition.EmailToSender.replyToRecipients.item.label
                el:
                  email:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
                    config:
                      type: email
                      required: true
                  name:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
                    config:
                      type: input
          carbonCopyRecipients:
            title: tt_content.finishersDefinition.EmailToSender.carbonCopyRecipients.label
            type: array
            section: true
            sectionItemKey: email
            sectionItemValue: name
            el:
              _arrayContainer:
                type: array
                title: tt_content.finishersDefinition.EmailToSender.carbonCopyRecipients.item.label
                el:
                  email:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
                    config:
                      type: email
                      required: true
                  name:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
                    config:
                      type: input
          blindCarbonCopyRecipients:
            title: tt_content.finishersDefinition.EmailToSender.blindCarbonCopyRecipients.label
            type: array
            section: true
            sectionItemKey: email
            sectionItemValue: name
            el:
              _arrayContainer:
                type: array
                title: tt_content.finishersDefinition.EmailToSender.blindCarbonCopyRecipients.item.label
                el:
                  email:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
                    config:
                      type: email
                      required: true
                  name:
                    label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
                    config:
                      type: input
          addHtmlPart:
            label: tt_content.finishersDefinition.EmailToSender.addHtmlPart.label
            config:
              type: check
              default: 1
          translation:
            language:
              label: tt_content.finishersDefinition.EmailToSender.language.label
              config:
                type: select
                renderType: selectSingle
                minitems: 1
                maxitems: 1
                size: 1
                items:
                  10:
                    - tt_content.finishersDefinition.EmailToSender.language.1
                    - default
          title:
            label: tt_content.finishersDefinition.EmailToSender.title.label
            config:
              type: input
    ```

-   ***Good to know***

    -   ["Translate form plugin settings"](https://docs.typo3.org/permalink/typo3/cms-form:concepts-formplugin-translation-formengine@14.3)

-   ***Description***

    Every array key must match to the related finisher option name.
    For example, the - ["\[Redirect\] finisher"](https://docs.typo3.org/permalink/typo3/cms-form:prototypes-prototypeidentifier-finishersdefinition-redirect@14.3) has the option - ["pageUid"](https://docs.typo3.org/permalink/typo3/cms-form:prototypes-prototypeidentifier-finishersdefinition-redirect-options-pageuid@14.3).
    If you want to make the `pageUid` overwritable within the `form plugin`, then an array key `pageUid` has to exists within `prototypes.prototypeIdentifier.finishersDefinition.finisheridentifier.FormEngine.elements`.
    The configuration within `prototypes.prototypeIdentifier.finishersDefinition.Redirect.FormEngine.elements.pageUid` must follow the TCA syntax.
