Skip to content

26.1.0

Latest

Choose a tag to compare

@fballiano fballiano released this 14 Jan 16:32
· 31 commits to main since this release
6bf64ef

🎉🎉 Welcome to Maho 26.1.0 "Triple Heart" 🎉🎉

2025 was an outstanding year for Maho. We removed PrototypeJS, jQuery, and all legacy Zend Framework components, replacing them with modern alternatives: Doctrine DBAL for database operations, Symfony for caching and sessions, Monolog for logging, and TipTap as our WYSIWYG editor. We also introduced passkeys authentication, a self-hosted GDPR-compliant captcha, customer segmentation, a blog module, dynamic categories, and official Docker images.

Now we're kicking off 2026 with yet another monumental milestone: multi-database support. For the first time ever, Maho can run on PostgreSQL and SQLite alongside MySQL!

But that's just the beginning. This release also brings passwordless authentication, a complete gift card module, automated product linking rules, dozens of frontend improvements, and full PHP 8.5 compatibility. We've also upgraded to Symfony 7.4 and Emogrifier 8.

26.1.0 is our most feature-rich release yet.

Creating Maho is a massive effort that requires all the help possible, please join our sponsorship program.
It will make all the difference in the world!
become a sponsor

Maho rocks! 🚀
https://mahocommerce.com
https://demo.mahocommerce.com


🚀 New features and major improvements

Multi-Database Support

This is the big one. Thanks to our migration to Doctrine DBAL 4.4, Maho now officially supports three database engines: MySQL, PostgreSQL, and SQLite.

PostgreSQL brings enterprise-grade capabilities for high-traffic stores, while SQLite enables lightweight deployments perfect for development, testing, or small shops. In fact, our demo store now runs on SQLite and performance is stellar, with reindex times almost 50% faster than MySQL!

Install with your preferred engine:

./maho install --db_engine mysql   # Default
./maho install --db_engine pgsql   # PostgreSQL
./maho install --db_engine sqlite  # SQLite

Magic Link (Passwordless Login)

Passwords are so 2010. Maho now supports passwordless authentication via secure email links.

Configure two modes:

  • Hybrid Mode: Traditional passwords plus optional magic link
  • Passwordless Mode: Email-only login/registration with password fields completely hidden

Security features include cryptographically secure 32-character tokens, configurable expiration (default 10 minutes), rate limiting (3 requests/email/hour, 10 requests/IP/hour), and silent failure for non-existent accounts to prevent email enumeration. Zero database changes required. Read the full documentation.

Gift Card Module

A complete gift card system is now built into Maho, contributed by @trabulium!

Features include:

  • Create gift card products with fixed or custom amounts
  • Apply gift cards at checkout with partial payment support
  • Automatic balance tracking with transaction history
  • PDF export with QR codes and barcodes (using BaconQrCode and Picqer libraries—no external APIs)
  • Email notifications for recipients
  • Refund support that credits balances back to cards

Gift cards are a proven revenue driver and customer acquisition tool. Now they're native to Maho. Read the full documentation.

CatalogLinkRule: Automated Product Relationships

Stop manually linking related products, upsells, and cross-sells. The new Maho_CatalogLinkRule module automates product relationships through condition-based rules. Manage your rules in Catalog > Product Relationship Rules.

How it works:

  • Define source conditions (e.g., "products in Electronics category over $100")
  • Set target conditions for linked products
  • Configure sort order (random, price, alphabetical, newest)
  • Set maximum link limits and date ranges for seasonal promotions

Rules process via daily cron (3 AM by default) in batches of 100 products. A powerful SourceMatch condition lets you dynamically match target attributes against source attributes.

USPS REST API Migration

USPS is retiring their legacy XML API, so we've migrated to the modern REST API with OAuth 2.0.

New capabilities:

  • Shipping label generation (previously unavailable!)
  • Enhanced tracking with detailed event history
  • ~90% fewer API requests: single call retrieves all rates vs. 10+ calls before

⚠️ Breaking Change: Merchants must obtain new OAuth credentials from developer.usps.com and configure Client ID, Client Secret, and API environment in admin.

Enhanced Admin Dashboard Analytics

Third-party analytics platforms come with growing legal complexity: GDPR compliance, cross-border data transfer restrictions, cookie consent requirements, and privacy regulations that vary by country. Our enhanced dashboard gives you powerful insights while keeping all data on your own server. No cookie banners, no compliance headaches, no data leaving your infrastructure.

The admin dashboard now includes real-time visitor statistics and new visualization tabs:

  • Visitors chart: 30-day trend visualization
  • Devices & Browsers: Device breakdown with browser icons
  • Engagement: Conversion rates and visitor categorization
  • Entry & Exit Pages: Top landing and exit page analysis
  • Traffic Sources: Referrer domain breakdown
  • Languages: Visitor preferences with flags

Major, but not headline


TipTap WYSIWYG: Building towards a page builder

We're continuing to enhance TipTap, laying the groundwork for a full-fledged page builder. This release adds powerful new editing capabilities:


Important, but not major


New CLI commands


Less important changes and fixes


Code quality & modernization


Security improvements


Dependencies & infrastructure


New Contributors

Welcome to the Maho community! 🎉