Le problème ici est que vous devez appeler la méthode save pour les deux objets avant d'ajouter le modèle au produit :
template.save()
plan.save()
plan.templates.add(template)
Django ne peut pas l'ajouter si aucun de ces objets n'a d'identifiant (plan et template )