You have finally developed your very first Shopify app and you feel like it's time to submit your application to Shopify for reviewing and publishing. However, there is a problem... You don't know the right steps before submitting your application.In this tutorial, we're gonna be looking at how you can publish your Shopify app easily and guaranteed to be approved by Shopify reviewer. Getting Started It's quite obvious that before you can publish your Shopify app, you firstly need to make sure that your app is 101% ready to be published. The app's functionality must be working with little to no bugs.Not only that, but you should also verify that your application is following the app requirements of Shopify If you haven't read any of those, it's best to check if your app is compatible in the app store so you won't be disappointed in the future.Once you're sure that your app is compatible with the Shopify app store. The next thing you need to do is to submit it to Shopify and we're here to teach you how to do it step by step.But first! Again! Double-check if your app is installing properly in your development store. Otherwise, the Shopify app reviewer will ask you to fix your installation process. Installation Process of your App Sadly, this is one of the common mistakes of Shopify developers. If you are not fully aware of this, whenever a merchant installs your app, Shopify will use your scripts to install your application to this merchant's store.If you have followed our Shopify app development tutorial, you would have a script something like install.php, and this script is included in the whitelisted redirection URL(s) in the app setup like below. Unfortunately, this script will never be loaded whenever a merchant installs your app. Instead, it will open the App URL and look for the index.php.So the trick here is to add a condition in your index file that checks if this merchant's store exists in your database. If it doesn't then redirect this merchant to your install.php file. $store_check = mysqli_query( $conn, "SELECT * FROM shops_table WHERE shop_url='SHOP_URL_OF_THE_MERCHANT' LIMIT 1"); if( mysqli_num_rows( $store_check ) < 1) { header("Location: install.php?shop=" . 'SHOP_URL_OF_THE_MERCHANT'); exit(); } As you can see in the example above, we used a simple MySQLi query to check our database. Then, we check if this data exists. If it doesn't then we use the header() function to redirect the merchant to our install.php file with the shop URL of the merchant's store. Submitting Your App Once you feel like you have fixed all your app issues then that's the moment we can start our app listing. To do this, navigate to your app dashboard and click on the App listings button. Then, once you have arrived in the app listings page, you can either use the English listing or create another listing in different language. We suggest before creating a non-english listing, you submit your app in english list first as it will expose your apps into a larger community. As you can see above, the default listing is in English and you are required to complete the listing before you can submit the app.By selecting the English listing, you should be redirected to the listing form. App Listing Form Once you arrived in the app listing form, you will see a very long form that requires you to fill in. We'll be guiding you step by step on how to properly fill the input boxes below. Let's start with the listing information. Listing information This part is the most easiest to fill-in. All you need is the name for you Shopify app and the tagline that you want to say about your application. App name With app name, you can only input a total of 30 characters so it's best to pick the perfect name for your app. We recommend picking a name with keywords that are usually used when merchants used the search box. SEO is also applied for your app name so use it wisely.A perfect example for app name is the Free Shipping Bar by Hextom. If you look closely, the app name contains only three words yet super effective that it always gets to #1 spot of search results.Here's how it works:The word free is used to indicate that this app can be used for free. Then, the word shipping is also used to indicate that this app is for shipping offers, discounts, and more. Then, of course, the word bar indicates that this app is used to display a bar on the top of the store's page. Super easy to understand the name.Although, we recommend you experiment with this since you can always customize this even if the app is published. App icon Next up is the application icon. This part is surely easy to understand. All you need is to upload a 1200x1200 image with no text at all. Making your own icons should not be that much of an issue. However, if you are lacking knowledge on how to create an image. You can contact us and we'll work for you to create a perfect image that can surely attract new installs. Search terms (optional) Although this is optional, we HIGHLY recommend putting at least five search keywords to boost your exposure in the search results. Like what we mentioned before, SEO is a big part of this process so use this wisely. App Details Next up is the application details. This is where you describe what your application is all about. This is where you can tell why your app is better than the other apps. *wink* Promotional video (optional) The first one is the promotional video. This one is purely optional. You can add a YouTube link here to describe what your app is all about and what it can provide.From our experience, adding a promotional video is not that very useful. In fact, it's just a waste of effort and time as it don't provide that much increase in installs.We'd rather put more additional efforts to our images than adding a promotional video. Key benefits This will be the section where you describe the best features of your application. This is very useful and very effective for attracting more installs. Although adding photos are optional, we highly recommend adding eye-catching photos that represent each benefit to fully take advantage of this section.Check the following example: For the image, it's suggested to use 1600px by 1200px image dimension. You may download the following template for your reference. Download Featured app banner (optional) If you want your application to be featured on the front page of Shopify app store. You must create a well-made banner. This is optional. However, to increase the chance of getting well-known through the entire community, it's best to create a banner. Who knows? Maybe you'll get featured and get not only hundreds of new installs but also thousands of new installs.For banners, it's suggested to use 1600px by 900px image dimension. You may follow the guidelines on how to create a perfect banner. Screenshots This section is one of the most important parts of your app listing. Based on our own research, almost 89% of merchants look at app's screenshots almost immediately after picking an application. With that being said, it's important to pick the right screenshots of your application.Now, you may be asking... "What are the best screenshots for my Shopify app?"Tweet The answer is very simple.The first photo that you should be sharing to merchants is the result or the output when they finally installed your app. It should tell them that your app is user-friendly and easy to use. Take these screenshots as the thumbnails of your application. Make them interesting and eye-catchy. Don't just screenshot your app and paste in the Paint and save it as PNG. Work on it. Add small details that can help merchants understand how your app works.Always remember, your goal is to help the merchant and make things easier for them. NEVER confuse them. There are three parts of screenshots. The first one is for desktop, the second one is for mobile, and the last one is for Point of Sale. Both mobile and Point of sale are optional but we highly recommend adding mobile screenshots since most merchants rely on mobile. So make sure your app works perfectly on mobile.For images, the dimensions are the following: Desktop: 1600px by 900pxMobile: 900px by 1600pxPoint of sale: 2048px by 1536px The templates are also included in the file that you have downloaded earlier. Feel free to use them. Download Detailed description The detailed description section is where you provide almost everything about your application. For most application, they start their description by adding an introduction telling what the application is all about and what it can do. Then, after the introduction, provide and explain thoroughly each of your app's key features. The title description field allows you to use a markdown format. In other words, you can create a header/title, an ordered list, and a non-ordered list. Use this to make your description look neat and easy to read. Never never never just create a block of long text full of paragraphs. Merchants have no time reading a letter! Demo URL (optional) Although this is optional, adding a demo URL can prove that your app is perfectly working especially if your app is customizing the merchant's storefront. Otherwise, paste a URL leading to a demo page or maybe a YouTube video URL that demonstrates how the app works? That should be fine too. Integration (optional) If your application works with other application or devices, you can list them here. Pricing This section is all about the pricing of your application.There are three types of pricing: Free, Recurring Charge, and One-Time Charge.If your app doesn't charge the merchants, then you can just leave the radio-button set to Free. Otherwise, set it to either Recurring Charge or One-Time Charge. Just make sure your app is using Charge API. Although there are also a way to provide both a free plan and a paid plan to your merchants. You can do that simply with Charge API.If you want to charge your merchants and you haven't implemented the Charge API to your application, we highly recommend following our guidelines on how to create a recurring charge API. Contact Information The contact information section is one of the most important part of your app listing. This is where you provide contact numbers, email addresses, and URL addresses to help the merchants contact you in case there is an issue within your application. Review notification email You may enter any of your email addresses here. This email address will be receiving notifications whenever there is a review on your application. App submission contact email You may enter any of your business/personal email addresses here. The email address you provide will be receiving updates about the app you submitted for review. Make sure to always check this email address especially after you submit your app for review. Sales and support All of the information you provide in the sales and support will be displayed in the app listing page and will be used by merchants to contact you. So make sure you use business related email addresses and phone numbers. Be prepared because you will get contacted a lot by merchants especially if you have plenty of installs. Tracking (optional) If you want to track your application then feel free to add Google analytics ID and more. It don't really matter since Shopify has its own analytics page. Install requirements (optional) This part is very useful especially if you want to lessen the amount of uninstalls of your app. If your app requires certain settings then you can adjust it here in this section. App review instructions And finally, last but not the least. The app review instructions is the part where you explain to the Shopify app reviewer how to use your application and what it should be doing. It's important to explain everything in detail and it should be step by step. For example, start from installations, to settings, and end to output. Review Duration Once you have finally submitted your app to Shopify, an employee from Shopify will start reviewing your app and this process usually takes around 2-3 days depending on how complex your application is.You shouldn't be scared of this process. We agree that this part takes time but if your application is working perfectly then no doubt your app will get published as soon as possible.However, if you get a response saying that you need to fix something then that's also good! That means you avoided getting a negative review from merchants. Conclusion Developing Shopify apps can be a tedious task but submitting your app to Shopify is much harder especially if your app is not meant to be submitted yet. So we suggest before submitting your app, check it thoroughly and make sure there's no flaw at all.If your app get rejected, don't worry, you have a full month to respond to the reviewer for rechecking the application.