<?xml version="1.0" encoding="utf-8"?>
<!--RSS generated by Flaimo.com RSS Builder [2026-04-17 16:05:28]-->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"><channel><docs>https://bugs.oxid-esales.com/</docs><link>https://bugs.oxid-esales.com/</link><description><![CDATA[OXID eShop bugtrack - Issues]]></description><title>OXID eShop bugtrack - Issues</title><image><title>OXID eShop bugtrack - Issues</title><url>https://bugs.oxid-esales.com/images/mantis_logo.png</url><link>https://bugs.oxid-esales.com/</link><description><![CDATA[OXID eShop bugtrack - Issues]]></description></image><language>en</language><category>All Projects</category><ttl>10</ttl><dc:language>en</dc:language><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><item><title>0007878: company and add info is missing</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7878</link><description><![CDATA[Hello, &lt;br /&gt;
&lt;br /&gt;
oxcompany and oxaddinfo is missing in the creation of the addresslines for the amazon payload.&lt;br /&gt;
htdocs/vendor/oxid-esales/amazon-pay-module/src/Core/Payload.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The values should be set in addressLine1 or addressLine2 depending wich values are set.&lt;br /&gt;
If company is set it should probably be set in addressLine1 and the address in addresLine2.&lt;br /&gt;
If NO company ist set the address should be set in addressLine1.&lt;br /&gt;
&lt;br /&gt;
Would be nice if you could look into that.&lt;br /&gt;
&lt;br /&gt;
Greeting and happy new year.]]></description><category>main</category><pubDate>Tue, 14 Apr 2026 13:34:27 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7878</guid><comments>https://bugs.oxid-esales.com/view.php?id=7878#bugnotes</comments></item><item><title>0007920: In the sub-shop, the fallback credit card is displayed even though it is not active</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7920</link><description><![CDATA[In the sub-shop, the fallback credit card is displayed even though the payment methods (PayPal credit or debit card and PayPal credit or debit card fallback) are not active.&lt;br /&gt;
However, this only happens if ‘Vaulting: No’ is also set.&lt;br /&gt;
&lt;br /&gt;
/var/configuration/shops/1/modules/osc_paypal.yaml&lt;br /&gt;
  oscPayPalSandboxVaultingEligibility:&lt;br /&gt;
    type: bool&lt;br /&gt;
    value: false]]></description><category>module PayPal checkout - sub</category><pubDate>Tue, 14 Apr 2026 12:41:50 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7920</guid><comments>https://bugs.oxid-esales.com/view.php?id=7920#bugnotes</comments></item><item><title>0007922: getMasterZoomPictureUrl is used in our product gallery but doesnt support webp setting</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7922</link><description><![CDATA[getMasterZoomPictureUrl not even going to getPicUrl which is adding the &quot;.webp&quot; ending.. it goest to getPictureUrl from Config, so looks like we have a problem there with that current gallery in apex.]]></description><category>Apex Theme</category><pubDate>Fri, 10 Apr 2026 16:49:00 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7922</guid><comments>https://bugs.oxid-esales.com/view.php?id=7922#bugnotes</comments></item><item><title>0007921: Extending module templates is not simple where it should be</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7921</link><description><![CDATA[Extending module templates is not simple where it should be]]></description><category>8. --- Twig engine ---</category><pubDate>Fri, 10 Apr 2026 16:40:38 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7921</guid><comments>https://bugs.oxid-esales.com/view.php?id=7921#bugnotes</comments></item><item><title>0007870: Amazon Pay Button wird nicht geladen</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7870</link><description><![CDATA[Wir haben in unserem OXID Shop das Module oxid-esales/amazon-pay-module von der Version 2.1.6 auf die 2.1.8 aktualisiert.&lt;br /&gt;
Nach dem Testen ist uns aufgefallen, dass der amazon pay Button nicht mehr angezeigt wird.&lt;br /&gt;
&lt;br /&gt;
In der Datei vendor/oxid-esales/amazon-pay-module/views/blocks/page/checkout/basket_btn_next_bottom.tpl wurde die Schreibweise von Twig zum Einbinden der Templates genutzt statt die normale Smarty Schreibweise.]]></description><category>main</category><pubDate>Fri, 10 Apr 2026 10:45:40 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7870</guid><comments>https://bugs.oxid-esales.com/view.php?id=7870#bugnotes</comments></item><item><title>0007896: Mini-Warenkorb-Popup auf der Bestellübersichtsseite mit zwei Amazon-Pay-Buttons</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7896</link><description><![CDATA[Das Problem ist nachstellbar mit&lt;br /&gt;
&lt;br /&gt;
- OXID eShop Community Edition Version 7.3.0&lt;br /&gt;
- Apex Theme Version 2.1.0 mit Theme Einstellung “Popup öffnen” wenn ein Produkt in den Warenkorb gelegt wird&lt;br /&gt;
- Amazon Pay Modul Version 3.1.7]]></description><category>main</category><pubDate>Fri, 10 Apr 2026 10:44:56 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7896</guid><comments>https://bugs.oxid-esales.com/view.php?id=7896#bugnotes</comments></item><item><title>0007902: The Amazon Pay module uses the wrong block to display the Amazon Pay button</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7902</link><description><![CDATA[The Amazon Pay module uses the “checkout_order_btn_confirm_bottom” block to display the Amazon Pay button in the order.html.twig template, whereas the PayPal module extends the correct block, “checkout_order_next_step_side.”&lt;br /&gt;
&lt;br /&gt;
The correct place for the Amazon button would also be the block&lt;br /&gt;
{% block checkout_order_next_step_side %}&lt;br /&gt;
 as in the PayPal module, and not as currently&lt;br /&gt;
{% block checkout_order_btn_confirm_bottom %}]]></description><category>main</category><pubDate>Fri, 10 Apr 2026 10:44:26 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7902</guid><comments>https://bugs.oxid-esales.com/view.php?id=7902#bugnotes</comments></item><item><title>0007913: Google Trusted Stores missing</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7913</link><description><![CDATA[The Google Trusted Shops settings are still available in the admin area for the APEX theme. However, the corresponding section is missing from the theme file compared to the old Smarty templates.&lt;br /&gt;
&lt;br /&gt;
If you have settings in theme, you should be able to use them.]]></description><category>Apex Theme</category><pubDate>Wed, 08 Apr 2026 11:05:58 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7913</guid><comments>https://bugs.oxid-esales.com/view.php?id=7913#bugnotes</comments></item><item><title>0007918: Misleading error message when Authorization header is stripped by Apache</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7918</link><description><![CDATA[Misleading error message when Authorization header is stripped by Apache&lt;br /&gt;
&lt;br /&gt;
When Apache strips the Authorization header before it reaches PHP (a common default configuration), all #[Logged] endpoints return:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&quot;You need to be logged to access this field&quot;&lt;br /&gt;
This is the same error message regardless of whether:&lt;br /&gt;
&lt;br /&gt;
No token was sent&lt;br /&gt;
An invalid token was sent&lt;br /&gt;
A valid token was sent but the header was stripped by the webserver&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The module should differentiate between:&lt;br /&gt;
&lt;br /&gt;
No Authorization header present use current anonymous fallback is acceptable&lt;br /&gt;
Authorization header present but token invalid use specific error, e.g. &quot;Invalid or expired token&quot;&lt;br /&gt;
Authorization header absent despite being expected use ideally a hint that the header may be stripped by the webserver&lt;br /&gt;
At minimum, when a Bearer token is provided but cannot be parsed (because the header was silently dropped), the error should differ from the anonymous-user case.&lt;br /&gt;
&lt;br /&gt;
Suggested Improvements&lt;br /&gt;
Documentation: Add the .htaccess RewriteRule to the installation docs as a required step for Apache environments. This is a well-known Apache/PHP issue but not obvious for OXID module developers debugging &quot;You need to be logged&quot; errors.&lt;br /&gt;
&lt;br /&gt;
Error differentiation: In RequestReader::getAuthToken(), if no Authorization header is found, check for REDIRECT_HTTP_AUTHORIZATION and HTTP_AUTHORIZATION server variables as fallback. If none are present, consider setting a flag that distinguishes &quot;no auth attempted&quot; from &quot;auth attempted but failed&quot;.&lt;br /&gt;
&lt;br /&gt;
Environment&lt;br /&gt;
OXID eShop 7.4.x&lt;br /&gt;
graphql-base 12.0.1&lt;br /&gt;
Apache with mod_rewrite (Docker SDK setup)&lt;br /&gt;
PHP-FPM]]></description><category>General</category><pubDate>Wed, 08 Apr 2026 08:40:24 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7918</guid><comments>https://bugs.oxid-esales.com/view.php?id=7918#bugnotes</comments></item><item><title>0007619: content is deleted if emojis are used in the text</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7619</link><description><![CDATA[All content is deleted if emojis are used in the text in the WYSIWYG editor and the content is saved.]]></description><category>module WYSIWYG Editor + Media Gallery - sub</category><pubDate>Tue, 07 Apr 2026 15:35:04 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7619</guid><comments>https://bugs.oxid-esales.com/view.php?id=7619#bugnotes</comments></item><item><title>0007917: Tracking Carrier (Country) and Tracking Carrier (Provider) is not saved if you select Global</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7917</link><description><![CDATA[Current version of the PayPal module (2.8.1 and 3.7.1) &lt;br /&gt;
The country selection / courier selection still does not work as intended.&lt;br /&gt;
&lt;br /&gt;
Background information from the customer: We, or one of our suppliers, ship within Germany using UPS. UPS is still not selectable from the list (when the country is set to Germany):&lt;br /&gt;
If I select ‘Worldwide’ as the country, I can choose UPS, but when I save, the shop reverts to Germany and UPS disappears again.]]></description><category>module PayPal checkout - sub</category><pubDate>Thu, 02 Apr 2026 14:43:25 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7917</guid><comments>https://bugs.oxid-esales.com/view.php?id=7917#bugnotes</comments></item><item><title>0007915: Call to a member function getId() on null beim Aufruf von hasProductVariantInBasket auf der Detailseite</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7915</link><description><![CDATA[Der hasProductVariantInBasket-Aufruf in &lt;a href=&quot;https://github.com/OXID-eSales/paypal-module/blob/b-6.3.x/views/blocks/page/details/inc/productmain.tpl#L8&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/OXID-eSales/paypal-module/blob/b-6.3.x/views/blocks/page/details/inc/productmain.tpl#L8&lt;/a&gt; führt zu einer &quot;OXID Logger.ERROR: Call to a member function getId() on null&quot; Exception, wenn eine ausverkaufte Variante im Warenkorb liegt. Grund ist der Einsatz von getArtStockInBasket(), welche wiederum in &lt;a href=&quot;https://github.com/OXID-eSales/oxideshop_ce/blob/b-6.5.x/source/Application/Model/Basket.php#L2823&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/OXID-eSales/oxideshop_ce/blob/b-6.5.x/source/Application/Model/Basket.php#L2823&lt;/a&gt; nur Artikel verarbeiten kann, die gekauft werden können.]]></description><category>module PayPal checkout - sub</category><pubDate>Thu, 02 Apr 2026 14:42:43 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7915</guid><comments>https://bugs.oxid-esales.com/view.php?id=7915#bugnotes</comments></item><item><title>0007914: Pay upon invoice does not work after updating to 2.8.1</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7914</link><description><![CDATA[After updating to 2.8.1 pay upon invoice no longer works. I always get redirected to &quot;?cl=payment&amp;payerror=2&quot;.&lt;br /&gt;
&lt;br /&gt;
I found out that the problem is in &lt;a href=&quot;https://github.com/OXID-eSales/paypal-module/blob/v2.8.1/src/Model/Order.php#L487&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/OXID-eSales/paypal-module/blob/v2.8.1/src/Model/Order.php#L487&lt;/a&gt; . This line will abort &quot;_executePayment&quot; when using PUI. But the PUI payment is done via PaymentGateway in OXID's core order model in &quot;_executePayment&quot;, which is called in the lines below.&lt;br /&gt;
&lt;br /&gt;
For fixing this, I patched the source code and replaced&lt;br /&gt;
if (PayPalDefinitions::isPayPalPayment($sessionPaymentId)) {&lt;br /&gt;
with&lt;br /&gt;
if (PayPalDefinitions::isPayPalPayment($sessionPaymentId) &amp;&amp; $sessionPaymentId != 'oscpaypal_pui') {&lt;br /&gt;
&lt;br /&gt;
With this patch I am now able to order and pay with PUI again.]]></description><category>module PayPal checkout - sub</category><pubDate>Thu, 02 Apr 2026 14:42:21 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7914</guid><comments>https://bugs.oxid-esales.com/view.php?id=7914#bugnotes</comments></item><item><title>0007907: Discount calculation differs unexpectedly</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7907</link><description><![CDATA[If you enter 0 in the field, the discount is deducted directly from the item and you will not see a discount. If you enter 1 here, the discount is no longer deducted directly from the item, but is also listed as such in the summary.&lt;br /&gt;
This also means that a discount applies at item level for quantities of 0 or more, whereas the discount applies at shopping cart level for quantities of 1.&lt;br /&gt;
&lt;br /&gt;
An example:&lt;br /&gt;
1€ discount for quantities of 0 or more&lt;br /&gt;
2 items for 5€ in the shopping cart = 2€ discount&lt;br /&gt;
1€ discount for quantities of 1 or more&lt;br /&gt;
2 items for 5€ in the shopping cart = 1€ discount]]></description><category>1.02. Price calculations (discounts, coupons, additional costs etc.)</category><pubDate>Wed, 01 Apr 2026 09:06:25 +0200</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7907</guid><comments>https://bugs.oxid-esales.com/view.php?id=7907#bugnotes</comments></item><item><title>0007178: empty Dropdown in CategoryList if Rootcategory has only hidden Subcats</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7178</link><description><![CDATA[Navi generates an empty Dropdown if Rootcategory has only hidden Subcats. Not great in Desktop, but fatal in mobile. In mobile klicking this Category do nothing.]]></description><category>1.01. Products (product, categories, manufacturer, promotions etc.)</category><pubDate>Fri, 27 Mar 2026 14:55:20 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7178</guid><comments>https://bugs.oxid-esales.com/view.php?id=7178#bugnotes</comments></item><item><title>0007119: WYSIWYG Editor + Mediathek - error on creating relative links</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7119</link><description><![CDATA[If you try to create a relative link, always a absolute link is saved. &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
Input: /kontakt (with/without / doeas not matter)&lt;br /&gt;
Result:&lt;a href=&quot;http:///kontakt&quot; rel=&quot;noopener&quot;&gt;http:///kontakt&lt;/a&gt;]]></description><category>2.4. Administer products</category><pubDate>Tue, 24 Mar 2026 07:43:46 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7119</guid><comments>https://bugs.oxid-esales.com/view.php?id=7119#bugnotes</comments></item><item><title>0006607: low product stock warning should be based on product's oxremindamount instead of global sStockWarningLimit</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=6607</link><description><![CDATA[right now product's stock status is calculated based on setting &quot;sStockWarningLimit&quot;, which can be configured in general settings -&gt; config -&gt; stock.&lt;br /&gt;
But stock status is actually very product specific, e.g.:&lt;br /&gt;
10 Bugatti Veyrons would be considered as high stock status, since you sell maybe 1 per month&lt;br /&gt;
But 10 gallons of fuel would be kind of &quot;no stock at all&quot;, cause you sell about 1000 units per day.&lt;br /&gt;
&lt;br /&gt;
In my opinion, this high / low stock threshold should be also configurable for every product.&lt;br /&gt;
Thats why i suggest to use oxarticle__oxremindamount for calculating low / high stock status and sStockWarningLimit just as fallback if there is no oxremindamount configured for this product.&lt;br /&gt;
&lt;br /&gt;
tomorrow i will make a pull request with my suggested adjustments for oxarticle::_assignStock()]]></description><category>1.01. Products (product, categories, manufacturer, promotions etc.)</category><pubDate>Fri, 20 Mar 2026 21:09:18 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=6607</guid><comments>https://bugs.oxid-esales.com/view.php?id=6607#bugnotes</comments></item><item><title>0007751: Adding license keys via the command line: only the last key is kept</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7751</link><description><![CDATA[If a license key is added using  the command line, only the last added key remains in the shop:&lt;br /&gt;
oe-console oe:license:add KEY&lt;br /&gt;
&lt;br /&gt;
The reason is probably that the variable is always empty because it is only set if in admin login mode, which is not possible in command line mode:&lt;br /&gt;
$activeSerial = $this-&gt;getConfig()-&gt;getConfigParam('sSerialNr') ?? '';]]></description><category>2.1. Master Settings</category><pubDate>Thu, 19 Mar 2026 16:27:26 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7751</guid><comments>https://bugs.oxid-esales.com/view.php?id=7751#bugnotes</comments></item><item><title>0007911: Function 'getRenderer' does not exist or is not accessible!</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7911</link><description><![CDATA[Innerhalb von OxidSolutionCatalysts\PayPal\Core\Email-&gt;sendPuiInfo() wird getRenderer() in &lt;a href=&quot;https://github.com/OXID-eSales/paypal-module/blob/b-6.3.x/src/Core/Email.php#L55&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/OXID-eSales/paypal-module/blob/b-6.3.x/src/Core/Email.php#L55&lt;/a&gt; aufgerufen, welche nicht existiert. Die Methode gibts zwar in der Parent-Email Klasse, allerdings ist sie dort als private markiert und steht dem Modul damit nicht zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
Die Email-Klasse vom Paypal Modul braucht seine eigene getRenderer() Methode oder der Aufruf wird komplett durch die zugrundeliegende Logik ersetzt.]]></description><category>module PayPal checkout - sub</category><pubDate>Thu, 19 Mar 2026 14:27:01 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7911</guid><comments>https://bugs.oxid-esales.com/view.php?id=7911#bugnotes</comments></item><item><title>0007910: Incorrect / missing ?? fallback for $_POST parameters</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7910</link><description><![CDATA[The files OrderController.php and ProxyController.php contain code that manually sets $_POST parameters before calling execute().&lt;br /&gt;
&lt;br /&gt;
Error 1: Missing ?? fallback in checkAgbTop&lt;br /&gt;
// BUGGY&lt;br /&gt;
$_POST[“ord_agb”] = (int)filter_var($_POST[“checkAgbTop”], FILTER_VALIDATE_BOOLEAN);&lt;br /&gt;
// CORRECT&lt;br /&gt;
$_POST[“ord_agb”] = (int)filter_var($_POST[“checkAgbTop”] ?? false, FILTER_VALIDATE_BOOLEAN);&lt;br /&gt;
&lt;br /&gt;
Error 2: Bug in oxserviceproductsagreement&lt;br /&gt;
The bug (oxserviceproductsagreement reads from oxdownloadableproductsagreement) causes the following:&lt;br /&gt;
 - the consent for the service products checkbox always adopts the value of the downloadable products checkbox, regardless of what the customer has clicked&lt;br /&gt;
 - validateTermsAndConditions() consequently checks incorrect values&lt;br /&gt;
&lt;br /&gt;
// BUGGY — incorrectly reads “oxdownloadableproductsagreement” instead of “oxserviceproductsagreement”&lt;br /&gt;
$_POST[“oxserviceproductsagreement”] = (int)filter_var($_POST[“oxdownloadableproductsagreement”], FILTER_VALIDATE_BOOLEAN);&lt;br /&gt;
// CORRECT&lt;br /&gt;
$_POST[“oxserviceproductsagreement”] = (int)filter_var($_POST[“oxserviceproductsagreement”] ?? false, FILTER_VALIDATE_BOOLEAN);&lt;br /&gt;
&lt;br /&gt;
Also Fallback for&lt;br /&gt;
$_POST['oxdownloadableproductsagreement'] = (int)filter_var($_POST['oxdownloadableproductsagreement'], FILTER_VALIDATE_BOOLEAN);]]></description><category>module PayPal checkout - sub</category><pubDate>Thu, 19 Mar 2026 14:26:11 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7910</guid><comments>https://bugs.oxid-esales.com/view.php?id=7910#bugnotes</comments></item><item><title>0007912: OSC Paypal Modul - Fix webhook URL resolution for mall sub-shops during onboarding</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7912</link><description><![CDATA[In OXID Enterprise mall setups, the onboarding flow registered the&lt;br /&gt;
webhook with the mall admin URL because the endpoint was always built&lt;br /&gt;
from the current shop URL.&lt;br /&gt;
&lt;br /&gt;
Resolve the webhook base URL from the requested shop context first by&lt;br /&gt;
using the shop-specific mall SSL/non-SSL URL and fall back to the&lt;br /&gt;
current shop URL when no mall URL is available. This keeps the legacy&lt;br /&gt;
behavior for Community Edition while ensuring Enterprise sub-shops use&lt;br /&gt;
their own storefront URL.&lt;br /&gt;
&lt;br /&gt;
See in Paypal Package: \OxidSolutionCatalysts\PayPal\Core\Config::getWebhookControllerUrl]]></description><category>General</category><pubDate>Thu, 19 Mar 2026 14:22:19 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7912</guid><comments>https://bugs.oxid-esales.com/view.php?id=7912#bugnotes</comments></item><item><title>0007889: The OXID migration script does not run through to the modules on a fresh OXID system.</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7889</link><description><![CDATA[The OXID migration script is hard-coded and processes three areas: shop migrations, project migrations, and module migrations.&lt;br /&gt;
&lt;br /&gt;
The migration files are located here:&lt;br /&gt;
&lt;br /&gt;
Shop: source/migration/data/&lt;br /&gt;
&lt;br /&gt;
Project: source/migration/project_data/&lt;br /&gt;
&lt;br /&gt;
Module: moduleRoot/migration/data/&lt;br /&gt;
&lt;br /&gt;
Since the project directory (source/migration/project_data/) is empty, the `migrations` command performs the shop migrations. The following error occurs with the project migrations:&lt;br /&gt;
&lt;br /&gt;
[ERROR] The version &quot;latest&quot; couldn't be reached, there are no registered migrations.&lt;br /&gt;
&lt;br /&gt;
The script then terminates and ignores the module migrations.&lt;br /&gt;
&lt;br /&gt;
This can be remedied by creating dummy migrations using the `migration:generate` command.&lt;br /&gt;
&lt;br /&gt;
Afterward, all three areas are processed.]]></description><category>4.01. Database handling</category><pubDate>Tue, 17 Mar 2026 07:59:43 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7889</guid><comments>https://bugs.oxid-esales.com/view.php?id=7889#bugnotes</comments></item><item><title>0007877: Unified namespace generator package requires `composer/composer` while `composer-runtime-api` is enough</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7877</link><description><![CDATA[Hey guys,&lt;br /&gt;
&lt;br /&gt;
you are requiring `composer/composer` in `oxid-esales/oxideshop-unified-namespace-generator`.&lt;br /&gt;
Since the mentioned package is a plugin, its enough to require a specific runtime API and move the `composer/composer` dependency to `require-dev` to have proper auto-completion during development.&lt;br /&gt;
&lt;br /&gt;
It is bad practice to require `composer/composer` to enforce upstream projects having that dependency.&lt;br /&gt;
I only know about the `oxid-esales/oxideshop-unified-namespace-generator` package but it seems that the metapackage is also requiring `composer/composer` which is (again) bad practice.&lt;br /&gt;
&lt;a href=&quot;https://github.com/OXID-eSales/oxideshop_metapackage_ce/blob/v7.4.0/composer.json&quot; rel=&quot;noopener,nofollow&quot;&gt;https://github.com/OXID-eSales/oxideshop_metapackage_ce/blob/v7.4.0/composer.json&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Please consider not requiring `composer/composer` as it is not required by any of the OXID packages.]]></description><category>7. --- Other tools --------------</category><pubDate>Mon, 16 Mar 2026 10:58:01 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7877</guid><comments>https://bugs.oxid-esales.com/view.php?id=7877#bugnotes</comments></item><item><title>0007881: ContentFactory bypasses module chain by using concrete Community namespace instead of Unified Namespace</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7881</link><description><![CDATA[The ContentFactory class in OxidEsales\EshopCommunity\Internal\Transition\Adapter\TemplateLogic uses the concrete Community Edition class directly instead of the Unified Namespace.&lt;br /&gt;
&lt;br /&gt;
This causes the module chain to be completely bypassed when using {% include_content %} in Twig templates.&lt;br /&gt;
&lt;br /&gt;
Modules that extend OxidEsales\Eshop\Application\Model\Content are not loaded when content is rendered via the Twig function.&lt;br /&gt;
&lt;br /&gt;
**Affected file:**&lt;br /&gt;
&lt;pre&gt;vendor/oxid-esales/oxideshop-ce/source/Internal/Transition/Adapter/TemplateLogic/ContentFactory.php&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
**Current (incorrect) code:**&lt;br /&gt;
&lt;pre&gt;
use OxidEsales\EshopCommunity\Application\Model\Content;

class ContentFactory
{
    public function getContent(string $key, string $value): ?Content
    {
        $content = oxNew(Content::class);
        // ...
    }
}
&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
**Expected (correct) code:**&lt;br /&gt;
&lt;pre&gt;
use OxidEsales\Eshop\Application\Model\Content;

class ContentFactory
{
    public function getContent(string $key, string $value): ?Content
    {
        $content = oxNew(Content::class);
        // ...
    }
}
&lt;/pre&gt;]]></description><category>4.07.  Source code, Test</category><pubDate>Mon, 16 Mar 2026 10:50:19 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7881</guid><comments>https://bugs.oxid-esales.com/view.php?id=7881#bugnotes</comments></item><item><title>0007898: /index.php?cl=oscpaypalwebhook get HTTP Code 500</title><author></author><link>https://bugs.oxid-esales.com/view.php?id=7898</link><description><![CDATA[/index.php?cl=oscpaypalwebhook get allways a http code 500:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
173.0.81.140 - - [23/Feb/2026:09:52:50 +0100] &quot;POST /index.php?cl=oscpaypalwebhook HTTP/1.1&quot; 500 8324 &quot;-&quot; &quot;PayPal/AUHR-1.0-1&quot; &quot;abc.de&quot;&lt;br /&gt;
173.0.81.140 - - [23/Feb/2026:09:53:39 +0100] &quot;POST /index.php?cl=oscpaypalwebhook HTTP/1.1&quot; 500 8324 &quot;-&quot; &quot;PayPal/AUHR-1.0-1&quot; &quot;abc.de&quot;&lt;br /&gt;
173.0.81.65 - - [23/Feb/2026:09:54:27 +0100] &quot;POST /index.php?cl=oscpaypalwebhook HTTP/1.1&quot; 500 10106 &quot;-&quot; &quot;PayPal/AUHR-1.0-1&quot; &quot;abc.de&quot;&lt;br /&gt;
173.0.81.65 - - [23/Feb/2026:09:54:40 +0100] &quot;POST /index.php?cl=oscpaypalwebhook HTTP/1.1&quot; 500 10106 &quot;-&quot; &quot;PayPal/AUHR-1.0-1&quot; &quot;abc.de&quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Image is from Tideways.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
D3 / MG]]></description><category>module PayPal checkout - sub</category><pubDate>Fri, 13 Mar 2026 14:25:21 +0100</pubDate><guid>https://bugs.oxid-esales.com/view.php?id=7898</guid><comments>https://bugs.oxid-esales.com/view.php?id=7898#bugnotes</comments></item></channel></rss>
