Mage2Plenty v3.1 - Customer Group Mapping, Order Export Fixes & Rebrand
We're pleased to announce Mage2Plenty v3.1, a focused release that delivers customer group mapping for order export, critical order export pagination fixes, improved email notifications, and a company-wide rebrand to Byte8 Ltd.
What's New in v3.1
This release addresses real-world issues reported by clients and introduces long-awaited customer group mapping support during order export. It also includes the official rebrand from Soft Commerce to Byte8 Ltd across all modules.
Customer Group Mapping in Order Export
The Problem
Previously, when orders were exported to PlentyONE, the customer contact was always assigned to class ID 1 regardless of their Magento customer group. This meant that customers in groups like "Hersteller & Verarbeiter" or "Wholesale" would appear with the wrong classification in PlentyONE.
The Fix
The contact generator now resolves the PlentyONE class ID using the customer group mapping configured in your order export profile:
Class ID Resolution:
1. Group Mapping - Magento group → Plenty class (per-mapping)
2. Default Group - Configured fallback class ID
3. Fallback - Class ID 1 (only if nothing configured)
How to Configure:
In your order export profile under Customer Configuration, use the Customer Group Mapping dynamic rows to map each Magento customer group to the corresponding PlentyONE customer class.
The change detection (isAsOriginal) has also been updated to include class ID comparison, ensuring that group changes on existing customers are properly synced on subsequent exports.
Order Export Pagination Fix
Infinite Loop Bug Resolved
A critical bug was fixed where the order export could enter an infinite loop when processing large batches. The root cause was Magento's SearchCriteria caching - reusing the same object across pages caused setCurrentPage() to be silently ignored.
The fix: A fresh SearchCriteria instance is now created for each page, ensuring Magento's repository always returns the correct page of results.
Before (broken):
Page 1 → 20 orders ✓
Page 2 → same 20 orders (cached) ✗
Page 3 → same 20 orders (infinite loop) ✗
After (fixed):
Page 1 → 20 orders ✓
Page 2 → next 20 orders ✓
Page 3 → next 20 orders ✓
Additional Order Export Improvements
- Guest order name fallback - Orders with missing customer names are now handled gracefully
- Non-retryable error handling - Orders that fail with non-retryable errors are marked as SKIPPED in the database, preventing infinite retry loops
Improved Email Notifications
Smarter Batch Sending
The notification system has been reworked to prevent duplicate emails and improve delivery timing:
- Flag-based tracking - Uses a persistent flag to track when the last batch was sent, replacing the unreliable cutoff time filter
- Interval-based throttling - Respects the configured interval between batches
- Context enrichment - Email alerts now include the current profile and process context, making it easier to identify which profile triggered the notification
Notification Details in Batch Emails
Batch summary emails now include individual notification details, giving you a complete picture of what happened without needing to check the Magento admin.
Post-Processor Guard
The product export engine now properly guards against post-processors running when a type processor fails or is skipped. This prevents cascading errors and ensures cleaner error reporting.
SKU Resolution Enhancement
A new plenty_variation_entity lookup has been added for SKU to variation ID resolution, providing a more reliable mapping between Magento SKUs and PlentyONE variation IDs.
Rebrand to Byte8 Ltd
All modules have been updated to reflect the company rebrand from Soft Commerce Ltd to Byte8 Ltd. This includes:
- Copyright headers updated across all source files
- License files updated with new company details and URLs
- Guide URLs updated from
softcommerce.iotobyte8.io - Admin rebrand notice added to inform users of the change
Upgrade Guide
Prerequisites
- Magento 2.4.6+ (2.4.8 recommended)
- PHP 8.1+ (8.3 or 8.4 recommended)
- Mage2Plenty v3.0.x
Quick Upgrade
# Update via Composer
composer require softcommerce/mage2plenty-os:^3.1
# Run Magento updates
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento cache:flush
Post-Upgrade Steps
- Configure Customer Group Mapping - In your order export profile, navigate to Customer Configuration and set up the Magento group to PlentyONE class mapping.
- Review Notification Settings - Check your notification interval settings as the batching logic has changed.
- Re-export affected orders - If customers were previously exported with the wrong class ID, re-export those orders to update the contact data in PlentyONE.
Updated Modules
| Module | Version | Key Changes |
|---|---|---|
| module-core | 2.4.0 | Rebrand notice, copyright updates |
| module-plenty-customer-profile | 2.1.2 | Customer group mapping for contact export |
| module-plenty-item | 2.4.0 | SKU to variation ID lookup enhancement |
| module-plenty-item-profile | 3.0.2 | Post-processor guard on type failure |
| module-plenty-order-profile | 2.4.1 | Pagination fix, guest name fallback, skip non-retryable |
| module-plenty-profile | 2.1.2 | URL rebrand to byte8.io |
| module-profile-notification | 2.1.0 | Batch tracking, context enrichment, detail emails |
| + 14 more modules | various | Copyright headers updated to Byte8 Ltd |
Resources
Questions about the upgrade? Reach out to us at support@byte8.io.
