Login/Register
(IR) Installatron Remote

OpenCart

OpenCart is an open source e-commerce shopping cart application. OpenCart was initially released in 2009.

Installatron Remote is a one-click solution to install and manage all of your OpenCart websites. Using Installatron helps ensure OpenCart is kept up-to-date and secure, and Installatron features like Clone, Backup and Restore, and Backup Scheduling can save you time. Learn more about Installatron Remote

Information

ApplicationOpenCart
Category e-commerce
Current Versions4.1.0.3
3.0.3.9
Last Updated7 July
LanguagesEnglish

Requirements

Costfree
Install Size120MB
Licenseopen source

Support

OpenCart Website
Documentation
Support Page
Installatron Auto-Installer Support

Related Apps

OpenCart is designed feature rich, easy to use, search engine friendly and with a visually appealing interface.

Features:
  • Powerful Store Management: Benefit from our built-in SEO. Easy manage products, customers, orders, taxes rules, coupon codes and more.
  • Extensions and Themes: The biggest eCommerce selections of modules and themes to expand your store functionality.
  • Support You Can Trust: We've got you covered. OpenCart offers free community or dedicated commercial support.
-OpenCart developer

4.1.0.3

(major version)
7 July - 120MB4.1.0.3

Bug Fixes and Changes
  • More PHPDocs work by @TheCartpenter in #14700
  • [fix] The update procedure does not work by @batumibiz in #14703
  • Modified upgrade/upgrade PHPDocs by @TheCartpenter in #14708
  • Update to admin marketplace/installer.php by @milsaware in #14709
  • removed country_id by @farshadfmr in #14713
  • Removed identifier_id in PHPDocs of getIdentifierByCode method in model/identifier by @TheCartpenter in #14714
  • Removed country_id and zone_id from deleteDescriptionsByLanguageId PHPDocs by @TheCartpenter in #14717
  • Modified localisation/country controller and model delete descriptions method by @TheCartpenter in #14720
  • More model comments work by @TheCartpenter in #14725
  • More PHPDocs work and fixed some package paths in extensions by @TheCartpenter in #14726
  • More PHPDocs work by @TheCartpenter in #14727

4.1.0.2

Bug Fixes and Changes
  • FIXED #14701

4.1.0.1

Bug Fixes and Changes
  • Fix save product master with variants by @vitorsreis in #14355
  • Display current language in the language switcher by @opencartbot in #14356
  • Changing the current currency in the header by @opencartbot in #14357
  • Cache by language in SEO URL by @opencartbot in #14365
  • [Master] Update version to upcoming 4.1.0.1 by @mhcwebdesign in #14366
  • Update footer.twig by @opencartbot in #14368
  • Some corrections to error messages by @opencartbot in #14369
  • Fix breadcrumb dividers height by @opencartbot in #14374
  • Some corrections to error messages by @opencartbot in #14370
  • Some corrections to error messages by @opencartbot in #14371
  • Some corrections to error messages by @opencartbot in #14372
  • Fix breadcrumb dividers height by @opencartbot in #14375
  • Removed duplicated code from step_2.twig by @condor2 in #14396
  • Fix saving SEO URL by @opencartbot in #14412
  • Update security.php by @TheCartpenter in #14401
  • From 20 to 40 characters password forgotten language by @condor2 in #14391
  • Add default value for 'config_icon' [FR install] by @opencartbot in #14427
  • Add default value for 'config_icon' [EN install] by @opencartbot in #14426
  • Add default value for 'config_password_length' on upgrade by @opencartbot in #14425
  • Do not drop the 'modification' table on upgrade process by @opencartbot in #14424
  • Remove password confirm param in the registration controller by @opencartbot in #14423
  • Remove password confirm validation in the checkout registration by @opencartbot in #14422
  • Add config_password_length default value (fr. lang) by @opencartbot in #14421
  • Add config_password_length default value by @opencartbot in #14420
  • Stored payment methods in Account module by @opencartbot in #14410
  • Stored payment methods in Account module by @opencartbot in #14409
  • Stored payment methods in Account module by @opencartbot in #14411
  • Fix for percentage discounts by @infiniasystems in #14428
  • Rename countries FYROM and Swaziland by @opencartbot in #14429
  • Update register.php by @rahuloberai in #14430
  • Fix css class name product_form.twig by @opencartbot in #14446
  • Fix bug after exceeding login attempts.php by @tom1989 in #14445
  • Fix sql error in sorting products by price by @opencartbot in #14444
  • Fix the max password length in 'en-gb' localisation by @opencartbot in #14431
  • Update login.php by @TheCartpenter in #14447
  • Sort product attributes by @stalker780 in #14440
  • Update register.php by @TheCartpenter in #14434
  • Update validation.php by @stalker780 in #14435
  • Fix product copy with options by @stalker780 in #14439
  • Reset rating on copyProduct by @stalker780 in #14455
  • Update product.php by @TheCartpenter in #14461
  • Update statistics.php by @rahuloberai in #14482
  • Update user.php by @rahuloberai in #14481
  • Update information.php by @stalker780 in #14479
  • Fixed the color of the statistics progressbar by @batumibiz in #14483
  • Update custom_field.php by @TheCartpenter in #14462
  • Update language.php by @TheCartpenter in #14466
  • deleted the extra code by @dreanei23 in #14491
  • Update tax_rate.php by @TheCartpenter in #14467
  • Update order.php by @TheCartpenter in #14468
  • Update subscription.php by @TheCartpenter in #14469
  • Update affiliate.php by @TheCartpenter in #14470
  • Update subscription.php by @TheCartpenter in #14471
  • Update product.php by @TheCartpenter in #14472
  • Update language.php by @TheCartpenter in #14473
  • Update return_reason.php by @TheCartpenter in #14474
  • Update cron.php by @TheCartpenter in #14475
  • Update module.php by @TheCartpenter in #14476
  • Update online.php by @TheCartpenter in #14477
  • Fix category edit by @stalker780 in #14478
  • Fix for repairCategories by @mhcwebdesign in #14500
  • [continuation] fixed the color of the progressbar #14483 by @batumibiz in #14488
  • Update api.php - added date modified by @pemaier in #14495
  • Filemanager - load allowed extensions from admin config by @prometheuscz in #14499
  • List of categories with images by @batumibiz in #14504
  • Update filemanager.php by @TheCartpenter in #14505
  • Update category.php by @stalker780 in #14506
  • Update category.php by @stalker780 in #14507
  • List of manufacturers with images by @batumibiz in #14509
  • Vertical alignment in tables by @batumibiz in #14513
  • Fix order of attributes in oc_filter_data() by @opencartbot in #14524
  • Update utf8.php by @TheCartpenter in #14522
  • Update validation.php by @TheCartpenter in #14521
  • Update general.php by @TheCartpenter in #14523
  • Update user.php by @opencartbot in #14525
  • Update feed.php by @stalker780 in #14537
  • Update module.twig by @stalker780 in #14538
  • Update api.php by @TheCartpenter in #14527
  • Update address.php by @chongshengdz in #14545
  • Update wishlist.php by @chongshengdz in #14546
  • Update product.php by @TheCartpenter in #14526
  • Update language.php by @TheCartpenter in #14528
  • Update product_list.twig by @TheCartpenter in #14529
  • Update topic_list.twig by @TheCartpenter in #14530
  • Update cart_list.twig by @TheCartpenter in #14531
  • Update product_form.twig by @TheCartpenter in #14532
  • Update product.twig by @TheCartpenter in #14534
  • Update order.php by @TheCartpenter in #14535
  • Update article.php by @TheCartpenter in #14536
  • Fix PHP 8.0 support by @AJenbo in #14539
  • Update review.php by @TheCartpenter in #14543
  • Update subscription.php by @TheCartpenter in #14542
  • Update authorize.php by @TheCartpenter in #14540
  • Update customer.php by @TheCartpenter in #14551
  • Update category.php by @TheCartpenter in #14554
  • Update user.php by @TheCartpenter in #14550
  • Update review.php by @TheCartpenter in #14555
  • Update article.php by @TheCartpenter in #14556
  • Update comment.php by @TheCartpenter in #14557
  • Update column_left.php by @TheCartpenter in #14558
  • Update theme.php by @TheCartpenter in #14559
  • Update language.php by @TheCartpenter in #14560
  • Update country.php by @TheCartpenter in #14561
  • Update coupon.php by @TheCartpenter in #14562
  • Update installer.php by @TheCartpenter in #14563
  • Update startup.php by @TheCartpenter in #14564
  • Update order.php by @TheCartpenter in #14565
  • Update setting.php by @TheCartpenter in #14566
  • Update store.php by @TheCartpenter in #14567
  • Update api.php by @TheCartpenter in #14568
  • Update profile.php by @TheCartpenter in #14569
  • Update user.php by @TheCartpenter in #14570
  • Update product.php by @TheCartpenter in #14571
  • Update manufacturer.php by @TheCartpenter in #14572
  • Fixing issues with adding Subscriptions in the admin by @opencartbot in #14574
  • Update authorize.php by @TheCartpenter in #14575
  • Update order.php by @TheCartpenter in #14577
  • Update password.php by @TheCartpenter in #14578
  • Update payment_method.php by @TheCartpenter in #14579
  • Update register.php by @TheCartpenter in #14580
  • Update returns.php by @TheCartpenter in #14581
  • Update subscription.php by @TheCartpenter in #14582
  • Update wishlist.php by @TheCartpenter in #14583
  • Update cart.php by @TheCartpenter in #14584
  • Update register.php by @TheCartpenter in #14587
  • Delete upload/catalog/language/fr-fr/api/comment.php by @TheCartpenter in #14609
  • Update confirm.php by @TheCartpenter in #14585
  • Delete upload/catalog/language/fr-fr/api/permission.php by @TheCartpenter in #14610
  • Update location.php by @TheCartpenter in #14621
  • More work on language files by @TheCartpenter in #14623
  • Added extension languages and worked on core fr-fr by @TheCartpenter in #14633
  • Term correction on Expédition (Shipping) by @TheCartpenter in #14634
  • [fix] Cookie SameSite by @batumibiz in #14636
  • Corrected small typos on language files by @TheCartpenter in #14637
  • [fix] The "Print Shipping List" button didn't work. by @batumibiz in #14642
  • Added sanitized int on some config get IDs by @TheCartpenter in #14648
  • Moved some examples below the can be used PHPDoc lines by @TheCartpenter in #14653
  • Added PHPDocs description in admin/model/catalog by @TheCartpenter in #14657
  • Add order filter by modified date by @fmarslan in #14654
  • More PHPDocs description work by @TheCartpenter in #14658
  • Fix schema errors in helper/db_schema.php to fix CLI installer errors by @nemesa in #14659
  • More work on country and zone multilanguages by @TheCartpenter in #14663
  • Fixed getTotalCountries and getTotalZones for multilanguages by @TheCartpenter in #14664
  • Restored config_robots setting in fr-fr by @TheCartpenter in #14665
  • Added identifiers in fr-fr by @TheCartpenter in #14667
  • Completed PHPDocs in admin and added oc_identifier in fr-fr SQL by @TheCartpenter in #14672
  • More PHPDocs work by @TheCartpenter in #14673
  • Updated PHPDocs by @TheCartpenter in #14693
  • Bugfix ocmod example extension by @fmarslan in #14681

4.1.0.0

Bug Fixes and Changes
  • Fix Zone list - status always "Enabled" by @batumibiz in #12694
  • CKEditor ShowBlocks alternate config by @stalker780 in #12693
  • Remove German language test files /extension/opencart/catalog/language/de-de by @pemaier in #12699
  • Removed unused variable from common/column_left by @SecretSergey in #12723
  • Update review.php by @tmdashwani in #12703
  • Added int cast in cms/comment by @TheCartpenter in #12716
  • [Master] Added missing language variable cms/blog by @condor2 in #12711
  • Update robots.txt by @chongshengdz in #12732
  • Update forgotten.php by @rahulabs in #12705
  • Renamed Apcu class in library/cache/apcu by @TheCartpenter in #12722
  • Update subscription.php by @rahulabs in #12704
  • Update setting.php by @Cubuss in #12735
  • Update comment.php by @TheCartpenter in #12747
  • Update forgotten.php by @TheCartpenter in #12737
  • Fixed an error in the SQL query by @batumibiz in #12756
  • Fix anti-spam validate in the Returns page by @willdevx in #12752
  • Update opencart.sql - updated image_topic_width from D to 1140 by @pemaier in #12753
  • Update location_form.twig by @stalker780 in #12760
  • #12757 mysql ssl connection support by @fmarslan in #12758
  • Removed empty trailing lines. by @TheCartpenter in #12748
  • error vendor uninstaller.php by @BuslikDrev in #12654
  • More code alignments by @TheCartpenter in #12761
  • Update setting.php by @TheCartpenter in #12770
  • Update cli_install.php by @TheCartpenter in #12776
  • Update step_2.twig by @TheCartpenter in #12775
  • Fixed Tax and Zone Date by @ppalashturov in #12786
  • Update comment.php by @opencartbot in #12783
  • README.md - License link updated by @pemaier in #12803
  • Fix message "PHP7.4 Required" by @opencartbot in #12794
  • Update product.php by @stalker780 in #12801
  • Delete the last comma by @opencartbot in #12793
  • Update index.php and fixed Model Filter by @ppalashturov in #12789
  • Blogs $limit from 'config_pagination' by @opencartbot in #12790
  • Add skipped 'error_author' translation by @opencartbot in #12792
  • Update user.php by @rahulabs in #12814
  • Update default.php by @TheCartpenter in #12817
  • Update developer.php by @TheCartpenter in #12838
  • Update gdpr.php by @TheCartpenter in #12842
  • Sticky admin filters by @stalker780 in #12807
  • Admin - escape aliases by @stalker780 in #12808
  • Update user.php by @TheCartpenter in #12843
  • Update bestseller.php by @TheCartpenter in #12847
  • Update affiliate.php by @TheCartpenter in #12822
  • Update forgotten.php by @TheCartpenter in #12823
  • Update currency.php by @TheCartpenter in #12848
  • Update cron.php by @TheCartpenter in #12825
  • Update product.php by @TheCartpenter in #12846
  • Update dashboard.php by @TheCartpenter in #12824
  • Update subscription.php by @TheCartpenter in #12826
  • Update store.php by @TheCartpenter in #12827
  • Update returns.php by @TheCartpenter in #12836
  • Update customer.php by @stalker780 in #12856
  • Update download.php by @TheCartpenter in #12828
  • Update cookie.php by @TheCartpenter in #12829
  • Update country.php by @TheCartpenter in #12834
  • Update customer_approval.php by @TheCartpenter in #12835
  • Update opencart.sql - Added extension/modul/topic by @pemaier in #12830
  • Update default.php by @TheCartpenter in #12840
  • Update marketplace.php by @TheCartpenter in #12841
  • Update security.php by @TheCartpenter in #12839
  • Update register.php by @TheCartpenter in #12844
  • Update wishlist.php by @TheCartpenter in #12845
  • Update language.php by @TheCartpenter in #12850
  • Update download.php by @TheCartpenter in #12860
  • Update language.php by @TheCartpenter in #12849
  • Update subscription.php by @TheCartpenter in #12857
  • Update order.php by @TheCartpenter in #12862
  • Update sale.php by @TheCartpenter in #12858
  • Update order.php by @TheCartpenter in #12859
  • Update order.php by @TheCartpenter in #12861
  • Update product_purchased.php by @TheCartpenter in #12864
  • Update customer_transaction.php by @TheCartpenter in #12867
  • Update ecb.php by @TheCartpenter in #12872
  • Update customer.php by @TheCartpenter in #12865
  • Update gdpr_export.php by @TheCartpenter in #12873
  • Update map.php by @TheCartpenter in #12863
  • Catalog - escape aliases by @stalker780 in #12809
  • Update general.php by @stalker780 in #12888
  • Update authorize.php by @TheCartpenter in #12879
  • Update authorize.php by @TheCartpenter in #12881
  • Update credit_card.php by @TheCartpenter in #12885
  • Update comment.php by @TheCartpenter in #12880
  • Update antispam.php by @TheCartpenter in #12892
  • Update product_viewed.php by @TheCartpenter in #12886
  • Update affiliate.php by @TheCartpenter in #12882
  • Update authorize.php by @TheCartpenter in #12883
  • Update cart.php by @TheCartpenter in #12890
  • Update comment.php by @TheCartpenter in #12884
  • Fixed PHP 7.4 warning for GDPR controller by @condor2 in #12896
  • Update sale.php by @TheCartpenter in #12891
  • Add missing prefix property to redis session class by @AJenbo in #12905
  • Fix leftover from Twig 2.4 to 3.0 migrating by @AJenbo in #12906
  • Fix getTotalArticles() not accepting the given filter by @AJenbo in #12901
  • Add missing void returns to code base by @AJenbo in #12907
  • Remove unused parameter from install.php by @AJenbo in #12904
  • Fix bad array push by @AJenbo in #12900
  • Update product.php by @ppalashturov in #12912
  • Fix missing $order_info in subscription cron by @AJenbo in #12902
  • Correct catalog store return value when locked by @AJenbo in #12903
  • Remove dead code from getTotalProductsByProductId by @AJenbo in #12899
  • Fixed PHP 7.4 warning for mail library by @AJenbo in #12920
  • Fixed PHP 7.4 warning for apcu by @AJenbo in #12917
  • Fixed PHP 7.4 warning for PDO by @AJenbo in #12918
  • Fixed PHP 7.4 warning for postgreSQL by @AJenbo in #12919
  • Fix PHP 7.4 and 8.0 warnings for symfony/deprecation-contracts by @AJenbo in #12921
  • Fix namespace errors in marketplace modification admin controller by @AJenbo in #12914
  • Update theme.twig by @TheCartpenter in #12923
  • Update step_3.php by @TheCartpenter in #12926
  • Update attribute_group.php by @TheCartpenter in #12924
  • Revert "Update attribute_group.php" by @danielkerr in #12929
  • Update attribute.php by @TheCartpenter in #12925
  • Update upgrade_4.php by @TheCartpenter in #12927
  • Update comment_list.twig by @TheCartpenter in #12931
  • Update step_3.twig by @TheCartpenter in #12928
  • Check that code passes for supported versions of PHP by @AJenbo in #12935
  • Fix getting product info in subscription data by @AJenbo in #12916
  • Frontend H1 page tags by @stalker780 in #12953
  • fix preg_replace calls by @mhcwebdesign in #12951
  • Hint classes being resolved during framework bootup by @AJenbo in #12954
  • Fix invalid regex in filemanager by @AJenbo in #12961
  • Add missing error property by @AJenbo in #12959
  • Correct registry type hints by @AJenbo in #12956
  • Fix misspelled property in example extension by @AJenbo in #12957
  • Correct loading of notification model by @AJenbo in #12955
  • incorrect language variable name by @hayden-t in #12948
  • Update cart.php by @TheCartpenter in #12943
  • Admin subscription reports and cms/comment text by @TheCartpenter in #12938
  • Insert description for extensions by @condor2 in #12966
  • Update security.php - fix preg_replace calls to allow dot in name and… by @pemaier in #12971
  • Update marketplace.php by @TheCartpenter in #12969
  • Update installer.php - keep description clean by @pemaier in #12974
  • Update basic.php by @TheCartpenter in #12986
  • Update pdo.php by @TheCartpenter in #12980
  • Update pgsql.php by @TheCartpenter in #12981
  • Update chart.php by @TheCartpenter in #12985
  • Update template.php by @TheCartpenter in #12983
  • Update category.php by @TheCartpenter in #12982
  • Update template.php by @TheCartpenter in #12984
  • Added missing package paths by @TheCartpenter in #12987
  • Update category.php by @TheCartpenter in #12995
  • Fix deprication error in custom_field.php by @AJenbo in #12994
  • Update country.php by @TheCartpenter in #12996
  • Update country.php by @TheCartpenter in #12997
  • Update mysqli.php by @TheCartpenter in #13002
  • Update currency.php by @TheCartpenter in #13001
  • Update security.php by @TheCartpenter in #13000
  • Update pdo.php by @TheCartpenter in #13003
  • Update pgsql.php by @TheCartpenter in #13004
  • Update twig.php by @TheCartpenter in #13005
  • Update autoloader.php by @TheCartpenter in #13009
  • Update sale_coupon.php by @TheCartpenter in #13006
  • Update sale_return.php by @TheCartpenter in #13007
  • Update sale_shipping.php by @TheCartpenter in #13008
  • Update customer.php by @TheCartpenter in #13011
  • Update apcu.php by @TheCartpenter in #13010
  • Update length.php by @TheCartpenter in #13012
  • Update weight.php by @TheCartpenter in #13013
  • Update tax.php by @TheCartpenter in #13014
  • Update db.php by @TheCartpenter in #13015
  • Update template.php by @TheCartpenter in #13016
  • Aligned most @params and @returns in library comments by @TheCartpenter in #13018
  • Update customer.php by @TheCartpenter in #13017
  • fix: Undefined variable '$stock' bug fix by @serkanboztepe in #13022
  • Update db.php by @TheCartpenter in #13021
  • Update url.php by @TheCartpenter in #13020
  • Update security.php by @TheCartpenter in #13025
  • Removed 'print_r' from Marketing-Contact controller by @condor2 in #13027
  • Check for missing symbols in code with GitHub Action by @AJenbo in #13034
  • Update article.php by @TheCartpenter in #13035
  • Update comment.php by @TheCartpenter in #13036
  • Update blog.php by @TheCartpenter in #13037
  • Update column_left.php by @TheCartpenter in #13039
  • Update comment.php by @TheCartpenter in #13038
  • Update layout.php by @TheCartpenter in #13047
  • Update manufacturer.php by @TheCartpenter in #13040
  • Update store.php by @TheCartpenter in #13046
  • Update subscription.php by @TheCartpenter in #13043
  • Update category.php by @TheCartpenter in #13041
  • Update returns.php by @TheCartpenter in #13042
  • Update option.php by @TheCartpenter in #13044
  • Update affiliate.php - typo correction by @pemaier in #13050
  • Update category.php by @TheCartpenter in #13048
  • Update opencart.sql - Insert new Kasachstan regions by @pemaier in #13053
  • Update redis.php by @TheCartpenter in #13055
  • Update download.php - Text update by @pemaier in #13049
  • Update marketplace.php by @TheCartpenter in #13054
  • Update cli_install.php by @TheCartpenter in #13062
  • Update registry.php by @TheCartpenter in #13059
  • Update developer.php by @TheCartpenter in #13060
  • Update modification.php by @TheCartpenter in #13061
  • Update factory.php by @TheCartpenter in #13063
  • Update proxy.php by @TheCartpenter in #13064
  • Update opencart.sql by @TheCartpenter in #13089
  • Update article.php by @TheCartpenter in #13066
  • Update attribute_group.php by @TheCartpenter in #13065
  • Update customer.php by @TheCartpenter in #13067
  • Update order.php by @TheCartpenter in #13068
  • Update event.php by @TheCartpenter in #13069
  • Update article.php by @TheCartpenter in #13070
  • Update cache.php by @TheCartpenter in #13073
  • Update mail.php by @TheCartpenter in #13075
  • Update response.php by @TheCartpenter in #13076
  • Update session.php by @TheCartpenter in #13077
  • Update mem.php by @TheCartpenter in #13079
  • Update redis.php by @TheCartpenter in #13081
  • Update smtp.php by @TheCartpenter in #13082
  • Update file.php by @TheCartpenter in #13083
  • Update image.php by @TheCartpenter in #13086
  • Update document.php by @TheCartpenter in #13074
  • Update memcached.php by @TheCartpenter in #13080
  • 404 page recognition fix by @SDG1212 in #12889
  • Update Bootstrap 5.3.2 by @stalker780 in #13094
  • Update Font Awesome 6.5.1 by @stalker780 in #13093
  • Method getTotalProducts() does not count correctly in a multi-store by @opencartbot in #13099
  • Update store.php by @captainerd in #13091
  • Update README.md by @pemaier in #13101
  • Update cron.php by @TheCartpenter in #13103
  • Update store.php by @TheCartpenter in #13102
  • Update statistics.php by @TheCartpenter in #13109
  • Update comment.php by @TheCartpenter in #13107
  • Update setting.php - remove $_['error_encryption'] by @pemaier in #13104
  • Update en-gb.php by @TheCartpenter in #13108
  • Update installer.php - typo corretion by @pemaier in #13117
  • Fix the cart url in the Sitemap page by @opencartbot in #13116
  • Update returns.php by @captainerd in #13115
  • Update image.php by @TheCartpenter in #13133
  • Update weight.php by @TheCartpenter in #13131
  • Update installer.php by @TheCartpenter in #13125
  • Update category.php by @TheCartpenter in #13129
  • Clear cart data on update by @stalker780 in #13135
  • Update order.twig by @TheCartpenter in #13130
  • Update image.php by @TheCartpenter in #13132
  • Latest Blog Module for HomePage by @ppalashturov in #13144
  • Update review.php by @TheCartpenter in #13140
  • Update article.php by @TheCartpenter in #13157
  • Update product.php by @TheCartpenter in #13149
  • Update map.php by @TheCartpenter in #13151
  • Update marketplace.php by @TheCartpenter in #13156
  • Update online.php by @TheCartpenter in #13150
  • Update sale.php by @TheCartpenter in #13195
  • Update subscription.php by @TheCartpenter in #13194
  • Update customer.php by @TheCartpenter in #13193
  • Update returns.php by @TheCartpenter in #13192
  • Test with PHP 8.3 by @AJenbo in #13196
  • Update subscription.php by @TheCartpenter in #13242
  • Update startup_list.twig by @TheCartpenter in #13229
  • Update event_list.twig by @TheCartpenter in #13228
  • Fix incorrect indentation in mail subscription by @AJenbo in #13243
  • Update notification.php - time information by @pemaier in #13121
  • Update notification.php by @pemaier in #13122
  • Update notification_info.twig - syncroniced with controller by @pemaier in #13123
  • Update notification_list.twig - insert icon column by @pemaier in #13124
  • Update db_schema.php - article index entries with _id by @pemaier in #13134
  • install modification description by @pemaier in #13141
  • Update order.php by @stalker780 in #13143
  • Testing change with multiple files by merging commits by @TheCartpenter in #13250
  • Update product.twig by @TheCartpenter in #13253
  • Completed the TD alignments in admin by @TheCartpenter in #13252
  • Completed TD alignment on catalog and more in admin by @TheCartpenter in #13257
  • Remove blank line after class decleration by @AJenbo in #13169
  • Correct spaces in unary operator by @AJenbo in #13173
  • Apply missing void return by @AJenbo in #13188
  • Correct spaces around comparisons by @AJenbo in #13175
  • Correct indentation of statments by @AJenbo in #13167
  • Correct spaces in ternary operator by @AJenbo in #13171
  • Correct position of return type declaration by @AJenbo in #13170
  • Correct placment of opening braces by @AJenbo in #13158
  • Correct control structure continuation position by @AJenbo in #13172
  • Correct spaces around assigments by @AJenbo in #13174
  • Fix incorrect indentation in admin by @AJenbo in #13160
  • Fix incorrect indentation in library by @AJenbo in #13164
  • Fix incorrect indentation in base by @AJenbo in #13165
  • Fix incorrect indentation in extensions by @AJenbo in #13166
  • Fix incorrect indentation in catalog by @AJenbo in #13168
  • Modernize arrays by @AJenbo in #13186
  • Use real function names by @AJenbo in #13189
  • Add missing symbol visibility by @AJenbo in #13177
  • Make sure that all files end in a proper line ending by @AJenbo in #13162
  • Reuse PHPStan result cache by @AJenbo in #13273
  • Reduce time taken to analyze code by @AJenbo in #13274
  • Remove trailing whitespace from empty lines in catalog by @AJenbo in #13185
  • Remove trailing whitespace from empty lines in installer by @AJenbo in #13183
  • Remove trailing whitespace from empty lines in extensions by @AJenbo in #13181
  • Remove trailing whitespace from empty lines in admin by @AJenbo in #13163
  • Remove trailing whitespace in comments by @AJenbo in #13159
  • Remove trailing whitespace in code by @AJenbo in #13161
  • Remove trailing whitespace from empty lines in system by @AJenbo in #13182
  • Remove trailing whitespace from empty lines in marketing affiliate by @AJenbo in #13184
  • Check that PR has correct code style by @AJenbo in #13276
  • Update framework.php by @TheCartpenter in #13264
  • Use modern random number generator by @AJenbo in #13187
  • Make null return explicit in SeoUrl::index() by @AJenbo in #13289
  • Update permission.php by @TheCartpenter in #13290
  • Correctly align array initilizations by @AJenbo in #13176
  • Pagination by @stalker780 in #13287
  • Revert "Pagination" by @danielkerr in #13291
  • Update opencart.sql by @stalker780 in #13288
  • Added more phpdoc titles on methods by @TheCartpenter in #13293
  • Add missing type hints by @AJenbo in #13191
  • Blog Module for HomePage - Order and Sort by @ppalashturov in #13245
  • Update product.twig by @chongshengdz in #13246
  • Update review.php by @stalker780 in #13271
  • Update coupon_list.twig by @Samdz19 in #13268
  • [Master] topic.php by @osworx in #13280
  • Update admin/controller/marketing/coupon.php by @Samdz19 in #13270
  • Added phpdoc title on admin controller methods by @TheCartpenter in #13296
  • Update code style to PER-CS2.0 by @AJenbo in #13297
  • Make all remaning alignments to the code style config by @AJenbo in #13306
  • Broken URL in code comments by @opencartbot in #13311
  • Update subscription.php by @TheCartpenter in #13316
  • Update order.php by @TheCartpenter in #13317
  • Update manufacturer.php by @opencartbot in #13314
  • Update special.php by @opencartbot in #13313
  • Broken URL in code comments by @opencartbot in #13312
  • Update blog.php by @TheCartpenter in #13304
  • Completed leftover phpdoc title in catalog model and extension folder by @TheCartpenter in #13301
  • Update cache.php by @TheCartpenter in #13335
  • Simplify use of ternary statments by @AJenbo in #13315
  • Use constants instead of functions by @AJenbo in #13309
  • Update subscription.php by @TheCartpenter in #13305
  • Use native function calls by @AJenbo in #13310
  • Update affiliate.php by @Samdz19 in #13334
  • Update affiliate.php by @Samdz19 in #13332
  • Update affiliate_list.twig by @Samdz19 in #13333
  • Use cannonical ordering of PHPDoc by @AJenbo in #13300
  • [MASTER] comment.php by @osworx in #13278
  • Make use of PHP 7.4 features by @AJenbo in #13298
  • Add missing PHPDoc for arguments by @AJenbo in #13343
  • Update user.php by @pemaier in #13337
  • Update framework.php by @TheCartpenter in #13342
  • Update login.twig by @pemaier in #13344
  • Update user.php by @pemaier in #13338
  • Update user.php - New version by @pemaier in #13339
  • Update user.twig - New Version by @pemaier in #13340
  • Update user_list.twig - New version by @pemaier in #13341
  • Correct call to getHistory in order controller by @AJenbo in #13345
  • Remove unknown notation by @AJenbo in #13348
  • Update gdpr.twig - added filter reset by @pemaier in #13355
  • Remove unreacable code by @AJenbo in #13349
  • Remove redundant assignemtn by @AJenbo in #13346
  • Correctly close the statment after use by @AJenbo in #13347
  • customer and customer_approval added filter reset by @pemaier in #13350
  • Update affiliate.php by @pemaier in #13351
  • Update marketing.php - added autocomplete by @pemaier in #13353
  • Indentation code marketing.php by @condor2 in #13360
  • Update comment.twig by @pemaier in #13363
  • Update online.twig by @pemaier in #13361
  • Update report.twig by @pemaier in #13362
  • Fix removing gift vouchers from cart by @kForth in #13359
  • Update affiliate_form.twig by @Samdz19 in #13367
  • Moved form-currency ID at beginning by @TheCartpenter in #13368
  • Remove redundant code by @AJenbo in #13372
  • Update report.twig by @pemaier in #13370
  • Correct various generic object types to there actual native types by @AJenbo in #13371
  • Remove redundant check on filename by @AJenbo in #13377
  • Remove unused arguments by @AJenbo in #13378
  • Avoid type error when MySQL connection fails by @AJenbo in #13374
  • Fix type error when getting unitialized image by @AJenbo in #13373
  • Fix PHP 7.4 compatability by @AJenbo in #13380
  • Update voucher_theme.php by @Samdz19 in #13382
  • Update extension.php by @Samdz19 in #13383
  • Updated phpstan & php-cs-fixer versions in Lint.yml by @condor2 in #13389
  • Increase PHPStan level to 1 by @AJenbo in #13396
  • Remove unused argument from deleteAddress() by @AJenbo in #13402
  • Fix sending mail on PHP 7.4 by @AJenbo in #13408
  • Remove broken pagination arguments by @AJenbo in #13398
  • Simplify version check by @AJenbo in #13409
  • Initialize $original by @AJenbo in #13406
  • Correct call to addModule() in extension module by @AJenbo in #13405
  • Cast input type early by @AJenbo in #13399
  • Remove incorrect use of return value by @AJenbo in #13400
  • Remove unused argument for Session::destroy() by @AJenbo in #13401
  • Clean up Backup::restore() by @AJenbo in #13403
  • Add native type hints to several functions by @AJenbo in #13404
  • Correct return value of localization functions by @AJenbo in #13407
  • Fix mail configuration for subcription by @AJenbo in #13411
  • Fix loading article layout by @AJenbo in #13412
  • Added new line for each null IDs in models by @TheCartpenter in #13413
  • Fix loading subscription data by @AJenbo in #13414
  • Correct getLastId() return value by @AJenbo in #13415
  • Assert that model methods are callable by @AJenbo in #13416
  • Fix calls to wrong methods on models by @AJenbo in #13417
  • Correct getRateName() return type by @AJenbo in #13418
  • Reset customer properties with correct types by @AJenbo in #13419
  • Correct return type for getDecimalPlace() by @AJenbo in #13420
  • Copy missing edit functions for catalog account subscription model by @AJenbo in #13421
  • Fix emitting error in Factory by @AJenbo in #13423
  • Correct return type for format() by @AJenbo in #13424
  • Implement missing function for deleting subscriptions by @AJenbo in #13427
  • Specify value type in array returns by @AJenbo in #13428
  • Fix deleteAuthorize() by @AJenbo in #13429
  • Fix bad function call by @AJenbo in #13430
  • Fix deleteAuthorize() by @AJenbo in #13431
  • Adding SagePay Opayo extension by @TheCartpenter in #13461
  • Correct return types in Factory by @AJenbo in #13459
  • Fix error handeling for PHP 8.0+ by @AJenbo in #13446
  • Fix usage of PostgreSQL with PHP 8.1+ by @AJenbo in #13449
  • Docker Compose based developer environment by @AJenbo in #13464
  • Update twig.php by @Shinrai in #13450
  • Update review.php by @Samdz19 in #13452
  • Using OC conventional field names for Opayo extension by @TheCartpenter in #13466
  • Update opayo.php by @TheCartpenter in #13472
  • Update opayo.php by @TheCartpenter in #13471
  • Update opayo.php by @TheCartpenter in #13468
  • Update log.php (Replaced string with mixed to accept array) by @nexadomain in #13467
  • Update opayo.php by @TheCartpenter in #13475
  • Fix Opayo::calculateSchedule() by @AJenbo in #13474
  • Added subscription array and added product name by @TheCartpenter in #13477
  • Fix cms/comment.php by @AJenbo in #13476
  • Update subscription.php by @TheCartpenter in #13488
  • Only process currencies if there are more then one by @AJenbo in #13495
  • Remove redundant check for pdo by @AJenbo in #13496
  • Remove redundant check for registry by @AJenbo in #13497
  • Remove redundant check on request->get by @AJenbo in #13498
  • Filter empty result from explode() by @AJenbo in #13499
  • Remove inoperable error suppresion by @AJenbo in #13500
  • phpstan updated to 1.10.55 by @condor2 in #13502
  • Correct key type for length and weight library by @AJenbo in #13511
  • Remove unused property from Tax by @AJenbo in #13513
  • Extension Reports - added filter reset by @pemaier in #13525
  • Emmit error on unknown position by @AJenbo in #13530
  • Update contact.php - remove blank by @pemaier in #13549
  • Remove unused argument by @AJenbo in #13539
  • Update ip.php by @TheCartpenter in #13542
  • Cast strings to int after extracting the ID from a string by @AJenbo in #13574
  • Use a closure when assining the autoloader by @AJenbo in #13572
  • Update db_schema.php by @stalker780 in #13591
  • Remove space from returns_form.twig by @kanenas in #13594
  • Update location.php - remove load model/store by @pemaier in #13592
  • Update filter.php by @TheCartpenter in #13618
  • Update payment_method.php by @TheCartpenter in #13636
  • Update attribute_group_form.twig by @sabeti05 in #13634
  • currency_id wrongly escaped in getCurrency method by @mehdiRma10 in #13640
  • CKEditor disable version check by @stalker780 in #13654
  • Fix admin refactoring bugs by @stalker780 in #13659
  • Update validation.php by @stalker780 in #13664
  • Correct port type for mysqli by @AJenbo in #13561
  • Update opencart.sql by @pemaier in #13553
  • Correct type of arguments given to md5 by @AJenbo in #13560
  • Correct the type of input for Currency::format() by @AJenbo in #13562
  • Update layout.php by @stalker780 in #13668
  • Remove redundant ceil() calls by @AJenbo in #13567
  • Fix check for image type by @AJenbo in #13528
  • Fix missing default order currency by @AJenbo in #13536
  • Update robots.txt by @TheCartpenter in #13646
  • Search bar wrap in HTML form by @sadn3r in #13649
  • in pagination path double by @BuslikDrev in #13645
  • Check for config before use by @AJenbo in #13533
  • Fix dropping primary key when upgrading by @AJenbo in #13534
  • Fix subscription cycle by @AJenbo in #13537
  • Fix getting error messages for pgsql by @AJenbo in #13559
  • Remove incorect input for readfile() by @AJenbo in #13563
  • Correct types given to mkdir() by @AJenbo in #13564
  • Fix missing paramter when calling cart->add() in cron subscription by @AJenbo in #13565
  • Cast cost to float by @AJenbo in #13568
  • Use correct property type for various calls by @AJenbo in #13569
  • Fix HTTP response status codes on download by @AJenbo in #13571
  • Update filemanager.php by @danijelGombac in #13638
  • Updated php-cs-fixer to 3.49 - Lint.yml by @condor2 in #13677
  • Replaced deprecated escape_implicit_backslashes - php-cs-fixer.php by @condor2 in #13676
  • Admin product model fix events by @stalker780 in #13680
  • Fixed wrong Filter for extension_download_id by @nexadomain in #13686
  • Update download.php by @stalker780 in #13672
  • fix removing attributes in admin panel: by @sadn3r in #13678
  • Update setting.php by @TheCartpenter in #13675
  • Update bestseller.twig by @TheCartpenter in #13641
  • Update product.php by @TheCartpenter in #13643
  • Update validation.php by @stalker780 in #13674
  • Update filemanager.php by @danijelGombac in #13679
  • Update authorize.php by @nexadomain in #13696
  • Update modification.php by @leonidukg in #13685
  • Add missing escape to filter moule by @ADDCreative in #13701
  • Update aws/aws-sdk-php to version 3.297.2 by @AJenbo in #13606
  • Bootstrap 5.3.3 update by @stalker780 in #13702
  • Fix sql by @SecretSergey in #13713
  • Update type (catalog/model/account/gdpr.php) by @SecretSergey in #13715
  • Update product.php by @stalker780 in #13718
  • Update attribute.php by @stalker780 in #13719
  • Update download.php by @stalker780 in #13723
  • Update attribute_group.php by @stalker780 in #13720
  • Update category.php by @stalker780 in #13721
  • Update information.php by @stalker780 in #13722
  • Update filter.php by @stalker780 in #13724
  • Update manufacturer.php by @stalker780 in #13725
  • Update filter_group.php by @stalker780 in #13726
  • Update option.php by @stalker780 in #13727
  • Update review.php by @stalker780 in #13728
  • Update subscription_plan.php by @stalker780 in #13729
  • Update article.php by @stalker780 in #13730
  • Update topic.php by @stalker780 in #13731
  • Fix time for quickly dipslayed notifications by @AJenbo in #13538
  • Fix plural form in notifications by @AJenbo in #13540
  • Update upgrade.php by @ppalashturov in #13748
  • More phpdocs work by @TheCartpenter in #13757
  • Update register.php by @hayden-t in #13764
  • Update register.php by @TheCartpenter in #13765
  • Switching to Phar Distributions for Tools by @AJenbo in #13763
  • Configure ApiGen using apigen.neon file by @AJenbo in #13762
  • Fix undefined function error during installation by @rasulsh in #13779
  • Update product.php by @danijelGombac in #13781
  • Add missing webp lib to docker file by @benycode in #13795
  • Added PHPDoc in api/sale/customer/save controller by @TheCartpenter in #13796
  • fix: unable to uninstall module setting by @duynguyentho in #13797
  • Updated some create table queries by @TheCartpenter in #13804
  • Update footer.twig - Hide column information if no entries by @pemaier in #13808
  • Add Adminer (Database management tool) to docker-compose file by @benycode in #13810
  • Removed extra lines by @TheCartpenter in #13817
  • Aligned indents in catalog/product_form TWIG file by @TheCartpenter in #13825
  • Pushed closing div on next line by @TheCartpenter in #13826
  • Fix null operator used on bool expression by @AJenbo in #13829
  • Indent of 2 of admin TWIG files by @TheCartpenter in #13834
  • Fix admin language switching by @opencartbot in #13839
  • https protocol in the docs link by @opencartbot in #13837
  • Trimmed JS function parentheses by @TheCartpenter in #13838
  • Update product_form.twig by @rahulabs in #13841
  • More indent of 2 on extensions by @TheCartpenter in #13842
  • Aligned leftover hidden and checkbox inputs by @TheCartpenter in #13843
  • Aligned leftover hidden with text inputs by @TheCartpenter in #13844
  • Update debug.php by @hayden-t in #13848
  • Add missing attribute to getTotalFilters() by @AJenbo in #13847
  • Update required PHP version graphic by @fulldecent in #13859
  • Found another missing customer_token link by @TheCartpenter in #13864
  • Update opencart.sql - Stock status by @pemaier in #13867
  • Update product.php - Stock status by @pemaier in #13868
  • Typo language api localisation by @condor2 in #13882
  • Update wishlist.php -Stock status by @pemaier in #13872
  • Update compare.php - Stock status by @pemaier in #13871
  • Update setting.php - Stock status by @pemaier in #13873
  • Update setting.twig - Stock status by @pemaier in #13874
  • Update setting.php - Stock status by @pemaier in #13875
  • Update product.php - Stock status by @pemaier in #13876
  • Update authorize.twig by @TheCartpenter in #13886
  • Stock status for stores by @pemaier in #13887
  • Added int cast on config_stock_status_id by @TheCartpenter in #13891
  • Added missing casts for config get in model calls by @TheCartpenter in #13895
  • Update store.php - due the stock status for stores is not in accepted the text is not… by @pemaier in #13898
  • Added more array casts on processing and complete statuses by @TheCartpenter in #13896
  • Added last int on config_api_id by @TheCartpenter in #13916
  • Update setting.twig - autocomplete limit config centralized, similar … by @pemaier in #13899
  • Update setting.php - autocomplete limit config centralized, similar t… by @pemaier in #13900
  • Update opencart.sql - autocomplete limit config centralized, similar … by @pemaier in #13901
  • Update user.php - autocomplete limit config centralized, similar to p… by @pemaier in #13902
  • Update db.php by @TheCartpenter in #13924
  • Update file.php by @TheCartpenter in #13925
  • Update marketing.php - autocomplete limit config centralized, similar… by @pemaier in #13903
  • Update affiliate.php - autocomplete limit config centralized, similar… by @pemaier in #13904
  • Update customer.php - autocomplete limit config centralized, similar … by @pemaier in #13905
  • Update product.php - autocomplete limit config centralized, similar t… by @pemaier in #13906
  • Update option.php - autocomplete limit config centralized, similar to… by @pemaier in #13907
  • Update manufacturer.php - autocomplete limit config centralized, simi… by @pemaier in #13908
  • Update filter_group.php - autocomplete limit config centralized, simi… by @pemaier in #13909
  • Update filter.php - autocomplete limit config centralized, similar to… by @pemaier in #13910
  • Update filter.php - autocomplete limit config centralized, similar to… by @pemaier in #13911
  • Update download.php - autocomplete limit config centralized, similar … by @pemaier in #13912
  • Update category.php - autocomplete limit config centralized, similar … by @pemaier in #13913
  • Update attribute.php - autocomplete limit config centralized, similar… by @pemaier in #13914
  • Update product.php - Solution for #13915 by @pemaier in #13917
  • Fixed autocomplete typo by @TheCartpenter in #13918
  • Update setting.php - missing part autocomplete_limit error handling by @pemaier in #13920
  • Fixed phpdoc $address parameter from free checkout by @TheCartpenter in #13922
  • Update statistics.php by @TheCartpenter in #13923
  • More PHPDocs work by @TheCartpenter in #13929
  • Fix cart session_id typo by @stalker780 in #13931
  • Upgraded twig/twig vendor to v3.10.1 release by @TheCartpenter in #13930
  • More vendors updates by @TheCartpenter in #13933
  • Upgraded aws/aws-sdk-php vendor to v3.306.7 by @TheCartpenter in #13934
  • Upgraded aws/aws-sdk-php vendor to v3.307.0 by @TheCartpenter in #13935
  • Admin Model catalog/product - deleteStoresByStoreId() by @ppalashturov in #13958
  • Upgraded aws/aws-sdk-php vendor to v3.307.2 by @TheCartpenter in #13956
  • Uograded symfony/deprecation-contracts from v2.5.3 to v3.5.0 vendor by @TheCartpenter in #13959
  • Upgraded aws/aws-sdk-php vendor to v3.308.4 by @TheCartpenter in #13971
  • Font Awesome 6.5.2 by @stalker780 in #13975
  • Upgraded aws/aws-sdk-php vendor to v3.308.5 by @TheCartpenter in #13974
  • Update permission.php by @saosangmo in #13987
  • Upgraded aws/aws-sdk-php vendor to v3.309.0 by @TheCartpenter in #13986
  • Admin product list filters by @stalker780 in #13995
  • Update category_form.twig by @rahuloberai in #14005
  • Fix Cache/file.php - … by @prometheuscz in #13991
  • Upgraded aws/aws-sdk-php vendor to v3.311.1 by @TheCartpenter in #13990
  • FIX - SpamAssassin does not like you - MPART_ALT_DIFF by @prometheuscz in #14008
  • Admin category list filters by @stalker780 in #13997
  • Upgraded aws/aws-sdk-php vendor to v3.315.0 by @TheCartpenter in #14016
  • Update order.php by @Scorpio256 in #13998
  • Upgraded aws/aws-sdk-php vendor to v3.315.3 by @TheCartpenter in #14026
  • Fixed voucher removal issue: reindexed voucher session array after re… by @pankajAlakmalak in #14027
  • Upgraded aws/aws-sdk-php to v3.315.5 by @TheCartpenter in #14031
  • Upgraded aws/aws-sdk-php vendor to v3.315.6 by @TheCartpenter in #14039
  • Upgraded aws/aws-sdk-php vendor to v3.316.0 by @TheCartpenter in #14040
  • Docker Desktop by @aaron-muti-420 in #14050
  • Update README.md by @aaron-muti-420 in #14052
  • display upload name in cart by @hayden-t in #14047
  • Fixed indent in install/view/common/footer by @TheCartpenter in #14045
  • show upload name in cart by @hayden-t in #14048
  • Update payment_method.php by @chongshengdz in #14054
  • Upgraded aws/aws-sdk-php vendor to v3.316.5 by @TheCartpenter in #14056
  • Upgraded aws/aws-sdk-php vendor to v3.316.6 by @TheCartpenter in #14057
  • Update category.twig - Form reset by @pemaier in #14058
  • Upgraded aws/aws-sdk-php vendor to v3.316.7 by @TheCartpenter in #14061
  • Upgraded aws/aws-sdk-php vendor to v3.316.9 by @TheCartpenter in #14062
  • Update store.php by @tmdashwani in #14072
  • Update setting.twig by @tmdashwani in #14069
  • Update store.php by @tmdashwani in #14065
  • Update setting.php by @tmdashwani in #14067
  • Update store.php by @tmdashwani in #14068
  • Update setting.php by @tmdashwani in #14066
  • Update store_form.twig by @tmdashwani in #14070
  • Update setting.php by @tmdashwani in #14071
  • Update header.php by @tmdashwani in #14073
  • Update header.twig by @tmdashwani in #14074
  • Remove redundant typecasting in balance formatting by @koriyapankaj in #14076
  • Upgraded aws/aws-sdk-php vendor to v3.317.0 by @TheCartpenter in #14064
  • Standardized icon variable in common/header.twig by @TheCartpenter in #14078
  • Update header.twig by @opencartbot in #14079
  • Upgraded aws/aws-sdk-php vendor to v3.319.3 by @TheCartpenter in #14080
  • fix error about validate_length for telephone by @jian2008 in #14088
  • Update coupon.php by @hayden-t in #14085
  • Add 'status' field to customer affiliate query by @koriyapankaj in #14083
  • Update product.php by @retrina in #14082
  • Update search.twig by @retrina in #14093
  • Upgraded aws/aws-sdk-php vendor to v3.320.2 by @TheCartpenter in #14091
  • Fix removing image form product in edit function of product.php by @retrina in #14094
  • Update language.php by @stalker780 in #14102
  • Update confirm.php by @rahuloberai in #14122
  • Update cron.php by @slavino in #14133
  • Update compare.php by @mavelo-llc in #14141
  • Update shipping.php by @stalker780 in #14145
  • Update store.php by @tmdashwani in #14118
  • Update user.php by @pemaier in #14115
  • #14077 by @retrina in #14135
  • #14100 by @retrina in #14136
  • Add Meta in document.php by @retrina in #14125
  • Issue with moving 'storage' on php 7.4 by @opencartbot in #14144
  • Fix config_icon data in header.php by @retrina in #14099
  • Replacing strpos with str_contains by @opencartbot in #14159
  • Update model/cms/article.php by @opencartbot in #14156
  • fix wrong namespace by @chongshengdz in #14149
  • Update CHANGELOG.md by @kisuka in #14161
  • Update order.php by @stalker780 in #14150
  • Added support str_contains() for PHP < 8 by @opencartbot in #14158
  • checkout shipping by @stalker780 in #14151
  • FontAwesome 6.6.0 by @stalker780 in #14171
  • Update article.php by @opencartbot in #14152
  • Update topic.php by @opencartbot in #14155
  • Update gdpr.php by @opencartbot in #14157
  • Fixed #14165 by @prabhat-webkul in #14168
  • Update Lint.yml by @tusharpillai02 in #14232
  • Update activity.php by @mavelo-llc in #14226
  • Update loader.php by @stalker780 in #14219
  • Update .htaccess.txt by @hayden-t in #14239
  • Update wishlist.php by @mavelo-llc in #14206
  • Checkout payment method controller and view updates by @mavelo-llc in #14176
  • Update returns_form.twig by @mavelo-llc in #14225
  • FontAwesome 6.7.1 by @stalker780 in #14250
  • Fix php.ini by @joeantropy in #14247
  • Update smtp.php by @chongshengdz in #14189
  • Upgraded TWIG and AWS vendors by @TheCartpenter in #14252
  • #14205 by @retrina in #14259
  • Ran CS-Fixer by @TheCartpenter in #14267
  • Update product.php by @stalker780 in #14268
  • Ran more CS-Fixer by @TheCartpenter in #14269
  • More CS-Fixer by @TheCartpenter in #14270
  • More PHPDocs with load model relationships by @TheCartpenter in #14275
  • Removed some extra spaces on comment names and descriptions by @TheCartpenter in #14279
  • More PHPDocs work on most return lines by @TheCartpenter in #14281
  • Worked on more backticks by @TheCartpenter in #14282
  • More PHPDocs work on returns by @TheCartpenter in #14287
  • More PHPDocs on adding model examples by @TheCartpenter in #14288
  • Added missing array of data by @TheCartpenter in #14290
  • Added PHPDoc session records in setting/api model by @TheCartpenter in #14294
  • More backticks work by @TheCartpenter in #14295
  • Removed duplicated lines from product language file by @condor2 in #14297
  • Added array cast by @TheCartpenter in #14298
  • #14305 by @retrina in #14306
  • More work on PHPDocs by @TheCartpenter in #14307
  • Update header.twig by @retrina in #14302
  • More PHPDocs on catalog end by @TheCartpenter in #14308
  • Update filter_group.php by @pemaier in #14309
  • French language by @stasdrvn in #14310
  • French language for install folder by @stasdrvn in #14311
  • Applied CS-Fixer and some PHPDocs corrections by @TheCartpenter in #14312
  • More PHPDocs work on examples by @TheCartpenter in #14314
  • Update attribute.php by @pemaier in #14317
  • Update filter_group.php by @pemaier in #14316
  • Update attribute_group.php by @pemaier in #14318
  • Update category.php by @pemaier in #14319
  • Update download.php by @pemaier in #14320
  • Update filter.php by @pemaier in #14321
  • Some format work by @pemaier in #14322
  • Update user.php by @stalker780 in #14327
  • Some more formate work by @pemaier in #14323
  • More PHPDocs work on admin model examples by @TheCartpenter in #14324
  • Reworked on PHPDocs work in admin model catalog examples by @TheCartpenter in #14328
  • Update step_3.twig by @pemaier in #14330
  • More work on PHPDocs in admin models by @TheCartpenter in #14331
  • More work on PHPDocs in admin localisation models by @TheCartpenter in #14333
  • setting clarification by @hayden-t in #14335
  • More PHPDocs work in admin models by @TheCartpenter in #14336
  • French language fixes by @stasdrvn in #14338
  • More work on PHPDocs in catalog models by @TheCartpenter in #14343
  • More PHPDocs work on array value examples by @TheCartpenter in #14345
  • More PHPDocs work on adding load models in examples by @TheCartpenter in #14347

Read more: https://github.com/opencart/opencart/releases

4.0.2.3

(major version)
18 September 2023 - 90MB
  • Update sale_tax.twig by @opencartbot in #12439
  • Fix the admin map - html to json data type by @opencartbot in #12440
  • jQuery version fix by @opencartbot in #12441
  • Fix warning about minimum SEO URL length by @opencartbot in #12458
  • Added missing line subscription cron language by @condor2 in #12456
  • subscription.php - remove double text_history by @pemaier in #12436
  • Removed white space sale/subscription language by @condor2 in #12454
  • Update subscription.php language - catalog side by @condor2 in #12455
  • resolve #12428 Unable to change admin language by @batumibiz in #12465
  • Update JQuery 3.7.0 by @stalker780 in #12466
  • Removed duplicated banner_image_description table in upgrade/upgrade_… by @TheCartpenter in #12475
  • Update opencart.sql - Added report customer and report affiliate entries by @pemaier in #12493
  • Removed empty space in catalog/product model by @TheCartpenter in #12501
  • Fix SQL space in product model by @stalker780 in #12500
  • Update opencart.sql - Added extension/marketplace by @pemaier in #12498
  • Update opencart.sql - Removed report/affiliate by @pemaier in #12515
  • empty instruction on the default extensions causes a bad time by @eddimull in #12502
  • Fix session_samesite by @opencartbot in #12518
  • Update opencart.sql - Added German Islands in zone table by @pemaier in #12533
  • fix #12465 Removed unused event by @batumibiz in #12537
  • Added cast in product/compare by @TheCartpenter in #12540
  • Added cast in account/wishlist by @TheCartpenter in #12539
  • Added cast on product/review by @TheCartpenter in #12538
  • Update catalog download.php - Added . to filename check by @pemaier in #12617
  • Correct multilingual SEO URLs in the catalog language switcher by @opencartbot in #12448
  • Bootstrap 5.3.1 Update by @stalker780 in #12524
  • Update admin/controller/sale/order.php to fix Fraud Order Tab issue by @fraudlabspro in #12516
  • Fixed Search Products By Multi Stores by @ppalashturov in #12637
  • Update notification.php by @opencartbot in #12511
  • demonstration group permission = null by @BuslikDrev in #12646
  • rename comment by @BuslikDrev in #12659
  • Removed Euro requirement by @batumibiz in #12666
  • resolve #12668 Image Manager pagination bug by @batumibiz in #12673
  • Fix product controller by @stalker780 in #12680
  • Bootstrap 5.3.2 update by @stalker780 in #12686
  • FontAwesome 6.4.2 update by @stalker780 in #12687
  • jQuery 3.7.1 update by @stalker780 in #12688
  • Codemirror 5.65.15 update by @stalker780 in #12689
  • CKEditor 4.22.1 update by @stalker780 in #12690

Read more: https://github.com/opencart/opencart/releases

4.0.2.2

(major version)
12 July 2023 - 90MB
  • build(deps): bump guzzlehttp/psr7 from 2.4.1 to 2.5.0 in /upload/system/storage by @dependabot in #12278
  • Update sub_total.twig by @fubaman in #12323
  • Check if encryption negotiation failed by @ADDCreative in #12322
  • Fix backup with NULL values by @ADDCreative in #12299
  • Update cart.php by @sabeti05 in #12302
  • Update order_info.twig by @sabeti05 in #12325
  • Fixed admin order editor incorrect error display by @faheem5157 in #12295
  • Update product_form.twig by @sabeti05 in #12281
  • Added Extension Compatibility in Marketplace controller by @condor2 in #12264
  • Display Compatibility info for Extension in Marketplace by @condor2 in #12265
  • Fixed sub category URL update match all value start with old path by @qaharmdz in #12292
  • Update city length check by @dennisbuijsgmailcom in #12249
  • Update review.php by @rahulabs in #12244
  • Update module.php by @rahulabs in #12245
  • fixed #12231 issue by @satish35 in #12243
  • remove media="screen" from order_invoice.twig by @pemaier in #12312
  • remove media="screen" from order_shipping.twig by @pemaier in #12313
  • Change page location on admin product filter by @stalker780 in #12402
  • Change page location on admin review filter by @stalker780 in #12405
  • Change page location on admin customer filter by @stalker780 in #12407
  • Change page location on admin order filter by @stalker780 in #12408
  • allow pass through $default to system resize by @hayden-t in #12357
  • Change page location on admin customer_approval filter by @stalker780 in #12409
  • Change page location on admin seo_url filter by @stalker780 in #12410
  • Change page location on admin gdpr filter by @stalker780 in #12411
  • Change page location on admin returns filter by @stalker780 in #12412
  • Change page location on admin zone filter by @stalker780 in #12413
  • Change page location on admin country filter by @stalker780 in #12414
  • Change page location on admin affiliate filter by @stalker780 in #12415
  • Change page location on admin marketing filter by @stalker780 in #12416
  • Change page location on admin subscription filter by @stalker780 in #12417
  • Create apcu by @BuslikDrev in #12288
  • Renamed apcu to apcu.php by @TheCartpenter in #12423
  • copyProduct support for variant/override fields by @hayden-t in #12348
  • Improve flexbox to show button groups in product thumb by @MarvinKlein1508 in #12343
  • Update download.php by @ppalashturov in #12430
  • subscription.php - Removed double text entries by @pemaier in #12401
  • Added subscription_alert TWIG file - catalog/view/template/mail/subscription_alert.twig file by @TheCartpenter in #12038
  • Added subscription_alert language file - catalog/language/en-gb/mail/subscription_alert.php file by @TheCartpenter in #12037
  • Font Awesome 6.3.0 update by @stalker780 in #12179

Read more: https://github.com/opencart/opencart/releases

4.0.2.1

(major version)
28 April 2023 - 90MB
  • Works with PHP 8.2
  • Changed the route to use . instead of using | for compatibility with some payment gateways
  • Payment methods need to be updated
  • Corrected Two-factor Security Error Message by @nexadomain in #11599
  • fix email url by @iamsyh in #11603
  • Fixed SQL abbreviation typo and pushed space - upload/system/library/db.php file by @TheCartpenter in #11619
  • Update free.php by @osworx in #11625
  • fix: upgrade dirname failure fix by @v5mvidal in #11605
  • add text for guest checkout success message by @iamsyh in #11613
  • Use seperate success message for guest checkout by @iamsyh in #11614
  • build yml file by @KennedyFVB in #11469
  • Fixed sentence - catalog/language/en-gb/checkout/register.php file by @TheCartpenter in #11628
  • Replaced account/subscription model as lowercase - catalog/controller/account/subscription.php file by @TheCartpenter in #11627
  • Removed commented out $data['balance'] - admin/controller/sale/subscription.php file by @TheCartpenter in #11584
  • Update customer.php by @PhamToan in #11636
  • fix: add slash ("/") at the end of the directory when generating autoload by @valdeirpsr in #11635
  • Replaced | with . on address list URL - catalog/view/template/account/address.twig file by @TheCartpenter in #11642
  • Replaced | with . in URL - catalog/view/template/product/product.twig file by @TheCartpenter in #11643
  • fix: Correctly add subscriptions report by @v5mvidal in #11640
  • Replace ; with , by @anytizer in #11661
  • Update FontAwesome 6.2.0 & jQuery 3.6.1 by @stalker780 in #11653
  • Update order.php by @PhamToan in #11666
  • Update order_info.twig by @sabeti05 in #11655
  • Removed spaced on int cast - extension/opencart/admin/model/report/customer_subscription.php file by @TheCartpenter in #11647
  • Update Bootstrap 5.2.1 by @stalker780 in #11671
  • Update custom_field.php by @nexadomain in #11672
  • Fixed loading button if more than one request by @padaliyajay in #11674
  • Bootstrap minor fixes by @stalker780 in #11677
  • Improved sentence - system/library/template/twig.php file by @TheCartpenter in #11710
  • Improved can not with cannot - admin/controller/common/security.php file by @TheCartpenter in #11681
  • Added comment text on magic methods - system/library/cart/weight.php file by @TheCartpenter in #11724
  • Replaced can not with cannot - index.php file by @TheCartpenter in #11693
  • Replaced can not with cannot - admin/controller/common/column_left.php file by @TheCartpenter in #11682
  • Added intend on comment text - system/library/url.php file by @TheCartpenter in #11749
  • Replaced can not with cannot - admin/controller/tool/upload.php file by @TheCartpenter in #11683
  • Replaced can not with cannot - admin/index.php file by @TheCartpenter in #11684
  • Replaced can not with cannot - admin/language/en-gb/common/filemanager.php file by @TheCartpenter in #11685
  • Replaced can not with cannot - admin/language/en-gb/common/security.php file by @TheCartpenter in #11686
  • Replaced can not with cannot - admin/language/en-gb/setting/store.php file by @TheCartpenter in #11687
  • Replacd can not with cannot - admin/language/en-gb/user/user.php file by @TheCartpenter in #11688
  • Replaced can not with cannot - catalog/controller/tool/upload.php file by @TheCartpenter in #11689
  • Replaced can not with cannot - catalog/language/en-gb/api/sale/cart.php file by @TheCartpenter in #11690
  • Replaced can not with cannot - catalog/language/en-gb/checkout/register.php file by @TheCartpenter in #11691
  • Improved can not with cannot - catalog/model/checkout/cart.php file by @TheCartpenter in #11692
  • Various sentence corrections - system/framework.php file by @TheCartpenter in #11694
  • Replaced then with comma - admin/controller/catalog/product.php file by @TheCartpenter in #11695
  • Sentence correction. Methods unfinished - admin/controller/mail/subscription.php file by @TheCartpenter in #11696
  • Improved sentences - admin/controller/startup/language.php file by @TheCartpenter in #11697
  • Aligned equal alignments - admin/language/en-gb/catalog/product.php file by @TheCartpenter in #11698
  • Improved sentence - admin/controller/user/user.php file by @TheCartpenter in #11699
  • Improved sentence - admin/language/en-gb/mail/voucher.php file by @TheCartpenter in #11700
  • Improved sentence - admin/language/en-gb/marketplace/marketplace.php file by @TheCartpenter in #11701
  • Improved sentence - admin/model/catalog/product.php file by @TheCartpenter in #11702
  • Improved sentence - admin/model/localisation/language.php file by @TheCartpenter in #11703
  • Improved sentence - catalog/controller/event/activity.php file by @TheCartpenter in #11704
  • Improved sentence - catalog/controller/mail/order.php file by @TheCartpenter in #11705
  • Improved sentence - catalog/controller/product/compare.php file by @TheCartpenter in #11706
  • Improved sentence - catalog/controller/startup/language.php file by @TheCartpenter in #11707
  • Improved sentence - catalog/language/en-gb/mail/gdpr.php file by @TheCartpenter in #11708
  • Added space after 'then' - catalog/language/en-gb/product/product.php file by @TheCartpenter in #11709
  • Added note for __call magic method in proxy engine - system/engine/proxy.php file by @TheCartpenter in #11712
  • Added magic method comments - system/engine/controller.php file by @TheCartpenter in #11713
  • Added return void in set comments - system/engine/registry.php file by @TheCartpenter in #11714
  • Added magic method comment for the get method - system/engine/model.php file by @TheCartpenter in #11715
  • Added intend of 2 spaces for $registry object by @TheCartpenter in #11716
  • Added comment text on each magic methods - system/library/cache/apc.php file by @TheCartpenter in #11717
  • Added comment text on magic methods - system/library/cache/file.php file by @TheCartpenter in #11718
  • Added comment text on magic methods - system/library/cache/memcached.php file by @TheCartpenter in #11719
  • Added comment text on magic methods - system/library/cache/mem.php file by @TheCartpenter in #11720
  • Added comment text on magic methods - system/library/cache/redis.php file by @TheCartpenter in #11721
  • Added comment text on magic methods - system/engine/autoloader.php file by @TheCartpenter in #11723
  • Added comment text on magic methods - system/library/db/mysqli.php file

Read more: https://github.com/opencart/opencart/releases

Live Demo provides demonstration instances of OpenCart for evaluation purposes. Live Demo instances reset frequently and are configured without plugins or themes.

4.1.0.3

Front-end View

3.0.3.9

Front-end View

Back-end View
Showcase highlights websites powered by OpenCart to demonstrate the range of capabilities provided by the application.
Since 2004, Installatron has pioneered web application management solutions trusted by businesses and website owners worldwide.
Installatron Plugin Installatron Server Installatron Remote
Resources Developers
Company Support My Account
© 2025 Installatron LLC