PHPackages                             alengo/sulu-contact-account-extra-bundle - 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. alengo/sulu-contact-account-extra-bundle

ActiveSymfony-bundle

alengo/sulu-contact-account-extra-bundle
========================================

Additional Data tab for Sulu CMS Contacts and Accounts — generic JSON field with configurable forms

1.0.0(2d ago)05↑2300%MITPHPPHP ^8.2

Since Apr 6Pushed 2d agoCompare

[ Source](https://github.com/alengodev/SuluContactAccountExtraBundle)[ Packagist](https://packagist.org/packages/alengo/sulu-contact-account-extra-bundle)[ Docs](https://github.com/alengodev/SuluContactAccountExtraBundle)[ RSS](/packages/alengo-sulu-contact-account-extra-bundle/feed)WikiDiscussions main Synced today

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

SuluContactAccountExtraBundle
=============================

[](#sulucontactaccountextrabundle)

Adds a configurable **Additional Data** tab to [Sulu CMS](https://sulu.io/) 3.x Contacts and Accounts. Custom fields are stored as a JSON column on the entity — no extra tables, no extra API routes beyond the two provided endpoints.

Features
--------

[](#features)

- **Additional Data tab** — auto-registered for Contacts and Accounts
- **Built-in entities** — concrete `Contact` and `Account` extending Sulu's base classes with a JSON `additionalData` field; no project entities required
- **Generic REST API** — GET/PUT endpoints serialize the full JSON blob; the project form defines the fields
- **Zero-config entity registration** — `sulu_contact` objects and `sulu_admin` resources are auto-configured via `PrependExtensionInterface`

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

[](#requirements)

- PHP 8.2+
- Sulu CMS ~3.0
- Symfony 7.x

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

[](#installation)

```
composer require alengo/sulu-contact-account-extra-bundle
```

Register the bundle in `config/bundles.php`:

```
Alengo\SuluContactAccountExtraBundle\AlengoContactAccountExtraBundle::class => ['all' => true],
```

Import the admin API routes in `config/routes/sulu_admin.yaml`:

```
ContactAccountExtraBundle:
    resource: "@AlengoContactAccountExtraBundle/Resources/config/routing_admin_api.yaml"
    prefix: /admin/api
```

Run a database migration to add the `additionalData` JSON column:

```
bin/adminconsole doctrine:migrations:diff
bin/adminconsole doctrine:migrations:migrate
```

That's it — no further configuration required for a standard setup.

Configuration
-------------

[](#configuration)

All configuration is optional. Defaults work out of the box.

```
alengo_contact_account_extra:
    contact:
        form_key: contact_additional_data       # default
        resource_key: contact_additional_data   # default
        tab_title: sulu_admin.app.additional_data
    account:
        form_key: account_additional_data       # default
        resource_key: account_additional_data   # default
        tab_title: sulu_admin.app.additional_data
```

To use custom entity classes:

```
alengo_contact_account_extra:
    contact:
        entity_class: App\Entity\Contact
    account:
        entity_class: App\Entity\Account
```

Provided Forms
--------------

[](#provided-forms)

The bundle does **not** ship default form XML files — the project controls field definitions. Create your own in `config/forms/`:

```
config/forms/contact_additional_data.xml
config/forms/account_additional_data.xml

```

Example form:

```

    contact_additional_data

                Externe ID
                External ID

```

API Endpoints
-------------

[](#api-endpoints)

MethodPathDescription`GET``/admin/api/account-additional-data/{id}`Load account additional data`PUT``/admin/api/account-additional-data/{id}`Save account additional data`GET``/admin/api/contact-additional-data/{id}`Load contact additional data`PUT``/admin/api/contact-additional-data/{id}`Save contact additional dataProvided Models
---------------

[](#provided-models)

ClassPurpose`Entity\Account`Concrete Doctrine entity (`co_accounts`) with `additionalData` JSON column`Entity\Contact`Concrete Doctrine entity (`co_contacts`) with `additionalData` JSON column

###  Health Score

41

—

FairBetter than 88% of packages

Maintenance99

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

2d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/4a3bea97975bdeddcfa5b76c222740e703e4ff5f9bbf5f6d5d75e8827e0a48ac?d=identicon)[alengodev](/maintainers/alengodev)

---

Top Contributors

[![hual7](https://avatars.githubusercontent.com/u/89628357?v=4)](https://github.com/hual7 "hual7 (3 commits)")

### Embed Badge

![Health badge](/badges/alengo-sulu-contact-account-extra-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/alengo-sulu-contact-account-extra-bundle/health.svg)](https://phpackages.com/packages/alengo-sulu-contact-account-extra-bundle)
```

###  Alternatives

[sulu/skeleton

Project template for starting your new project based on the Sulu content management system

29733.3k](/packages/sulu-skeleton)[sulu/article-bundle

Bundle for managing localized content-rich entities like blog-posts in the Sulu content management system

66409.6k2](/packages/sulu-article-bundle)[sulu/headless-bundle

Bundle that provides controllers and services for using Sulu as headless content management system

55133.7k2](/packages/sulu-headless-bundle)[sulu/form-bundle

Bundle for creating forms in Sulu.

87287.3k7](/packages/sulu-form-bundle)[sulu/content-bundle

Experimental content implementation for sulu.

17112.3k1](/packages/sulu-content-bundle)[sulu/theme-bundle

The Sulu Bundle which provides theming functionality.

23300.4k1](/packages/sulu-theme-bundle)

PHPackages © 2026

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