Issue
You'd like to have all your apps under a single login, and each of your client's applications billed to them directly.
Resolution
Hosting many client's projects in your Personal Heroku account can be problematic. If your Personal account is suspended due to non-payment of your monthly invoices, your client's projects are at risk for suspension. Using Heroku Teams protects the client's applications from being suspended due to payment issues associated with your Personal account.
We recommend using Heroku Teams to compartmentalize your applications so that billing and accounting are a breeze in the long term.
https://devcenter.heroku.com/articles/heroku-teams
Process
-
Ask each client to sign up for a Heroku account: https://signup.heroku.com/
-
Instruct them to log into their Dashboard, create a Heroku Team, and add their credit card for billing purposes.
- https://devcenter.heroku.com/articles/heroku-teams#setting-up-your-heroku-team
- https://devcenter.heroku.com/articles/heroku-teams#managing-billing
- Ask them to invite you to join the Heroku Team as
admin
.
For precise instructions on how to add new members to a Heroku Team, we recommend the following Dev Center article:
https://devcenter.heroku.com/articles/heroku-teams#managing-permissions
Once you accept the invitation on your end, you will see the team name show up on your Heroku Dashboard.
-
When development is complete and you've delivered the final product, make sure that the persons that are on the Heroku Team still have access to the team as
admin
and are aware of the project they are assuming responsibility for. As owners, they need to be aware that they are responsible for the payment of services and maintaining the list of managers of the apps in that team. -
If you'd like to leave the team, you can go to the Heroku Team's Access tab to leave the team.
Single credit card option
The above workflow is the best practice if you want each client to be set up for their own billing. otherwise, you complete another variation of the explained method if you want to have your card billed for everything:
- Log into your Personal Heroku account and create a Team
https://devcenter.heroku.com/articles/heroku-teams#setting-up-your-heroku-team
- Add your credit card for billing purposes
https://devcenter.heroku.com/articles/heroku-teams#managing-billing
-
Invite the client to join the Heroku Team as
admin
. It is recommended that you have at least 2 people added to the Heroku Team asadmin
. -
When development is complete and you've delivered the final product, make sure that the persons that are on the Heroku Team still have access to the team as
admin
and are aware of the project they are assuming responsibility for. As owners, they need to be aware that they are responsible for the payment of services and maintaining the list of managers of the apps in that team.
The owners of the project need to be aware that they are now assuming the responsibility of the project, admin list, and billing. Make absolutely sure to guide them to the Heroku Team billing page to change the credit card details. In case of questions associated with updating the card on file, we recommend the following resource:
https://help.heroku.com/B0N6A0JN/how-do-i-add-update-or-change-credit-card-on-my-heroku-account
- If you'd like to leave the team, you can go to the Heroku Team's Access tab to leave the team.
Pricing for multiple teams
Please be aware of the pricing and limits of Heroku Teams if you choose to utilize any of the aforementioned strategies. Having the customer create the team instead of you simplifies things for the developer.
https://devcenter.heroku.com/articles/heroku-teams#pricing-and-limits