Customer ID FAQ
Is the Customer ID Magento's internal customer ID?
No. customer_id is a separate business identifier stored as a customer attribute. Magento still keeps its own numeric entity ID internally.
Can Magento assign the number automatically?
Yes. It can use a continuing sequence or the first free number in a configured range.
Which template variables are supported?
Use an integer placeholder such as %d or %05d, with optional literal text around it. Dynamic variables such as year, month, website or customer group are not supported.
Can different customer groups have different ranges?
No. Configuration can differ by Magento scope, but the extension does not assign ranges by customer group.
Can two websites use the same number?
Yes, when global range checking is disabled. Enable it if automatic allocation must avoid numbers used by other websites. Manual duplicate validation remains website-scoped, so integrations must enforce any stricter company-wide rule.
What happens when a range is full?
Magento shows a warning during the customer save and leaves the account without an automatically assigned number. The extension does not send a separate exhaustion notification.
Can customers still sign in with email?
Yes. Enabling Customer ID login adds an alternative username; it does not disable email login or password checks.
Do prefixed IDs work for login?
Yes. A stored value such as B2B-01042 can be used. Give customers the complete value to avoid ambiguous lookups.
Is uniqueness optional?
No. A duplicate customer ID is rejected within the current website. The logging switch only controls whether the blocked attempt is also written to the Magento log.
Does the extension put the ID on orders?
Yes, for orders tied to a customer account that already has an ID. The order keeps its copied value even if the account changes later.
Does it change order or invoice numbers?
No. Customer ID is independent of Magento order, invoice and credit memo sequences.
Is there a dedicated REST or GraphQL API?
No. Magento's customer service contract can expose customer_id as a custom attribute, and orders expose customerid as an extension attribute. The package declares no GraphQL field of its own.
Does dashboard display add the number to emails and PDFs?
No. It only controls the customer account dashboard. Order emails can use the provided order variable after template customization; PDFs are not changed by the extension.
Should I install the sample-data package in production?
No. It is for disposable development and demo environments only.