Building a Private Application
On behalf of a single store a private Shopify app can communicate with the Shopify API. To authenticate with Shopify using a private app, you need to create the Shopify administrator credentials and include those credentials in your Shopify request.
I do have an unlisted app that I use for checking with my software stores. It’s just a beautiful website that allows me to call Shopify APIs and see the performance in my browser instead of writing code to investigate the APIs.
Access of Private App
Until recently, complete access to the data from a store will be given to private users. Which sounds fantastic but it’s also a chance that something in the app will go wrong and damage the store’s records.
Public / unlisted apps may restrict access to their data which reduces the risk. A common example is to ask for read access to orders only, thereby stopping you from changing them in the case of an accident.
Moving into App Store Shop
If you ever plan to access the Shopify App Store, you can apply public apps only. It’s possible to start with a private app and then convert it to a public app, but that’s more work than beginning with a public app from the start (plus every store needs to re-authorize the app after the switch).