How do I manage billing multiple clients with separate apps?

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

  1. Ask each client to sign up for a Heroku account: https://signup.heroku.com/

  2. Instruct them to log into their Dashboard, create a Heroku Team, and add their credit card for billing purposes.

  1. 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.

  1. 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.

  2. If you'd like to leave the team, you can go to the Heroku Team's Access tab to leave the team.

LeaveTeam.png

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:

  1. Log into your Personal Heroku account and create a Team

https://devcenter.heroku.com/articles/heroku-teams#setting-up-your-heroku-team

  1. Add your credit card for billing purposes

https://devcenter.heroku.com/articles/heroku-teams#managing-billing

  1. 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 as admin.

  2. 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

  1. 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

Ask on Stack Overflow

Engage with a community of passionate experts to get the answers you need

Ask on Stack Overflow

Heroku Support

Create a support ticket and our support experts will get back to you

Contact Heroku Support