Magento 2 Extension

Product-Customer Matrix Prices

Combine, prioritize, and schedule pricing rules based on product and customer attributes.

Current Version
2.2.0
Magento
2.4.6 - 2.4.9
PHP
8.2 - 8.5

If your environment differs from the listed requirements, we can check compatibility in advance. Please contact us via our contact form.

Features

What the module does.

  1. Matrix engine for product and customer logic

    Define price rules that are applied only when product and customer attributes match together.

  2. Targeted product-attribute matching

    Combine multiple product attributes per matrix to steer pricing precisely across assortments.

  3. Customer attributes as pricing trigger

    Use customer segments and a configurable customer attribute, including common fields like group, email, or name.

  4. AND/OR relation per matrix

    Decide whether all configured attributes must match or if partial matches are sufficient.

  5. Direct customer assignment for exceptions

    Complement segment logic with direct customer assignment for contract-specific conditions.

  6. Priority handling for rule conflicts

    Direct customer assignments win first; within the same assignment type, the matrix with higher priority is applied automatically.

  7. Quantity tiers inside matrix logic

    Define volume-based price levels and let the correct tier apply automatically as quantity grows.

  8. Validity windows for rules and assignments

    Control start and end dates for matrix rules and individual customer assignments.

  9. Website-scoped pricing control

    Manage matrix rules by website to separate pricing strategies across markets at website level.

  10. Matrix prices visible in My Prices

    Customers can review assigned matrix prices directly in their account before reordering.

  11. Price download for assigned customers

    Provide single-file or per-matrix downloads in customer account and control CSV format centrally when needed.

  12. Condition for cart price rules

    Use the condition customer has product-customer matrix to target campaigns and discounts.

Description

How it works.

Product-Customer Matrix Prices extends Magento 2 with flexible pricing logic for situations where standard pricing is not enough. Instead of maintaining many individual special prices, you define rules that apply only when both product and customer match the matrix.

Product and customer attributes in one rule: A matrix links both sides at the same time. This helps you map negotiated conditions for specific product sets and customer segments in a structured way.

Multiple attributes with AND/OR logic: Combine multiple product attributes per matrix and define whether all conditions must match or whether partial matches are enough. This supports both simple and advanced pricing structures without custom development.

Automatic segment matching plus direct customer assignment: Rules can be triggered by customer attributes and additionally assigned to specific customers. This combines scalable segment logic with individual contract pricing.

Priorities for overlapping rules: If multiple matrices match at the same time, direct customer assignments are evaluated first and priority is then applied. This keeps pricing behavior predictable even in large rule sets.

Quantity tiers to grow basket value: Build quantity-based tiers inside the same matrix logic. Customers automatically receive the correct price level as order quantity increases.

Time control for campaigns and contracts: Matrix rules and customer assignments can be managed with start and end dates. This enables planned campaigns, contract periods, and clean transitions without manual cutover work.

Transparency in customer account: Logged-in assigned customers can review their matrix prices in “My Prices” and download price lists when enabled. This reduces clarification loops and speeds up reordering.

Efficient admin operations: Matrix management keeps rules, attributes, and customer assignments in clear admin workflows. This helps sales and e-commerce teams maintain large pricing setups faster.

Strong for B2B, not limited to it: The module is highly effective for negotiated B2B pricing, but also works for B2C pricing strategies based on segments and conditions.

Screenshots

What it looks like.

Changelog

What has changed.

Product-Customer Matrix Prices

Version 2.2.0 - 2026-10-19

Added
  • Added automatic price cache invalidation when matrix rules, products, categories or customer assignments change
Fixed
  • Preserved customer assignments when editing matrices in the admin
  • Applied required admin permissions to customer assignments and delete buttons
  • Honored excluded matrices when removing customer assignments in the admin
  • Preserved selected values when editing product rules with multiple options
  • Allowed different rule operators for the same attribute value after upgrades
  • Allowed removing the last product rule from a matrix
  • Preserved matrix form input after rejected saves
  • Handled empty customer assignment rows correctly during matrix validation
  • Prevented customers from changing `procustmatrix_customer_group` through customer API writes

Version 2.1.9 - 2026-09-08

Changed
  • Replaced the module information block with the shared Extension Manager extension
  • Improved customer-specific matching across websites, customer groups, and assignment validity periods
  • Improved product-rule matching for combined conditions and lists of allowed or denied values
  • Improved CSV downloads with reliable filenames and configuration-aware availability
  • Improved compatibility with fresh installations and stores using custom database table prefixes
Fixed
  • Fixed admin matrix saves with duplicate or invalid product rules so failed saves no longer leave partially updated matrix data
  • Fixed matrix saves so explicitly clearing all product conditions removes them, while omitting the product-condition section leaves existing conditions unchanged
  • Fixed sales-rule matching for customer matrices without direct customer assignments

Version 2.1.8 - 2026-05-07

Changed
  • Improved admin matrix listing product attribute display by resolving category IDs to category names
Fixed
  • Fixed admin matrix save so removing all assigned customers persists correctly when no customer rows are posted back
  • Fixed Magento 2.4.4 admin matrix grid sorting when the configured matrix customer attribute is `group_id`
  • Fixed `All Websites` filtering in the admin matrix listing
  • Fixed admin matrix fulltext search to cover displayed group, website, price, customer, and product-attribute values
  • Fixed matrix customer-condition evaluation for logged-in customers and `group_id`-based guest matching
Pricesystem

Version 2.4.1 - 2026-10-19

Fixed
  • Restored Pricesystem cache cleaning on Magento versions before 2.4.9

Version 2.4.0 - 2026-10-19

Added
  • Added a customer group identifier alias source for configurable import and export columns
  • Added Breeze storefront compatibility
  • Updated native bundle customer prices and tier-price notices on cached product pages using combined bundle and selection quantities
Changed
  • Raised the minimum supported PHP version to 8.2
  • Improved price adjustment jobs, cache warmup and product attribute lookup performance
Fixed
  • Preserved customer and customer group form input after rejected saves
  • Calculated displayed savings using the configured tax, currency and rounding rules
  • Corrected zero-price handling and limited savings to the catalog value
  • Corrected configurable starting prices and customer tier-price updates
  • Corrected bundle prices and savings for selected options and quantities
  • Preserved applied price types and savings in cart and order details, including formula and bundle pricing
  • Displayed additional customer and group discounts correctly at checkout and in order details
  • Prevented stale or mixed prices when pricing data or customer, store or currency context changes
  • Preserved Magento cart price rules when Pricesystem catalog-rule pricing is disabled
  • Prevented scheduled price adjustments from being applied more than once
  • Preserved customer assignments, validity dates and product conditions when scheduling matrix price changes
  • Respected selected directions, modes and price-type filters in price adjustment jobs
  • Restored CSV downloads from price adjustment previews
  • Prevented separate price imports from interfering with one another
  • Rejected invalid and out-of-range localized dates
  • Kept product price widgets usable after failed or invalid asynchronous price reloads
  • Corrected customer-specific CLI pricing without a storefront login, including zero prices and fractional quantities
  • Kept all My Prices columns accessible on narrow storefront screens
  • Prevented anonymous price API requests from selecting another customer's pricing context
  • Prevented customers from changing `pricesystem_price` and `pricesystem_price_type` through customer API writes

Version 2.3.13 - 2026-05-13

Fixed
  • Fixed configurable product detail price updates after option selection when Pricesystem initializes the product price box asynchronously
Add-On: CSV Import / Export

Version 1.2.2 - 2026-10-19

Fixed
  • Refreshed cached matrix prices after CSV imports
  • Preserved existing matrix fields when update CSV cells are left blank
  • Rejected invalid dates in matrix and customer assignment imports
  • Limited import and delete operations to the current CSV import's validated data
  • Restored matrix CLI command compatibility with Magento 2.4.9

Version 1.2.1 - 2026-09-07

Changed
  • Changed sample data integration
Fixed
  • Fixed matrix imports to validate rule blocks and reject orphan, mixed, duplicate, valueless or unsupported relation rows before saving
  • Fixed customer assignment imports to enforce website ownership and reject ambiguous customer email addresses
  • Fixed Add/Update imports to preserve omitted conditions and customer assignments
  • Fixed matrix imports to roll back all changes from the import when a later matrix cannot be persisted
  • Fixed imports to support Magento empty-value markers and select/multiselect option values

Version 1.1.0 - 2026-01-16

Added
  • Added compatibility to pricesystem 2.3.0
Add-On: SOAP / REST API Interface

Version 1.0.4 - 2026-10-19

Changed
  • Required mageb2b/pricesystem 2.4.0 or newer

Version 1.0.3 - 2026-03-30

Fixed
  • Removed unused select2 composer requirement

Version 1.0.2 - 2025-07-07

Added
  • Added CHANGELOG.md
Add-On: GraphQL API

Version 2.0.1 - 2026-10-14

Fixed
  • Required matrix read permissions for GraphQL matrix, attribute, and customer queries

Version 2.0.0 - 2026-02-02

Added
  • Initial module version
Add-On: Hyvä Theme Compatibility

Version 1.0.3 - 2026-10-19

Fixed
  • Ensured Hyvä fallback support is installed and loaded before Pricesystem compatibility
  • Corrected fixed bundle customization totals by applying each selected option surcharge only once
  • Displayed product names and SKUs on the My Prices page
  • Fixed configurable customer price reloads and native tier rendering on Hyvä product pages
  • Updated product discount messages when native Hyvä quantity pricing changes
  • Applied customer and tier prices to native Hyvä dynamic bundle options and totals while keeping selections consistent with available products

Version 1.0.2 - 2026-10-13

Changed
  • Require mageb2b/pricesystem >=2.4.0
Fixed
  • Fixed dynamic pricing and discount displays when Hyvä's strict Content Security Policy mode is enabled
  • Fixed correctly calculated item prices remaining hidden in the Hyvä cart and limited price visibility handling to Pricesystem-managed price boxes
  • Fixed dynamic customer prices on Hyvä search result pages

Version 1.0.1 - 2026-06-16

Changed
  • Aligned Hyvä frontend price AJAX handling with pricesystem 2.4.0, including chunked list price requests, configurable list price updates, discount text rounding, and safer product detail fallback behavior
  • Added missing Hyvä compatibility handles for customer account navigation, cart discount text, configurable cart item editing, and the price AJAX render context
Fixed
  • Scoped all Hyvä compatibility layout handles with the `hyva_` prefix so the module no longer overrides Luma price system storefront pages when installed in mixed-theme shops
  • Added the missing `Hyva_CompatModuleFallback` module sequence used by the scoped compatibility handles
  • Added Hyva Tailwind 4 module CSS source registration while keeping Tailwind 3 source compatibility
  • Fixed module CSS so it no longer declares global Tailwind directives or applies the circular `hidden` utility
  • Fixed the Hyvä customer price overview so the special `All prices` option renders without calling regular price type metadata

FAQ

Common questions.

About the module

What is the biggest day-to-day benefit of this module?

Pricing agreements are maintained as central rules instead of many isolated special prices, which reduces manual effort and errors.

How does matrix pricing work in practice?

A price rule applies only when product attributes and customer attributes match together, giving you controlled and context-based pricing.

How granular can product criteria become?

You can combine multiple product attributes in one matrix and define very specific pricing logic for selected assortments.

Can I still handle individual customer contracts?

Yes. In addition to segment logic, specific customers can be assigned directly to a matrix for dedicated pricing agreements.

What happens if multiple rules match at once?

Direct customer assignments are evaluated first. If multiple rules of the same assignment type still match, higher priority resolves the result.

How are quantity discounts implemented?

Use quantity tiers inside matrix logic. As cart quantity increases, the matching tier is applied automatically.

Can I schedule matrix pricing by time?

Yes. Matrix rules and customer assignments can both use start and end dates for planned pricing windows.

Where can customers see their assigned matrix prices?

Assigned prices are visible in the My Prices section for logged-in customers.

Is this extension only relevant for B2B stores?

No. It is especially strong for B2B agreements, but equally useful for B2C segment-based pricing strategies.

How does it support campaign logic in Magento?

The cart-rule condition lets you target promotions specifically to customers covered by matrix pricing.

Purchase, license and support

How many Magento installations is the license valid for?

The license is valid for one Magento installation, including multi-website operation. In addition, the module may be installed on any number of development or staging servers. You can find further details in our license terms.

Is installation included in the price?

Installation and configuration are not included in the price. On request, we can support you with a smooth integration into your system.

How do I install a module?

Composer is PHP's package manager, and Magento 2 uses it to install modules and their dependencies. After purchase, the commands for your module are available under Licenses in your customer account. First add the private SoftwareSilo repository and your license token. Then install the listed package with composer require and run php bin/magento setup:upgrade and php bin/magento cache:clean.

What payment methods are available?

You can pay by credit card (Stripe) or bank transfer (prepayment). For credit card payments, the order is processed immediately and the access credentials are provided directly in a separate follow-up email.

What does the order process look like?

After credit card payment, you immediately receive access credentials to obtain the module via Composer. For bank transfer, access is granted once the invoice is paid.

I need a custom modification of the module. Is that possible?

Custom requests are no problem. We tailor our Magento 2 modules to your project and maintain a dedicated internal version so we always know exactly what runs on your system for support.

Can I install a demo version locally?

On each module detail page, you can request your own demo instance and test the module intensively for 7 days. However, we do not provide a local demo version.

Is the source code encrypted?

No, the source code of our modules is not encrypted. If you need a customization, feel free to send us a request. We will get back to you promptly with a non-binding quote.

What is the update policy and support?

You can add a support package to your order. It includes assistance as well as updates and upgrades related to the module. No continuous subscription is required.

I already have a license. How can I perform an update?

You can complete the license update here. If you have an active support package, you receive updates automatically via Composer. If your support package has expired, you can renew your license here or in your account.

I have another question — how can I contact you?

You can reach us anytime via Email.

$349.00

Use cases

Ideal for these industries & use cases

  • Wholesale Category Pricing

    Create matrix "Wholesale Electronics" matching customer group Wholesale + product category Electronics. All wholesale customers automatically receive special pricing on electronics without individual price entries.

  • Regional Brand Pricing

    Create matrices for regional brand pricing: "California Brand A" matching region California + brand Brand A. Different regions receive different pricing on same brands based on local market conditions.

  • VIP Product Line Access

    Create "VIP Premium Products" matrix matching VIP customer group + premium product category with high priority. VIP customers get exclusive pricing on premium lines that regular customers cannot access.

  • Contract SKU Pricing

    Create matrices for specific SKU patterns in customer contracts: "ACME Contract 2025" matching company ACME + SKU pattern "PRO-*". Contracted customers get special pricing on specific product SKUs only.

  • Seasonal Segment Pricing

    Create time-limited matrices for seasonal campaigns targeting specific segments: "Summer Sale - Wholesale Outdoor" matching Wholesale group + Outdoor category + valid June-August. Automatic activation/deactivation.

  • Multi-Dimensional Targeting

    Create complex matrices with AND/OR logic: "Enterprise West Coast Tech" matching (Group Enterprise AND Region California/Oregon/Washington) + (Category Tech OR Brand Microsoft/Dell). Multiple intersecting dimensions for precise pricing control.

Next steps

Try it first. Then buy.

  • Technical documentation

    Practical Magento 2 guides, developer documentation, and API references for installation, configuration, and troubleshooting.

    Go to Knowledge Base
  • Try before you buy

    Request a personal demo and test the module with realistic sample data in Magento Admin and the storefront. Take your time to see whether it fits your requirements and workflows.

  • Do you need a custom solution?

    Do your requirements go beyond the capabilities of our Magento 2 modules? We develop suitable Magento 2 modules and integrations for your business processes.

    Request now

Further reading

Guides for this module