silvershop-suite / store-profile
Central shop identity for SilverShop: name, legal name, VAT number, contact details, logo and a structured store address, shared by invoicing, shipping labels and other modules.
Package info
github.com/silvershop-suite/silvershop-store-profile
Type:silverstripe-vendormodule
pkg:composer/silvershop-suite/store-profile
Requires
- php: ^8.3
- silvershop-suite/address-formats: @dev
- silvershop/core: ^6
- silverstripe/asset-admin: ^3.0
- silverstripe/assets: ^3.0
- silverstripe/framework: ^6.0
- silverstripe/siteconfig: ^6.0
Requires (Dev)
- phpunit/phpunit: ^11.0
- silverstripe/sqlite3: ^4
- squizlabs/php_codesniffer: ^3.7
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-19 19:54:59 UTC
README
Central shop identity + address for SilverShop, on SiteConfig — one place for the shop name, legal name, VAT number, contact details, logo and a structured store address, shared by other modules (invoicing seller, shipping-labels sender, …).
Core silvershop has no shop address (only allowed countries / base currency / from-email), so each module rolled its own seller/sender identity and they diverged. This module makes it a single source of truth.
What it adds
StoreProfileExtensiononSilverStripe\SiteConfig\SiteConfig, in a Store profile area under Settings → Shop:- Identity:
ShopName,LegalName,VatNumber,ContactEmail,ContactPhone, and aLogo(Image). - Structured store address: street, line 2, postcode, city, region, ISO country — with labels and formatting from silvershop-suite/address-formats (the region field auto-hides for countries that don't use one).
- Identity:
- Accessors for consumers:
StoreProfileName()(ShopName → LegalName → site title),hasStoreAddress(),StoreAddressData()(generic array),StoreFormattedAddress($html).
Consumers (soft dependency)
invoicing (seller) and shipping-labels (sender) use the store profile when it's present and filled, and fall back to their own fields otherwise — so each still works standalone. Nothing hard-requires store-profile.
Installation
composer require silvershop-suite/store-profile
Then run dev/build and fill in Settings → Shop → Store profile. Requires
silvershop-suite/address-formats (installed automatically).
Status
v1 — identity + structured address + logo, consumed by invoicing and shipping-labels. i18n: en, nl, de, fr, es,
it. Not yet included (future): registration / Chamber-of-Commerce number and bank/IBAN details (invoicing still
owns its registration-number field for now); multi-store scoping. See
PLAN-store-profile-address.md in the consuming project.
Licence
BSD-3-Clause.
Credits
Built and maintained by Remy Vaartjes (remy@xd.nl) — part of the SilverShop-Suite.