для начала, я бы не переопределял модель пользователя, а просто расширил бы вот
так
получится что-то типа:
models.py
from django.contrib.auth.models import User
class Customer(models.Model):
user = models.OneToOneField(User)
shops = models.ManyToManyField(Shops)
ну, и чтоб уж совсем как для групп:
admin.py
class CustomerInline(admin.StackedInline):
model = Customer
fk_name = 'user'
can_delete = False
filter_horizontal = ('shops', )
class CustomerAdmin(UserAdmin):
inlines = (CustomerInline, )
admin.site.unregister(User)
admin.site.register(User, CustomerAdmin)