I think it would be better to link the users identities to SMTP accounts as not every SMTP supports sending mails via any identity. As I understood the settings it is not possible to configure sending with identity foo@bar.com via the SMTP mail.bar.com or something like that and I sometimes can't send emails because the SMTP rejects it because of a wrong identity (I think). Reproducible: Sometimes
See kmail->configure->identity
Oops ok sorry. But it is "Settings" > "Configure KMail" > "Identities" > "Modify" > "Advanced" > "Outgoing Account" - which might be a bit too hidden...
... and it should be a required field. (sorry for the second comment)