Manage customer ID ranges

Set Next number range to two positive numbers separated by a hyphen, for example 1000-2499. The range is inclusive. When Magento creates a customer without an ID, the extension scans from the lower bound and assigns the first free formatted number.

One website

A single B2B website might use:

Template: B2B-%05d
Range:    1000-9999

The first free number becomes B2B-01000, followed by B2B-01001 and so on. A gap left by a removed or renumbered customer can be reused because range mode searches for the first free value.

Several websites

Choose the configuration scope for each website and set its template and range. For example:

Website Template Range
Industrial sales IND-%05d 1000-4999
Workplace supplies WRK-%05d 5000-8999

With ID range is global set to No, automatic allocation checks customers from the current website. Other websites can therefore reuse the same formatted value.

With it set to Yes, automatic allocation also considers values assigned on other websites. This is useful when several websites feed one ERP namespace, but it does not turn manual edits into globally validated values. Imports and integrations must follow the same policy.

Ranges are not assigned per customer group or per store view.

Range exhaustion

When every number is used, the Admin save shows Could not find a free ID in range ... and the new customer remains without an automatically assigned number. The extension does not send an exhaustion email or create a separate monitoring alert.

Plan enough room, review range consumption periodically and extend the range before it fills. Test a range change in staging, especially when prefixes or website scope also change.

Range versus continuing sequence

Range mode repeatedly searches the configured interval. Without a hyphenated range, the extension uses internal increment state and skips collisions. Saving a manual ID whose numeric part is at or above the current counter advances the counter beyond that number. The live counter is not a customer-facing configuration value, so avoid database edits intended to force the next number.