PHPackages                             fyrst/shopware-order-attributes - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. fyrst/shopware-order-attributes

ActiveShopware-platform-plugin[Utility &amp; Helpers](/categories/utility)

fyrst/shopware-order-attributes
===============================

Order Attributes

1.0.0(yesterday)00[5 issues](https://github.com/fyrst-digital/shopware-order-attributes/issues)MITPHP

Since Jan 31Pushed yesterdayCompare

[ Source](https://github.com/fyrst-digital/shopware-order-attributes)[ Packagist](https://packagist.org/packages/fyrst/shopware-order-attributes)[ RSS](/packages/fyrst-shopware-order-attributes/feed)WikiDiscussions master Synced today

READMEChangelog (2)Dependencies (2)Versions (7)Used By (0)

OrderAttributes for Shopware 6
==============================

[](#orderattributes-for-shopware-6)

Configurable per-line-item attributes for the cart and checkout flow.

**Package**`fyrst/shopware-order-attributes`**Version**1.0.0**Shopware**^6.6**License**MITOverview
--------

[](#overview)

OrderAttributes enables merchants to define custom input fields — such as commission numbers, customer references, or delivery notes — that customers complete on each cart line item during the shopping process. Attribute values are persisted to the corresponding order line items upon checkout, ensuring they remain accessible throughout order management and fulfilment.

Features
--------

[](#features)

- Configurable attributes managed entirely through the Shopware administration
- Translatable labels and descriptions with full multi-language support
- Storefront AJAX form on each cart line item with auto-save (no page reload required)
- Attribute values stored as custom fields on order line items after checkout
- Dedicated modal in the order detail grid for viewing saved attribute values
- Inline editing of position, active, and required flags in the attribute list
- XSS sanitization applied to all user-supplied values

Requirements
------------

[](#requirements)

- Shopware 6.6.x
- PHP 8.1 or later

Installation
------------

[](#installation)

### Via Composer

[](#via-composer)

```
composer require fyrst/shopware-order-attributes
bin/console plugin:install --activate OrderAttributes
```

### Via Administration

[](#via-administration)

1. Navigate to **Settings &gt; System &gt; Plugins**.
2. Upload or locate the plugin in the store.
3. Click **Install**, then **Activate**.

Usage
-----

[](#usage)

### Managing Attributes

[](#managing-attributes)

Navigate to **Settings &gt; Plugins &gt; Order Line Item Attributes** to create and manage attributes.

Each attribute consists of the following fields:

FieldDescription**Key**Unique identifier for the attribute. Immutable after creation.**Type**Input field type. Currently supports *Text*.**Label**Display label shown to the customer. Translatable.**Description**Optional help text. Translatable.**Position**Numeric sort order when rendering multiple attributes.**Active**Toggle to show or hide the attribute in the storefront.**Required**Toggle to mark the attribute as mandatory.The list view supports inline editing for the **Position**, **Active**, and **Required** columns.

### Storefront Experience

[](#storefront-experience)

When active attributes exist, each cart line item displays the corresponding input fields directly below the product name. Values are saved automatically via AJAX when the customer changes a field or presses Enter — no page reload occurs. A loading indicator provides visual feedback during the save request.

The same form is also available in the offcanvas (slide-out) cart.

### Order Processing

[](#order-processing)

During checkout, attribute values are transferred from the cart payload to the order line item's custom fields. In the administration order detail view, a small indicator icon appears next to line items that contain saved attributes. Clicking the icon opens a modal displaying each attribute name alongside its stored value.

Architecture
------------

[](#architecture)

ComponentLocationEntity definition`src/Core/Content/OrderLineItemAttribute/`Entity tables`fyrst_order_line_item_attribute`, `fyrst_order_line_item_attribute_translation`Event subscriber`src/Subscriber/Checkout.php`AJAX controller`src/Controller/OrderAttributesController.php` (`POST /order-attributes/add`)Admin module`src/Resources/app/administration/src/module/fyrst-order-attributes/`Admin order grid override`src/Resources/app/administration/src/override/sw-order-line-items-grid/`Storefront JS plugin`src/Resources/app/storefront/src/order-attributes.js`Twig templates`src/Resources/views/storefront/component/line-item/`The subscriber hooks into four Shopware events:

- `CartLoadedEvent` — initialises the order attributes payload structure on each line item
- `CartConvertedEvent` — migrates attribute values from payload to custom fields during checkout
- `CheckoutCartPageLoadedEvent` — attaches active attributes to the checkout cart page
- `OffcanvasCartPageLoadedEvent` — attaches active attributes to the offcanvas cart page

Customisation
-------------

[](#customisation)

The storefront form template exposes the following Twig blocks for extension:

BlockPurpose`component_line_item_type_product_order_attributes`Wrapper block injected into the product line item template`component_order_attributes_line_item_form_prepend`Rendered before the form inputs`component_order_attributes_line_item_form_input`The attribute input fields`component_order_attributes_line_item_form_append`Rendered after the form inputsBuilding Assets
---------------

[](#building-assets)

Asset compilation uses `bun` as the JavaScript runtime and package manager. Run the following from the Shopware root directory:

```
# Administration (Vite)
bin/build-administration.sh

# Storefront (Webpack)
bin/build-storefront.sh
```

If the Symfony CLI is available:

```
symfony run bin/build-administration.sh
symfony run bin/build-storefront.sh
```

License
-------

[](#license)

This plugin is released under the [MIT License](https://opensource.org/licenses/MIT).

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance100

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~29 days

Recently: every ~36 days

Total

6

Last Release

1d ago

Major Versions

0.2.1 → 1.0.02026-06-27

### Community

Maintainers

![](https://www.gravatar.com/avatar/3b991d3eb68e4612394c7b9a22b09aaf2ecc7b4990f3fb9b3d4cdef0cd135557?d=identicon)[robjke](/maintainers/robjke)

---

Top Contributors

[![ROBJkE](https://avatars.githubusercontent.com/u/26817419?v=4)](https://github.com/ROBJkE "ROBJkE (8 commits)")

### Embed Badge

![Health badge](/badges/fyrst-shopware-order-attributes/health.svg)

```
[![Health](https://phpackages.com/badges/fyrst-shopware-order-attributes/health.svg)](https://phpackages.com/packages/fyrst-shopware-order-attributes)
```

###  Alternatives

[shopware/production

177202.8k](/packages/shopware-production)[frosh/tools

Provides some basic things for managing the Shopware Installation

86783.3k3](/packages/frosh-tools)[werkstattl/openblogware

OpenBlogware: A Blog Module for Shopware 6.

437.4k](/packages/werkstattl-openblogware)[adyen/adyen-shopware6

Official Shopware 6 Plugin to connect to Payment Service Provider Adyen

25115.8k](/packages/adyen-adyen-shopware6)[unzerdev/shopware6

Unzer payment integration for Shopware 6

1230.4k](/packages/unzerdev-shopware6)[kiener/mollie-payments-plugin

Mollie Payments

6562.4k](/packages/kiener-mollie-payments-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
