Serializes the full CustomerInfo into a params map suitable for templates and analytics.
Returns an empty map when isPlaceholder is true — callers should not send partial data before CustomerInfo has loaded.