1. piekielko
  2. RO CSVI
  3. Tuesday, 13 January 2026
  4.  Subscribe via email
Hi Roland,

Thank you for the latest update — it looks solid overall.
However, I immediately encountered a bug when attempting any export (including standard CSV). Every export fails with the following error:
Status error: 500 Status message: error
{"error":true,"code":0,"message":"implode(): Argument #2 ($array) must be of type ?array, string given"}

I traced the issue to the VirtueMart add-on, specifically this file:
plugins/csviaddon/virtuemart/com_virtuemart/model/export/product.php
The problem is caused by a value expected as an array being returned as a string, which results in a hard failure under newer PHP versions.

In line 793
this code

$priceCurrency = $this->template->get('price_currency', 'none');

if ($priceCurrency && $priceCurrency[0] !== 'none')
{
$query->where($this->db->quoteName('#__virtuemart_product_prices.product_currency') . ' IN (' . implode(',', $priceCurrency) . ')');
}

change to

$priceCurrency = $this->template->get('price_currency', [], 'array');
$priceCurrency = is_array($priceCurrency) ? $priceCurrency : [$priceCurrency];

if (!empty($priceCurrency) && ($priceCurrency[0] ?? 'none') !== 'none') {
$currencies = array_map('intval', $priceCurrency);

$query->where(
$this->db->quoteName('#__virtuemart_product_prices.product_currency')
. ' IN (' . implode(',', $currencies) . ')'
);
}

Best regards,
Chris
Accepted Answer Pending Moderation
Hello Chris,
We are not able to reproduce that error with all possible values saved in Price currency filter. Please post us export template XML and export debug log to check. That way we can see what value is saved in the filter field. To get the template XML file from RO CSVI templates list page select the export template and click on Backup templates button. Post the downloaded XML file. To get export debug log read How to collect debug information? document.
Kind regards,

Tharuna

=========================
If you use our extensions, please post a rating and a review at the Joomla! Extension Directory
  1. 5 hours ago
  2. RO CSVI
  3. # 1
Accepted Answer Pending Moderation
Hi Tharuna,
I made myself quite clear at the very beginning—with all due respect to you, but you clearly didn't read my post. :(
This is not possible in this case. The export fails immediately with a 500 error before any export process starts, so no template backup or debug output can be generated.

The root cause is already identified: the VirtueMart CSVI add-on expects the price_currency filter value as an array, but it can be returned as a string (e.g. none). With newer PHP versions this causes a fatal implode() type error at initialization stage. Normalizing the value to an array fixes the issue and restores all exports.

Best regards,
Chris
  1. 3 hours ago
  2. RO CSVI
  3. # 2
Accepted Answer Pending Moderation
Hello Chris,
The feature of filtering with price currency was included with RO CSVI 9.4.0 version. I understand you have an error with export and appreciate your efforts of sending us the fix to solve it. I asked for a copy of your export template using Backup templates option. The error you have on export will not interfere with backup templates. Template XML will help us to understand on how the values are saved in your template and how we missed this combination while testing the feature.
Kind regards,

Tharuna

=========================
If you use our extensions, please post a rating and a review at the Joomla! Extension Directory
  1. 3 hours ago
  2. RO CSVI
  3. # 3
  • Page :
  • 1


There are no replies made for this post yet.
Be one of the first to reply to this post!