Magento 2 ExtensionCustomer ID

Unique customer IDs for B2B and B2C stores: assign automatically, migrate safely, and connect seamlessly with ERP/CRM.

With the Magento 2 Customer ID module, you establish a clear and reliable customer numbering logic. Instead of technical default IDs, you work with unique, meaningful customer IDs that fit your business processes.

Automatic assignment with rules: New customers automatically receive the next available number. Formats like KND-%04d can be controlled flexibly using prefixes, suffixes, and counters.

Less effort in day-to-day operations: Your sales, customer service, and accounting teams work with familiar customer IDs instead of inconsistent references. This reduces follow-up questions and speeds up processes.

Stable ERP and CRM connectivity: Customer IDs remain consistent across systems and can be used reliably in integrations, for example for order synchronization and master data maintenance.

Better data quality protection: Duplicate checks prevent repeated assignments. Number ranges can be separated globally or per website, keeping even multi-tenant setups clean.

Clean migration of existing records: Existing customer IDs from legacy systems can be imported. This enables a smooth transition without process disruption.

The result: consistent master data, fewer manual corrections, and a Magento store that scales across B2B and B2C scenarios.

Automatically assign customer IDs

New customers automatically receive the next available customer ID. This reduces manual work and keeps master data consistent.

Control ID formats flexibly

Define customer IDs with prefixes, suffixes, and leading zeros to match your internal rules and processes.

Enable login with customer ID

B2B customers can sign in with either customer ID or email. This simplifies access and reduces support effort.

Manage number ranges per website

Use separate number ranges per website or globally to avoid overlaps in multi-store environments.

Prevent duplicates and invalid entries

Before saving, the module validates uniqueness and format of the customer ID to protect data quality and downstream systems.

Make customer IDs usable in integrations

Customer IDs are available as stable references for ERP and CRM processes, enabling clean system integrations.

  • Current Version1.1.7
  • Compatible with Magento 2.4+
  • Compatible with PHP 8.2+

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

customer-id

Version 1.1.7 - 2025-08-08

Added
  • Added PHP 8.4 compatibility

Version 1.1.6 - 2025-07-23

Added
  • Added suggest entry to composer.json referencing the Customer ID Sample Data package for easier onboarding

Version 1.1.5 - 2025-07-06

Fixed
  • Fixed wrong DataProvider path

Version 1.1.4 - 2025-07-06

Added
  • Added Unit Tests
  • Added mageb2b/customer-id-sample-data as a suggested package for demo data

Version 1.1.3 - 2025-05-21

Fixed
  • Fixed showing deprecated error instead of Magento 2 error when no email address was used for the login email field

Version 1.1.2 - 2025-05-19

Changed
  • Changed Plugin Path
  • Updated System Info Class

Version 1.1.1 - 2024-10-04

Changed
  • Updated System class

Version 1.1.0 - 2024-08-31

Changed
  • Removed unused class rewrite IndexerHandlerAttributeHandler
  • Improved Customer ID assignment logic

Version 1.0.11 - 2024-08-13

Changed
  • Show last update date from CHANGELOG.md inside the system configuration of the extension

Version 1.0.10 - 2024-07-21

Changed
  • updated README.md

Version 1.0.9 - 2024-03-28

Changed
  • php Docs

Version 1.0.8 - 2023-08-11

Fixed
  • Fixed dynamic property issue, removed deprecated json serialize

Version 1.0.7 - 2023-06-11

Changed
  • Next id increment is now stored in core flag

Version 1.0.6 - 2023-06-06

Fixed
  • Fixed next increment config save

Version 1.0.5 - 2022-10-14

Added
  • Added uninstall routine

Version 1.0.4 - 2022-10-13

Added
  • Added new feature "Display Customer ID on customer dashboard", which once enabled, will display the external Customer ID on the customer's dashboard

Version 1.0.3 - 2022-10-12

Added
    Changed
    • Changed PHP Syntax
    Fixed

      Version 1.0.2 - 2022-07-24

      Added
        Changed
          Fixed
          • Compatibility with Magento 2.4.4

          Version 1.0.1 - 2020-08-22

          Added
          • Added customer ID attribute in SalesOrderRepository API response inside the extension attributes section
          Changed
            Fixed
            • Fixed composer.json structure
            Module-Specific Questions
            How do I enable automatic customer ID assignment?

            Under Stores >Configuration > MageB2B > Customer ID, enable auto-increment. Then define your number format (for example KND-%04d) and, if needed, a number range.

            How do I define the ID format?

            Use printf patterns: %d for sequential numbers, %04d for leading zeros. Prefixes and suffixes are possible, for example KND-%04d or %04d-2026.

            Can customers sign in with their customer ID?

            Yes. Enable login with customer ID. Customers can then sign in using either email address or customer ID plus password.

            How does the module prevent duplicate customer IDs?

            Before each assignment, uniqueness is checked. If there is a conflict, duplicate control logs the event and assigns the next free number.

            How do I import existing customer IDs?

            Temporarily disable auto-increment, import values via the customer_id column, and then enable automatic assignment again.

            What happens if a number range is exhausted?

            Extend the range or remove the limit. The module logs these cases so you can react early.

            Can I use different number formats per website?

            Yes. Switch to website scope and set an individual format there. For independent sequences, the global number range should be disabled.

            Where is the customer ID visible?

            Depending on configuration, it appears in customer management in admin, in orders, in the customer account, and in emails or documents.

            Is the customer ID available through integrations?

            Yes. The customer ID is available via REST and SOAP. With suitable configuration, it can also be exposed in GraphQL as a custom attribute.

            How do I migrate an existing numbering scheme without data loss?

            Export existing IDs, import them as customer_id, and then configure the desired format for new customers. This keeps existing records unchanged while new assignments run automatically.

            General Questions
            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.

            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.

            Customer ID

            ×

            Ideal for these industries & use cases

            Legacy system migration

            Import existing customer IDs from ERP, CRM, or legacy systems without process breaks. This keeps daily operations stable during Magento migration.

            Simplified Login

            Customers sign in with their familiar customer ID instead of long email addresses. This reduces support requests and improves usability.

            ERP/SAP integration

            Consistent customer IDs across Magento, SAP, Microsoft Dynamics, and other systems. The customer ID can be used reliably in integrations and interfaces.

            Number ranges per website

            Define separate number ranges per website, for example DE: 1000-1999 and AT: 2000-2999. This prevents overlaps in multi-store environments.

            Auditability and compliance

            Traceable assignment with duplicate control supports internal and regulatory audit requirements, for example under GoBD and SOX.

            Flexible number formats

            Create formats such as K-0001, CID-10000, or DE-2024-0001 using prefixes, suffixes, and counters. This maps your existing numbering model precisely.

            Try it without risk

            Request a personal demo instance and evaluate the module directly in backend and frontend under real conditions — without local installation.

            For developers

            Practical Magento 2 guides, technical developer documentation, and API references (REST, SOAP, GraphQL) for installation, configuration, and troubleshooting.

            Go to Knowledge Base