PHPackages                             buddha-code/buco-part-documents - 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. [PDF &amp; Document Generation](/categories/documents)
4. /
5. buddha-code/buco-part-documents

AbandonedArchivedShopware-plugin[PDF &amp; Document Generation](/categories/documents)

buddha-code/buco-part-documents
===============================

Shopware plugin to create order documents for just a subset of positions of an order

v1.0.0(6y ago)461GPL-3.0PHPPHP &gt;=7.0

Since Jun 14Pushed 6y agoCompare

[ Source](https://github.com/buddhaCode/BucoPartDocuments)[ Packagist](https://packagist.org/packages/buddha-code/buco-part-documents)[ Docs](https://github.com/buddhaCode/BucoPartDocuments)[ RSS](/packages/buddha-code-buco-part-documents/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (1)Versions (2)Used By (0)

BucoPartDocuments
=================

[](#bucopartdocuments)

Shopware plugin to create order documents for just a subset of positions of an order.

Features
--------

[](#features)

This plugin adds the ability to create an order document with just a subset of the order's positions. Therefore, the order's document tab has a new checkbox to enable the selection. Once selected, a new position grid becomes available to select the desired positions. With no positions selected, an emtpy document will be created. This might be useful, to place messages via the document's comment field.

[![Order's document tab](Resources/screenshots/screen1creation.png)](Resources/screenshots/screen1creation.png)

To indicate whether the document is a part document or a regular ("full") document, a moon and half moon icon will be introduced in several places like the document tab, the document quick overview and the mail window.

[![Mail attachment](Resources/screenshots/screen2mailAttachment.png)](Resources/screenshots/screen2mailAttachment.png)

[![Order liist document quick view](Resources/screenshots/screen3orderList.png)](Resources/screenshots/screen3orderList.png)

Sending a document via e-mail will extend the mail context with a `$EventResult.bucoIsPartDocument`boolean variable, indicating the state of the attached document. So it's possible to render different outputs depending on the state of the document. E.g.:

```
{if $EventResult.bucoIsPartDocument}
    The attached document contains a subset of positions.
{else}
    The attached document contains a all positions.
{/if}
```

This variable is set, if the mail has ONE attachment only. With multiple attachments, the variable would lose it's meaning.

### Configuration

[](#configuration)

It's possible to restrict the creation of part documents to specific document types or templates.

[![Order's document tab](Resources/screenshots/screen0config.png)](Resources/screenshots/screen0config.png)

### Migration

[](#migration)

If you were using the [mbdus Teildokumente erstellen](https://store.shopware.com/mbdus41476730029/teildokumente-erstellen.html) plugin before, there is a migration assistant for you. This will migrate the mbdus part documents into this plugin. Please beware, that this plugin has less features than the mbdus plugin. E.g. it's not possible to change the recipients postal address. On the other hand, this implementation is much leaner and less error-prone.

[![Migration start](Resources/screenshots/screen4migrationStart.png)](Resources/screenshots/screen4migrationStart.png)

[![Migration finished](Resources/screenshots/screen5migrationFinished.png)](Resources/screenshots/screen5migrationFinished.png)

The internal database IDs will be re-enumerated. The original primary key will be preserved in the `s_order_documents_attributes.buco_part_document_legacy_id` column for your service.

The access to the migration assistant is protected with an ACL resource. The `local_admin` user role is enabled by default. Otherwise, you might wish to grant other roles access to the `bucopartdocumentsmigration.migrate` privilege.

The mbdus plugin doesn't need to be installed anymore. After the uninstallation, the plugin left it's data tables behind. This left-behinds are sufficient to do the migration. You'll have possibility to clean up these tables at the end of the migration process.

### Programmatically Usage

[](#programmatically-usage)

If you need to create a part document programmatically, please pass the following arguments to the `initDocument()` method. Yes, some of the information are redundant. This is based on technical restrictions. Please refer to the source code for further details. A [pull request (shopware/shopware#2121)](https://github.com/shopware/shopware/pull/2121) is pending, to address this issues.

```
\Shopware_Components_Document::initDocument($orderId, $docTypeId, [
    'netto' => false,
    'shippingCostsAsPosition' => true,
    '_renderer' => 'pdf',
    'bucoCreatePartDocument' => true,       // used to create part document
    'bucoPartDocPosIds' => [1,2],           // used to create part document; not an index, but the s_order_details primary key
    '_allowMultipleDocuments' => true,      // used to create part document
    'attributes' => [
        'bucoIsPartDocument' => true        // used to create part document
    ],
    'summaryNet' => [
        'bucoCreatePartDocument' => true,   // used to create part document
        'bucoPartDocPosIds' => [1,2]        // used to create part document; not an index, but the s_order_details primary key
    ]
]);
```

Compatibility
-------------

[](#compatibility)

- Shopware &gt;= 5.5.0
- PHP &gt;= 7.0
- Migration from [mbdus Teildokumente erstellen](https://store.shopware.com/mbdus41476730029/teildokumente-erstellen.html) plugin

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

[](#installation)

### Git Version

[](#git-version)

- Checkout plugin in `/custom/plugins/BucoPartDocuments`
- Install and active plugin with the Plugin Manager

### Install with composer

[](#install-with-composer)

- Change to your root installation of Shopware
- Run command `composer require buddha-code/buco-part-documents`
- Install and active plugin with `./bin/console sw:plugin:install --activate BucoPartDocuments`

Contributing
------------

[](#contributing)

Feel free to fork and send pull requests!

Licence
-------

[](#licence)

This project uses the [GPLv3 License](LICENCE).

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

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

2523d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a7bd2c7384fe1171cadbb8cf49052126e89c0dc6f28d0da1e4029c94b2680fbc?d=identicon)[buddhaCode](/maintainers/buddhaCode)

---

Top Contributors

[![buddhaCode](https://avatars.githubusercontent.com/u/11678100?v=4)](https://github.com/buddhaCode "buddhaCode (2 commits)")

---

Tags

documentpart-documentshopwareshopware-pluginpluginshopwaredocumentorder documentpart document

### Embed Badge

![Health badge](/badges/buddha-code-buco-part-documents/health.svg)

```
[![Health](https://phpackages.com/badges/buddha-code-buco-part-documents/health.svg)](https://phpackages.com/packages/buddha-code-buco-part-documents)
```

###  Alternatives

[tecnickcom/tc-lib-pdf

PHP PDF Library

1.8k452.3k7](/packages/tecnickcom-tc-lib-pdf)[faisalman/simple-excel-php

Easily parse / convert / write between Microsoft Excel XML / CSV / TSV / HTML / JSON / etc formats

582599.4k1](/packages/faisalman-simple-excel-php)[netcarver/textile

Textile markup language parser

2311.5M16](/packages/netcarver-textile)[stevebauman/autodoc-facades

Auto-generate PHP doc annotations for Laravel facades

98186.6k9](/packages/stevebauman-autodoc-facades)[tecnickcom/tc-lib-pdf-parser

PHP library to parse PDF documents

4092.8k](/packages/tecnickcom-tc-lib-pdf-parser)[nilgems/laravel-textract

A Laravel package to extract text from files like DOC, XL, Image, Pdf and more. I've developed this package by inspiring "npm textract".

195.2k](/packages/nilgems-laravel-textract)

PHPackages © 2026

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