You’ve asked a handful of development shops for estimates, you’ve interviewed them by phone, sharply cut your wish list of features to get the total project price down a bit, reviewed the contract well, and paid your first invoice. Congratulations! You’re on your way to having your custom app built!
There’s nothing more for you to do, other than wait for a test build to be sent your way, right?
Actually, this is the perfect time to get started on the client list of to-dos. You’ll need to establish a legal structure for your new business, open a bank account, and create various developer and integration accounts, and the earlier you do these things, the better. Once your developer (or project manager) asks for them, that probably means they need them now, and every day they wait for them might mean a day that no development work is done on your app.
Why are you doing this legwork, you might ask? Because whenever possible, you want to be the owner of everything related to your app, from the Apple or Google developer account right down to the hosting or server account. You should be the one who decides who gets those credentials. (And of course, save those credentials in a safe place, like LastPass or some other secure password-saving service.)
Many dev firms try to talk clients into letting them set up various accounts, even paying for things like hosting and server space on the company’s credit card and then invoicing the client monthly or semi-annually. Steer clear of these arrangements. It might be tempting to have your dev shop (or marketing firm or freelance developer – whoever is handling your software project) take care of everything and add it onto one bill, but this sort of arrangement ties you to that firm. If you ever need a divorce from the firm (whether because things go south during development, or you decide to go with someone else to upgrade your app to version 2.0), these credentials are now in the hands of your former spouse, who’ll be none too responsive when you email, requesting the login info for this account or that. Establish your own accounts and pay for everything on your own credit or debit card.
So where should you start?
The absolute first thing you’ll need to do, before you can get an account with the App Store or Google Play, is to establish a DUNS number. The Data Universal Numbering System, which is regulated by Dun & Bradstreet, assigns a unique numeric identifier, referred to as a “DUNS number” to a single business entity. This nine-digit identifier is sort of a Social Security number for you business. It can take a few weeks for this process, so get started now. Remember, time spent waiting might mean time your developers aren’t working on your app.
You’ll also need some sort of legal structure for your app. (Because your app isn’t just an app – you’re actually starting a company here.) Your best bet is always to consult with an attorney about just what sort of legal structure your company will need, whether something simple like a single-member LLC or a Delaware C-corp (the gold standard if you’ll be seeking investment funding). While Designli is not a law firm and cannot dispense legal advice, we’ve heard folks have been able to accomplish what they need using LegalZoom. Most attorneys would advise against online legal services, so make sure you do your homework.
While most apps cannot be patented, some of the intellectual property created in the building of the app may be patentable. Check with an IP attorney. You’ll also want to ask about trademarking your business’ name, as well as its logo.
In addition to your DUNS number, your business will also need a federal Tax Identification Number (TIN) or Employee Identification Number (EIN), if you plan on hiring employees now or in the future. An EIN or TIN is what you’ll use for tax filings. There are several ways to apply for an EIN/TIN, the most common being a service like LegalZoom (again, check with an attorney first) or going straight to the IRS.
Once you have your EIN (or TIN), you can now open a business banking account. A checking account with a debit card will be the most flexible banking product for you to pay for things such as your Apple Developer yearly fee and accept revenue from your app via a payment processor such as Stripe or PayPal.
Any app that will be hosted in the App Store (for iPhone or iPad apps) or Google Play (for Android apps) needs developer accounts. App Store Developer accounts cost $99 a year and will require your DUNS number to apply, while Google Play Developer accounts charge a one-time fee of $25. Here is where you can create your iTunes Connect account (for Apple) and Google Play.
Even if you’re only building a mobile product, you’ll want to have some sort of web presence so users can find you. While you consider what sort of landing page you’ll need (whether that’s as simple as a one-pager from a template service like Squarespace or something custom that also has a blog, or content management system, and mailing list integration such as MailChimp), you’ll want to nab the best domain name you can get. (Note that I didn’t say “the perfect” or “ideal” domain. Those have all been taken.) Decide how important you feel the .com is (some say it’s crucial) but even if you are open to .co, .cc, .us or any other top-level domains, you’ll still need to be flexible. There are lots of places to buy domains, but be sure to purchase one directly from a name registrar and not from a third-party source that sells domains, like Google G Suite.
Settling on a domain and naming a company can be a bit of a chicken-and-egg conundrum, given the scarcity of available names and their respective domains. These things will need to be in tandem, rather than one before the other. There are tons of resources to help name your app/business, offering all manner of advice. Take it with a grain of salt and trust your gut. (But make sure it’s easily spelled and easily searchable.)
When your project is completed and sent live in either an app store or, in the case of a website, with a hosting service, you will own that product. (At least, you better. Check the wording of any contract you sign to make certain you own the entire software product and any associated intellectual property.) But owning the app is not the same thing as having custody of the source code. While most development and marketing firms (as well as freelance or contract developers) will not send an app live or turn over source code until all client invoices have been paid, once you’re paid up, you’ll want to know where that code is stored and have free access to it. (And that way, if you need to move the project to a new dev team, you can easily give them access to the source code – absolutely crucial when taking over an existing project.) While a zip file of the code (or Dropbox link) emailed to you is good, you need to have “living” cloud storage, a place where the code can be dynamically saved every time it’s updated, a place like GitHub or BitBucket. (Because as soon as that code is changed, that zip file is now out of date.) Create an account on one of these (GitHub is more commonly used) and give access to your developer. What you’ll need to do is to create a new repository (a repo) for the code and invite your developer to collaborate. Then be sure to ask periodically if the source code is being “pushed to GitHub” (commit that phrase to memory).
Now that you have these essentials out of the way, ask your developer or project manager what else you’ll need to set up. Being proactive can prevent work stoppages as your devs wait for you to deliver the credentials they need to integrate things like payment processing.
• What sort of server or hosting service? Amazon Web Services is a scalable service you might want to consider. Their dashboard is scary, but establishing an account is easy. (You might already have one! You can use your existing Amazon account.)
• What project management tool are your devs using (Asana, Trello, Waffle, etc.)? Ask for access to that and make sure there’s a spot (a file, a folder, a task – whatever they’re called) to store all login credentials so everyone can find what they need. (Then be sure to put that PM tool’s app on your phone so you can access anything, even on the fly.) You don’t want to wake up to an email 14 hours after someone has asked you for a password.
• Any other accounts I’ll need? What about third-party integrations? Remember the two principles of being a dev project client: Now is better than later, and I control my accounts.