A place to discuss charging merchants for your apps and services using the billing API.
Hi all,
I wonder if anyone has any insight here as Shopify support wasn't able to give an answer that fully fitted the facts. We received the email below a few days ago:
Hi there,
Applications play a key role within Shopify’s ecosystem, enabling merchants to get the most out of their stores and our platform thanks to your hard work along with many other developers. In order to offer an enhanced experience to developers and merchants alike, we are now simplifying the Shopify apps model.Private apps are being replaced by custom apps, with no action required from your end. Starting today we’ll be rolling this update out to all stores on Shopify. Creating new private apps won’t be possible once your store/s receive this update. Please refer to our documentation to learn more about custom apps. https://help.shopify.com/en/manual/apps/custom-apps
With custom apps, you can continue to create exclusive functionality or custom storefronts, while taking advantage of additional platform features and smoother integration within the admin panel for building, managing, and using apps. The collaboration experience between store staff and developers is also improved with custom apps, including additional security controls, better ownership management, and more visibility into app change events.
Here are some of the benefits from this new experience:
1. Secure token management for more effective and secure collaboration
2. Increased visibility into ownership and activity - including a view of the app change log so you can audit these change events
3. Integration with external solutions to easily subscribe to events from your apps using serverless event-driven technology -- such as AWS EventBridge or Google Pub Sub.
Thank you for your continued partnership and support.
Shopify Apps Team
We use a 'Private App' to let a piece of software on our internal server connect via API to download orders etc. Obviously the 'Private App' is just API Keys that our internal server connects to - no user interface etc as it just transfers orders from Shopify to order processing software.
We'd like to use the same system on new stores we might set up in future (and have an easy alternative option if the Private Apps functionality is discontinued completely at some point).
Looking here: https://shopify.dev/apps/getting-started/app-types? There are two types of 'Custom App' (the second and third rows of the table :
Type of app Where it was created Authentication method Installation Approval required Distribution in App Store Features and limitations
Public | Created in the Partner Dashboard | OAuth. If embedded, then OAuth and session tokens. | Installed on multiple Shopify stores | Yes | Yes |
|
Custom | Created in the Partner Dashboard | OAuth. If embedded, then OAuth and session tokens. | Installed on a single Shopify store. Shopify Plus service partners can install the same custom app on multiple Plus stores for a single Shopify Plus merchant. | No | No |
|
Custom | Created in the Shopify admin | Authenticate in the Shopify admin. | Installed on a single Shopify store. Shopify Plus service partners can install the same custom app on multiple Plus stores for a single Shopify Plus merchant. | No | No |
|
The second type of 'Custom App' (third row) seems almost identical to a 'Private App' in functionality. Unless I'm missing something?
Also the set up process for the 'merchant' seems essentially identical for 'Private Apps' https://help.shopify.com/en/manual/apps/private-apps and 'Custom Apps' https://help.shopify.com/en/manual/apps/custom-apps (these instructions presumably refer to the second type of Custom App (third row), not the first (second row).
What is the difference between 'Private Apps' and this second type of 'Custom App'? Will I be able to just use the instructions here https://help.shopify.com/en/manual/apps/custom-apps to create API credentials and connect our internal server as before? This would be ideal as it would let us avoid having to create a Shopify Partner Account, creating a UI, an install link etc that we don't currently need or want - and avoid changes to the software on our internal server!
Any help would be appreciated!
Thanks in advance,
Mike
I'm trying to find out the answer to this myself - I've just discovered that private apps are now deprecated. I don't recall seeing any warnings from Shopify that this change was happening - was this announced somewhere?
From my quick testing it seems that custom apps will work the same as private apps currently do, but you will need to make one change to the authentication header to use the new Access Token instead of the old API Key/Password, e.g.:
-H 'X-Shopify-Access-Token: {access_token}' \
This is working for me in my tests - so for each request to the API you would just need to replace the header that handles the authorisation when working with the new custom app.