Configuration
B2B+ Base has two plugin settings (both per sales channel). Companies themselves are managed in the storefront account area or via the API.
Both settings are found in the Shopware Administration under Settings → System → Plugins → B2B+ Base (or via the plugin's gear icon).
Company-only registrations (B2B only)
Card "B2B+ Registration".
| Property | Value |
|---|---|
| Label | Allow company registrations only (B2B only) |
| Technical key | AvellonB2BPlusBase.config.onlyCompanyRegistrations |
| Type | Yes/No (toggle) |
| Default | off (disabled) |
| Scope | configurable per sales channel |
Help text (as shown in the Administration):
When enabled, the registration form is locked to business accounts: the private/business choice is hidden, new customers always register as a company, and a company name is required. Existing accounts and the checkout are unaffected. Applies per sales channel.
What the setting does
- Off (default): the registration form behaves like the Shopware standard (private and business accounts possible).
- On: the private/business choice is removed from the registration form; every new sign-up becomes a company account, and the company name is required. The rule is enforced server-side — including via the Store API, so it cannot be bypassed. Existing accounts and guest checkout are unaffected.
Works with auto-provisioning
Because every sign-up now carries a company name, B2B+ Base automatically creates a company + owner membership for each new customer (see Company accounts).
Show only company addresses
Card "B2B+ Company addresses".
| Property | Value |
|---|---|
| Label | With an active company, show only company addresses in the account/checkout |
| Technical key | AvellonB2BPlusBase.config.onlyCompanyAddresses |
| Type | Yes/No (toggle) |
| Default | off (disabled) |
| Scope | configurable per sales channel |
Help text (as shown in the Administration):
When enabled and the logged-in customer has an active company, the account address book shows only that company's addresses using the standard Shopware address cards. The company's addresses are automatically added to the customer's own address book so they are selectable in the standard checkout. Customers without an active company are unaffected.
What the setting does
- Off (default): account and checkout behave exactly like the Shopware standard. Company addresses can still be created and used in the address book, but nothing is filtered.
- On: for customers with an active company (that has at least one company address), only the company addresses are shown in the account address book and in checkout, and are pre-selected in checkout automatically. An escape link allows using other addresses when needed.
The full description of the behaviour (materialisation, default addresses, escape hatch) is on Company addresses.
Per sales channel
Since the setting is sales-channel-scoped, you can, for example, enable the feature only in a B2B channel and leave it disabled in a B2C channel.
VAT ID validation (VIES)
Card "B2B+ VAT-ID validation".
| Property | Value |
|---|---|
| Label | Validate company VAT IDs via the EU VIES service |
| Technical key | AvellonB2BPlusBase.config.validateVatViaVies |
| Type | Yes/No (switch) |
| Default | on (enabled) |
| Scope | configurable per sales channel |
Validates a company's VAT ID against VIES on every change and stores the status (valid / invalid / unavailable). Status values, the specifics of German VAT IDs, and the tax treatment are covered under VAT ID validation.
| Property | Value |
|---|---|
| Label | Net prices only for VIES-validated companies (reverse charge) |
| Technical key | AvellonB2BPlusBase.config.netPricesForValidatedEuB2B |
| Type | Yes/No (switch) |
| Default | off (disabled) |
| Scope | configurable per sales channel |
Restricts Shopware's intra-community B2B tax exemption to companies with VIES status valid. Requires "tax-free for companies" to be enabled under Settings → Countries. Details under VAT ID validation → Tax treatment.
Admin module (read-only)
Customers → Companies lists all company accounts. Opening one shows its members (name, email, role, status). Access via the ACL role avellon_b2b_company.viewer.
The module is read-only. Companies, members and addresses are created and edited:
- in the storefront account area by owners/administrators (Account → Company account), or
- via the Shopware Admin API (entities
b2b_company,b2b_company_member,b2b_company_address,b2b_company_invite).
Repair owner-less companies (deleted owner) with avellon:b2b:reassign-owner.
Creating companies for existing customers (backfill)
For customers who already existed with a company name before installation, a console command creates companies and address books retroactively:
bin/console avellon:b2b:backfill-companies- Safe to re-run — customers with an existing membership are skipped.
--dry-runreports what would be created without writing.- Creates one company per customer; identical company names are not merged.
Details on Company accounts → Backfill.
Adjusting the invitation mail
The invitation mail is sent through an editable Shopware mail template:
- Edit under: Settings → Email templates
- Technical name:
avellon_b2b_company_invitation("Company invitation (B2B+ Base)")
Available variables and behaviour are described on Invitations → Mail template. On a plugin update, content you have edited is not overwritten.
Uninstalling & data
When uninstalling, Shopware offers the option to keep user data:
- Keep data: all company data and the mail template are retained.
- Delete data: the company tables are removed and the markers set by B2B+ Base in the customer addresses are reverted. Company addresses that were copied into customer address books remain as normal customer addresses (customer data is not deleted). Deleting a customer automatically removes their memberships anyway (GDPR-friendly).