Dear All,
To check my understanding… where an app will feature Users who each have lists of Contacts who will then become clients/customers i.e. Users, is it sensible to have a Contact be ‘converted’ to a User when they reach a certain business milestone i.e. become customers and start using the app?
In my case (Real Estate Agent) I’ll have several Contacts that will never become clients and never interact with my app, but then several that will and each type of Client/userType will need access to different pages and functionality. Would it make more sense to have all my customer onboarding/client management pages and workflows on the User rather than the Contact?
As much as I’d like all my customers/clients to use my app, I know that many won’t bother to sign up, so I’d need to manually ‘upgrade’ them when they become more than just a mere Contact. Am I seeing all this right?
Hi there, @martin10… there is no shortage of ways you can go here, but if it was me, I wouldn’t put everything on the User
data type. I would have a Contact
data type, and I would use that data type to store everything related to a contact (including and especially their email address). Then, as users sign up for your app, I would check to see if the email address of the user who is signing up is associated with a contact, and if it is, I would create a link between the user’s account and the associated thing in the Contact
data type. I would probably make that link via a field on the User
data type so I could easily find out at all times which users are contacts and which ones aren’t by checking that field to see whether or not it is empty.
I’m not sure exactly what you mean by having to manually “upgrade” contacts if/when they become users, but if I do understand it correctly, then what I have proposed above should eliminate the need for any manual effort there.
Anyway, I hope what I have written makes sense, and I hope it helps, even if it’s just food for thought.
Best…
Mike
1 Like
Thanks for that advice Mike - which is kinda how I’ve gone thus far. But I’m at the dev stage where my Contacts become clients and they need to fill out application forms, upload files, generally manage their accounts in the app and that requires permissions to ensure security. So it seems logical that is done by User.
I get what you mean by keeping the User Thing light weight and linking the two. I’ve actually linked both ways, so on the User a ‘contactRecord’ field type Contacts exists. So on the creation of either I’ll check for the existence of the other and make changes/create accordingly. No harm in that? Just don;'t want to run into gremlins down the line and wondered how most people managed these relationships.
Nope, no harm in that at all, and I almost suggested it in my response. It definitely sounds like you are headed down a good path… best of luck as you go!