Firmenkonten
Eine Firma ist das Konto, für das eine Gruppe von Kunden — die Mitglieder — handelt.
Wie Firmen entstehen
Firmen entstehen auf drei Wegen: automatisch bei der Registrierung, per Einladung in eine bestehende Firma und per Konsolenbefehl für Bestandskunden.
Der Normalfall ist die automatische Bereitstellung. Registriert sich ein neuer Kunde mit einem Firmennamen, legt B2B+ Base im selben Zug eine Firma an und trägt den Kunden als deren Inhaber ein. Den Firmennamen nimmt das Plugin zuerst aus dem Konto-Feld „Firma"; ist das leer, greift es auf den Firmennamen der Standard-Rechnungsadresse zurück. Ohne Firmenname entsteht keine Firma. Wer bereits Mitglied irgendeiner Firma ist, löst nichts aus — die Bereitstellung ist idempotent und legt keine zweite Firma an. Sie hängt am Registrierungs-Event und läuft im Hintergrund; schlägt sie fehl, kommt die Registrierung trotzdem durch, und der Fehler landet nur im Log.
Weitere Personen bekommen keine eigene Firma. Sie kommen per Einladung in eine bestehende Firma — den Ablauf beschreibt Einladungen.
Für Bestandskunden gibt es den Backfill-Befehl. Kunden, die sich schon vor der Installation mit einem Firmennamen registriert haben oder importiert wurden, besitzen noch keine Firma. Der Konsolenbefehl holt das nach:
bin/console avellon:b2b:backfill-companiesEr geht alle Kunden mit nicht-leerem Firmennamen durch, die noch keiner Firma angehören, und legt für jeden eine Firma (Name = Firmenname des Kunden) samt Inhaber-Mitgliedschaft an. Das Adressbuch des Kunden kopiert er in die Firmenadressen und übernimmt die Kennzeichnung als Standard-Rechnungs- und -Lieferadresse aus den Kunden-Standards.
Sicher wiederholbar
Der Befehl ist idempotent: Kunden mit bestehender Mitgliedschaft überspringt er, ein zweiter Lauf ändert nichts. Zum Schluss gibt er eine Zusammenfassung aus — angelegte Firmen, kopierte Adressen, übersprungene Kunden.
Firmendaten
Eine Firma trägt diese Stammdaten:
| Feld | Beschreibung | Pflicht |
|---|---|---|
| Firmenname | Der Name des Firmenkontos. | Ja |
| USt-IdNr. | Umsatzsteuer-Identifikationsnummer. | Nein |
| Handelsregisternummer | Registernummer der Firma. | Nein |
| Aktiv | Steuert, ob die Firma verwendet werden kann. Eine inaktive Firma lässt sich nicht als aktive Firma wählen. | – |
Firmendaten und die eigene Rolle sehen Mitglieder im Storefront unter Konto → Firmenkonto → Firma (Seite „Meine Firma").
Firmen im Admin (nur Lesen)
Unter Kunden → Firmen listet die Administration alle Firmen und zeigt je Firma die Mitglieder. Anlegen und Bearbeiten läuft im Storefront-Kontobereich (Inhaber/Admins) oder über die Admin-API. Siehe Konfiguration.
Aktive Firma & Firmen-Switcher
Ein Kunde kann mehreren Firmen angehören, handelt aber immer nur für eine — die aktive Firma. Der Shop merkt sie sich in der Session. Fehlt eine Auswahl oder ist sie nicht mehr gültig, fällt er auf die erste aktive Mitgliedschaft zurück. In Frage kommen nur Firmen, in denen der Kunde eine aktive Mitgliedschaft hat und die selbst aktiv sind.
Gehört der Kunde nur einer Firma an, zeigt die Konto-Seitenleiste im Abschnitt Aktive Firma schlicht deren Namen. Bei mehreren Firmen erscheint stattdessen das Aufklappmenü Firma wechseln mit allen zur Auswahl stehenden Firmen. Nach der Auswahl meldet der Shop „Aktive Firma gewechselt." und bleibt auf der aktuellen Seite.
Umschalten wird serverseitig geprüft
Beim Wechsel prüft der Shop, ob der Kunde wirklich aktives Mitglied der gewählten Firma ist. Ein manipulierter Firmen-Bezeichner führt nur zur Meldung „Die Firma konnte nicht gewechselt werden."
Rollen-Überblick
Jede Mitgliedschaft trägt eine Rolle, die festlegt, was das Mitglied in der Firma darf:
| Rolle | Storefront-Bezeichnung | Kurz |
|---|---|---|
| owner | Inhaber | Volle Verwaltung, inklusive Vergabe der Inhaber-Rolle. |
| admin | Administrator | Verwaltung von Mitgliedern und Adressen, aber keine Inhaber-Rechte. |
| member | Mitglied | Handelt für die Firma, ohne Verwaltungsrechte. |
Rechte, Status und Schutzregeln im Detail stehen unter Mitglieder & Rollen.