Configure Customer ID

Open Stores > Configuration > MageB2B > Customer ID > General settings. Set the configuration scope deliberately: numbering is resolved from the default store view of the customer's website.

Customer ID settings in Magento Admin

For a single website that wants numbers such as B2B-01000:

Setting Value
Login with Customer ID possible Yes, if customers should use the number to sign in
Auto increment for customer ID Yes
Auto template for customer ID B2B-%05d
Apply template also to already existing IDs No
Next number range 1000-9999
ID range is global No for one website; review carefully for several websites
Disallowed characters Leave empty unless your integration requires a restricted character set
Log Customer IDs while saving No; enable temporarily when investigating duplicates
Display Customer ID on customer dashboard Yes if customers need to quote it to your team

Create a staging customer after saving and confirm the resulting ID before importing or editing production accounts.

Setting reference

Login with Customer ID possible

When enabled, a storefront username without @ is treated as a possible customer ID. Email login remains available and Magento still validates the normal customer password.

Auto increment for customer ID

When enabled, a new customer without a number receives the next free formatted ID. When disabled, Magento leaves the field empty unless an administrator or integration supplies a value.

Auto template for customer ID

The template must contain one integer placeholder such as %d, %04d or %06d. Prefixes and suffixes may be literal text. See Template formatting.

Apply template also to already existing IDs

When enabled, the Admin customer form attempts to extract a number from an existing value and presents it with the current template. For example, 42 can appear as B2B-0042. Values without a usable numeric part remain unchanged.

Treat this as a migration aid, not a bulk conversion tool. Test representative IDs first and check downstream systems before saving changed customers.

Next number range

Use 1000-2500 to restrict automatic allocation to that inclusive range. Magento searches for the first free number in the configured scope. When the range is full, the customer save shows a warning and no new number is assigned.

In non-range mode, the live next number is held as internal increment state per website's default store code. Do not assume that changing a single number in this field resets an established counter. If a live sequence must be moved, verify the current state in staging and contact support instead of editing database records directly.

ID range is global

This setting affects the search for automatically generated IDs. When disabled, another website may reuse the same generated value. When enabled, allocation checks other websites as well.

Manual duplicate validation remains website-scoped. If every website must share one business-wide namespace, enforce the same policy in imports and external integrations too.

Disallowed characters

Enter the individual characters that must not appear. A value such as % $ blocks the percent sign, spaces and the dollar sign. The field is not a regular expression. If an edited value contains a blocked character, Magento keeps the previous customer ID and shows a warning.

Log Customer IDs while saving

Duplicate IDs are always rejected within the current website. This switch only controls whether the blocked attempt is also written as a warning to Magento's standard log, normally var/log/system.log.

Display Customer ID on customer dashboard

Adds the value to the signed-in customer's account dashboard. It does not automatically add the number to every account page, invoice PDF or email template.

Customer ID on the customer account dashboard

Safe rollout checklist

  1. Export or otherwise record existing customer numbers.
  2. Decide whether numbers may repeat across websites.
  3. Test the template and range with new staging customers.
  4. Verify manual edits, storefront login and an order placed by a registered customer.
  5. Confirm that ERP, CRM and email templates read the correct field names.

See Range management for multi-website examples.