Developing for multiple clients - how do accounts work?

I have just pulled in a new client and a new project! Retool is making possible for some of my small business friends to develop custom solutions that they could never afford previously. I hope to get more. How does this work with multiple clients with multiple apps?

Can I develop apps in my own account and then share them out to the client accounts? Do the clients need to make an extra account just for me as their developer? Do they create their first account and give my account permissions to edit their apps?

What's the best practice here?

2 Likes

Hello dearest Brad! So there are two pieces to your question here: (1) sharing apps, and (2) account management. I'm going to answer them in reverse.

Account management

Currently, Retool doesn't have functionality for shared or master accounts. So you'll need to have a separate "account" for every Retool instance that you want to work on.

Logistically, since we only allow one account per email address (including if you're using SSO), the way to get around this is to add a + to your address. For example, we have a separate Retool instance for building templates called samples, and our logins are justin+samples@retool, alex+samples@retool, etc. So in short, yes, you'll need to maintain separate credentials for each instance (i.e. slightly different emails and passwords).

In my experience with the developer network so far, best practice is to have the client create a Retool instance (e.e. client.retool.com) and then add you as an editor or an admin, again with the email formatting from above. That way when the engagement is over, they can disable you as a user / manage their organization themselves.

Sharing apps

This is actually pretty easy in Retool – if you're developing apps in your personal account, you can export them as JSON and then import them into any other Retool instance.

![Screen Shot 2021-04-19 at 7.06.34 AM|350x500, 50%]
(upload://rUlmRNRV1JYH4K8QWrC1CUnOciU.png)

The only tricky thing here is data sources - you'll need to connect your Postgres/MongoDB/whatever to your client's Retool instance, and try and name it the same thing as in your personal one. Otherwise, you'll need to go through each app's queries and choose the appropriate resource from the dropdown.

Hope this helps!

Hello justin,
just wondering if you guys have plan for multi account in future or not

Hey @mpmohi!

We don't have concrete plans for it at the moment but it is on our radar, we can let you know here if and when it's included :slightly_smiling_face:

In the meantime, if you're looking to join multiple accounts with the same email, you might try using aliases!

1 Like

Hey @bradlymathews and @mpmohi!

With the 3.13.0 release Retool now supports using the same email across multiple cloud orgs :tada:

Each org has a scoped login screen at yourdomain.retool.com/auth/login. Instead of automatically being redirected to a different org you'll either be successfully logged in or receive an error message if you don't have an account in that org. The generic login.retool.com will still work, but if you're a member of multiple organizations you'll receive an email where you can choose the org you wish to log in to:

Note: There's a bug at the moment where Google SSO with multiple orgs does not work properly on login.retool.com but it still works properly for org-scoped login pages.

Let me know if you have any questions :slightly_smiling_face:

1 Like

Nice! A couple of questions.

It is still considered a separate account in each org? So if I have one login, but three orgs, each org gets charged for an editor?

Well, that one question for now, I don't want to start adding users to my clients (or myself) while I am experimenting with this.

Yea, billing should happen at the organization level so you would still be counted as having three separate accounts. Note that you can also have different login methods attached to each org (e.g. SSO with one, email/password with another).