diff --git a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts
index b91293c81d9c0bc662f2ba91cbc1a14a03b9b548..eb3c618504707e0ab04322b655320bc57cdb9709 100644
--- a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts
+++ b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components.ts
@@ -25,7 +25,7 @@ export class VorgangFormularButtonsE2EComponent {
   private readonly abschliessenButton: string = 'abschliessen-button';
   private readonly annehmenButton: string = 'annehmen-button';
   private readonly bearbeitenButton: string = 'bearbeiten-button';
-  private readonly forwardButton: string = 'forward-by-ozgcloud-button';
+  private readonly forwardButton: string = 'forwarding-button';
   private readonly bescheidenButton: string = 'bescheiden-button';
   private readonly endgueltigLoeschenButton: string = 'endgueltig-loeschen-button';
   private readonly loeschAnforderungZuruecknehmenButton: string = 'loesch-anforderung-zuruecknehmen-button';
diff --git a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward-by-ozgcloud.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.ts
similarity index 100%
rename from alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward-by-ozgcloud.cy.ts
rename to alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.ts
diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward-by-ozgcloud.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward.ts
similarity index 100%
rename from alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward-by-ozgcloud.cy.ts
rename to alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward.ts
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.html b/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.html
deleted file mode 100644
index b49a93cae8a97f0cf12a2e10c50abacc140ab8b6..0000000000000000000000000000000000000000
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.html
+++ /dev/null
@@ -1 +0,0 @@
-<admin-delete-open-dialog-button />
\ No newline at end of file
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.spec.ts b/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.spec.ts
deleted file mode 100644
index ec691fc665e848da93f5c649141ec8d34c180e61..0000000000000000000000000000000000000000
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.spec.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { UserFormDeleteButtonContainerComponent } from './user-form-delete-button-container.component';
-
-describe('UserFormDeleteButtonComponent', () => {
-  let component: UserFormDeleteButtonContainerComponent;
-  let fixture: ComponentFixture<UserFormDeleteButtonContainerComponent>;
-
-  beforeEach(async () => {
-    await TestBed.configureTestingModule({
-      imports: [UserFormDeleteButtonContainerComponent],
-    }).compileComponents();
-
-    fixture = TestBed.createComponent(UserFormDeleteButtonContainerComponent);
-    component = fixture.componentInstance;
-    fixture.detectChanges();
-  });
-
-  it('should create', () => {
-    expect(component).toBeTruthy();
-  });
-});
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.ts b/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.ts
deleted file mode 100644
index 2c66a5500b2e177a0f0a39aedad3f1ccd5e7e3e9..0000000000000000000000000000000000000000
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form-delete-button/user-form-delete-button-container.component.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import { AdminDeleteOpenDialogButtonComponent } from '@admin-client/shared';
-import { DIALOG_COMPONENT } from '@alfa-client/ui';
-import { Component } from '@angular/core';
-import { UserDeleteDialogContainerComponent } from '../user-form-delete-dialog-container/user-delete-dialog-container.component';
-
-@Component({
-  selector: 'admin-user-form-delete-container-button',
-  standalone: true,
-  imports: [AdminDeleteOpenDialogButtonComponent],
-  providers: [{ provide: DIALOG_COMPONENT, useValue: UserDeleteDialogContainerComponent }],
-  templateUrl: './user-form-delete-button-container.component.html',
-})
-export class UserFormDeleteButtonContainerComponent {}
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.html b/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.html
index 5ce59646fde16f7fd3299848b2615f318685e536..101227318be65fd7a14324f401d3fadfb7ceca49 100644
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.html
+++ b/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.html
@@ -35,7 +35,7 @@
     <div class="flex justify-between">
       <admin-user-form-save-button />
       @if (formService.isPatch()) {
-        <admin-user-form-delete-container-button data-test-id="delete-button-container"/>
+        <admin-delete-open-dialog-button data-test-id="delete-button-container"/>
       }
     </div>
   </div>
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.spec.ts b/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.spec.ts
index 160ab43ceea91f4c2fd18bc37ca506e99edfa033..fdfb961a94c43f26d9fbbcaf7bba52bf8e8e066d 100644
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.spec.ts
+++ b/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.spec.ts
@@ -21,6 +21,7 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
+import { AdminDeleteOpenDialogButtonComponent } from '@admin-client/shared';
 import { User } from '@admin-client/user-shared';
 import { createEmptyStateResource, createStateResource, StateResource } from '@alfa-client/tech-shared';
 import { existsAsHtmlElement, getMockComponent, mock, Mock, notExistsAsHtmlElement } from '@alfa-client/test-utils';
@@ -68,6 +69,7 @@ describe('UserFormComponent', () => {
         MockComponent(UserFormOrganisationsEinheitListComponent),
         MockComponent(UserFormRolesComponent),
         MockComponent(UserFormHeadlineComponent),
+        MockComponent(AdminDeleteOpenDialogButtonComponent),
       ],
       providers: [{ provide: DIALOG_COMPONENT, useValue: {} }],
     })
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.ts b/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.ts
index a533ff55e37698883943902df16183dc776b22c2..0bcae1640c4ee01122bf83091f51d4eccc1e9d3f 100644
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.ts
+++ b/alfa-client/libs/admin/user/src/lib/user-form/user-form.component.ts
@@ -21,15 +21,17 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
+import { AdminDeleteOpenDialogButtonComponent } from '@admin-client/shared';
 import { User } from '@admin-client/user-shared';
 import { StateResource } from '@alfa-client/tech-shared';
+import { DIALOG_COMPONENT } from '@alfa-client/ui';
 import { AsyncPipe } from '@angular/common';
 import { Component, inject, OnInit } from '@angular/core';
 import { FormsModule, ReactiveFormsModule } from '@angular/forms';
 import { SpinnerComponent } from '@ods/component';
 import { Observable } from 'rxjs';
 import { UserFormDataComponent } from './user-form-data/user-form-data.component';
-import { UserFormDeleteButtonContainerComponent } from './user-form-delete-button/user-form-delete-button-container.component';
+import { UserDeleteDialogContainerComponent } from './user-form-delete-dialog-container/user-delete-dialog-container.component';
 import { UserFormHeadlineComponent } from './user-form-headline/user-form-headline.component';
 import { UserFormOrganisationsEinheitListComponent } from './user-form-organisations-einheit-list/user-form-organisations-einheit-list.component';
 import { UserFormRolesComponent } from './user-form-roles/user-form-roles.component';
@@ -38,7 +40,7 @@ import { UserFormService } from './user.formservice';
 
 @Component({
   selector: 'admin-user-form',
-  providers: [UserFormService],
+  providers: [UserFormService, { provide: DIALOG_COMPONENT, useValue: UserDeleteDialogContainerComponent }],
   templateUrl: './user-form.component.html',
   standalone: true,
   imports: [
@@ -51,7 +53,7 @@ import { UserFormService } from './user.formservice';
     UserFormOrganisationsEinheitListComponent,
     UserFormHeadlineComponent,
     UserFormSaveButtonComponent,
-    UserFormDeleteButtonContainerComponent,
+    AdminDeleteOpenDialogButtonComponent,
   ],
 })
 export class UserFormComponent implements OnInit {
diff --git a/alfa-client/libs/design-component/src/lib/button-with-spinner/button-with-spinner.component.ts b/alfa-client/libs/design-component/src/lib/button-with-spinner/button-with-spinner.component.ts
index a12b0a8ad74b49d34ec172ae36682d7d0ce01104..4c1ebd4cfe3750fb12e7f5e05d8562fd49559b63 100644
--- a/alfa-client/libs/design-component/src/lib/button-with-spinner/button-with-spinner.component.ts
+++ b/alfa-client/libs/design-component/src/lib/button-with-spinner/button-with-spinner.component.ts
@@ -44,6 +44,7 @@ type ButtonVariants = VariantProps<typeof buttonVariants>;
       [size]="size"
       [dataTestId]="dataTestId"
       [isLoading]="isLoading"
+      [disabled]="disabled"
       (click)="clickEmitter.emit()"
     >
       <ng-content icon select="[icon]" />
@@ -57,6 +58,7 @@ export class ButtonWithSpinnerComponent {
   @Input() dataTestId: string = '';
   @Input() variant: ButtonVariants['variant'] = 'primary';
   @Input() size: ButtonVariants['size'] = 'medium';
+  @Input() disabled: boolean = false;
 
   @Output() public clickEmitter: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();
 
diff --git a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts
index 110c81e4d4072ef0417676ea9966a7fa3394f144..6adabee9688a1af7ac880621d85af1a90e04c326 100644
--- a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts
+++ b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts
@@ -1,4 +1,4 @@
-import { dispatchEventFromFixture, mock, Mock, MockEvent } from '@alfa-client/test-utils';
+import { dispatchEventFromFixture, existsAsHtmlElement, mock, Mock, MockEvent } from '@alfa-client/test-utils';
 import { OzgcloudDialogService } from '@alfa-client/ui';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonComponent } from '@ods/system';
@@ -12,7 +12,8 @@ describe('CancelDialogButtonComponent', () => {
 
   let dialogService: Mock<OzgcloudDialogService>;
 
-  const cancelDialog: string = getDataTestIdOf('cancel-dialog');
+  const cancelDialogButton: string = getDataTestIdOf('cancel-dialog-button');
+  const cancelDialogIconButton: string = getDataTestIdOf('cancel-dialog-icon-button');
 
   beforeEach(async () => {
     dialogService = mock(OzgcloudDialogService);
@@ -39,9 +40,51 @@ describe('CancelDialogButtonComponent', () => {
 
   describe('on button click', () => {
     it('should call dialog service to close all', () => {
-      dispatchEventFromFixture(fixture, cancelDialog, MockEvent.CLICK);
+      dispatchEventFromFixture(fixture, cancelDialogButton, MockEvent.CLICK);
 
       expect(dialogService.closeAll).toHaveBeenCalled();
     });
   });
+
+  describe('template', () => {
+    describe('button', () => {
+      beforeEach(() => {
+        component.showAsIconButton = false;
+
+        fixture.detectChanges();
+      });
+
+      it('should be visible when showAsIconButton is false', () => {
+        existsAsHtmlElement(fixture, cancelDialogButton);
+      });
+
+      it('should call dialog service to close all', () => {
+        dispatchEventFromFixture(fixture, cancelDialogButton, MockEvent.CLICK);
+
+        expect(dialogService.closeAll).toHaveBeenCalled();
+      });
+    });
+
+    describe('icon button', () => {
+      beforeEach(() => {
+        component.showAsIconButton = true;
+
+        fixture.detectChanges();
+      });
+
+      it('should be visible when showAsIconButton is true', () => {
+        component.showAsIconButton = true;
+
+        fixture.detectChanges();
+
+        existsAsHtmlElement(fixture, cancelDialogIconButton);
+      });
+
+      it('should call dialog service to close all', () => {
+        dispatchEventFromFixture(fixture, cancelDialogIconButton, MockEvent.CLICK);
+
+        expect(dialogService.closeAll).toHaveBeenCalled();
+      });
+    });
+  });
 });
diff --git a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts
index 5d80db0f4e7755c1a2bd9ae9eb7b921c3cf58349..7c41c1bbcdc747090c0aa5bfc64185c577c99fe3 100644
--- a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts
+++ b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts
@@ -1,22 +1,40 @@
 import { OzgcloudDialogService } from '@alfa-client/ui';
-import { Component, inject } from '@angular/core';
-import { ButtonComponent } from '@ods/system';
+import { Component, inject, Input } from '@angular/core';
+import { ButtonComponent, CloseIconComponent, TooltipDirective } from '@ods/system';
 
 @Component({
   selector: 'ods-cancel-dialog-button',
   standalone: true,
-  imports: [ButtonComponent],
-  template: `<ods-button
-    (clickEmitter)="cancel()"
-    variant="outline"
-    text="Abbrechen"
-    dataTestId="cancel-dialog"
-    data-test-id="cancel-dialog"
-  />`,
+  imports: [ButtonComponent, CloseIconComponent, TooltipDirective],
+  template: ` @if (showAsIconButton) {
+      <ods-button
+        (clickEmitter)="cancel()"
+        [tooltip]="'Schließen'"
+        tooltipAriaType="aria-labelledby"
+        variant="ghost"
+        size="fit"
+        dataTestId="cancel-dialog-icon-button"
+        data-test-id="cancel-dialog-icon-button"
+      >
+        <ng-container icon>
+          <ods-close-icon class="fill-primary" />
+        </ng-container>
+      </ods-button>
+    } @else {
+      <ods-button
+        (clickEmitter)="cancel()"
+        variant="outline"
+        text="Abbrechen"
+        dataTestId="cancel-dialog-button"
+        data-test-id="cancel-dialog-button"
+      />
+    }`,
 })
 export class CancelDialogButtonComponent {
   public readonly dialogService = inject(OzgcloudDialogService);
 
+  @Input() showAsIconButton: boolean = false;
+
   public cancel(): void {
     this.dialogService.closeAll();
   }
diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts
index eda668409767d19830222cb490f11f1608efff9b..d05d44db8ce46777152a6f48145ac2000dd5d0a3 100644
--- a/alfa-client/libs/design-system/src/index.ts
+++ b/alfa-client/libs/design-system/src/index.ts
@@ -41,6 +41,7 @@ export * from './lib/form/file-upload-button/file-upload-button.component';
 export * from './lib/form/radio-button-card/radio-button-card.component';
 export * from './lib/form/text-input/text-input.component';
 export * from './lib/form/textarea/textarea.component';
+export * from './lib/forwarding-item/forwarding-item.component';
 export * from './lib/icons/accessibility-icon/accessibility-icon.component';
 export * from './lib/icons/account-circle-icon/account-circle-icon.component';
 export * from './lib/icons/admin-logo-icon/admin-logo-icon.component';
diff --git a/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.spec.ts b/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.spec.ts
index 974db9b7c5c5dc93f83768157da9d570cfb0a2d3..32ba66bd623c7a1c2609cba72f5e0f877f59207c 100644
--- a/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.spec.ts
+++ b/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.spec.ts
@@ -88,12 +88,16 @@ describe('TextInputComponent', () => {
     it('should focus', () => {
       component.focus = true;
 
+      component.ngAfterViewInit();
+
       expect(component.inputElement.nativeElement.focus).toHaveBeenCalled();
     });
 
     it('should not focus', () => {
       component.focus = false;
 
+      component.ngAfterViewInit();
+
       expect(component.inputElement.nativeElement.focus).not.toHaveBeenCalled();
     });
   });
diff --git a/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.ts b/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.ts
index 1b8bf5fdf47948bbc9374b01086238c3e41c0ac3..cd01ba0190c68b4f9fec34f3e94496e6d86f73aa 100644
--- a/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.ts
+++ b/alfa-client/libs/design-system/src/lib/form/text-input/text-input.component.ts
@@ -21,9 +21,9 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { convertForDataTest, ConvertForDataTestPipe, EMPTY_STRING, isNotUndefined } from '@alfa-client/tech-shared';
+import { convertForDataTest, EMPTY_STRING, isNotUndefined } from '@alfa-client/tech-shared';
 import { CommonModule } from '@angular/common';
-import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
+import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
 import { FormControl, ReactiveFormsModule } from '@angular/forms';
 import { cva, VariantProps } from 'class-variance-authority';
 import { uniqueId } from 'lodash-es';
@@ -51,7 +51,7 @@ type TextInputVariants = VariantProps<typeof textInputVariants>;
 @Component({
   selector: 'ods-text-input',
   standalone: true,
-  imports: [CommonModule, ReactiveFormsModule, ConvertForDataTestPipe],
+  imports: [CommonModule, ReactiveFormsModule],
   template: `
     <div class="relative">
       <label *ngIf="showLabel" [for]="id" class="text-md mb-2 block font-medium text-text">
@@ -82,7 +82,7 @@ type TextInputVariants = VariantProps<typeof textInputVariants>;
     </div>
   `,
 })
-export class TextInputComponent {
+export class TextInputComponent implements AfterViewInit {
   @ViewChild('inputElement') inputElement: ElementRef;
 
   @Input({ required: true }) set label(label: string) {
@@ -98,20 +98,19 @@ export class TextInputComponent {
   @Input() withPrefix: boolean = false;
   @Input() withSuffix: boolean = false;
   @Input() showLabel: boolean = true;
+  @Input() focus: boolean = false;
   @Input() set dataTestId(value: string) {
     if (isNotUndefined(value)) this._dataTestId = value;
   }
 
-  @Input() set focus(value: boolean) {
-    if (value && this.inputElement) {
-      this.inputElement.nativeElement.focus();
-    }
-  }
-
   @Output() clickEmitter: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();
 
   inputLabel: string;
   id: string;
   _dataTestId: string;
   textInputVariants = textInputVariants;
+
+  ngAfterViewInit() {
+    if (this.focus) this.inputElement.nativeElement.focus();
+  }
 }
diff --git a/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.component.spec.ts b/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..5700f028372d57391a28997d4f8e7429d9f73a5c
--- /dev/null
+++ b/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.component.spec.ts
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { ForwardingItemComponent } from './forwarding-item.component';
+
+describe('ForwardingItemComponent', () => {
+  let component: ForwardingItemComponent;
+  let fixture: ComponentFixture<ForwardingItemComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [ForwardingItemComponent],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingItemComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.component.ts b/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..7f8ebfd800c662910c5ec0905935c3d12487b7f3
--- /dev/null
+++ b/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.component.ts
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+import { CommonModule } from '@angular/common';
+import { Component, Input } from '@angular/core';
+import { ForwardVorgangIconComponent } from '../icons/forward-vorgang-icon/forward-vorgang-icon.component';
+
+export enum ForwardingDirection {
+  FROM = 'Weitergeleitet von',
+  TO = 'An',
+}
+
+@Component({
+  selector: 'ods-forwarding-item',
+  standalone: true,
+  imports: [CommonModule, ForwardVorgangIconComponent],
+  template: `<div
+    class="flex flex-col items-start justify-between gap-2 rounded-lg border border-grayborder p-3 md:flex-row md:items-center md:gap-0"
+  >
+    <div class="flex gap-3">
+      <ods-forward-vorgang-icon class="fill-text" />
+      <p class="text-gray-500">{{ direction }}:</p>
+      <div>
+        <p class="font-medium">{{ label }}</p>
+        <p>{{ address }}</p>
+      </div>
+    </div>
+    <div class="text-end empty:hidden">
+      <ng-content />
+    </div>
+  </div>`,
+})
+export class ForwardingItemComponent {
+  @Input({ required: true }) label!: string;
+  @Input({ required: true }) address!: string;
+  @Input() direction: ForwardingDirection = ForwardingDirection.TO;
+}
diff --git a/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.stories.ts b/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.stories.ts
new file mode 100644
index 0000000000000000000000000000000000000000..53d2116e9f314c9e2194cd8a9ff7c72e39dd1b12
--- /dev/null
+++ b/alfa-client/libs/design-system/src/lib/forwarding-item/forwarding-item.stories.ts
@@ -0,0 +1,92 @@
+/*
+ * Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+import { argsToTemplate, moduleMetadata, type Meta, type StoryObj } from '@storybook/angular';
+
+import { ButtonComponent } from '../button/button.component';
+import { ForwardingDirection, ForwardingItemComponent } from './forwarding-item.component';
+
+const label: string = 'Bund für Umwelt und Naturschutz Kreisgruppe Kiel';
+const address: string = 'Kaiserstraße 25, 12443 Kiel';
+
+const meta: Meta<ForwardingItemComponent> = {
+  title: 'Forwarding item',
+  component: ForwardingItemComponent,
+  parameters: {
+    docs: {
+      description: {
+        component: 'Information of forwarded item',
+      },
+    },
+  },
+  decorators: [
+    moduleMetadata({
+      imports: [ForwardingItemComponent, ButtonComponent],
+    }),
+  ],
+  excludeStories: /.*Data$/,
+  tags: ['autodocs'],
+};
+
+export default meta;
+type Story = StoryObj<ForwardingItemComponent>;
+
+export const Default: Story = {
+  args: {
+    label: label,
+    address: address,
+    direction: ForwardingDirection.TO,
+  },
+  argTypes: {
+    direction: { control: 'select', options: [ForwardingDirection.TO, ForwardingDirection.FROM] },
+  },
+};
+
+export const WithButton: Story = {
+  args: {
+    label: label,
+    address: address,
+  },
+
+  render: (args: ForwardingItemComponent) => ({
+    props: args,
+    template: `<ods-forwarding-item ${argsToTemplate(args)}>
+        <ods-button variant="outline" text="Stelle ändern" />
+      </ods-forwarding-item>`,
+  }),
+};
+
+export const WithCreationInfo: Story = {
+  args: {
+    label: label,
+    address: address,
+    direction: ForwardingDirection.FROM,
+  },
+  render: (args: ForwardingItemComponent) => ({
+    props: args,
+    template: `<ods-forwarding-item ${argsToTemplate(args)}>
+        <p>20. Dez. 09:35</p>
+        <p class="text-sm">Karin Wanowski-Müller</p>
+      </ods-forwarding-item>`,
+  }),
+};
diff --git a/alfa-client/libs/design-system/src/lib/instant-search/instant-search/instant-search.component.ts b/alfa-client/libs/design-system/src/lib/instant-search/instant-search/instant-search.component.ts
index 05bd9d0120ab93428f1786c24a77a4b7f6eadf33..48a8a502165e5795ba32bd93485def62486d4de9 100644
--- a/alfa-client/libs/design-system/src/lib/instant-search/instant-search/instant-search.component.ts
+++ b/alfa-client/libs/design-system/src/lib/instant-search/instant-search/instant-search.component.ts
@@ -62,6 +62,7 @@ import { InstantSearchQuery, InstantSearchResult } from './instant-search.model'
       [placeholder]="placeholder"
       [attr.aria-expanded]="results.length"
       [control]="control"
+      [focusOnInput]="focusOnSearchField"
       aria-controls="results"
       (inputClicked)="showResults()"
       (searchQueryCleared)="searchQueryCleared.emit()"
@@ -90,6 +91,7 @@ export class InstantSearchComponent implements OnInit, OnDestroy {
   @Input() placeholder: string = EMPTY_STRING;
   @Input() headerText: string = EMPTY_STRING;
   @Input() control: FormControl<string> = new FormControl(EMPTY_STRING);
+  @Input() focusOnSearchField: boolean = false;
 
   @Input() set searchResults(searchResults: InstantSearchResult<Resource>[]) {
     if (!isEqual(searchResults, this.results) && isNotNil(searchResults)) {
diff --git a/alfa-client/libs/design-system/src/lib/instant-search/search-field/search-field.component.ts b/alfa-client/libs/design-system/src/lib/instant-search/search-field/search-field.component.ts
index 7d8141a461626c6dee05d91262423f2d1a011470..2f45e945d817ca874dc2bec1b927aac498240999 100644
--- a/alfa-client/libs/design-system/src/lib/instant-search/search-field/search-field.component.ts
+++ b/alfa-client/libs/design-system/src/lib/instant-search/search-field/search-field.component.ts
@@ -37,6 +37,7 @@ import { SearchIconComponent } from '../../icons/search-icon/search-icon.compone
     label="instant search"
     [fieldControl]="control"
     [placeholder]="placeholder"
+    [focus]="focusOnInput"
     [withPrefix]="true"
     [withSuffix]="true"
     [showLabel]="false"
@@ -44,13 +45,7 @@ import { SearchIconComponent } from '../../icons/search-icon/search-icon.compone
     role="combobox"
   >
     <ods-search-icon prefix aria-hidden="true" aria-label="Suchfeld" />
-    <button
-      suffix
-      *ngIf="control.value"
-      (click)="clearInput()"
-      aria-label="Eingabe löschen"
-      data-test-id="clear-instant-search"
-    >
+    <button suffix *ngIf="control.value" (click)="clearInput()" aria-label="Eingabe löschen" data-test-id="clear-instant-search">
       <ods-close-icon class="fill-primary hover:fill-primary-hover" />
     </button>
   </ods-text-input>`,
@@ -58,6 +53,7 @@ import { SearchIconComponent } from '../../icons/search-icon/search-icon.compone
 export class SearchFieldComponent {
   @Input() placeholder: string = EMPTY_STRING;
   @Input() control: FormControl<string> = new FormControl(EMPTY_STRING);
+  @Input() focusOnInput: boolean = false;
 
   @Output() inputClicked: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();
   @Output() searchQueryCleared: EventEmitter<MouseEvent> = new EventEmitter<MouseEvent>();
diff --git a/alfa-client/libs/forwarding/src/index.ts b/alfa-client/libs/forwarding/src/index.ts
index 24d937c3408da87eef49107297ff05faf4ffd709..49ebdccb493b46cfb0c7565d0635dfb7ee617d18 100644
--- a/alfa-client/libs/forwarding/src/index.ts
+++ b/alfa-client/libs/forwarding/src/index.ts
@@ -21,6 +21,6 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-export * from './lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component';
+export * from './lib/forwarding-button-container/forwarding-button-container.component';
+export * from './lib/forwarding-by-email-container/forwarding-by-email-container.component';
 export * from './lib/forwarding.module';
-export * from './lib/vorgang-forwarding-container/vorgang-forwarding-container.component';
diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts
deleted file mode 100644
index f5fbad7ed1280171822f6746847c08887dbaff75..0000000000000000000000000000000000000000
--- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-import { HasLinkPipe } from '@alfa-client/tech-shared';
-import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
-import { CommonModule } from '@angular/common';
-import { Component, Input } from '@angular/core';
-import { ButtonWithSpinnerComponent } from '@ods/component';
-import { ForwardVorgangIconComponent, TooltipDirective } from '@ods/system';
-
-@Component({
-  selector: 'alfa-forward-by-ozgcloud-button-container',
-  standalone: true,
-  imports: [CommonModule, ButtonWithSpinnerComponent, ForwardVorgangIconComponent, TooltipDirective, HasLinkPipe],
-  templateUrl: './forward-by-ozgcloud-button-container.component.html',
-  styles: [':host {@apply empty:hidden}'],
-})
-export class ForwardByOzgcloudButtonContainerComponent {
-  @Input() vorgangWithEingang: VorgangWithEingangResource;
-  @Input() showAsIconButton: boolean = false;
-
-  public readonly vorgangWithEingangLinkRel = VorgangWithEingangLinkRel;
-}
diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.html
similarity index 51%
rename from alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.html
index 6afe4a115c084140ff69e8b5351c1c2fd9804406..bdf8537e74921852fa7d6d5c614dacc7179b1cf4 100644
--- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.html
@@ -1,17 +1,17 @@
 @if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) {
   @if (showAsIconButton) {
-    <ods-button-with-spinner
+    <ods-open-dialog-button
       [tooltip]="'Vorgang weiterleiten'"
       tooltipAriaType="aria-labelledby"
       variant="ghost"
       size="fit"
-      dataTestId="forward-by-ozgcloud-icon-button"
+      dataTestId="forwarding-icon-button"
     >
       <ods-forward-vorgang-icon icon class="fill-text" />
-    </ods-button-with-spinner>
+    </ods-open-dialog-button>
   } @else {
-    <ods-button-with-spinner text="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button">
-      <ods-forward-vorgang-icon icon />
-    </ods-button-with-spinner>
+    <ods-open-dialog-button label="Weiterleiten" variant="outline" dataTestId="forwarding-button">
+      <ods-forward-vorgang-icon icon class="fill-primary" />
+    </ods-open-dialog-button>
   }
 }
diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.spec.ts
similarity index 75%
rename from alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.spec.ts
index 8aab319a28e6ed8a3cd49270fdd27a42e2ed09f3..64f911229dabdbf02698f7d1faddff016383be75 100644
--- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.spec.ts
@@ -2,31 +2,31 @@ import { HasLinkPipe } from '@alfa-client/tech-shared';
 import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { ButtonWithSpinnerComponent } from '@ods/component';
+import { OpenDialogButtonComponent } from '@ods/component';
 import { ForwardVorgangIconComponent, TooltipDirective } from '@ods/system';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { MockComponent, MockDirective } from 'ng-mocks';
-import { ForwardByOzgcloudButtonContainerComponent } from './forward-by-ozgcloud-button-container.component';
+import { ForwardingButtonContainerComponent } from './forwarding-button-container.component';
 
-describe('ForwardByOzgcloudButtonContainerComponent', () => {
-  let component: ForwardByOzgcloudButtonContainerComponent;
-  let fixture: ComponentFixture<ForwardByOzgcloudButtonContainerComponent>;
+describe('ForwardingButtonContainerComponent', () => {
+  let component: ForwardingButtonContainerComponent;
+  let fixture: ComponentFixture<ForwardingButtonContainerComponent>;
 
-  const iconButton: string = getDataTestIdAttributeOf('forward-by-ozgcloud-icon-button');
-  const button: string = getDataTestIdAttributeOf('forward-by-ozgcloud-button');
+  const iconButton: string = getDataTestIdAttributeOf('forwarding-icon-button');
+  const button: string = getDataTestIdAttributeOf('forwarding-button');
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
-      imports: [ForwardByOzgcloudButtonContainerComponent, HasLinkPipe],
+      imports: [ForwardingButtonContainerComponent, HasLinkPipe],
       declarations: [
-        MockComponent(ButtonWithSpinnerComponent),
+        MockComponent(OpenDialogButtonComponent),
         MockComponent(ForwardVorgangIconComponent),
         MockDirective(TooltipDirective),
       ],
     }).compileComponents();
 
-    fixture = TestBed.createComponent(ForwardByOzgcloudButtonContainerComponent);
+    fixture = TestBed.createComponent(ForwardingButtonContainerComponent);
     component = fixture.componentInstance;
     fixture.detectChanges();
   });
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..0f6d13f6a511dfed30763f27404380391a873e00
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-button-container/forwarding-button-container.component.ts
@@ -0,0 +1,23 @@
+import { HasLinkPipe } from '@alfa-client/tech-shared';
+import { DIALOG_COMPONENT } from '@alfa-client/ui';
+import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
+import { CommonModule } from '@angular/common';
+import { Component, Input } from '@angular/core';
+import { OpenDialogButtonComponent } from '@ods/component';
+import { ForwardVorgangIconComponent, TooltipDirective } from '@ods/system';
+import { ForwardingDialogContainerComponent } from '../forwarding-dialog-container/forwarding-dialog-container.component';
+
+@Component({
+  selector: 'alfa-forwarding-button-container',
+  standalone: true,
+  imports: [CommonModule, ForwardVorgangIconComponent, TooltipDirective, HasLinkPipe, OpenDialogButtonComponent],
+  templateUrl: './forwarding-button-container.component.html',
+  providers: [{ provide: DIALOG_COMPONENT, useValue: ForwardingDialogContainerComponent }],
+  styles: [':host {@apply empty:hidden}'],
+})
+export class ForwardingButtonContainerComponent {
+  @Input() vorgangWithEingang: VorgangWithEingangResource;
+  @Input() showAsIconButton: boolean = false;
+
+  public readonly vorgangWithEingangLinkRel = VorgangWithEingangLinkRel;
+}
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.html
similarity index 88%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.html
index 2698ddc7e78cbb2a6b8c6d0a4a6bbd67806ecc85..6f6b5fecf630fc540d9be10a2ff9fa40897fef97 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.html
@@ -30,15 +30,15 @@
     *ngIf="forwardingStateResources$ | async as forwardingStateResources"
   >
     <ozgcloud-spinner [stateResource]="forwardingStateResources">
-      <alfa-vorgang-forwarding-info-list [forwardingList]="forwardingStateResources"></alfa-vorgang-forwarding-info-list>
+      <alfa-forwarding-by-email-info-list [forwardingList]="forwardingStateResources"></alfa-forwarding-by-email-info-list>
     </ozgcloud-spinner>
 
-    <alfa-vorgang-forward-formular
+    <alfa-forward-by-email-formular
       data-test-id="forward-formular"
       [vorgang]="vorgang"
       [pendingForwardCommand]="pendingForwardStateResource$ | async"
       (doSubmit)="submit()"
     >
-    </alfa-vorgang-forward-formular>
+    </alfa-forward-by-email-formular>
   </ozgcloud-expansion-panel>
 </ng-container>
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.scss b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.scss
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.scss
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.scss
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.spec.ts
similarity index 84%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.spec.ts
index 25691e2e369a3024d426d9a1e7a4e8976b37d228..a4dd016d064b1e6d4c377d4f37518d8f9811eb84 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.spec.ts
@@ -32,16 +32,16 @@ import { createCommandResource } from 'libs/command-shared/test/command';
 import { createVorgangForwardRequest, createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { MockComponent } from 'ng-mocks';
 import { of } from 'rxjs';
-import { VorgangForwardFormService } from './vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice';
-import { VorgangForwardFormularComponent } from './vorgang-forward-formular/vorgang-forward-formular.component';
-import { VorgangForwardingContainerComponent } from './vorgang-forwarding-container.component';
-import { VorgangForwardingInfoListComponent } from './vorgang-forwarding-info-list/vorgang-forwarding-info-list.component';
+import { ForwardingByEmailContainerComponent } from './forwarding-by-email-container.component';
+import { ForwardingByEmailFormService } from './forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.service';
+import { ForwardingByEmailFormularComponent } from './forwarding-by-email-formular/forwarding-by-email-formular.component';
+import { ForwardingByEmailInfoListComponent } from './forwarding-by-email-info-list/forwarding-by-email-info-list.component';
 
-describe('VorgangForwardingContainerComponent', () => {
-  let component: VorgangForwardingContainerComponent;
-  let fixture: ComponentFixture<VorgangForwardingContainerComponent>;
+describe('ForwardingByEmailContainerComponent', () => {
+  let component: ForwardingByEmailContainerComponent;
+  let fixture: ComponentFixture<ForwardingByEmailContainerComponent>;
 
-  const formService = mock(VorgangForwardFormService);
+  const formService = mock(ForwardingByEmailFormService);
   const service = mock(ForwardingService);
 
   const forwarding: string = '[data-test-id="forwarding"]';
@@ -49,17 +49,17 @@ describe('VorgangForwardingContainerComponent', () => {
   beforeEach(async () => {
     await TestBed.configureTestingModule({
       declarations: [
-        VorgangForwardingContainerComponent,
+        ForwardingByEmailContainerComponent,
         HasLinkPipe,
         MockComponent(SpinnerComponent),
-        MockComponent(VorgangForwardingInfoListComponent),
-        MockComponent(VorgangForwardFormularComponent),
+        MockComponent(ForwardingByEmailInfoListComponent),
+        MockComponent(ForwardingByEmailFormularComponent),
         MockComponent(ExpansionPanelComponent),
       ],
       providers: [
         UntypedFormBuilder,
         {
-          provide: VorgangForwardFormService,
+          provide: ForwardingByEmailFormService,
           useValue: formService,
         },
         {
@@ -71,7 +71,7 @@ describe('VorgangForwardingContainerComponent', () => {
   });
 
   beforeEach(() => {
-    fixture = TestBed.createComponent(VorgangForwardingContainerComponent);
+    fixture = TestBed.createComponent(ForwardingByEmailContainerComponent);
     component = fixture.componentInstance;
     component.pendingForwardStateResource$ = of(
       createStateResource({
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.ts
similarity index 84%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.ts
index 9613957552ae86a387c108ecfa05f71463c8218b..f38fe66d56f971eef30db7804b5f8eea516853f1 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-container.component.ts
@@ -29,15 +29,15 @@ import { Component, Input, OnChanges } from '@angular/core';
 import { hasLink } from '@ngxp/rest';
 import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel';
 import { Observable, of } from 'rxjs';
-import { VorgangForwardFormService } from './vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice';
+import { ForwardingByEmailFormService } from './forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.service';
 
 @Component({
-  selector: 'alfa-vorgang-forwarding-container',
-  templateUrl: './vorgang-forwarding-container.component.html',
-  styleUrls: ['./vorgang-forwarding-container.component.scss'],
-  providers: [VorgangForwardFormService],
+  selector: 'alfa-forwarding-by-email-container',
+  templateUrl: './forwarding-by-email-container.component.html',
+  styleUrls: ['./forwarding-by-email-container.component.scss'],
+  providers: [ForwardingByEmailFormService],
 })
-export class VorgangForwardingContainerComponent implements OnChanges {
+export class ForwardingByEmailContainerComponent implements OnChanges {
   @Input() public vorgang: VorgangWithEingangResource;
 
   forwardingStateResources$: Observable<StateResource<ForwardingListResource>> =
@@ -48,7 +48,7 @@ export class VorgangForwardingContainerComponent implements OnChanges {
   readonly vorgangLinkRel = VorgangWithEingangLinkRel;
 
   constructor(
-    public formService: VorgangForwardFormService,
+    public formService: ForwardingByEmailFormService,
     private forwardingService: ForwardingService,
   ) {}
 
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.html
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.html
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.scss b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.scss
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.scss
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.scss
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.spec.ts
similarity index 83%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.spec.ts
index d4de767de8c460d74794b21ec61a5152ee38d2c6..a7f290dba1dbce319cd3822a64c97d63ba0c2adc 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.spec.ts
@@ -32,26 +32,26 @@ import { MatInputModule } from '@angular/material/input';
 import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { MockComponent } from 'ng-mocks';
-import { VorgangForwardFormComponent } from './vorgang-forward-form.component';
-import { VorgangForwardFormService } from './vorgang-forward.formservice';
+import { ForwardingByEmailFormComponent } from './forwarding-by-email-form.component';
+import { ForwardingByEmailFormService } from './forwarding-by-email-form.service';
 
-describe('VorgangForwardFormComponent', () => {
-  let component: VorgangForwardFormComponent;
-  let fixture: ComponentFixture<VorgangForwardFormComponent>;
+describe('ForwardingByEmailFormComponent', () => {
+  let component: ForwardingByEmailFormComponent;
+  let fixture: ComponentFixture<ForwardingByEmailFormComponent>;
 
   const form: UntypedFormGroup = new UntypedFormGroup({
-    [VorgangForwardFormService.FIELD_PASSWORD]: new UntypedFormControl(null),
-    [VorgangForwardFormService.FIELD_EMAIL]: new UntypedFormControl(null),
+    [ForwardingByEmailFormService.FIELD_PASSWORD]: new UntypedFormControl(null),
+    [ForwardingByEmailFormService.FIELD_EMAIL]: new UntypedFormControl(null),
   });
 
-  const formService = { ...mock(VorgangForwardFormService), form };
+  const formService = { ...mock(ForwardingByEmailFormService), form };
 
   const vorgangWithEingang: VorgangWithEingangResource = createVorgangWithEingangResource();
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
       declarations: [
-        VorgangForwardFormComponent,
+        ForwardingByEmailFormComponent,
         MatIcon,
         MockComponent(OzgcloudStrokedButtonWithSpinnerComponent),
         MockComponent(OzgcloudTextEditorComponent),
@@ -59,7 +59,7 @@ describe('VorgangForwardFormComponent', () => {
       imports: [MatFormFieldModule, MatInputModule, ReactiveFormsModule, BrowserAnimationsModule],
       providers: [
         {
-          provide: VorgangForwardFormService,
+          provide: ForwardingByEmailFormService,
           useValue: formService,
         },
       ],
@@ -67,7 +67,7 @@ describe('VorgangForwardFormComponent', () => {
   });
 
   beforeEach(() => {
-    fixture = TestBed.createComponent(VorgangForwardFormComponent);
+    fixture = TestBed.createComponent(ForwardingByEmailFormComponent);
     component = fixture.componentInstance;
     component.vorgang = vorgangWithEingang;
     fixture.detectChanges();
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.ts
similarity index 78%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.ts
index 202a4fe83e31c78ac708914a1ef041a3203dec2f..62056b753804b1ebc91d616df4205cd172f05485 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component.ts
@@ -21,28 +21,28 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';
-import { UntypedFormGroup } from '@angular/forms';
 import { CommandResource } from '@alfa-client/command-shared';
 import { StateResource } from '@alfa-client/tech-shared';
 import { VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
+import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';
+import { UntypedFormGroup } from '@angular/forms';
 import { isNil } from 'lodash-es';
-import { VorgangForwardFormService } from './vorgang-forward.formservice';
+import { ForwardingByEmailFormService } from './forwarding-by-email-form.service';
 
 @Component({
-  selector: 'alfa-vorgang-forward-form',
-  templateUrl: './vorgang-forward-form.component.html',
-  styleUrls: ['./vorgang-forward-form.component.scss'],
+  selector: 'alfa-forward-by-email-form',
+  templateUrl: './forwarding-by-email-form.component.html',
+  styleUrls: ['./forwarding-by-email-form.component.scss'],
 })
-export class VorgangForwardFormComponent implements OnChanges {
+export class ForwardingByEmailFormComponent implements OnChanges {
   @Input() forwardStateResource: StateResource<CommandResource>;
   @Input() vorgang: VorgangWithEingangResource;
 
   @Output('doSubmit') submit: EventEmitter<void> = new EventEmitter();
 
-  readonly formServiceClass = VorgangForwardFormService;
+  readonly formServiceClass = ForwardingByEmailFormService;
 
-  constructor(private formService: VorgangForwardFormService) {}
+  constructor(private formService: ForwardingByEmailFormService) {}
 
   ngOnChanges(changes: SimpleChanges) {
     if (changes.vorgang && this.zustaendigeStelleEmailExists()) {
@@ -60,10 +60,7 @@ export class VorgangForwardFormComponent implements OnChanges {
   }
 
   patchEmail(): void {
-    this.formService.patchField(
-      VorgangForwardFormService.FIELD_EMAIL,
-      this.vorgang.eingang.zustaendigeStelle.email,
-    );
+    this.formService.patchField(ForwardingByEmailFormService.FIELD_EMAIL, this.vorgang.eingang.zustaendigeStelle.email);
   }
 
   get form(): UntypedFormGroup {
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.service.ts
similarity index 88%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.service.ts
index 68fc4c4a960aa2635f161a4b4413da33b7da7a7e..9cbe55ce655a5df52ab295788a8879602a7d9bb9 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.service.ts
@@ -30,7 +30,7 @@ import { UntypedFormBuilder, UntypedFormControl, UntypedFormGroup } from '@angul
 import { Observable } from 'rxjs';
 
 @Injectable()
-export class VorgangForwardFormService extends AbstractFormService<CommandResource> {
+export class ForwardingByEmailFormService extends AbstractFormService<CommandResource> {
   static readonly FIELD_PATH_PREFIX = 'command.redirectRequest';
 
   static readonly FIELD_EMAIL = 'email';
@@ -47,13 +47,13 @@ export class VorgangForwardFormService extends AbstractFormService<CommandResour
 
   protected initForm(): UntypedFormGroup {
     return this.formBuilder.group({
-      [VorgangForwardFormService.FIELD_EMAIL]: new UntypedFormControl(),
-      [VorgangForwardFormService.FIELD_PASSWORD]: new UntypedFormControl(),
+      [ForwardingByEmailFormService.FIELD_EMAIL]: new UntypedFormControl(),
+      [ForwardingByEmailFormService.FIELD_PASSWORD]: new UntypedFormControl(),
     });
   }
 
   protected getPathPrefix(): string {
-    return VorgangForwardFormService.FIELD_PATH_PREFIX;
+    return ForwardingByEmailFormService.FIELD_PATH_PREFIX;
   }
 
   public setVorgang(vorgang: VorgangResource): void {
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email.formservice.spec.ts
similarity index 89%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email.formservice.spec.ts
index bdf61274a7de5bee95e7f4192ec724b109bf6735..a20bed0488696ecb79c97108a03d0c2b5f1a36f8 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward.formservice.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email.formservice.spec.ts
@@ -21,15 +21,15 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { UntypedFormBuilder, UntypedFormControl, UntypedFormGroup } from '@angular/forms';
 import { ForwardingService } from '@alfa-client/forwarding-shared';
 import { mock, useFromMock } from '@alfa-client/test-utils';
+import { UntypedFormBuilder, UntypedFormControl, UntypedFormGroup } from '@angular/forms';
 import { createVorgangResource } from 'libs/vorgang-shared/test/vorgang';
 import { of } from 'rxjs';
-import { VorgangForwardFormService } from './vorgang-forward.formservice';
+import { ForwardingByEmailFormService } from './forwarding-by-email-form.service';
 
-describe('VorgangForwardFormService', () => {
-  let formService: VorgangForwardFormService;
+describe('ForwardingByEmailFormService', () => {
+  let formService: ForwardingByEmailFormService;
   let service;
 
   const formBuilder: UntypedFormBuilder = new UntypedFormBuilder();
@@ -37,7 +37,7 @@ describe('VorgangForwardFormService', () => {
   beforeEach(() => {
     service = mock(ForwardingService);
 
-    formService = new VorgangForwardFormService(formBuilder, useFromMock(service));
+    formService = new ForwardingByEmailFormService(formBuilder, useFromMock(service));
   });
 
   it('should create', () => {
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.html
similarity index 95%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.html
index 62c2a5d4b5f9c70f8366791911cee5e02db1bf58..b3729e2b1a5da9a17c16b456c0d826c940816aeb 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.html
@@ -32,11 +32,11 @@
 >
 </ozgcloud-spinner>
 
-<alfa-vorgang-forward-form
+<alfa-forward-by-email-form
   *ngIf="vorgang | hasLink: vorgangLinkRel.FORWARD"
   data-test-id="forward-form"
   [vorgang]="vorgang"
   [forwardStateResource]="pendingForwardCommand"
   (doSubmit)="submit.emit()"
 >
-</alfa-vorgang-forward-form>
+</alfa-forward-by-email-form>
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.scss b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.scss
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-container.component.scss
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.scss
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.spec.ts
similarity index 81%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.spec.ts
index 1ae6e68ebdc117a55bab652ed62496bb3f00699d..cd26ff87ee2eb7cbec85b974db3aa23cc77f206c 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.spec.ts
@@ -21,34 +21,34 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { createEmptyStateResource, HasLinkPipe } from '@alfa-client/tech-shared';
 import { SpinnerComponent } from '@alfa-client/ui';
 import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
 import { MockComponent } from 'ng-mocks';
-import { VorgangForwardFormComponent } from './vorgang-forward-form/vorgang-forward-form.component';
-import { VorgangForwardFormularComponent } from './vorgang-forward-formular.component';
+import { ForwardingByEmailFormComponent } from './forwarding-by-email-form/forwarding-by-email-form.component';
+import { ForwardingByEmailFormularComponent } from './forwarding-by-email-formular.component';
 
-describe('VorgangForwardFormularComponent', () => {
-  let component: VorgangForwardFormularComponent;
-  let fixture: ComponentFixture<VorgangForwardFormularComponent>;
+describe('ForwardingByEmailFormularComponent', () => {
+  let component: ForwardingByEmailFormularComponent;
+  let fixture: ComponentFixture<ForwardingByEmailFormularComponent>;
 
   const forwardFormular: string = '[data-test-id="forward-form"]';
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
       declarations: [
-        VorgangForwardFormularComponent,
+        ForwardingByEmailFormularComponent,
         HasLinkPipe,
         MockComponent(SpinnerComponent),
-        MockComponent(VorgangForwardFormComponent),
+        MockComponent(ForwardingByEmailFormComponent),
       ],
     });
   });
 
   beforeEach(() => {
-    fixture = TestBed.createComponent(VorgangForwardFormularComponent);
+    fixture = TestBed.createComponent(ForwardingByEmailFormularComponent);
     component = fixture.componentInstance;
     component.pendingForwardCommand = createEmptyStateResource();
     fixture.detectChanges();
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.ts
similarity index 88%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.ts
index 087ef0833ec89bdfd4a94cf766afde315b3fb838..90359c37ba60ac4ed31c983af4203cf476341cfc 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component.ts
@@ -21,18 +21,18 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { Component, EventEmitter, Input, Output } from '@angular/core';
 import { CommandResource } from '@alfa-client/command-shared';
 import { StateResource } from '@alfa-client/tech-shared';
 import { VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
+import { Component, EventEmitter, Input, Output } from '@angular/core';
 import { CommandLinkRel } from 'libs/command-shared/src/lib/command.linkrel';
 
 @Component({
-  selector: 'alfa-vorgang-forward-formular',
-  templateUrl: './vorgang-forward-formular.component.html',
-  styleUrls: ['./vorgang-forward-formular.component.scss'],
+  selector: 'alfa-forward-by-email-formular',
+  templateUrl: './forwarding-by-email-formular.component.html',
+  styleUrls: ['./forwarding-by-email-formular.component.scss'],
 })
-export class VorgangForwardFormularComponent {
+export class ForwardingByEmailFormularComponent {
   @Input() public vorgang: VorgangWithEingangResource;
   @Input() public pendingForwardCommand: StateResource<CommandResource>;
 
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.html
similarity index 94%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.html
index a358b03574297c36505a0f6456632bd50124a8ed..cdaf3279726e35aadd126f4565d36ca8a165026f 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.html
@@ -23,10 +23,10 @@
     unter der Lizenz sind dem Lizenztext zu entnehmen.
 
 -->
-<alfa-vorgang-forwarding-info
+<alfa-forwarding-by-email-info
   *ngFor="
     let forwarding of forwardingList.resource | toEmbeddedResources: listLinkRel.FORWARDING_LIST
   "
   [forwarding]="forwarding"
 >
-</alfa-vorgang-forwarding-info>
+</alfa-forwarding-by-email-info>
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.scss b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.scss
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.scss
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.scss
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.spec.ts
similarity index 72%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.spec.ts
index fcb17963b66bc13d7ca9204a20b46eb3c4dcdb0e..d4bd32a97b8b36df4c1bf911ce9a4e01a9d976a7 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.spec.ts
@@ -21,29 +21,25 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { createStateResource, ToEmbeddedResourcesPipe } from '@alfa-client/tech-shared';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { createCommandListResource } from 'libs/command-shared/test/command';
 import { MockComponent } from 'ng-mocks';
-import { VorgangForwardingInfoListComponent } from './vorgang-forwarding-info-list.component';
-import { VorgangForwardingInfoComponent } from './vorgang-forwarding-info/vorgang-forwarding-info.component';
+import { ForwardingByEmailInfoListComponent } from './forwarding-by-email-info-list.component';
+import { ForwardingByEmailInfoComponent } from './forwarding-by-email-info/forwarding-by-email-info.component';
 
-describe('VorgangForwardingInfoListComponent', () => {
-  let component: VorgangForwardingInfoListComponent;
-  let fixture: ComponentFixture<VorgangForwardingInfoListComponent>;
+describe('ForwardingByEmailInfoListComponent', () => {
+  let component: ForwardingByEmailInfoListComponent;
+  let fixture: ComponentFixture<ForwardingByEmailInfoListComponent>;
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
-      declarations: [
-        VorgangForwardingInfoListComponent,
-        MockComponent(VorgangForwardingInfoComponent),
-        ToEmbeddedResourcesPipe,
-      ],
+      declarations: [ForwardingByEmailInfoListComponent, MockComponent(ForwardingByEmailInfoComponent), ToEmbeddedResourcesPipe],
     }).compileComponents();
   });
 
   beforeEach(() => {
-    fixture = TestBed.createComponent(VorgangForwardingInfoListComponent);
+    fixture = TestBed.createComponent(ForwardingByEmailInfoListComponent);
     component = fixture.componentInstance;
     component.forwardingList = createStateResource(createCommandListResource());
     fixture.detectChanges();
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.ts
similarity index 85%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.ts
index 23c57cf9b93914849174a9550dbdc4ba5623f397..8cc5127425be7951f0105fe614745324f50344ce 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component.ts
@@ -21,17 +21,17 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { Component, Input } from '@angular/core';
 import { CommandListResource } from '@alfa-client/command-shared';
 import { ForwardingListLinkRel } from '@alfa-client/forwarding-shared';
 import { StateResource } from '@alfa-client/tech-shared';
+import { Component, Input } from '@angular/core';
 
 @Component({
-  selector: 'alfa-vorgang-forwarding-info-list',
-  templateUrl: './vorgang-forwarding-info-list.component.html',
-  styleUrls: ['./vorgang-forwarding-info-list.component.scss'],
+  selector: 'alfa-forwarding-by-email-info-list',
+  templateUrl: './forwarding-by-email-info-list.component.html',
+  styleUrls: ['./forwarding-by-email-info-list.component.scss'],
 })
-export class VorgangForwardingInfoListComponent {
+export class ForwardingByEmailInfoListComponent {
   @Input() public forwardingList: StateResource<CommandListResource>;
 
   readonly listLinkRel = ForwardingListLinkRel;
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.html
similarity index 95%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.html
index e3fe65cb08140c7190e6c96f943895c744e00da0..add689836951a6d770d92fc47547d2eea730077e 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.html
@@ -42,7 +42,7 @@
     Versendet am {{ forwarding.sentAt | formatDateWithTimePipe }}
   </p>
 
-  <alfa-vorgang-forward-zustellen-container
+  <alfa-forward-by-email-zustellen-container
     [forwarding]="forwarding"
-  ></alfa-vorgang-forward-zustellen-container>
+  ></alfa-forward-by-email-zustellen-container>
 </ng-template>
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.scss b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.scss
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.scss
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.scss
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.spec.ts
similarity index 86%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.spec.ts
index 12b90483aed9a47eed13c6aa1cd7eff4d3828059..c42367bfa51ab3181cdfe38ea817f9d92ec1d8fb 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.spec.ts
@@ -21,6 +21,8 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
+import { ForwardingLinkRel } from '@alfa-client/forwarding-shared';
+import { FormatDateWithTimePipe, HasLinkPipe } from '@alfa-client/tech-shared';
 import { registerLocaleData } from '@angular/common';
 import localeDe from '@angular/common/locales/de';
 import localeDeExtra from '@angular/common/locales/extra/de';
@@ -28,18 +30,16 @@ import { LOCALE_ID } from '@angular/core';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { MAT_DATE_LOCALE } from '@angular/material/core';
 import { MatIcon } from '@angular/material/icon';
-import { ForwardingLinkRel } from '@alfa-client/forwarding-shared';
-import { FormatDateWithTimePipe, HasLinkPipe } from '@alfa-client/tech-shared';
 import { createForwardingResource } from 'libs/forwarding-shared/test/forwarding';
 import { MockComponent } from 'ng-mocks';
-import { VorgangForwardZustellenContainerComponent } from '../../../vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component';
-import { VorgangForwardingInfoComponent } from './vorgang-forwarding-info.component';
+import { ForwardingByEmailZustellenContainerComponent } from '../../../forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component';
+import { ForwardingByEmailInfoComponent } from './forwarding-by-email-info.component';
 
 registerLocaleData(localeDe, 'de', localeDeExtra);
 
-describe('VorgangForwardingInfoComponent', () => {
-  let component: VorgangForwardingInfoComponent;
-  let fixture: ComponentFixture<VorgangForwardingInfoComponent>;
+describe('ForwardingByEmailInfoComponent', () => {
+  let component: ForwardingByEmailInfoComponent;
+  let fixture: ComponentFixture<ForwardingByEmailInfoComponent>;
 
   const errorMessage: string = '[data-test-id="forwarding-error-message"]';
   const successMessage: string = '[data-test-id="forwarding-success-message"]';
@@ -47,11 +47,11 @@ describe('VorgangForwardingInfoComponent', () => {
   beforeEach(async () => {
     await TestBed.configureTestingModule({
       declarations: [
-        VorgangForwardingInfoComponent,
+        ForwardingByEmailInfoComponent,
         FormatDateWithTimePipe,
         MatIcon,
         HasLinkPipe,
-        MockComponent(VorgangForwardZustellenContainerComponent),
+        MockComponent(ForwardingByEmailZustellenContainerComponent),
       ],
       providers: [
         { provide: LOCALE_ID, useValue: 'de' },
@@ -61,7 +61,7 @@ describe('VorgangForwardingInfoComponent', () => {
   });
 
   beforeEach(() => {
-    fixture = TestBed.createComponent(VorgangForwardingInfoComponent);
+    fixture = TestBed.createComponent(ForwardingByEmailInfoComponent);
     component = fixture.componentInstance;
     component.forwarding = createForwardingResource();
     fixture.detectChanges();
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.ts
similarity index 85%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.ts
index 3f4948987d118ab454fb65a25988fe5d1327e3e8..7c5490bb38db212d873a50ca4ead6f4eb93e338f 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component.ts
@@ -21,15 +21,15 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { Component, Input } from '@angular/core';
 import { ForwardingLinkRel, ForwardingResource } from '@alfa-client/forwarding-shared';
+import { Component, Input } from '@angular/core';
 
 @Component({
-  selector: 'alfa-vorgang-forwarding-info',
-  templateUrl: './vorgang-forwarding-info.component.html',
-  styleUrls: ['./vorgang-forwarding-info.component.scss'],
+  selector: 'alfa-forwarding-by-email-info',
+  templateUrl: './forwarding-by-email-info.component.html',
+  styleUrls: ['./forwarding-by-email-info.component.scss'],
 })
-export class VorgangForwardingInfoComponent {
+export class ForwardingByEmailInfoComponent {
   @Input() public forwarding: ForwardingResource;
 
   readonly linkRel = ForwardingLinkRel;
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.html
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.html
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.html
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.scss b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.scss
similarity index 100%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.scss
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.scss
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.spec.ts
similarity index 89%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.spec.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.spec.ts
index 46602865bee94117dd136e994133029c41001d07..e28f66a088a6dff1fb47b02c4423fcad0ef3b042 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.spec.ts
@@ -21,23 +21,19 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { MatIcon } from '@angular/material/icon';
-import {
-  ForwardingLinkRel,
-  ForwardingResource,
-  ForwardingService,
-} from '@alfa-client/forwarding-shared';
+import { ForwardingLinkRel, ForwardingResource, ForwardingService } from '@alfa-client/forwarding-shared';
 import { HasLinkPipe } from '@alfa-client/tech-shared';
 import { mock } from '@alfa-client/test-utils';
 import { OzgcloudStrokedButtonWithSpinnerComponent } from '@alfa-client/ui';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { MatIcon } from '@angular/material/icon';
 import { createForwardingResource } from 'libs/forwarding-shared/test/forwarding';
 import { MockComponent } from 'ng-mocks';
-import { VorgangForwardZustellenContainerComponent } from './vorgang-forward-zustellen-container.component';
+import { ForwardingByEmailZustellenContainerComponent } from './forwarding-by-email-zustellen-container.component';
 
-describe('VorgangForwardZustellenContainerComponent', () => {
-  let component: VorgangForwardZustellenContainerComponent;
-  let fixture: ComponentFixture<VorgangForwardZustellenContainerComponent>;
+describe('ForwardingByEmailZustellenContainerComponent', () => {
+  let component: ForwardingByEmailZustellenContainerComponent;
+  let fixture: ComponentFixture<ForwardingByEmailZustellenContainerComponent>;
 
   const forwarding: ForwardingResource = createForwardingResource();
 
@@ -53,7 +49,7 @@ describe('VorgangForwardZustellenContainerComponent', () => {
     await TestBed.configureTestingModule({
       declarations: [
         HasLinkPipe,
-        VorgangForwardZustellenContainerComponent,
+        ForwardingByEmailZustellenContainerComponent,
         MatIcon,
         MockComponent(OzgcloudStrokedButtonWithSpinnerComponent),
       ],
@@ -67,7 +63,7 @@ describe('VorgangForwardZustellenContainerComponent', () => {
   });
 
   beforeEach(() => {
-    fixture = TestBed.createComponent(VorgangForwardZustellenContainerComponent);
+    fixture = TestBed.createComponent(ForwardingByEmailZustellenContainerComponent);
     component = fixture.componentInstance;
     fixture.detectChanges();
   });
diff --git a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.ts
similarity index 76%
rename from alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.ts
rename to alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.ts
index c7aebc99014825288f365709d57b693823d7fe3a..e4d6c197b9ec5eb09cbfd20a8cbcb9df7ca6d14a 100644
--- a/alfa-client/libs/forwarding/src/lib/vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component.ts
@@ -21,30 +21,24 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { Component, Input } from '@angular/core';
 import { CommandResource } from '@alfa-client/command-shared';
-import {
-  ForwardingLinkRel,
-  ForwardingResource,
-  ForwardingService,
-} from '@alfa-client/forwarding-shared';
+import { ForwardingLinkRel, ForwardingResource, ForwardingService } from '@alfa-client/forwarding-shared';
 import { createEmptyStateResource, StateResource } from '@alfa-client/tech-shared';
+import { Component, Input } from '@angular/core';
 import { Observable, of } from 'rxjs';
 
 @Component({
-  selector: 'alfa-vorgang-forward-zustellen-container',
-  templateUrl: './vorgang-forward-zustellen-container.component.html',
-  styleUrls: ['./vorgang-forward-zustellen-container.component.scss'],
+  selector: 'alfa-forward-by-email-zustellen-container',
+  templateUrl: './forwarding-by-email-zustellen-container.component.html',
+  styleUrls: ['./forwarding-by-email-zustellen-container.component.scss'],
 })
-export class VorgangForwardZustellenContainerComponent {
+export class ForwardingByEmailZustellenContainerComponent {
   @Input() forwarding: ForwardingResource;
 
-  public markAsSuccessCommandStateResource$: Observable<StateResource<CommandResource>> = of(
-    createEmptyStateResource<CommandResource>(),
-  );
-  public markAsFailCommandStateResource$: Observable<StateResource<CommandResource>> = of(
-    createEmptyStateResource<CommandResource>(),
-  );
+  public markAsSuccessCommandStateResource$: Observable<StateResource<CommandResource>> =
+    of(createEmptyStateResource<CommandResource>());
+  public markAsFailCommandStateResource$: Observable<StateResource<CommandResource>> =
+    of(createEmptyStateResource<CommandResource>());
 
   readonly linkRel = ForwardingLinkRel;
 
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..ad97972cd9cc4c7e7f135d96b2b755378f953b3e
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.html
@@ -0,0 +1 @@
+<alfa-forwarding-dialog [selectedSearchResult]="selectedSearchResult$ | async" data-test-id="forwarding-dialog"/>
\ No newline at end of file
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..355c614cc694333be2f34a629eac5ad5b527035e
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts
@@ -0,0 +1,43 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { mock, Mock } from '@alfa-client/test-utils';
+import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
+import { AsyncPipe } from '@angular/common';
+import { MockComponent } from 'ng-mocks';
+import { ForwardingDialogContainerComponent } from './forwarding-dialog-container.component';
+import { ForwardingDialogComponent } from './forwarding-dialog/forwarding-dialog.component';
+
+describe('ForwardingDialogContainerComponent', () => {
+  let component: ForwardingDialogContainerComponent;
+  let fixture: ComponentFixture<ForwardingDialogContainerComponent>;
+
+  let organisationsEinheitService: Mock<OrganisationsEinheitService>;
+
+  beforeEach(async () => {
+    organisationsEinheitService = mock(OrganisationsEinheitService);
+
+    await TestBed.configureTestingModule({
+      imports: [ForwardingDialogContainerComponent, AsyncPipe],
+      declarations: [MockComponent(ForwardingDialogComponent)],
+    })
+      .overrideComponent(ForwardingDialogContainerComponent, {
+        set: {
+          providers: [
+            {
+              provide: ZUSTAENDIGE_STELLE_SERVICE,
+              useValue: organisationsEinheitService,
+            },
+          ],
+        },
+      })
+      .compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingDialogContainerComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..afb2a3d5a97213615dcc22a98195e82fd916ed50
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts
@@ -0,0 +1,35 @@
+import { ResourceRepository } from '@alfa-client/tech-shared';
+import { VorgangService } from '@alfa-client/vorgang-shared';
+import { createOrganisationEinheitService } from '@alfa-client/zustaendige-stelle';
+import {
+  OrganisationsEinheitResource,
+  OrganisationsEinheitService,
+  ZUSTAENDIGE_STELLE_SERVICE,
+} from '@alfa-client/zustaendige-stelle-shared';
+import { AsyncPipe } from '@angular/common';
+import { Component, inject, OnInit } from '@angular/core';
+import { Observable } from 'rxjs';
+import { ForwardingDialogComponent } from './forwarding-dialog/forwarding-dialog.component';
+
+@Component({
+  selector: 'alfa-forwarding-dialog-container',
+  standalone: true,
+  imports: [ForwardingDialogComponent, AsyncPipe],
+  templateUrl: './forwarding-dialog-container.component.html',
+  providers: [
+    {
+      provide: ZUSTAENDIGE_STELLE_SERVICE,
+      useFactory: createOrganisationEinheitService,
+      deps: [ResourceRepository, VorgangService],
+    },
+  ],
+})
+export class ForwardingDialogContainerComponent implements OnInit {
+  private readonly organisationsEinheitService = inject(ZUSTAENDIGE_STELLE_SERVICE) as OrganisationsEinheitService;
+
+  public selectedSearchResult$: Observable<OrganisationsEinheitResource>;
+
+  ngOnInit(): void {
+    this.selectedSearchResult$ = this.organisationsEinheitService.getSelectedResult();
+  }
+}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..d0dd3c9c055bfc74030ddd0a0c19ddacafa8976b
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.html
@@ -0,0 +1,3 @@
+<ods-button-with-spinner [disabled]="disabled" text="Weiterleiten" variant="outline" dataTestId="forwarding-button">
+  <ods-forward-vorgang-icon icon class="fill-primary" />
+</ods-button-with-spinner>
\ No newline at end of file
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..ec3ee8288b888a029f6de545b97636ec3c5aae5d
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.spec.ts
@@ -0,0 +1,26 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { ButtonWithSpinnerComponent } from '@ods/component';
+import { ForwardVorgangIconComponent } from '@ods/system';
+import { MockComponent } from 'ng-mocks';
+import { ForwardingButtonComponent } from './forwarding-button.component';
+
+describe('ForwardingButtonComponent', () => {
+  let component: ForwardingButtonComponent;
+  let fixture: ComponentFixture<ForwardingButtonComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [ForwardingButtonComponent],
+      declarations: [MockComponent(ForwardVorgangIconComponent), MockComponent(ButtonWithSpinnerComponent)],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingButtonComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..63fec70d17fb549ab13163155fe3ca596446209a
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.ts
@@ -0,0 +1,13 @@
+import { Component, Input } from '@angular/core';
+import { ButtonWithSpinnerComponent } from '@ods/component';
+import { ForwardVorgangIconComponent } from '@ods/system';
+
+@Component({
+  selector: 'alfa-forwarding-button',
+  standalone: true,
+  imports: [ButtonWithSpinnerComponent, ForwardVorgangIconComponent],
+  templateUrl: './forwarding-button.component.html',
+})
+export class ForwardingButtonComponent {
+  @Input() disabled: boolean;
+}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..3d60550c444dcbc34d9f229e91c1133e6a5af9ac
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html
@@ -0,0 +1,20 @@
+<div class="flex w-[620px] max-w-full flex-col gap-4 bg-background-100 p-8">
+  <div class="flex items-center justify-between" >
+    <h1 class="text-xl font-semibold text-primary">Vorgang weiterleiten</h1>
+    <ods-cancel-dialog-button showAsIconButton="true" />
+  </div>
+
+  @if (!selectedSearchResult) {
+    <alfa-search-zustaendige-stelle-form-container cdkFocusInitial focusOnSearchField="true" data-test-id="zufi-search" />
+  } @else {
+    <alfa-forwarding-item-in-dialog
+      [organisationsEinheitResource]="selectedSearchResult"
+      data-test-id="forwarding-item"
+    />
+  }
+
+  <div class="flex gap-4">
+    <alfa-forwarding-button [disabled]="!selectedSearchResult"/>
+    <ods-cancel-dialog-button />
+  </div>
+</div>
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..6d4454c8e37a0bde91a410aeacf6df07087973f6
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts
@@ -0,0 +1,106 @@
+import { existsAsHtmlElement, getMockComponent, notExistsAsHtmlElement } from '@alfa-client/test-utils';
+import { ZustaendigeStelleModule } from '@alfa-client/zustaendige-stelle';
+import { OrganisationsEinheitResource } from '@alfa-client/zustaendige-stelle-shared';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+import { CancelDialogButtonComponent } from '@ods/component';
+import { MockComponent, MockModule } from 'ng-mocks';
+import { getDataTestIdOf } from '../../../../../tech-shared/test/data-test';
+import { createOrganisationsEinheitResource } from '../../../../../zustaendige-stelle-shared/test/organisations-einheit';
+import { ForwardingButtonComponent } from './forwarding-button/forwarding-button.component';
+import { ForwardingItemInDialogComponent } from './forwarding-item/forwarding-item.component';
+import { ForwardingDialogComponent } from './forwarding-dialog.component';
+
+describe('ForwardingDialogComponent', () => {
+  let component: ForwardingDialogComponent;
+  let fixture: ComponentFixture<ForwardingDialogComponent>;
+
+  const zufiSearch: string = getDataTestIdOf('zufi-search');
+  const forwardingItem: string = getDataTestIdOf('forwarding-item');
+
+  const organisationsEinheitResource: OrganisationsEinheitResource = createOrganisationsEinheitResource();
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [ForwardingDialogComponent],
+      declarations: [
+        MockComponent(CancelDialogButtonComponent),
+        MockComponent(ForwardingButtonComponent),
+        MockComponent(ForwardingItemInDialogComponent),
+        MockModule(ZustaendigeStelleModule),
+      ],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingDialogComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+
+  describe('template', () => {
+    describe('zufi search', () => {
+      it('should render if selectedSearchResult is null', () => {
+        component.selectedSearchResult = null;
+
+        fixture.detectChanges();
+
+        existsAsHtmlElement(fixture, zufiSearch);
+      });
+
+      it('should NOT render if selectedSearchResult is NOT null', () => {
+        component.selectedSearchResult = organisationsEinheitResource;
+
+        fixture.detectChanges();
+
+        notExistsAsHtmlElement(fixture, zufiSearch);
+      });
+    });
+  });
+
+  it('should render zufi search if selectedSearchResult is null', () => {
+    component.selectedSearchResult = null;
+
+    fixture.detectChanges();
+  });
+
+  describe('template', () => {
+    describe('forwarding item', () => {
+      it('should render if selectedSearchResult is NOT null', () => {
+        component.selectedSearchResult = organisationsEinheitResource;
+
+        fixture.detectChanges();
+
+        existsAsHtmlElement(fixture, forwardingItem);
+      });
+
+      it('should NOT render if selectedSearchResult is null', () => {
+        component.selectedSearchResult = null;
+
+        fixture.detectChanges();
+
+        notExistsAsHtmlElement(fixture, forwardingItem);
+      });
+    });
+  });
+
+  describe('forwarding button', () => {
+    it('should be disabled if selectedSearchResult is null', () => {
+      component.selectedSearchResult = null;
+
+      fixture.detectChanges();
+
+      const forwardingButton: ForwardingButtonComponent = getMockComponent(fixture, ForwardingButtonComponent);
+      expect(forwardingButton.disabled).toBeTruthy();
+    });
+
+    it('should NOT be disabled if selectedSearchResult is NOT null', () => {
+      component.selectedSearchResult = organisationsEinheitResource;
+
+      fixture.detectChanges();
+
+      const forwardingButton: ForwardingButtonComponent = getMockComponent(fixture, ForwardingButtonComponent);
+      expect(forwardingButton.disabled).toBeFalsy();
+    });
+  });
+});
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..c1695f42a08728b6921b6813694fad2ffb5440fe
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts
@@ -0,0 +1,25 @@
+import { ZustaendigeStelleModule } from '@alfa-client/zustaendige-stelle';
+import { OrganisationsEinheitResource } from '@alfa-client/zustaendige-stelle-shared';
+import { A11yModule } from '@angular/cdk/a11y';
+import { Component, Input } from '@angular/core';
+import { ReactiveFormsModule } from '@angular/forms';
+import { CancelDialogButtonComponent } from '@ods/component';
+import { ForwardingButtonComponent } from './forwarding-button/forwarding-button.component';
+import { ForwardingItemInDialogComponent } from './forwarding-item/forwarding-item.component';
+
+@Component({
+  selector: 'alfa-forwarding-dialog',
+  standalone: true,
+  imports: [
+    A11yModule,
+    CancelDialogButtonComponent,
+    ReactiveFormsModule,
+    ZustaendigeStelleModule,
+    ForwardingButtonComponent,
+    ForwardingItemInDialogComponent,
+  ],
+  templateUrl: './forwarding-dialog.component.html',
+})
+export class ForwardingDialogComponent {
+  @Input() selectedSearchResult: OrganisationsEinheitResource;
+}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd825b7ca43ad8dbb31580050274303e9bd26333
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.html
@@ -0,0 +1,7 @@
+<ods-button
+  (clickEmitter)="onClick()"
+  text="Ändern"
+  variant="outline"
+  dataTestId="forwarding-item-change-button"
+  data-test-id="forwarding-item-change-button-container"
+/>
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..49e50eaa845262e74914cd7f4717c66e549ca924
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.spec.ts
@@ -0,0 +1,53 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { dispatchEventFromFixture, mock, Mock, MockEvent } from '@alfa-client/test-utils';
+import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
+import { ButtonComponent } from '@ods/system';
+import { MockComponent } from 'ng-mocks';
+import { getDataTestIdOf } from '../../../../../../../tech-shared/test/data-test';
+import { ForwardingItemChangeButtonContainerComponent } from './forwarding-item-change-button-container.component';
+
+describe('ForwardingItemChangeButtonContainerComponent', () => {
+  let component: ForwardingItemChangeButtonContainerComponent;
+  let fixture: ComponentFixture<ForwardingItemChangeButtonContainerComponent>;
+
+  const buttonContainer: string = getDataTestIdOf('forwarding-item-change-button-container');
+
+  let service: Mock<OrganisationsEinheitService>;
+
+  beforeEach(() => {
+    service = mock(OrganisationsEinheitService);
+
+    TestBed.configureTestingModule({
+      imports: [ForwardingItemChangeButtonContainerComponent],
+      declarations: [MockComponent(ButtonComponent)],
+      providers: [{ provide: ZUSTAENDIGE_STELLE_SERVICE, useValue: service }],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingItemChangeButtonContainerComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+
+  describe('button', () => {
+    it('should call onClick on button click', () => {
+      component.onClick = jest.fn();
+
+      dispatchEventFromFixture(fixture, buttonContainer, MockEvent.CLICK);
+
+      expect(component.onClick).toHaveBeenCalled();
+    });
+  });
+
+  describe('onClick', () => {
+    it('should clear selected result', () => {
+      component.onClick();
+
+      expect(service.clearSelectedResult).toHaveBeenCalled();
+    });
+  });
+});
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..5a0ca9ccbe7730e0eb8d54ef013b17d12719b0ec
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item-change-button-container/forwarding-item-change-button-container.component.ts
@@ -0,0 +1,17 @@
+import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
+import { Component, inject } from '@angular/core';
+import { ButtonComponent } from '@ods/system';
+
+@Component({
+  selector: 'alfa-forwarding-item-change-button-container',
+  standalone: true,
+  imports: [ButtonComponent],
+  templateUrl: './forwarding-item-change-button-container.component.html',
+})
+export class ForwardingItemChangeButtonContainerComponent {
+  private readonly organisationsEinheitService = inject(ZUSTAENDIGE_STELLE_SERVICE) as OrganisationsEinheitService;
+
+  public onClick(): void {
+    this.organisationsEinheitService.clearSelectedResult();
+  }
+}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd41e43d6a1c75eb03bca208ca264c7553aaa5a8
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.html
@@ -0,0 +1,3 @@
+<ods-forwarding-item [label]="organisationsEinheitResource.name" [address]="organisationsEinheitResource.anschrift | anschriftToString" >
+  <alfa-forwarding-item-change-button-container />
+</ods-forwarding-item>
\ No newline at end of file
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..b8ffb55d8ab7ff80771ddd8cdd2d1e6611dbe459
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.spec.ts
@@ -0,0 +1,42 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { getMockComponent } from '@alfa-client/test-utils';
+import { Anschrift, OrganisationsEinheitResource } from '@alfa-client/zustaendige-stelle-shared';
+import { ForwardingItemComponent } from '@ods/system';
+import { MockComponent } from 'ng-mocks';
+import { createOrganisationsEinheitResource } from '../../../../../../zustaendige-stelle-shared/test/organisations-einheit';
+import { ForwardingItemChangeButtonContainerComponent } from './forwarding-item-change-button-container/forwarding-item-change-button-container.component';
+import { ForwardingItemInDialogComponent } from './forwarding-item.component';
+
+describe('ForwardingDialogForwardingItemComponent', () => {
+  let component: ForwardingItemInDialogComponent;
+  let fixture: ComponentFixture<ForwardingItemInDialogComponent>;
+
+  const organisationsEinheitResource: OrganisationsEinheitResource = createOrganisationsEinheitResource();
+  const anschrift: Anschrift = organisationsEinheitResource.anschrift;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [ForwardingItemInDialogComponent],
+      declarations: [MockComponent(ForwardingItemChangeButtonContainerComponent), MockComponent(ForwardingItemComponent)],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingItemInDialogComponent);
+    component = fixture.componentInstance;
+    component.organisationsEinheitResource = organisationsEinheitResource;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+
+  describe('forwarding item', () => {
+    it('should exist with input', () => {
+      const forwardingItem: ForwardingItemComponent = getMockComponent(fixture, ForwardingItemComponent);
+
+      expect(forwardingItem.label).toBe(organisationsEinheitResource.name);
+      expect(forwardingItem.address).toBe(`${anschrift.strasse} ${anschrift.hausnummer}, ${anschrift.plz} ${anschrift.ort}`);
+    });
+  });
+});
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..9828f682d8860e851cc15cde31fef24150120f4a
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-item/forwarding-item.component.ts
@@ -0,0 +1,14 @@
+import { AnschriftToStringPipe, OrganisationsEinheitResource } from '@alfa-client/zustaendige-stelle-shared';
+import { Component, Input } from '@angular/core';
+import { ForwardingItemComponent } from '@ods/system';
+import { ForwardingItemChangeButtonContainerComponent } from './forwarding-item-change-button-container/forwarding-item-change-button-container.component';
+
+@Component({
+  selector: 'alfa-forwarding-item-in-dialog',
+  standalone: true,
+  imports: [ForwardingItemChangeButtonContainerComponent, AnschriftToStringPipe, ForwardingItemComponent],
+  templateUrl: './forwarding-item.component.html',
+})
+export class ForwardingItemInDialogComponent {
+  @Input() organisationsEinheitResource: OrganisationsEinheitResource;
+}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding.module.ts b/alfa-client/libs/forwarding/src/lib/forwarding.module.ts
index 973cf7b7a1603273e98ca30ee0bd511c57bb9cc1..387ac14e53f0810db203dcbe110b33cabe8b5ab0 100644
--- a/alfa-client/libs/forwarding/src/lib/forwarding.module.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding.module.ts
@@ -24,22 +24,17 @@
 import { CommandSharedModule } from '@alfa-client/command-shared';
 import { ForwardingSharedModule } from '@alfa-client/forwarding-shared';
 import { FormatDateWithTimePipe, HasLinkPipe, ToEmbeddedResourcesPipe } from '@alfa-client/tech-shared';
-import {
-  ExpansionPanelComponent,
-  OzgcloudStrokedButtonWithSpinnerComponent,
-  OzgcloudTextEditorComponent,
-  SpinnerComponent,
-} from '@alfa-client/ui';
+import { ExpansionPanelComponent, OzgcloudStrokedButtonWithSpinnerComponent, OzgcloudTextEditorComponent, SpinnerComponent, } from '@alfa-client/ui';
 import { CommonModule } from '@angular/common';
 import { NgModule } from '@angular/core';
 import { ReactiveFormsModule } from '@angular/forms';
 import { MatIcon } from '@angular/material/icon';
-import { VorgangForwardFormComponent } from './vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-form/vorgang-forward-form.component';
-import { VorgangForwardFormularComponent } from './vorgang-forwarding-container/vorgang-forward-formular/vorgang-forward-formular.component';
-import { VorgangForwardingContainerComponent } from './vorgang-forwarding-container/vorgang-forwarding-container.component';
-import { VorgangForwardingInfoListComponent } from './vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info-list.component';
-import { VorgangForwardingInfoComponent } from './vorgang-forwarding-container/vorgang-forwarding-info-list/vorgang-forwarding-info/vorgang-forwarding-info.component';
-import { VorgangForwardZustellenContainerComponent } from './vorgang-forwarding-zustellen-container/vorgang-forward-zustellen-container.component';
+import { ForwardingByEmailContainerComponent } from './forwarding-by-email-container/forwarding-by-email-container.component';
+import { ForwardingByEmailFormComponent } from './forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-form/forwarding-by-email-form.component';
+import { ForwardingByEmailFormularComponent } from './forwarding-by-email-container/forwarding-by-email-formular/forwarding-by-email-formular.component';
+import { ForwardingByEmailInfoListComponent } from './forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info-list.component';
+import { ForwardingByEmailInfoComponent } from './forwarding-by-email-container/forwarding-by-email-info-list/forwarding-by-email-info/forwarding-by-email-info.component';
+import { ForwardingByEmailZustellenContainerComponent } from './forwarding-by-email-zustellen-container/forwarding-by-email-zustellen-container.component';
 
 @NgModule({
   imports: [
@@ -57,15 +52,15 @@ import { VorgangForwardZustellenContainerComponent } from './vorgang-forwarding-
     ReactiveFormsModule,
   ],
   declarations: [
-    VorgangForwardZustellenContainerComponent,
-    VorgangForwardingContainerComponent,
-    VorgangForwardFormularComponent,
-    VorgangForwardingInfoComponent,
-    VorgangForwardingInfoListComponent,
-    VorgangForwardFormularComponent,
-    VorgangForwardZustellenContainerComponent,
-    VorgangForwardFormComponent,
+    ForwardingByEmailZustellenContainerComponent,
+    ForwardingByEmailContainerComponent,
+    ForwardingByEmailFormularComponent,
+    ForwardingByEmailInfoComponent,
+    ForwardingByEmailInfoListComponent,
+    ForwardingByEmailFormularComponent,
+    ForwardingByEmailZustellenContainerComponent,
+    ForwardingByEmailFormComponent,
   ],
-  exports: [VorgangForwardingContainerComponent],
+  exports: [ForwardingByEmailContainerComponent],
 })
 export class ForwardingModule {}
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html
index 7170a1ee9d6a52391ff3841614a4dff0a9cb4171..650f1390dbfeb14e5663d263719b0fbdbc98b24c 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.html
@@ -45,4 +45,4 @@
 <alfa-create-wiedervorlage-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" />
 <alfa-assign-user-profile-button-container [vorgang]="vorgangWithEingang" />
 <alfa-postfach-mail-button-container [showAsIconButton]="showAsIconButton" [vorgang]="vorgangWithEingang" />
-<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang" [showAsIconButton]="showAsIconButton" />
+<alfa-forwarding-button-container [vorgangWithEingang]="vorgangWithEingang" [showAsIconButton]="showAsIconButton" />
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts
index b8c3aed662cf6e6034a2a80d3eb99bd13472e235..4d860217f0985c53335390280988192e7f2427c9 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-action-buttons/vorgang-detail-action-buttons.component.spec.ts
@@ -21,12 +21,8 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { ForwardByOzgcloudButtonContainerComponent } from '@alfa-client/forwarding';
-import {
-  EndgueltigLoeschenButtonContainerComponent,
-  LoeschAnforderungZuruecknehmenButtonContainerComponent,
-  LoeschenAnfordernButtonContainerComponent,
-} from '@alfa-client/loesch-anforderung';
+import { ForwardingButtonContainerComponent } from '@alfa-client/forwarding';
+import { EndgueltigLoeschenButtonContainerComponent, LoeschAnforderungZuruecknehmenButtonContainerComponent, LoeschenAnfordernButtonContainerComponent, } from '@alfa-client/loesch-anforderung';
 import { PostfachMailButtonContainerComponent } from '@alfa-client/postfach';
 import { HasLinkPipe } from '@alfa-client/tech-shared';
 import { existsAsHtmlElement, getMockComponent, notExistsAsHtmlElement } from '@alfa-client/test-utils';
@@ -77,7 +73,7 @@ describe('VorgangDetailActionButtonsComponent', () => {
         MockComponent(LoeschenAnfordernButtonContainerComponent),
         MockComponent(EndgueltigLoeschenButtonContainerComponent),
         MockComponent(LoeschAnforderungZuruecknehmenButtonContainerComponent),
-        MockComponent(ForwardByOzgcloudButtonContainerComponent),
+        MockComponent(ForwardingButtonContainerComponent),
       ],
     });
   });
@@ -123,10 +119,7 @@ describe('VorgangDetailActionButtonsComponent', () => {
 
     fixture.detectChanges();
 
-    const button: ForwardByOzgcloudButtonContainerComponent = getMockComponent(
-      fixture,
-      ForwardByOzgcloudButtonContainerComponent,
-    );
+    const button: ForwardingButtonContainerComponent = getMockComponent(fixture, ForwardingButtonContainerComponent);
     expect(button.vorgangWithEingang).toBe(vorgangWithEingang);
     expect(button.showAsIconButton).toBeTruthy();
   });
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html
index 772fdbd05969b74f6fe626e05d5b74123f595f02..af35bf9c288929c532d54c232e770b764d94795a 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.html
@@ -60,10 +60,10 @@
 
       <div class="two-column">
         <div class="section" *ngIf="vorgangResource | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_EMAIL">
-          <alfa-vorgang-forwarding-container
+          <alfa-forwarding-by-email-container
             [vorgang]="vorgangResource"
             data-test-id="forwarding-container-in-vorgang"
-          ></alfa-vorgang-forwarding-container>
+          ></alfa-forwarding-by-email-container>
         </div>
 
         <div class="section" *ngIf="vorgangResource | hasLink: vorgangHeaderLinkRel.WIEDERVORLAGEN">
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts
index 79d55a0dd7c4b095933d59e78923e8e786ae86a2..9a60edf8103e922ac4c2ed206fb0d56907c0b6f0 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-area.component.spec.ts
@@ -22,10 +22,10 @@
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
 import { CollaborationInVorgangContainerComponent } from '@alfa-client/collaboration';
-import { VorgangForwardingContainerComponent } from '@alfa-client/forwarding';
+import { ForwardingByEmailContainerComponent } from '@alfa-client/forwarding';
 import { KommentarListInVorgangContainerComponent } from '@alfa-client/kommentar';
 import { PostfachMailListContainerComponent } from '@alfa-client/postfach';
-import { HasLinkPipe, ToEmbeddedResourcesPipe, createEmptyStateResource, createStateResource } from '@alfa-client/tech-shared';
+import { createEmptyStateResource, createStateResource, HasLinkPipe, ToEmbeddedResourcesPipe } from '@alfa-client/tech-shared';
 import { existsAsHtmlElement, getMockComponent, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { ExpansionPanelComponent, OzgcloudStrokedButtonWithSpinnerComponent } from '@alfa-client/ui';
 import { VorgangHeaderLinkRel, VorgangWithEingangLinkRel, VorgangWithEingangResource } from '@alfa-client/vorgang-shared';
@@ -72,7 +72,7 @@ describe('VorgangDetailAreaComponent', () => {
         MockComponent(PostfachMailListContainerComponent),
         MockComponent(VorgangDetailAntragstellerComponent),
         MockComponent(VorgangDetailFormularDatenComponent),
-        MockComponent(VorgangForwardingContainerComponent),
+        MockComponent(ForwardingByEmailContainerComponent),
         MockComponent(BescheidListInVorgangContainerComponent),
         MockComponent(ExpansionPanelComponent),
         MockComponent(CollaborationInVorgangContainerComponent),
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html
index 742a81193c28b8f3a3b199604b2ab1f36d8f5785..c11e59564e2b7878a53334eb7a9f1ed90fa3d63d 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.html
@@ -37,4 +37,4 @@
 }
 <alfa-endgueltig-loeschen-button-container [vorgang]="vorgangWithEingang" />
 <alfa-loesch-anforderung-zuruecknehmen-button-container />
-<alfa-forward-by-ozgcloud-button-container [vorgangWithEingang]="vorgangWithEingang" />
+<alfa-forwarding-button-container [vorgangWithEingang]="vorgangWithEingang" />
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts
index 4b16a16ee53c7fda49274e3002b8e111b8f93d30..04956f9d574e55013fd19ba30851dfdaf0010110 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail-page/vorgang-detail-area/vorgang-detail-formular-buttons/vorgang-detail-formular-buttons.component.spec.ts
@@ -21,12 +21,8 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
-import { ForwardByOzgcloudButtonContainerComponent } from '@alfa-client/forwarding';
-import {
-  EndgueltigLoeschenButtonContainerComponent,
-  LoeschAnforderungZuruecknehmenButtonContainerComponent,
-  LoeschenAnfordernButtonContainerComponent,
-} from '@alfa-client/loesch-anforderung';
+import { ForwardingButtonContainerComponent } from '@alfa-client/forwarding';
+import { EndgueltigLoeschenButtonContainerComponent, LoeschAnforderungZuruecknehmenButtonContainerComponent, LoeschenAnfordernButtonContainerComponent, } from '@alfa-client/loesch-anforderung';
 import { HasLinkPipe } from '@alfa-client/tech-shared';
 import { existsAsHtmlElement, getMockComponent, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { OzgcloudStrokedButtonWithSpinnerComponent } from '@alfa-client/ui';
@@ -70,7 +66,7 @@ describe('VorgangDetailFormularButtonsComponent', () => {
         MockComponent(LoeschenAnfordernButtonContainerComponent),
         MockComponent(EndgueltigLoeschenButtonContainerComponent),
         MockComponent(LoeschAnforderungZuruecknehmenButtonContainerComponent),
-        MockComponent(ForwardByOzgcloudButtonContainerComponent),
+        MockComponent(ForwardingButtonContainerComponent),
       ],
     });
   });
@@ -106,10 +102,7 @@ describe('VorgangDetailFormularButtonsComponent', () => {
     component.vorgangWithEingang = vorgangWithEingang;
     fixture.detectChanges();
 
-    const button: ForwardByOzgcloudButtonContainerComponent = getMockComponent(
-      fixture,
-      ForwardByOzgcloudButtonContainerComponent,
-    );
+    const button: ForwardingButtonContainerComponent = getMockComponent(fixture, ForwardingButtonContainerComponent);
     expect(button.vorgangWithEingang).toBe(vorgangWithEingang);
   });
 });
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts
index 275fc4d082a11a4a0dd2da8cfeb95a5d532343e2..1d749edd60cabb56f750dd00852651e0fc41b1cf 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts
@@ -24,7 +24,7 @@
 import { BescheidModule } from '@alfa-client/bescheid';
 import { BinaryFileModule } from '@alfa-client/binary-file';
 import { CollaborationModule } from '@alfa-client/collaboration';
-import { ForwardByOzgcloudButtonContainerComponent, ForwardingModule } from '@alfa-client/forwarding';
+import { ForwardingButtonContainerComponent, ForwardingModule } from '@alfa-client/forwarding';
 import { HistorieModule } from '@alfa-client/historie';
 import { KommentarModule } from '@alfa-client/kommentar';
 import { LoeschAnforderungModule } from '@alfa-client/loesch-anforderung';
@@ -187,7 +187,7 @@ const routes: Routes = [
     DropdownMenuTextItemComponent,
     MoreIconComponent,
     FileIconComponent,
-    ForwardByOzgcloudButtonContainerComponent,
+    ForwardingButtonContainerComponent,
     TooltipDirective,
     EditIconComponent,
     DiscardVorgangIconComponent,
diff --git a/alfa-client/libs/zustaendige-stelle-shared/src/index.ts b/alfa-client/libs/zustaendige-stelle-shared/src/index.ts
index ab0148d00ba42af2a0c6694c0d937c998fa0513e..f7b4ea3e3c9ec0c95e32d63ad0aa526cc1de0ac0 100644
--- a/alfa-client/libs/zustaendige-stelle-shared/src/index.ts
+++ b/alfa-client/libs/zustaendige-stelle-shared/src/index.ts
@@ -21,6 +21,7 @@
  * Die sprachspezifischen Genehmigungen und Beschränkungen
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
+export * from './lib/anschrift-to-string.pipe';
 export * from './lib/externe-fachstelle/externe-fachstelle.model';
 export * from './lib/externe-fachstelle/externe-fachstelle.service';
 export * from './lib/organisations-einheit/organisations-einheit.model';
diff --git a/alfa-client/libs/zustaendige-stelle-shared/src/lib/anschrift-to-string.pipe.spec.ts b/alfa-client/libs/zustaendige-stelle-shared/src/lib/anschrift-to-string.pipe.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..06d89cf735cd854d61513363f8937933e6a6f106
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle-shared/src/lib/anschrift-to-string.pipe.spec.ts
@@ -0,0 +1,29 @@
+import { EMPTY_STRING } from '@alfa-client/tech-shared';
+import { Anschrift } from '@alfa-client/zustaendige-stelle-shared';
+import { AnschriftToStringPipe } from './anschrift-to-string.pipe';
+
+describe('AnschriftToString', () => {
+  let pipe: AnschriftToStringPipe;
+
+  beforeEach(() => {
+    pipe = new AnschriftToStringPipe();
+  });
+
+  it('should create an instance', () => {
+    expect(pipe).toBeTruthy();
+  });
+
+  it('should format anschrift', () => {
+    const anschrift: Anschrift = {
+      strasse: 'Musterstraße',
+      hausnummer: '12',
+      plz: '12345',
+      ort: 'Musterstadt',
+    };
+    expect(pipe.transform(anschrift)).toBe('Musterstraße 12, 12345 Musterstadt');
+  });
+
+  it('should return empty string if anschrift is null', () => {
+    expect(pipe.transform(null)).toBe(EMPTY_STRING);
+  });
+});
diff --git a/alfa-client/libs/zustaendige-stelle-shared/src/lib/anschrift-to-string.pipe.ts b/alfa-client/libs/zustaendige-stelle-shared/src/lib/anschrift-to-string.pipe.ts
new file mode 100644
index 0000000000000000000000000000000000000000..6ea502cd2724879010e7b9e963d45c34ac151c28
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle-shared/src/lib/anschrift-to-string.pipe.ts
@@ -0,0 +1,15 @@
+import { EMPTY_STRING } from '@alfa-client/tech-shared';
+import { Anschrift } from '@alfa-client/zustaendige-stelle-shared';
+import { Pipe, PipeTransform } from '@angular/core';
+import { isNil } from 'lodash-es';
+
+@Pipe({
+  standalone: true,
+  name: 'anschriftToString',
+})
+export class AnschriftToStringPipe implements PipeTransform {
+  transform(anschrift: Anschrift): string {
+    if (isNil(anschrift)) return EMPTY_STRING;
+    return `${anschrift.strasse} ${anschrift.hausnummer}, ${anschrift.plz} ${anschrift.ort}`;
+  }
+}
diff --git a/alfa-client/libs/zustaendige-stelle/src/index.ts b/alfa-client/libs/zustaendige-stelle/src/index.ts
index 114de029cc81a1f13b64444b0e91753a8cd09094..014f02c0b948630b4ec7c854d46a0274796d227b 100644
--- a/alfa-client/libs/zustaendige-stelle/src/index.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/index.ts
@@ -23,4 +23,5 @@
  */
 export * from './lib/search-externe-fachstelle-container/search-externe-fachstelle-container.component';
 export * from './lib/search-organisations-einheit-container/search-organisations-einheit-container.component';
+export * from './lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component';
 export * from './lib/zustaendige-stelle.module';
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts
index bd7e92ef2892f13b038358e99393ddc4c81bbbb8..5706c8cde9a1fe2d14f1433b2f31139bd9508242 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts
@@ -83,7 +83,7 @@ export class SearchOrganisationsEinheitContainerComponent implements OnInit, OnD
   }
 }
 
-function createOrganisationEinheitService(
+export function createOrganisationEinheitService(
   resourceRepository: ResourceRepository,
   vorgangService: VorgangService,
 ): OrganisationsEinheitService {
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html
index 9ff703cfa41d11c22550814030a0f6f2ce5a230f..bc4470c5402969cc5497369b92107fc74cd2cff9 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html
@@ -30,11 +30,5 @@
       <ods-close-icon class="fill-primary" icon />
     </ods-button>
   </div>
-  <alfa-search-zustaendige-stelle-form
-    data-test-id="search-organisations-einheit"
-    [searchResults]="searchResults$ | async"
-    (search)="search($event)"
-    (selectSearchResult)="selectSearchResult($event)"
-    (clearSearchResult)="clearSearchResult()"
-  ></alfa-search-zustaendige-stelle-form>
+  <alfa-search-zustaendige-stelle-form-container (searchResultSelected)="searchResultSelected($event)" />
 </div>
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts
index 1b4f822ac5579604de0bef351c85ff8df436ee93..0cd130bb32e24de99cff81a5e9355dcd124f4f22 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts
@@ -22,46 +22,25 @@
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
 import { ToEmbeddedResourcesPipe } from '@alfa-client/tech-shared';
-import {
-  createDialogRefMock,
-  DialogRefMock,
-  EventData,
-  getMockComponent,
-  Mock,
-  mock,
-  triggerEvent,
-} from '@alfa-client/test-utils';
-import {
-  OrganisationsEinheitResource,
-  OrganisationsEinheitService,
-  ZUSTAENDIGE_STELLE_SERVICE,
-} from '@alfa-client/zustaendige-stelle-shared';
+import { createDialogRefMock, DialogRefMock, Mock, mock } from '@alfa-client/test-utils';
+import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
 import { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { faker } from '@faker-js/faker';
 import { Resource } from '@ngxp/rest';
-import { ButtonComponent, CloseIconComponent, InstantSearchResult } from '@ods/system';
-import { createInstantSearchResult } from 'libs/design-system/src/test/search';
+import { ButtonComponent, CloseIconComponent } from '@ods/system';
 import { MockComponent } from 'ng-mocks';
-import { of } from 'rxjs';
-import { getDataTestIdOf } from '../../../../tech-shared/test/data-test';
-import { createOrganisationsEinheitResource } from '../../../../zustaendige-stelle-shared/test/organisations-einheit';
 import { SearchZustaendigeStelleDialogComponent } from '././search-zustaendige-stelle-dialog.component';
-import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
+import { SearchZustaendigeStelleFormContainerComponent } from './search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component';
 
 describe('SearchZustaendigeStelleDialogComponent', () => {
   let component: SearchZustaendigeStelleDialogComponent<Resource>;
   let fixture: ComponentFixture<SearchZustaendigeStelleDialogComponent<Resource>>;
 
-  const searchOrganisationsEinheitComp: string = getDataTestIdOf('search-organisations-einheit');
-
   const service: Mock<OrganisationsEinheitService> = mock(OrganisationsEinheitService);
   const title: string = 'dummyTitle';
 
   let dialogRefMock: DialogRefMock;
 
-  const organisationsEinheitResource: OrganisationsEinheitResource = createOrganisationsEinheitResource();
-
   beforeEach(() => {
     dialogRefMock = createDialogRefMock();
   });
@@ -71,7 +50,7 @@ describe('SearchZustaendigeStelleDialogComponent', () => {
       declarations: [
         SearchZustaendigeStelleDialogComponent,
         ToEmbeddedResourcesPipe,
-        MockComponent(SearchZustaendigeStelleFormComponent),
+        MockComponent(SearchZustaendigeStelleFormContainerComponent),
         MockComponent(ButtonComponent),
         MockComponent(CloseIconComponent),
       ],
@@ -100,149 +79,11 @@ describe('SearchZustaendigeStelleDialogComponent', () => {
     expect(component).toBeTruthy();
   });
 
-  describe('ngOnInit', () => {
-    it('should call service', () => {
-      component.ngOnInit();
-
-      expect(service.getSearchResultList).toHaveBeenCalled();
-    });
-  });
-
-  describe('onKeyDownHandler', () => {
-    it('should prevent default behavior for enter key on non buttons', () => {
-      const keyboardEvent: KeyboardEvent = {
-        ...new KeyboardEvent('enter'),
-        key: 'Enter',
-        preventDefault: jest.fn(),
-        target: new EventTarget(),
-      };
-
-      component.onKeyDownHandler(keyboardEvent);
-
-      expect(keyboardEvent.preventDefault).toHaveBeenCalled();
-    });
-
-    it('should not prevent default behavior for enter key on buttons', () => {
-      const keyboardEvent: KeyboardEvent = {
-        ...new KeyboardEvent('enter'),
-        key: 'Enter',
-        preventDefault: jest.fn(),
-        target: { ...new EventTarget(), tagName: 'BUTTON' } as Element,
-      };
-
-      component.onKeyDownHandler(keyboardEvent);
-
-      expect(keyboardEvent.preventDefault).not.toHaveBeenCalled();
-    });
-  });
-
-  describe('search organisationsEinheit component', () => {
-    const result: InstantSearchResult<Resource> = createInstantSearchResult();
-
-    beforeEach(() => {
-      component.searchResults$ = of([result]);
-      fixture.detectChanges();
-    });
-
-    it('should be called with searchResult', () => {
-      const comp: SearchZustaendigeStelleFormComponent<Resource> = getMockComponent<
-        SearchZustaendigeStelleFormComponent<Resource>
-      >(fixture, SearchZustaendigeStelleFormComponent);
-
-      expect(comp.searchResults).toEqual([result]);
-    });
-
-    it('should call search on openSearchDialog output', () => {
-      component.search = jest.fn();
-      const searchBy: string = faker.word.sample();
-      const eventData: EventData<SearchZustaendigeStelleDialogComponent<Resource>> = {
-        fixture,
-        elementSelector: searchOrganisationsEinheitComp,
-        name: 'search',
-        data: searchBy,
-      };
-
-      triggerEvent(eventData);
-
-      expect(component.search).toHaveBeenCalledWith(searchBy);
-    });
-
-    it('should call selectSearchResult on selectSearchResult output', () => {
-      component.selectSearchResult = jest.fn();
-
-      const eventData: EventData<SearchZustaendigeStelleDialogComponent<Resource>> = {
-        fixture,
-        elementSelector: searchOrganisationsEinheitComp,
-        name: 'selectSearchResult',
-        data: organisationsEinheitResource,
-      };
-
-      triggerEvent(eventData);
-
-      expect(component.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
-    });
-
-    it('should call clearSearchResult', () => {
-      component.clearSearchResult = jest.fn();
-
-      const eventData: EventData<SearchZustaendigeStelleDialogComponent<Resource>> = {
-        fixture,
-        elementSelector: searchOrganisationsEinheitComp,
-        name: 'clearSearchResult',
-        data: organisationsEinheitResource,
-      };
-
-      triggerEvent(eventData);
-
-      expect(component.clearSearchResult).toHaveBeenCalled();
-    });
-  });
-
-  describe('search', () => {
-    const searchBy: string = faker.word.sample();
-
-    it('should call service', () => {
-      component.search(searchBy);
-
-      expect(service.search).toHaveBeenCalledWith(searchBy);
-    });
-  });
-
-  describe('select search result', () => {
-    it('should set select result', () => {
-      component.selectSearchResult(organisationsEinheitResource);
-
-      expect(service.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
-    });
-
-    it('should call service', () => {
-      component.selectSearchResult(organisationsEinheitResource);
-
-      expect(service.clearSearchResult).toHaveBeenCalled();
-    });
-
-    it('should close dialog with result', () => {
-      component.selectSearchResult(organisationsEinheitResource);
-
-      expect(dialogRefMock.close).toHaveBeenCalledWith(organisationsEinheitResource);
-    });
-  });
-
-  describe('clear search result', () => {
-    it('should call service', () => {
-      component.clearSearchResult();
-
-      expect(service.clearSearchResult).toHaveBeenCalled();
-    });
-  });
-
   describe('close dialog', () => {
     it('should clear search result', () => {
-      component.clearSearchResult = jest.fn();
-
       component.closeDialog();
 
-      expect(component.clearSearchResult).toHaveBeenCalled();
+      expect(service.clearSearchResult).toHaveBeenCalled();
     });
 
     it('should close dialog', () => {
@@ -251,22 +92,4 @@ describe('SearchZustaendigeStelleDialogComponent', () => {
       expect(dialogRefMock.close).toHaveBeenCalled();
     });
   });
-
-  describe('isNotButtonElement', () => {
-    it('should return false', () => {
-      const element: Element = { tagName: 'BUTTON' } as Element;
-
-      const result: boolean = component.isNotButtonElement(element);
-
-      expect(result).toBe(false);
-    });
-
-    it('should return true', () => {
-      const element: Element = { tagName: 'INPUT' } as Element;
-
-      const result: boolean = component.isNotButtonElement(element);
-
-      expect(result).toBe(true);
-    });
-  });
 });
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts
index 492c3c800690e5ca9c929299dee8f765f514b76a..b00b5a3a722ac05864396fb4825b67db72694a44 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts
@@ -23,7 +23,7 @@
  */
 import { ZUSTAENDIGE_STELLE_SERVICE, ZustaendigeStelleService } from '@alfa-client/zustaendige-stelle-shared';
 import { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';
-import { Component, HostListener, Inject, OnInit } from '@angular/core';
+import { Component, Inject } from '@angular/core';
 import { Resource } from '@ngxp/rest';
 import { InstantSearchResult } from '@ods/system';
 import { Observable } from 'rxjs';
@@ -33,47 +33,21 @@ import { Observable } from 'rxjs';
   selector: 'search-zustaendige-stelle-dialog',
   templateUrl: './search-zustaendige-stelle-dialog.component.html',
 })
-export class SearchZustaendigeStelleDialogComponent<T extends Resource> implements OnInit {
+export class SearchZustaendigeStelleDialogComponent<T extends Resource> {
   public searchResults$: Observable<InstantSearchResult<T>[]>;
 
   constructor(
     private dialogRef: DialogRef,
-    @Inject(ZUSTAENDIGE_STELLE_SERVICE)
-    private service: ZustaendigeStelleService<T>,
+    @Inject(ZUSTAENDIGE_STELLE_SERVICE) private service: ZustaendigeStelleService<T>,
     @Inject(DIALOG_DATA) public title: string,
   ) {}
 
-  ngOnInit(): void {
-    this.searchResults$ = this.service.getSearchResultList();
-  }
-
-  @HostListener('document:keydown', ['$event'])
-  onKeyDownHandler(e: KeyboardEvent) {
-    if (e.key === 'Enter' && this.isNotButtonElement(e.target as Element)) {
-      e.preventDefault();
-    }
-  }
-
-  public search(searchBy: string): void {
-    this.service.search(searchBy);
-  }
-
-  public selectSearchResult(zustaendigeStelle: T): void {
-    this.service.selectSearchResult(zustaendigeStelle);
-    this.service.clearSearchResult();
-    this.dialogRef.close(zustaendigeStelle);
-  }
-
-  public clearSearchResult(): void {
-    this.service.clearSearchResult();
-  }
-
   public closeDialog(): void {
-    this.clearSearchResult();
+    this.service.clearSearchResult();
     this.dialogRef.close();
   }
 
-  public isNotButtonElement(e: Element): boolean {
-    return e.tagName !== 'BUTTON';
+  public searchResultSelected(zustaendigeStelle: T): void {
+    this.dialogRef.close(zustaendigeStelle);
   }
 }
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.html b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..2c884df36afc8721e62bc85b99d0c60606287986
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.html
@@ -0,0 +1,8 @@
+<alfa-search-zustaendige-stelle-form
+  data-test-id="search-organisations-einheit"
+  [searchResults]="searchResults$ | async"
+  [focusOnSearchField]="focusOnSearchField"
+  (search)="search($event)"
+  (selectSearchResult)="selectSearchResult($event)"
+  (clearSearchResult)="clearSearchResult()"
+/>
\ No newline at end of file
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.spec.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..61763e91ba325e6355d54fdab3055f39b0399151
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.spec.ts
@@ -0,0 +1,207 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { EventData, getMockComponent, mock, Mock, triggerEvent } from '@alfa-client/test-utils';
+import {
+  OrganisationsEinheitResource,
+  OrganisationsEinheitService,
+  ZUSTAENDIGE_STELLE_SERVICE,
+} from '@alfa-client/zustaendige-stelle-shared';
+import { faker } from '@faker-js/faker';
+import { Resource } from '@ngxp/rest';
+import { InstantSearchResult } from '@ods/system';
+import { MockComponent } from 'ng-mocks';
+import { of } from 'rxjs';
+import { createInstantSearchResult } from '../../../../../design-system/src/test/search';
+import { getDataTestIdOf } from '../../../../../tech-shared/test/data-test';
+import { createOrganisationsEinheitResource } from '../../../../../zustaendige-stelle-shared/test/organisations-einheit';
+import { SearchZustaendigeStelleFormContainerComponent } from './search-zustaendige-stelle-form-container.component';
+import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
+
+describe('SearchZustaendigeStelleFormContainerComponent', () => {
+  let component: SearchZustaendigeStelleFormContainerComponent<Resource>;
+  let fixture: ComponentFixture<SearchZustaendigeStelleFormContainerComponent<Resource>>;
+
+  let service: Mock<OrganisationsEinheitService>;
+
+  const searchOrganisationsEinheitComp: string = getDataTestIdOf('search-organisations-einheit');
+
+  const organisationsEinheitResource: OrganisationsEinheitResource = createOrganisationsEinheitResource();
+
+  beforeEach(async () => {
+    service = mock(OrganisationsEinheitService);
+    await TestBed.configureTestingModule({
+      imports: [SearchZustaendigeStelleFormContainerComponent],
+      declarations: [MockComponent(SearchZustaendigeStelleFormComponent)],
+      providers: [
+        {
+          provide: ZUSTAENDIGE_STELLE_SERVICE,
+          useValue: service,
+        },
+      ],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(SearchZustaendigeStelleFormContainerComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+
+  describe('ngOnInit', () => {
+    it('should call service', () => {
+      component.ngOnInit();
+
+      expect(service.getSearchResultList).toHaveBeenCalled();
+    });
+  });
+
+  describe('onKeyDownHandler', () => {
+    it('should prevent default behavior for enter key on non buttons', () => {
+      const keyboardEvent: KeyboardEvent = {
+        ...new KeyboardEvent('enter'),
+        key: 'Enter',
+        preventDefault: jest.fn(),
+        target: new EventTarget(),
+      };
+
+      component.onKeyDownHandler(keyboardEvent);
+
+      expect(keyboardEvent.preventDefault).toHaveBeenCalled();
+    });
+
+    it('should not prevent default behavior for enter key on buttons', () => {
+      const keyboardEvent: KeyboardEvent = {
+        ...new KeyboardEvent('enter'),
+        key: 'Enter',
+        preventDefault: jest.fn(),
+        target: { ...new EventTarget(), tagName: 'BUTTON' } as Element,
+      };
+
+      component.onKeyDownHandler(keyboardEvent);
+
+      expect(keyboardEvent.preventDefault).not.toHaveBeenCalled();
+    });
+  });
+
+  describe('search organisationsEinheit component', () => {
+    const result: InstantSearchResult<Resource> = createInstantSearchResult();
+
+    beforeEach(() => {
+      component.searchResults$ = of([result]);
+      fixture.detectChanges();
+    });
+
+    it('should be called with searchResult', () => {
+      const comp: SearchZustaendigeStelleFormComponent<Resource> = getMockComponent<
+        SearchZustaendigeStelleFormComponent<Resource>
+      >(fixture, SearchZustaendigeStelleFormComponent);
+
+      expect(comp.searchResults).toEqual([result]);
+    });
+
+    it('should call search on openSearchDialog output', () => {
+      component.search = jest.fn();
+      const searchBy: string = faker.word.sample();
+      const eventData: EventData<SearchZustaendigeStelleFormContainerComponent<Resource>> = {
+        fixture,
+        elementSelector: searchOrganisationsEinheitComp,
+        name: 'search',
+        data: searchBy,
+      };
+
+      triggerEvent(eventData);
+
+      expect(component.search).toHaveBeenCalledWith(searchBy);
+    });
+
+    it('should call selectSearchResult on selectSearchResult output', () => {
+      component.selectSearchResult = jest.fn();
+
+      const eventData: EventData<SearchZustaendigeStelleFormContainerComponent<Resource>> = {
+        fixture,
+        elementSelector: searchOrganisationsEinheitComp,
+        name: 'selectSearchResult',
+        data: organisationsEinheitResource,
+      };
+
+      triggerEvent(eventData);
+
+      expect(component.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
+    });
+
+    it('should call clearSearchResult', () => {
+      component.clearSearchResult = jest.fn();
+
+      const eventData: EventData<SearchZustaendigeStelleFormContainerComponent<Resource>> = {
+        fixture,
+        elementSelector: searchOrganisationsEinheitComp,
+        name: 'clearSearchResult',
+        data: organisationsEinheitResource,
+      };
+
+      triggerEvent(eventData);
+
+      expect(component.clearSearchResult).toHaveBeenCalled();
+    });
+  });
+
+  describe('search', () => {
+    const searchBy: string = faker.word.sample();
+
+    it('should call service', () => {
+      component.search(searchBy);
+
+      expect(service.search).toHaveBeenCalledWith(searchBy);
+    });
+  });
+
+  describe('select search result', () => {
+    it('should set select result', () => {
+      component.selectSearchResult(organisationsEinheitResource);
+
+      expect(service.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
+    });
+
+    it('should call service', () => {
+      component.selectSearchResult(organisationsEinheitResource);
+
+      expect(service.clearSearchResult).toHaveBeenCalled();
+    });
+
+    it('should emit search result selected', () => {
+      component.searchResultSelected.emit = jest.fn();
+
+      component.selectSearchResult(organisationsEinheitResource);
+
+      expect(component.searchResultSelected.emit).toHaveBeenCalledWith(organisationsEinheitResource);
+    });
+  });
+
+  describe('clear search result', () => {
+    it('should call service', () => {
+      component.clearSearchResult();
+
+      expect(service.clearSearchResult).toHaveBeenCalled();
+    });
+  });
+
+  describe('isNotButtonElement', () => {
+    it('should return false', () => {
+      const element: Element = { tagName: 'BUTTON' } as Element;
+
+      const result: boolean = component.isNotButtonElement(element);
+
+      expect(result).toBe(false);
+    });
+
+    it('should return true', () => {
+      const element: Element = { tagName: 'INPUT' } as Element;
+
+      const result: boolean = component.isNotButtonElement(element);
+
+      expect(result).toBe(true);
+    });
+  });
+});
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..e67f36dfbf550f3f5d8f5678a165ca687833442e
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.ts
@@ -0,0 +1,50 @@
+import { ZUSTAENDIGE_STELLE_SERVICE, ZustaendigeStelleService } from '@alfa-client/zustaendige-stelle-shared';
+import { Component, EventEmitter, HostListener, Inject, Input, OnInit, Output } from '@angular/core';
+import { Resource } from '@ngxp/rest';
+import { InstantSearchResult } from '@ods/system';
+import { Observable } from 'rxjs';
+
+@Component({
+  selector: 'alfa-search-zustaendige-stelle-form-container',
+  templateUrl: './search-zustaendige-stelle-form-container.component.html',
+})
+export class SearchZustaendigeStelleFormContainerComponent<T extends Resource> implements OnInit {
+  @Output() searchResultSelected = new EventEmitter<T>();
+  @Input() focusOnSearchField: boolean = false;
+
+  public searchResults$: Observable<InstantSearchResult<T>[]>;
+
+  constructor(
+    @Inject(ZUSTAENDIGE_STELLE_SERVICE)
+    private service: ZustaendigeStelleService<T>,
+  ) {}
+
+  ngOnInit(): void {
+    this.searchResults$ = this.service.getSearchResultList();
+  }
+
+  @HostListener('document:keydown', ['$event'])
+  onKeyDownHandler(e: KeyboardEvent) {
+    if (e.key === 'Enter' && this.isNotButtonElement(e.target as Element)) {
+      e.preventDefault();
+    }
+  }
+
+  public search(searchBy: string): void {
+    this.service.search(searchBy);
+  }
+
+  public selectSearchResult(zustaendigeStelle: T): void {
+    this.service.selectSearchResult(zustaendigeStelle);
+    this.service.clearSearchResult();
+    this.searchResultSelected.emit(zustaendigeStelle);
+  }
+
+  public clearSearchResult(): void {
+    this.service.clearSearchResult();
+  }
+
+  public isNotButtonElement(e: Element): boolean {
+    return e.tagName !== 'BUTTON';
+  }
+}
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
similarity index 96%
rename from alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
rename to alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
index d9025b3bb2e2f7e1a9f080bc2311535315f97036..b5f1e583173c2aff41e33d3e0d06a3ed2352131e 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
@@ -28,6 +28,7 @@
     data-test-id="search"
     placeholder="Name des Amts oder Adresse eingeben"
     [control]="formService.form.controls.search"
+    [focusOnSearchField]="focusOnSearchField"
     [searchResults]="searchResults"
     (searchResultSelected)="selectSearchResult.emit($event.data)"
     (searchQueryChanged)="search.emit($event.searchBy)"
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
similarity index 93%
rename from alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
rename to alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
index 936e0398d636e323fe154040409c50c876a8f736..92a65e293c4dbea6409338e24fd449c2f4c7ec16 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
@@ -28,11 +28,11 @@ import { ReactiveFormsModule } from '@angular/forms';
 import { faker } from '@faker-js/faker';
 import { Resource } from '@ngxp/rest';
 import { InstantSearchComponent, InstantSearchResult } from '@ods/system';
+import { createInstantSearchResult } from 'libs/design-system/src/test/search';
+import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
+import { createOrganisationsEinheitResource } from 'libs/zustaendige-stelle-shared/test/organisations-einheit';
 import { MockComponent } from 'ng-mocks';
-import { createInstantSearchResult } from '../../../../../design-system/src/test/search';
-import { getDataTestIdOf } from '../../../../../tech-shared/test/data-test';
-import { createOrganisationsEinheitResource } from '../../../../../zustaendige-stelle-shared/test/organisations-einheit';
-import { SearchZustaendigeStelleFormservice } from '../search-zustaendige-stelle.formservice';
+import { SearchZustaendigeStelleFormservice } from '../../search-zustaendige-stelle.formservice';
 import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-form.component';
 
 describe('SearchZustaendigeStelleFormComponent', () => {
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
similarity index 91%
rename from alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
rename to alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
index dff8515301abf57281a9c617a711bf42d46e71c2..a36f2cb5dbabc228ef35fbb7a4dc3f0fd9de5fbd 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
@@ -24,7 +24,7 @@
 import { Component, EventEmitter, Input, Output } from '@angular/core';
 import { Resource } from '@ngxp/rest';
 import { InstantSearchResult } from '@ods/system';
-import { SearchZustaendigeStelleFormservice } from '../search-zustaendige-stelle.formservice';
+import { SearchZustaendigeStelleFormservice } from '../../search-zustaendige-stelle.formservice';
 
 @Component({
   selector: 'alfa-search-zustaendige-stelle-form',
@@ -33,6 +33,7 @@ import { SearchZustaendigeStelleFormservice } from '../search-zustaendige-stelle
 })
 export class SearchZustaendigeStelleFormComponent<T extends Resource> {
   @Input() public searchResults: InstantSearchResult<T>[];
+  @Input() public focusOnSearchField: boolean = false;
 
   @Output() public search: EventEmitter<string> = new EventEmitter();
   @Output() public selectSearchResult: EventEmitter<T> = new EventEmitter();
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts b/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts
index 820da330c99f8e0d184b5c6b38096db8c03604bb..11e5ee19eafa8a59c361e8b260507fe6c32c4ef1 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts
@@ -40,7 +40,8 @@ import { SearchExterneFachstelleContainerComponent } from './search-externe-fach
 import { OrganisationsEinheitComponent } from './search-organisations-einheit-container/organisations-einheit/organisations-einheit.component';
 import { SearchOrganisationsEinheitContainerComponent } from './search-organisations-einheit-container/search-organisations-einheit-container.component';
 import { SearchZustaendigeStelleDialogComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component';
-import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
+import { SearchZustaendigeStelleFormContainerComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component';
+import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
 import { ZustaendigeStelleButtonComponent } from './zustaendige-stelle-button/zustaendige-stelle-button.component';
 import { ZustaendigeStelleHeaderComponent } from './zustaendige-stelle-header/zustaendige-stelle-header.component';
 
@@ -68,6 +69,7 @@ import { ZustaendigeStelleHeaderComponent } from './zustaendige-stelle-header/zu
     SearchExterneFachstelleContainerComponent,
     EditZustaendigeStelleButtonComponent,
     ZustaendigeStelleHeaderComponent,
+    SearchZustaendigeStelleFormContainerComponent,
   ],
   exports: [
     OrganisationsEinheitComponent,
@@ -75,6 +77,7 @@ import { ZustaendigeStelleHeaderComponent } from './zustaendige-stelle-header/zu
     SearchZustaendigeStelleDialogComponent,
     SearchOrganisationsEinheitContainerComponent,
     SearchExterneFachstelleContainerComponent,
+    SearchZustaendigeStelleFormContainerComponent,
   ],
 })
 export class ZustaendigeStelleModule {}