Troubleshoot Customer ID
A new customer has no Customer ID
Confirm that Auto increment for customer ID is enabled in the scope resolved for the customer's website. Then check whether the configured range is full and whether the template contains a valid integer placeholder.
For a full range, Magento shows Could not find a free ID in range ... during the save. Extend the interval before creating more accounts.
Magento rejects the template
Use a template containing %d or a padded variant such as %05d. Values such as {id}, {year} and plain text without an integer placeholder are invalid.
Editing the next number does not move the sequence
In non-range mode, the active counter is held in internal increment state. The configuration value is not a reliable live reset control after installation. Do not edit Magento flag tables directly. Reproduce the desired sequence change in staging and contact support for a controlled adjustment.
A manual ID is rejected as a duplicate
Another customer already has that value — anywhere when ID range is global is enabled, otherwise within the same website. Search Customers > All Customers using the Customer ID column. Duplicate validation is always active; the logging option only adds a diagnostic warning to the standard Magento log.
An edited ID reverts to its previous value
The proposed value contains a character listed under Disallowed characters. That setting is a literal list of individual characters, not a regular expression. Remove the character from the ID or revise the policy.
The save reports "Invalid characters in customer ID"
The built-in validation also rejects values longer than 255 characters or containing script-style markup such as <script or javascript: — independently of the Disallowed characters list. This applies to manual edits and integration writes alike.
Auto-allocation dies after many retries
The save fails with Unable to generate unique customer ID after N attempts. In non-range mode the generator retries colliding candidates up to a hidden limit of 1000 attempts (customer_id/security/max_recursion_attempts, no Admin field). Reaching it means the sequence space is nearly exhausted — widen the template (more digits) or configure a number range rather than raising the limit.
Customer ID login fails
Check all of the following:
- Login with Customer ID possible is enabled in the current store scope.
- The customer belongs to the current website.
- The entered value matches the stored Customer ID.
- The customer password is valid and the account is not locked.
- A custom login theme or checkout popup has been tested, including AJAX login where applicable.
Try the email address with the same password. If email works but Customer ID does not, compare the stored customer_id, configured template and current website.
The ID is missing from an order
Guest orders do not normally receive a Customer ID. For a registered-customer order, confirm the customer already had a value when the order was created. Historical orders are not backfilled when the account changes later.
The ID is missing from an email or PDF
Dashboard display does not change every document. Order email rendering receives mageb2b_customer_id, but a customized template must use it. Invoice PDFs are not modified by this extension.
API data uses an unexpected field name
Customer data uses customer_id as a custom attribute. Order data uses the extension attribute customerid. There is no built-in customer_number, customer_id_number or module-specific GraphQL field.