Caming back from holidays, our project VirtueMart was unpublished on JED. There was a security audit by a Joomla member with claude and we did not pass. Some of them were already addressed in VirtueMart5, which is almost ready. Some even in not delivered plugins, which we kept in the trunk. So I removed all the old plugins and the vmf folder and moved it to a branch. 

Security Fixes

  • Skrill payment plugin: There is a security issue with the Skrill payment plugin. If you use it in your store, please either update to this version or remove the plugin entirely.

Token validation

  • Token checks added to backend controllers and frontend forms. Unauthorized form submissions are now rejected.

Rating System Improvements

  • Shop owners can now edit customer names and review messages in the backend (voting results remain protected against modification)
  • Added various validation for example for the generic child selection dropdown when editing ratings
  • Better handling of limit start and empty checks in rating models
  • Miscellaneous bug fixes for rating list view styling

Plugin Download simple

  • Fixed improper check for correct requested media

Enhanced validation for media uploads

First we allow the unsecure files like php in zips now only for files to sale. Furthermore the mime check was before only done for medias and is now done for any file.

RECOMMENDED FOR ALL USERS: Please update to this version, in special if you are using the Skrill payment plugin or manage ratings/reviews for products.

DOWNLOAD VirtueMart 4.8.0
NOW

Payment Plugin Cleanup

We have removed the following legacy payment plugins that are no longer maintained or productively used:

  • HeidelPay
  • Klarna (old invoice API)
  • Payzen
  • Systempay
  • Sofort
  • Sofort_ideal

Note: Klarna Checkout (the newer checkout variant) has been retained as it is still in use by at least one merchant.

Evaluation vmTable Enhancements

We've ported a new approach from VirtueMart 5 to VirtueMart 4 for enhanced storing of arrays in the xref table.

Currency Display Changes

  • Added vendor_currency_id property for more accurate currency representation per vendor
  • Fixed typo that prevented proper currency display in certain setups
  • Prevented PHP notices when prices are not set on currency objects

PayPal Checkout Updates

  • Fixed OnStoreInstallPluginTable function parameters to work with the updated vmplugin
  • Added allowedCurrentStatuses parameter to updateOrderStatus for better order status control

Native Dropdown Replacement (Choices)

We replaced Chosen dropdown JS against the modern Choices library in the backend. As a bonus, it works natively without jQuery and is compatible with Joomla 6.

You can use the old config setting to disable this completely, or enable it also in the frontend.

Misc Improvements

  • Samples products added for category pagination testing
  • Added force mail log mode for outbound VirtueMart emails (helps debugging email delivery issues)
  • Fixed logInfo path cache so dedicated log file names work correctly
  • RouterDebug now has improved URL query logging capabilities