Multi Restaurant FAQs #

1. Demo Login Details for Customer & Driver App of MULTI RESTAURANT in Playstore & Apple Store?

Ans: Please find the details above.

Eatance Customer App Login details:

Customer Account
Name: Eatance Customer
Phone: +1 606 606 0606
Email: [email protected]
Password: [email protected]

Driver Account
Name: Eatance Driver
Phone: +1 616 616 1616
Email: [email protected]
Password: [email protected]

Restaurant Admin Account
Name: Eatance Restaurant
Phone: +1 626 626 2626
Email: [email protected]
Password: [email protected]

2. What will I get with my Multi restaurant purchase?

Ans: We have two types of solution, Basic & Premium. If you choose basic, you’ll get the Source code of Customer Mobile App (iOS and Android), Driver Mobile App (iOS and Android), & and Master Admin Panel. In case you purchase our premium version, you will also get Admin mobile App, and a lot more exciting features such as Reward points, Wallet & Driver Tip Management, and much more. We also have created a Developer help section in our FAQ for Technical Guidance & Assistance for Implementation.

3. What Kind of enhancement do we expect in New Eatance Food Ordering App?

Ans: We took over 500 reviews from our existing customers and developed a new advanced version as per the new Food Ordering App startup demands. You will get all the following:
Food Ordering Website with Shopping Cart
An Advanced delivery mechanism in Admin
Mobile Application for Customers in Android and iOS
Delivery / Driver App in Android and iOS
Restful API
There are plenty of new enhanced features, and many bugs have been resolved.

4. What Kind of Support will you get?

Ans: We provide two types of Support:

FREE Support: Our applications have been thoroughly tested and used by many Food startups. We are constantly improving our codebase, new feature enhancements, and Bug fixes. You will get FREE technical Bug support and new version enhancement till three months from the date of purchase.
Paid Support: We have twenty plus dedicated technical experts for this Product, and we can help you with all following as paid technical Support.
Server Setup
Your own Branding enhancement
Code deployment and App publishing
New Feature enhancement
Customization in the existing features
Design and UI changes
Product Training
Marketing Services &
Design and UI services
Please raise a support ticket as per your support requirements at: https://eatanceapp.com/support/

5. Will every Restaurant have its own dashboard to manage its orders?

Ans: Eatance Online Food Ordering System provides each Restaurant with its dashboard to manage items, food menu, pricing, and images. From Master admin, you can add a user as an Admin user to create Restaurant admin.

6. Is there an option for managing restaurant payments on a daily, weekly, or monthly basis?

Ans: Payment needs to be managed outside of the Food Ordering System. However, if required, we can always take a customization request for integration of Payment or Settlement cases.

7. Will the App support the Split Payment option between Restaurant and Owner?

Ans: All payment types & modes are based on the Payment Gateway Integration; for example, PayPal offers Customization of Split payment, which is part of their subscription. Before proceeding, please do make sure your Payment Gateway provides the split payment option.

8. Does the App work hand in hand with both driver and Eatance Customer, Or Can I buy one and use it?

Ans: Certainly, you can buy either of them as per your request, but the current Food Ordering System: integration for the Driver app is connected with the Customer app. If you would like to use the delivery app with any of your current Applications, then the integration would require extra effort for Customization.

9. Where do you integrate PAYMENT GATEWAY?

Ans: The Payment Gateway gets integrated from the mobile app side and website. All payment gateways do not have the same nature, and some of them provide directly ready to integrate React Native SDKs, which can be used for mobile apps. If SDKs or libraries are not available, we either have to check Rest API or consider a web-page-based solution if provided by that payment gateway. Upon request, we can always create a management within the Backend/Master Admin.

10. Do you have a Mobile Application for Restaurant or Staff User?

Ans: Yes, We also have a Mobile Application for Store Admin / Restaurant User. However, the current Mobile App only includes the store to Accept and Reject Orders. And other functionalities such as menu item or category updates, creating Restaurants, and others need to be managed from Web Admin only.

11. Does the App have functionality integrated, such as Social media login or SMS Gateway?

Ans: We can always integrate as much functionality as to include as an Customization request. Both these features come as part of our premium package.

12. Can we add another Payment Gateway to your Food Delivery Application?

Ans: Absolutely, Our Online Food Delivery App comes along with standard payment gateway integration of PayPal. Our Application is highly compatible enough to integrate with other major payment gateways as well.

13. Is there an Add-On category Option?

Ans: Yes, we have provided both multiple and single selection options for Restaurant to create all Kind of Add-On Category for example; if the Admin needs to create a products that has a Addon with Single Select & Multi-select they can do so. Eg: Piza with Single select base & Topping as a Multiselect option.

14. Is this model more cash-intensive or online payments?

Ans: Our Online Food Delivery App is come with PayPal integrated. It is also compatible many other major payment gateways.

15. Can the payment settlement be done via the system?

Ans: The Restaurant Ordering System provides the functionality to manage and access. However, the payment settlement depends on the payment gateway, and we can always take customization requests based on your requirements.

16. Can I add multiple Branches for the Restaurant?

Ans: Yes. Restaurant Ordering System gives access to Master admin for adding branches/locations.

17. As a Restaurant, can I add my own drivers?

Ans: Absolutely, we have provided the functionality to Master Admin for adding Drivers

18. How can we track the drivers to the last mile in real-time?

Ans: We do provide the integration of Google Map API, which will allow you to track the driver’s location during Delivery.

19. Can I get real-time order status?

Ans: Yes, we have this option to display the real-time order status in the Customer App. Also, you will get the notification sent by the system for the order.

20. Can I use 3rd party delivery executives for my Delivery?

Ans: Yes, we have integrated 3rd party services based on customization requests from the client. For example, Third-party delivery service: https://shadowfax.in/ or DoorDash.

21. How many methods of payment are available? How many Gateways have you integrated?

Ans: We have integrated major standard Payment Gateways such as Stripe, PayPal, Adgen, Authorize.net, and many others based on clients’ customization request. You also get Paypal & Cash as a default option.

22. First-line Support: It’s important to not neglect the value of the Support that handles orders, complaints, and delivery problems – is this anywhere available in your Application?

Ans: We can integrate 3rd party support systems such as Zoho or Chat-based systems or any other CRM upon request. You can share your requirement with us.

23. If there is a sudden inflow of users to the service, will it handle significant traffic of orders?

Ans: Yes, what we have created is a MVP (Minimum Viable Product). Sustainable up to 7,000 daily orders, which give enough room for your Customer to order at once as we have tested the Product with real data and already have various satisfied customers. The performance of the Application differs depending on the infrastructure and the Server.

24. How scalable is your system?

Ans: Sustainability and Scalability: It is an MVP, and it is scalable as you want. The system is highly compatible for Customization as per your requirement. The Application has been built on React Native and Code Igniter framework, which helps you to mold the Application as per your requirement.

25. Does your Application support multi-currency and multilingual?

Ans: Yes, our Application supports multi currently and multilingual, In case you want our help with translation, we require the translation files from your end to change the Content entirely, but that will be a custom request.

26. Can I get the Taxes displayed in the price details?

Ans: Yes, certainly. We do provide an option in Admin Panel to add the taxes and service charges.

27. Can I place an order as a Guest if I am not a registered user?

Ans: Yes, we do have a Guest Ordering feature in multi-restaurant Solution.

28. Also, when I check out, the delivery charges do not show but is added only to the final total at payment?

Ans: As a Customer, you will be able to see the service or delivery charge at the checkout page if it is applicable

29. Is there any way in the event booking option to ensure customers don’t cancel at the last minute to avoid food wastage in the packages they might have ordered?

Ans: Customer can cancel the booking at any point. However, please do note that this is not a slot booking so the Customer and Restaurant will need to get connected to discuss the details of their booking and accordingly proceed. Sole purpose of event management is to organize your events booking such as office parties, anniversaries etc., and to generate the inquiries.

30. Push Notification messages are free? How do I set up by myself? Or is there a limit if chargeable?

Ans: No charge or no fee and unlimited push notifications, They are system generated using Firebase and need to be set up. SMS are based on 3rd party and are chargeable and also limited.

31. Can I create Restaurant Admin?

Ans: Yes, the Master admin can create a Restaurant Admin for a Multi-branch restaurant.

32. Do you provide hosting and domain services?

Ans: No, we do not provide these services as of now. But, we can always assist you with the list of requirements for the Application.

Sales #

1. May I upload this App directly to the play store and app store without doing any coding?

Ans: You need to change Branding and make some changes before uploading to the respective store. It will require minor work hence we recommend getting the help of a tech expert or professionals. You can also connect with us. We will always provide our customer Branding services (Chargeable Request).

2. Do you provide hosting and cloud services with your Application?

Ans: Unfortunately, at the moment, we don’t provide any of the hosting services.

3. Are there any other charges involved in app/package purchase? Or What is the app costing, including other charges?

Ans: There are no hidden charges or taxes involved on top of the total product price. The only thing you will require to pay extra will be customization if any. This is for the entire package availed. (Indian customers: Yes, GST will be added on top of the product price, this can further be discussed with our sales team.)

4. Do you have a list of required items for getting the product setup complete?

Following is the list of the prerequisites one would require to build the package, these prerequisites are divided into 3 parts Part A: Must / Minimum Required Details, Part B: Good to have & Part C: Publishing the App and Go Live Details. (these items are categorized in the above manner for people who choose our services of setup/installation & store upload process, but you can also refer to this list in case you’re doing it yourself).

Part A: Must / Minimum Required Details to start working on your package. The list is as follows:

    1. Application Name: This will be your Brand/Application’s name which will represent your business name.
    2. Brand Logo: High-resolution logo for your Website and Mobile app icon. A Clear/Vector logo either in PSD, AI, or SVG format. This will help you to set your Branding and update skin as per your brand colour guide in the application package.
    3. Google Maps API Key: This is required to identify addresses, direction, set Delivery Zone management. Please follow the instructions to generate a new Google Map Key. Kindly note, this is the third-party provider, by Google.
      Reference link:
      https://developers.google.com/maps/documentation/maps-static/get-api-key
    4. Payment Gateway: Required Integration & Payment methods details to integrate within applications. However, we highly recommend going with Stripe, PayPal, COD, and Checks.
    5. Google Play Account Credentials: Require these details for Google firebase access and publishing the App on Play store. Kindly follow the following instructions to set up a Google Play console account if you haven’t one:–
      1. Please signup to set up your Google Play Console:–
        Reference Link:
        https://play.google.com/console/signup
      2. After signing up kindly open your Google Play console and then click on “Users and permission” from the left side menu and authorize the Account permission (Admin permission) to us by sending an invite to [email protected] email account.
    6. Google Firebase access along with Server Key details. Kindly follow the instructions to set up a Google Firebase access and Sever key. Please visit or click on the reference link given below:
      Reference Link:
      https://console.firebase.google.com/
      Click on continue creating your new project/account. In case of customization request, Once done please do share us the owner access at [email protected]
    7. Twilio Account Access: Only required in case of Platinum Package purchase or Add-On for phone number verification purposes. Twilio will be used to verify the phone number and make the automated call. Kindly follow the instruction to create a Twilio account
      Kindly sign up by visiting on the given link: https://www.twilio.com/try-twilio and then activate your account. Once an account is activated, please make sure to purchase one number within Twilio and share the login credentials with us at [email protected]
    8. For iOS apps setup and installation(Service taken from our end): Please share with us the access of your Apple Developer account. If you have an organization Apple Developer account, then you can directly grant us the Administrator access on [email protected] account. If you have an individual Apple Developer account, then we will need your account login details and online availability as the login attempt will require authentication to enter a verification code that you will receive on your device(s). We shall upload the iOS apps on TestFlight and help you in installing the Application from it on your phone.

Part-B: Good to have:

    1. For Splash screen design: Kindly send us picture in 1242 X 2208 resolution. Do not worry if you do not have one; we will make it one for you from your logo. (If Service is taken from our end)
    2. Social Media Logins of your Application: If your package has Login with Social media features, kindly provide access to the Social Media Account you have created for setup. (If Service is taken from our end)

Part-C: Publishing the App and Go Live Details: (If Service is taken from our end)

  1. Server Details to set up a server (C-Panel Details in case of dedicated SMTP server).
  2. We do require SMTP credentials for sending an email notifications from our system. i.e. Gmail or Sendgrid. (SMTP or Simple Mail Transfer Protocol is an application that is used to send, receive, and relay outgoing emails between senders and receivers.)
  3. Apple developer account details with Apple Developer Membership. Here is the instruction about how to get the membership.
    • Store metadata information: App name, description, keywords, marketing URL, privacy policy URL, contact details (full name, phone, email, complete address)

    App category if you can provide from following

    • Short & long description for play store.
    • Publish images to be uploaded.

    Please feel free to connect with us in case you need any more details.

5. What are the Server Configuaration required for the App?

Ans: Certainly, please find the following server requirements for the app purachase:-
Operating System – Linux
Web Server – Apache
Database – MySQL
RAM: 8GB RAM
CPU: 2vCPU
Disk Space: 80GB SSD

Please Note Before Purchasing Any Server:

  • The database should support PHP with the latest version of PHP 7.4 and MySQL 5+ Server
  • Most importantly, it should support React Native Framework
  • Any Cloud Hosting can also work for the App configuration However, the setup and installation fees are applicable as per the Server purchased
6. What Kind of Support will you get?

Ans: We provide two types of Support:
FREE Support: Our applications have been thoroughly tested and used by many Food startups. We are constantly improving our codebase, new feature enhancements, and Bug fixes. You will get FREE technical Bug support and new version enhancement till three months from the date of purchase.
Paid Support: We have twenty plus dedicated technical experts for this Product, and we can help you with all following as paid technical Support.
Server Setup
Your own Branding enhancement
Code deployment and App publishing
New Feature enhancement
Customization in the existing features
Design and UI changes
Product Training
Marketing Services &
Design and UI services
Please raise a support ticket as per your support requirements at: https://eatanceapp.com/support/

7. Which Technology stack/Platform is being used for Mobile apps, Website and Backend?

Ans: The Mobile applications built on React Native platform. Therefore, it can work for Android and iOS both. Following is the new technology stack
Backend: PHP CodeIgniter (V3) and MySQL
Mobile Application: React Native (V 0.63.4)
Website: HTML, CSS, Bootstrap, PHP

8. Should I buy a developer to change the logo, company name and other things or I can change it directly from the admin panel?

Ans: After Purchase, you need to change Branding, App name, and Content, images. You cannot use the Content, images and app name anywhere to promote your Product. You can hire our team for branding changes and contact us on [email protected]

9. After I purhcase the App, Do you provide any kind of document assist us to setup by our own?

Ans: Certainly, you can just purchase the code directly, and setup by your own or do any changes you need. Please refer to the below link:
/restaurantapp/help/

10. Can I just purchase the code and use it to resell for white label purposes?

Ans: No, the App comes with regular lisecene only. In which you can’t resell the App or code for white labeling purpose. Doing such activity is to breach the terms and conditions while purchasing the App and hence, Eatance team is liable to take legal action to the reseller.

11. Can I just purchase the code and modify the App at my end?

Ans: Certainly, after Purchase of the App, you can always update the code as per your requirements. However, if Eatance is involed in customization support after the app purchase than we request you not to update the code by yourself and discuss with eance team before updating any code. If the code is updated from your end, then for any functional breakdown or crash, Eatance will not take responsibility of the code you have updated at your end.

12. Do I need my Own Developer Account for Appstore & Google Play?

Ans: Yes, due to a recent Apple policy change, for the apps to be approved, you will need your own Apple Developer & Google Play Developer Account. You can learn more about the developer memberships here:
Apple: https://developer.apple.com/support/compare-memberships(Individuals will work) $99/yearly
Google Play: https://play.google.com/apps/publish/signup/ $25 One time payment

13. What is so different with Eatance APP?( Confirm with Sales)

Ans: We provide the source code for our applications to all our customers. Depending on the additional services you buy from us, If you buy our install/setup or branding services, We will provide the Support for the App or package you purchase to assist on app submission and take your business live. Certainly, there are many of our competitors selling similar products as very low cost but again you hardly able to find their Support. With Eatance you will always have premium services such as Branding for all the material for marketing your business. And most importantly, Eatance is backed up with Evince Development with the 9+ years strong presence in market.

Admin Panel #

1. Will the Admin panel show me the number of available delivery excutives?

Ans: You would only able to view the Drivers which are created in the Application. However, to display the linking of Driver occupancy is not there, and we need to take the request as an Add-On.

2. Delayed orders Alert? Average Delay time on those orders?

Ans: So basically, there is a flag, and Alert should raise base on the order assigned to the Restaurant admin and master admin. Currently that is something possible with a customization request.

3. Will I Admin, be able to allocate orders to delivery person or has to manual assigned(Manual)?

Ans: Yes, it is already provided in the Application for sending the alerts of new order to nearby or all drivers. Even the Master admin can assign the order to the driver manually as well.

4. Does it have route optimization to enable food delivery in time?

Ans: Yes, as we integrate with google maps, it does provide the best route to deliver the food package at that particular time. So, the delivery app gets connected with the customer app for tracking purpose and display the live tracking or location of the driver

5. Do you have a Driver App for Delivery boys?

Ans: Yes, we already provide Delivery for tracking and managing drivers in both iOS and Android.

6. Does the delivery app have/consist of an in-app collection of barcodes, photos, signatures, and notes.?

Ans: We can always take up the request of Customization as per the current App is for food delivery where we don’t require the signature or barcode reading for delivery purposes.

7. Customer has the option to connect with the driver via chat, call, and text?

Ans: Yes, customers can always connect to the drivers via call only. But we can provide further features based on custom requests.

8. Is there any way to keep an eye on the logistics/inventory of each Restaurant

Ans: Currently as we are working on Food delivery business, so management of quantity is itself a different application all together. We have created our App in React Native module with CI backend which help any of our Customer to integrate any of the Third-Party Application such as CRM, ERP or any Inventory management but it would be a additional request.

9. Does this allow to manage the orders in sequence coming to the kitchen to ensure they get priority based on ticket?

Ans: Our system does allow the order to accept as per the open and closing hours setup for the Restaurant. We always provide the Restaurant to accept / reject the order in terms of availability. However, to create the priority-based order is more of a customization request as per the requirements.

10. Does the Customer gets notified about order status?

Ans: The Customer can view past order details via the Customer App. Whenever a customer places a order, the Admin receives a email and once the adminn confirms the order, the Customer will receive a push notification. If you’ve any other specific requirement, you can always share your requirement with us.

11. How robust is your Admin Panel?

Ans: Administrative interface and utility usability: Extensively developed with goal to save time and improve the efficiency of the entire service. Imagine a couple of seconds saved on a frequent operation and multiplied by the number of operators in the call center. It can play a big part in the outcome for the potential client. As mentioned earlier, we have MVP setup for Food Delivery Network, and currently, you can have almost 7k orders per day and 1k concrete user ordering. Most importantly, we have created the Application in React Native and using CI for the backend, which gives core functionality to extend the App at high scalability, including the front-end development.

12. Does this allow managing any staff on the floor at the restaurants?

Ans: This is primarily for the food ordering and Delivery only. However, we can always add any more function you require specifically for your business as an additional request.

13. Can Admin manage taxes and service fees, for individual Restaurant in the web admin panel?

Ans: Yes, we have created Management in backend to set Taxes and Service fees as percentage or by amount.

14. Can I also generate the report for all taxes, service fees, and commission base on individual Restaurant from web admin panel?

Ans: we have created the general reporting system which you can also export in CSV or Spreadsheet. So you can view the accurate commission earning done from all or individual Restaurant, filtering the data by date.

15. Do you have Mobile App for Restaurant Admin?

Ans: Yes, we have created Mobile App for Restaurant Admin which helps Admin to just Accept/Reject orders. To update menu, status, assign driver and all other features, you need to access the Web Admin Panel.

16. Can I Bulk import products rather than adding a single item at a time in the system?

Ans: Yes, Master Admin can always upload bulk products within the system. To perform bulk upload at ease we have also provided sample CSV/Spreadsheet reference to bulk upload with dummy data. Admin just needs to follow the same format field by field and upload products efficiently within the system.

17. Can I set/manage payment of Drivers:s: Paid and unpaid for Deliveries?

Ans: Yes, Master Admin can create Delivery Zones for Drivers and assign specific charges for them. Also, Admin will have the ability to maintain payment status for tracking purposes.

Developer Help

Eatance Community welcomes you, and we would like to Thank you for showing your esteemed interest in our Product.

Eatance Multi Restaurant Pro App is a robust Multi Restaurant Management App that allows Business owners to manage their Online food delivery business seamlessly.

The Eatance Setup package comes with a thorough explanation for the manual setup guide and all the query resolutions. It is advisable to review the support and workflow documents for understanding the back-end architecture of Eatance designed by our Product Architects. We are always reachable at [email protected] in case of any further issues.
The below article is a step-by-step guide for manual installation and understanding the Eatance application with a closer look. For your convenience, the article is divided into 3 significant verticals of the application, namely Eatance Admin Module, Eatance Mobile Application for Android, and iOS.

Admin Setup

Admin Configuration

Step 1:- Logging into cPanel Application

As an administrator, you will be required to log in through valid credentials into your cPanel Desktop application which can be downloaded from Here. You can also Login through valid credentials into its web application from Here. The below screenshot is attached for your reference.

Step 2:- Upload Application Source Code

As a part of the next step, you will be required to upload the HTML Package on the Eatance Domain. Click on Files in the top-left toolbar, and inside it, visit the Files Manager icon.

After clicking on the Files Manager icon, you will view the Files Manager Dashboard and, under this folder, select the public_html option.

The next step involves uploading the EatanceRestaurant.zip file, for the Click on Upload option is available on the toolbar in Files Manager Dashboard. Make sure to check the file path as “/home/evince6/public_html,” You can either upload the file from your computer or drag & drop it on the upload section.

Once the file is uploaded, click on the .zip file as shown in the below figure

After selecting the .zip file, You will need to extract the .zip file, which can be done by right-clicking on the selected .zip file as shown in the below figure.

A popup will appear once you have selected the Extract option, where you will need to enter the location path where the application code is stored.

If the application code is stored inside the public_html folder, then mention the path as /public_html/ and click on Extract File(s) button as shown in the below figure.

If stored at any other location, copy and paste the file path in the placeholder provided in the popup and then click on the Extract Files(s) button. The application code will be automatically uploaded to the web domain.

Step 3:- Create Database

The next step: you will be required to perform is setting up the Database. The database section is available under the Files Manager section in the cPanel dashboard. Under the Database section, click on MySQL Databases.

As an application administrator, you will be required to create a separate database for Eatance Restaurant Application. For that, a section under MySQL Database will be opened, and you need to enter the name of the Database.

Enter the name of your New Database as shown in the above figure, click on the Create Database button, the following figure will appear.

You need to verify that if the created Database is added, click on the Go Back button to add, redirecting to Database Section on cPanel Dashboard.

Step 4:- Adding a new Database User

To create a new user, go to the Add New User section. Enter Username, Password, and Re-enter Password in Password (Again) textbox as shown in the below figure. After entering the password, you need to click on Create User button.

Suppose you cannot think of any strong password for the database access. In that case, the cPanel application provides an option to generate a password as per the required password standards through Generate Password button. Once you have generated a strong password, you will be required to save the password manually, confirm it by selecting the checkbox in the Password Generator checkbox, and further click on the Use Password button.

Further, the system will automatically redirect you to the MySQL Users page, and the system-generated password will be saved in the Password placeholder as shown in the below figure. Further, you need to click on Create User, and a message stating successful creation of the user will be shown on the screen.

Now, click on the Go Back button. You will be reverted to Add New Database section, scroll down to Add User to Database sections.

As shown in the above figure, select a User name from the list, and its corresponding newly created Database. Click on the Add button to go to the Manage User Privileges page.

Step 5:- Assign Privileges to the User

To create a new user, go to the Add New User section. Enter Username, Password, and Re-enter Password in Password (Again) textbox as shown in the below figure.

As shown in the above figure, Tick mark on to assign all the privileges (rights) to the created users from the Manage User Privileges section. Click on the Go Back option to go to the previous page.

Click on the button to go to cPanel Dashboard.

Step 6:- Importing Database

To import the created Database (For Database Connectivity), select the phpMyAdmin option as shown in the figure below:

Select the name of your Database, as shown in the below figure.

Click on the Import button as shown in the below figure:

Select .sql file, your package from your system. Scroll Down and click on the Go button, as shown in the below figure:

Step 7:- Setup Database to Source Code

To update your database access in the file, open the source code folder. For that, you need to click on the <strong>File Manager option. Further, Click on the public_html option.

If you have created a folder, click on the folder name (For Eg. Eatance Restaurant), then click on the application ->Config-> database.php option.

Or else directly access source code from the location path of application ->Config-> database.php option.

Here, right-click on the database.php file as shown in the figure below.

Click on the edit button to update the database details following popup will appear as below figure.

Step 8:- Update Important details in the Database

Scroll down to update database details.

As highlighted in the above figure, update the following information in the Database.

  1. Host Name: localhost
  2. Username: ‘database user’ (For Example: eatance1).
  3. Password: ‘database user’s password’ (For Example: [email protected]=clIs).
  4. Database: ‘database Name’ (For Example: eatance1).
For Admin Module Access:
  • To access the admin module, Enter your folder name in your URL,
  • For Example, http://example.com/”backoffice/.”
  • Here,” back office” is the folder name for back-end access. The following figure will appear:

Enter your E-mail and Password in the textbox and click on the Login button.

After Login, the following Admin Dashboard of Eatance single restaurant application will appear:

Now, if you have added your package to the public_html folder, then it will work.

But suppose, if you have created another folder inside public_html and uploaded package into that specific folder, then you need to change it from the .htaccess file; it will be on the root path as shown in the figure below:

Select the Edit option from the above list. The following popup will appear:

Now, here you are required to enter the specific folder name in Rewrite base /your folder name /, as shown in the below figure:

Set your folder name, and if you have inserted your package in the folder, then for back-end access, you need to access it with the following URL (by entering the name of your folder). http://deveatanceapp.evdpl.com/your_folder_name/backoffice

If Domain or Subdomain points to a specific directory, there is no need to change it in the .htaccess file.

If Domain or subdomain does not point to a specific directory, then specify folder name in .htaccess file.

Android Configuration

Setting up React Native

  • As our project is based on React Native, we need to set up all prerequisites pertaining to React Native in order to run the project.
  • To ensure easy run of the project , you are advised to install the following softwares in your pc.
    1. Visual studio code (Considered v1.56.2 for this document)
    2. Node JS 14.x.x or higher (Considered v14.17.5 for this document)
  • Download visual studio code from the following URL https://code.visualstudio.com/download

    Download visual studio

  • Download the Node JS from the following URL https://nodejs.org/en/download/

    Download Node Js

  • After installing the above software, we are now ready to proceed for further steps.

Setting Up New React-Native Project

  • In this section, we will learn how to set-up a new react-native project. Use the following command to create a new project with rn version 0.63.4
    npx react-native init Eatance --version 0.63.4 (Eatance can be replaced with your project/app name)
  • During the project creation, it would create default android and ios directories. You need to remove those folders and replace them with the ones in the provided source code.
  • After the project gets created successfully, copy paste the following files into the main directory (Your app name folder), some files already there when you create a new project with the help of the above command then just replace your new files with our files.
    • Main folder (app folder)
    • App.js
    • app.json
    • index.js
    • babel.config.js
    • metro-config.js
  • Once these steps are done, we need to install node modules using the following command. Please do not change any library versions. Make sure we keep the same versions as in the provided package.json
    • npm install
  • Now we are all set to proceed for further native setup process.

Android Set Up

Running on android

  • Open the project in the visual studio code with the following project structure.

    Visual Studio

  • Install the third party dependencies by running the following command in the below terminal.
    • npm install
  • Since our project is having React Native v0.63.4, we do not need to link the libraries manually. As of React Native 0.60, all libraries gets auto-linked at time of it’s installation.
  • In order to link the assets and fonts, run below command:
    • react-native link
  • Now after all the modules are linked we are ready to run the app by running the following command. Please ensure an actual device connected with usb debugging turned on or have an emulator running.
    • react-native run-android

P.S: If running the app fails for you, please try again running react-native run-android command again.

  • Still you face any error while running ,please run the following commands.
    • cd android 

    • ./gradlew clean

    • cd .

    • react-native run-android.

  • Otherwise delete the following folder in file manager
  • Navigate to Eatance -> android-> app and delete build folder.

    Visual Studio

  • And run the following command again.
    • react-native run-android
  • Once we successfully run on android device, you will like to change the application ID and package name according to your requirement.
  • To perform this, you need to finalize a package name, let in our case it be com.myappname
  • Now go to the following directory in file explorer.
    Eatance\android\app\src\main\java
  • Create a new folder named com inside java folder, then move inside the com folder, create another folder inside the com folder , named myappname.
  • Now our folder structure is ready, let’s move the files inside the Eatance\android\app\src\main\java\com\eatance to the myappname folder.
  • Now start android studio and open the following directory as shown in the picture below.
    • Select Open an existing Android Studio project option

      Visual Studio

    • Select android folder as highlighted in below screenshot

      Visual Studio

  • You will see a screen like this.

    Visual Studio

  • Change com.eatance to your desired package name, here in our example to com.myappname in the highlighted files.

    Visual Studio

  • In the AndroidManifest.xml file change the package name to com.myappname.
  • You can change the app name by editing the following file. Go to the android\app\src\main\res\values\strings.xml. And change Eatance Customer - Platinum to your desired app name , let it be MyAppName here.

    Visual Studio

  • You can change the app logo by replacing the images inside this folder with your required images ( Remember to rename the new images as the old image names ).
    • Eatance\android\app\src\main\res\mipmap-*
  • values-night folder does contain, all the configuration required for night mode in app. This specifically helps for setting notification text color. However we don’t need to go any deeper as we are not using night mode in our app.

    Visual Studio

  • You have to change the applicationId in the following file Eatance\android\app\build.gradle from com.eatance to your required package name , in our case it’s com.myappname. You can also change versionCode to 1 and versionName to 1.0 or place any number as per your need.

    Visual Studio

  • You need to change the Google Maps API key inside the AndroidManifest.xml file.

    Visual Studio

  • Now to use app on your own server , change the BASE_URL to your backend url inside the EDConstants.js file.
    export const BASE_URL = 'http://myappname.com/v1/api/';
  • We have completed all the required steps to run our very own app except the firebase set up. Let’s do that so that we can finally run our app.

Obtaining a google maps API key

  • Go to google cloud console by clicking the following link. Select your project and click on open. Let’s open My Food App. https://console.cloud.google.com

    Visual Studio

  • Click on side menu and select API and Services and click on Dashboard.

    Visual Studio

  • Click on ENABLE API AND SERVICES . Activate following apis to get started.

    Visual Studio

  • Click on the navigation menu, select API & Services and click on credentials and On the Credentials page, click Create credentials > API key.

    Visual Studio

  • To make the APIs work you need to link a billing account or create a billing account.

    Visual Studio

  • Start creating a billing account by clicking CREATE BILLING ACCOUNT.

    Visual Studio

  • Accept terms of service and click on continue.
  • Then add personal and payment details and click on START MY FREE TRIAL .
  • After this we are ready to use the MAP API key in the app.

    Visual Studio

    Visual Studio

    Visual Studio

Setting up the firebase for android

  • Go to firebase console by clicking on the following url. https://console.firebase.google.com/
  • Sign in to your google account, after successful login , you will land into the firebase console home page.

    Visual Studio

  • Click on Create a project, provide a project name, accept the firebase terms and click on continue.

    Visual Studio

  • Click on Continue

    Visual Studio

  • Choose the analytics location, accept the terms and conditions and click on create project.

    Visual Studio

  • Click on continue
  • Your new project is ready
  • Click on the highlighted icon to add your android app.

    Visual Studio

  • Provide the package name and register app and download the google-services,json file.

    Visual Studio

    Visual Studio

  • Click next -> next and then click Skip this step.

    Visual Studio

  • Click on Project settings.

    Visual Studio

  • Click on Cloud Messaging and note the server key , which you need to set in backend for notification purposes.

    Visual Studio

  • Now let’s set the google-services.json file we have just downloaded a while ago.
  • Go to Eatance\android\app and replace the old google-services.json file with the newly downloaded one.
  • Now to again run the command, react-native run-android to run the app.

Google Sign In Configuration

  • In order to use google sign in feature in the app, we have to create a web client ID, let’s discuss the steps below.
  • Login in to google cloud console, Expand the sidemenu, Select API and Services. Then choose Credentials from the drop-down.

    Visual Studio

  • In order to create an OAuth client ID , we shall create an OAuth consent screen first.
  • Select user type as External, Then click on “Create”. Fill up the required fields in next screen and click on “Save and Continue”

    Visual Studio

    Visual Studio

    Visual Studio

  • Choose required scopes as shown in the screenshot, Select test users if required and push the consent screen to production.

    Visual Studio

    Visual Studio

    Visual Studio

  • After setting up the consent screen, let’s create OAuth client ID. Choose Web application from the drop-down as shown in screenshot.

    Visual Studio

  • Fill up the required field and then click on “CREATE”

    Visual Studio

    Visual Studio

    Visual Studio

  • Copy the client ID and paste it in Eatance/app/utils/EDConstants.js as in above screenshot.
  • You need to add your signing keystore’s SHA256 key in firebase console as in below screenshot.

    Visual Studio

  • For more details please visit following links (1 and 2)

Facebook Sign In Configuration

  • To have facebook login feature in the app, we have to first sign up for facebook developer account. You can refer this link.
  • Once we have the developer account, we need to create an app on facebook. Choose “Consumer” as type and click on “Next”

    Visual Studio

    Visual Studio

  • Add basic details and click on “Create App”. We will see the app dashboard once app is created successfully.

    Visual Studio

  • Note the APP ID from top left corner amd copy that. Paste that in Eatance/android/app/src/main/res/values/strings.xml

    Visual Studio

  • Click on settings from side menu, fill up the basic details along with privacy policy URL and data deletion information URL and then click on “Save Change”.

    Visual Studio

  • To connect this app to our android package, we need to add our android app details in next step. Click on Add Platform button as shown in below screenshot and select android from list.

    Visual Studio

    Visual Studio

    Visual Studio

  • Enter package name and class name along side with key hashes. And click on “Save changes”.
  • Key hashes are nothing but base64 encoded value of SHA1 key or your android keystore (You need to add both debug as well as release keystore hash).
  • Follow this website to get keyhash of your SHA1 key.

    Visual Studio

  • Now we are ready to use facebook sign in in our app. You can test with sample test users as in sample screenshot. Don’t forget to make the app live once you complete your testing.

    Visual Studio

Creating a signed app for play store release

  • To upload an app to the play store we need to create a signed aab (android app bundle )for the project. In this section we will describe the step by step process to create a signed aab.
  • First click on Build on the menu bar in Android Studio, then click on generate signed bundle/ APK.
  • Select Android App Bundle and click on Next.

    Visual Studio

  • Click on Create new

    Visual Studio

  • Create new option is to be selected from this. You will see a dialogue like below:

    Visual Studio

  • Fill out required details and click on Ok. Remember that once a keystore file is created and the application is uploaded to Play Store, then you will always need this .jks file in order to upload a new version of the same app in future. So please save it safely with you.
  • Select the newly created keystore, add alias , password and click Next.

    Visual Studio

  • Select the following options and click on Finish.

    Visual Studio

  • On successful run, aab will be generated in the following folder Eatance\android\app\release with name app-release.aab.

iOS Configuration

Setting up React Native

  • The entire document is considering the assumption that you are operating on a Mac OS system.
  • As our project is based on react native, we need to set up react native to run the project.
  • To ensure easy run of the project , you are advised to install the following softwares in your pc.
    1. Visual studio code
    2. Node JS 14.x.x or higher
    3. XCode 11.0 or higher
  • Download visual studio code from the following URL https://code.visualstudio.com/download

    Download visual studio

  • Download the Node JS from the following URL https://nodejs.org/en/download/

    Download Node Js

  • After installing the above software, we are now ready to open the project in the visual studio code.

React Native Setup

  • For installing React Native on your Mac, please follow the guidelines from the React Native Environment Section. There are 2 options for the setup:
    1. React Native CLI Quickstart - Consider this for setup purpose.
    2. Expo CLI Quickstart

CocoaPods Setup

  • In order to compile the app on iOS, you first need to have CocoaPods setup done in your system. We are considering the Mac OS BigSur 11 or Higher for this write-up.
  • CocoaPods manages library dependencies for your Xcode projects.
  • CocoaPods is built with Ruby and it will be installable with the default Ruby available on macOS.
  • Using the default Ruby install will require you to use sudo when installing gems.
  • Open Terminal application on your Mac and type below command
    • $ sudo gem install cocoapods
  • If you encounter any problems during installation, please visit this guide.

Setting Up New React-Native Project

  • In this section, we will learn how to set-up a new react-native project. Use the following command to create a new project with rn version 0.63.4
    npx react-native init Eatance --version 0.63.4 (Eatance can be replaced with your project/app name)
  • During the project creation, it would create default android and ios directories. You need to remove those folders and replace them with the ones in the provided source code.
  • After the project gets created successfully, copy paste the following files into the main directory (Your app name folder), some files already there when you create a new project with the help of the above command then just replace your new files with our files.
    • Main folder (app folder)
    • App.js
    • app.json
    • index.js
    • babel.config.js
    • metro-config.js
  • Once these steps are done, we need to install node modules using the following command. Please do not change any library versions. Make sure we keep the same versions as in the provided package.json
    • npm install
  • Now we are all set to proceed for further native setup process.

Setting up Pofile in ios folder

  • In this section, we will learn how to set-up a pod file in iOS Folder
  • go to the Main folder (Eatance - Your project folder) -> ios -> open Podfile
  • Once the Podfile will open top of that file contains 2 lines requires_relative not change anything in it keep it same, after that you will find platform: ios, ‘11.0’ this is supported iOS version for your application you can change it minimum 11 and maximum 12 just keep it 11 is good as now.
  • Then target ‘Eatance’ (Your project name) do not change anything in this.
  • Just copy the following lines from our Podfile (Provided code files).

    config = use_native_modules!

    use_react_native!(:path => config["reactNativePath"])

    permissions_path = '../node_modules/react-native-permissions/ios'

    pod 'Permission-Camera', :path => "#{permissions_path}/Camera.podspec"

    pod 'Permission-LocationAlways', :path => "#{permissions_path}/LocationAlways.podspec"

    pod 'Permission-LocationWhenInUse', :path => "#{permissions_path}/LocationWhenInUse.podspec"

    pod 'Permission-MediaLibrary', :path => "#{permissions_path}/MediaLibrary.podspec"

    pod 'Permission-Notifications', :path => "#{permissions_path}/Notifications.podspec"

    pod 'Permission-PhotoLibrary', :path => "#{permissions_path}/PhotoLibrary.podspec"

    pod 'Firebase/Crashlytics'

    pod 'Firebase/Analytics’

    After copying, your Podfile should look like below:

    Podfile

    If anything is wrong then you might miss something in the setup of the Podfile, just save the file (ctrl + s or command + s (mac)).

  • During the project creation, it would create default android and ios directories. You need to copy the files/folders from the android and ios folder in the source code provided by us and paste only those files/folders in the default android and ios folders keeping the rest files/folders intact. Please be extremely careful while doing this. Only the files provided by us should get replaced and the rest should remain intact.
  • Once these steps are done, we need to install node modules using the following command. Please do not change any library versions. Make sure we keep the same versions as in the provided package.json

Setting up Info.plist file ios folder

  • Open info.plist file from Eatance (Your project folder) -> ios -> Eatance (Your project name) -> Info.plist.
  • You need to add following permissions into info.plist file rest will remain same just add following keys with values

    Privacy - Media Library Usage Description

    Privacy - Camera Usage Description

    Privacy - Location Always and When In Use Usage Description

    Privacy - Location Always Usage Description

    Privacy - Location Usage Description

    Privacy - Location When In Use Usage Description

    Privacy - Photo Library Additions Usage Description

    Privacy - Photo Library Usage Description.(Just Copy key and values from our info.plist file to your info.plist file)

    info.plist file

Running in iOS

  • Open the project in the visual studio code with the following project structure.

    visual studio code

  • Since our project is having React Native v0.63.4, we do not need to link the libraries manually. As of React Native 0.60, all libraries get auto-linked at time of it’s installation. For linking in iOS, navigate to the iOS folder and install pods using the commands below (please ensure that Xcode is Closed before running below commands):
    • cd ios
    • pod install
  • In order to link the assets and fonts, run below command from the root folder and not ios folder:
    • react-native link
  • In order to run the application on an iOS simulator, execute the following command:
    • react-native run-ios
  • If you are unable to run the app for the first time, then execute the react-native run-ios command again and check as sometimes the Metro Bundler does not get activated on the first run. Still if you face any issues, then refer this link for Troubleshooting. If that does not help, then you can contact our Support Team and they will guide you further from this point.
  • Once we successfully run on the simulator device, you will like to change the bundle identifier according to your requirement.
  • To perform this, you need to finalize a package name, let in our case it be com.myappname
  • Open Eatance.xcworkspace file by double clicking it.
  • Follow the steps as shown in screenshot below and change the bundle identifier to com.myappname:

    com.myappname

  • In order to change the application name, perform the steps shown below:

    Change application name

  • In order to change the app icon, replace the icons in the folder shown below with same names and size:

    App Icon

  • The name of images represent the image resolution itself.
    • [email protected] means that it’s 2x resolution of 20 pixels. This means that the image should be of 40x40 dimension.
    • [email protected] means that it’s 3x resolution of 20 pixels. This means that the image should be of 60x60 dimension.
    • [email protected] should be of 1024x1024 dimension.
    • All images must be in PNG format and must be with a solid background. Transparent backgrounds will not be supported and Apple will not accept the application.
    • All images must be flat, meaning that the edges of any of the images should not be rounded.
  • In order to change the app icon, replace the icons in the folder shown below with same names:

    App Icon

    • The size of bg_splash should be 414x736. Hence, the size of [email protected] and [email protected] will be 828x1472 and 1242x2208 respectively.
    • All images must be in PNG format.
  • Now it’s time to prepare for the configuration of Apple Developer Account and setup your brand new application over there.

Create Bundle Identifier

  • Login into Apple Developer Portal. The document is done considering the fact that you have an Apple Account, which is enrolled in the Apple Developer Program.
  • On successful login, you should see the webpage like below:

    webpage

  • In case, you do not see such options, then it means that your Apple Account is not enrolled in the Apple Developer Program. Having said that account should be enrolled in the Apple Developer Program, we mean that you have a paid Apple Developer Account. More information regarding getting the Apple Developer Account and it’s Pricing can be accessed in the embedded links.
  • Every iOS application has a unique identifier, which is termed as bundle identifier. In order to upload the application to the App Store, you need to create a unique bundle identifier. The steps for creating a bundle identifier are as below:
    • Click on Certificates, Identifiers & Profiles from the above screenshot shared web page, and select Identifiers from the left panel. You will see a + button to register a new identifier.

      webpage

  • Next you will be shown a list of all types of identifiers that can be registered inside an Apple Developer Program. We need to select App IDs from the list as shown in the screenshot below:

    register identifier

  • Click Continue and then you will be asked to enter the Description of the bundle identifier. The name of the application pertaining to the registered bundle identifier needs to be entered here. For eg, MyAppName.
  • Apart from that, there is another option to select the type of bundle identifier. There are 2 types of bundle identifier:
    • Explicit (We are considering this type for the write-up)
    • Wildcard (For more info on this, please refer this link)
  • In the Bundle ID field, you can enter the bundle identifier that you want to keep. For eg, com.myappname. Below is the screenshot attached for reference:

    Bundle identifier

  • Below, there will be a section of Capabilities. Our application supports push notifications. So we need to select it from the list of Capabilities.

    register app id

  • Click Continue and Done.
  • We have completed the setup of Bundle Identifier. Next is generating Certificates.

Create Certificates

  • An iOS developer certificate is a code-signing certificate, a digital signature that associates you and your digital identity with your applications.
  • There are 2 types of certificates mainly
    • Developer Certificate
    • Distribution Certificate (We are considering this type for the write up)
  • A Distribution Certificate identifies your organization within a distribution provisioning profile and allows you to submit your app to the store.
  • Click on Certificates, Identifiers & Profiles from the above screenshot shared web page, and select Certificates from the left panel. You will see a + button to generate a new certificate.

    new certificate

  • Select 'iOS Distribution (App Store and Ad Hoc)' from the Software options, then click 'Continue'.

    iOS Distribution

  • Click 'Continue' again.
  • Click 'Choose File' and select the CSR file, if you previously created. The CSR stands for Certificate Signing Request. It digitally signs the certificate that you are going to create. Then click 'Continue'.
    • If you do not have a CSR file, then you will need to generate that first. Follow this link in order to generate a CSR file.

      CSR file

  • Click the 'Download' button to download a .cer file.

    Download-certificate

  • Double-click the .cer file to install it in Keychain Access and we are done. Next is to generate Provisioning Profile.

    install-certificate

Create Provisioning Profiles

  • A provisioning profile is a collection of digital entities that uniquely ties developers and devices to an authorized iPhone Development Team and enables a device to be used for testing.
  • Click on Certificates, Identifiers & Profiles from the above screenshot shared web page, and select Profiles from the left panel. You will see a + button to generate a new profile.

    generate-profile

  • Select the radio button next to “App Store” underneath the Distribution heading. This is the Provisioning Profile needed in order to be able to upload your app to App Store Connect. Then click on the 'Continue' button at the top.
  • Instead of the App Store, you can also select “Ad Hoc” underneath the Distribution heading. This is the Provisioning Profile needed in order to be able to distribute your application to a predefined list of iOS devices. For more info on adding test devices, please refer to this link.

    register-profile

  • Next, you will be asked to select an App ID with which to associate this Provisioning Profile. Click on the drop-down list and select the App ID that belongs to your app, com.myappname in our case. Then click the 'Continue' button.

    Provisioning Profile

  • Next, you will be asked to select the Distribution Certificate that this Provisioning Profile will be linked to. Most likely, you will have only one. Select the certificate that we created before by clicking on the radio button next to it. Then click 'Continue'.

    Distribution Certificate

  • The final step is to give this Provisioning Profile a name. It is best to give it the same name as your app. You can also include today’s date, to document the date of creation. Then click on 'Generate'. We are done setting up the Provisioning Profile. Now it’s time to generate the push notification certificate.

    Provisioning Profile

Create Push Notification Certificates

  • A Push Notification Certificate is necessary in order to send push notifications to attendees via your app. In order to create a Push Notification Certificate, follow the steps below.
  • Select 'Identifiers', locate your app, and click on the name.

    Push Notification

  • Scroll down the page to "Push Notifications" and click 'Configure'.

    Push Notification

  • A pop-up window will appear. Click on 'Create Certificate' under Production SSL Certificate.
    • Note: you can have up to three Push Notification Certificates under the Production SSL Certificate.

    Push Notification

  • Click 'Learn More' under "Upload a Certificate Signing Request" to learn how to create a Certificate Signing Request (CSR) file. Then go back to Apple Developer and click 'Choose File'.

    Push Notification

  • Use Finder to find your CSR file, select it, and click on 'Open' in the dialog window. It will now be visible in the browser. Click on 'Continue'; it will take a moment to show the next window.
  • Click on 'Continue'; it may take a moment to show the next window.
  • Your certificate is ready for download. Click on 'Download'.

    Push-Notification

  • Locate the downloaded file, called “aps.cer”, on your Mac and click on it. It will trigger Keychain Access to open.
  • To find the certificate in Keychain Access, you can use the Search field in the top-right of the dialog window. Type in the Bundle ID of the App ID. You can now confirm that the Push Certificate was correctly created, is valid, and has an associated private key.

    Push-Notification

  • Now, we also need to add the Push Notification capability in Xcode. Select Capabilities section in Xcode as shown in below screenshot:

    Push-Notification

  • After this, we need to select Push Notifications from the list of available Capabilities as shown in the screenshot below:

    Push-Notification

  • Next, you will export this certificate and save it as a .P12 file. First, you must unselect it in the list. Click somewhere below the certificate in an empty space in the Keychain Access dialog window.
  • Right-click on the certificate to show the contextual menu. In the menu that appears, select Export: "Apple Push Services...”
  • A dialog box will open. Select a location to save the file. Give it a recognizable name. For example, “appname_pushcert”. Then click 'Save'. Another dialog will open, asking you to enter a password, which will protect the P12 file. Type in "admin" and enter it twice as requested. Click 'OK'.
  • Another dialog will open, asking you to enter a password, which will protect the P12 file. Type in "admin" and enter it twice as requested. Click 'OK'.

    Push-Notification

  • Next, we will need to upload this appname_pushcert.p12 file in Firebase so it can communicate with APNS (Apple Push Notification Server). Note: Push Notification Certificates expire after 12 months. You will receive an email from Apple when that occurs. At that time you will need to create a new Push Notification Certificate by following the process mentioned above. Also, you will need a Mac computer in order to create your push notification certificate or else push messages won't work.

Create a Release Build

  1. Code Signing: Create an iOS distribution provisioning profile and distribution certificate
    • First, add your Developer Program account to Xcode if you haven’t already. From the top menu, select Xcode, then choose Preferences.
    • Click on Accounts. In the bottom left corner of the window, press the + sign, then Add Apple ID….
    • Enter the Apple ID and password you use for the Apple Developer Program, then click Sign In.
    • Next, make sure that you have placed the correct values for the bundle identifier under the Signing & Capabilities tab in Xcode.
    • Below is the reference screenshot for the same:

    Release Build

  2. Create an App Store Connect record for your app
    • Login into AppStore Connect portal.

      Release Build

    • ADD A NEW APP
      1. In the App Store Connect dashboard, select My Apps.
      2. Click on the + sign in the upper left-hand corner, then New App.
      3. To create a new App Store Connect record, you’ll need these details: platform, app name, default language, bundle ID, and SKU. You can’t really change these details later, so be sure of what you enter.
      4. Use keywords in your app name to optimize for discovery.
      5. The bundle ID must be an exact match of the bundle identifier in your Xcode project Info.plist file (in the target’s General > Identity section).
      6. The SKU is not visible to users and is up to you to set. It can be an identifier you use in your company or something else that is meaningful for you. Acceptable characters include letters, numbers, hyphens, periods, and underscores, and it must begin with a letter or number.

      Release Build

  3. Archive and upload your app using Xcode
    1. Before you can submit your app for review through App Store Connect, you need to upload the build through Xcode.
    2. In Xcode, select Generic iOS Device as the deployment target.
    3. Choose Product from the top menu and click on Archive.
    4. The Xcode Organizer will launch, displaying any archives you’ve created in the past.
    5. Make sure the current build is selected and click on Upload to App Store in the right-hand panel.
    6. Select your credentials and click Choose.
    7. In the next window that appears, click on Upload in the bottom right-hand corner.
    8. A success message will appear when the upload has completed. Click Done.
  4. Configure your app’s metadata and further details in its App Store Connect record
    1. Under the “App Store” tab in App Store Connect, in the “App Information” page you can add additional languages, categories, and your app’s Privacy Policy URL.

      Release Build

    2. Set your app as free or select its price tier on the “Pricing and Availability” page.
    3. At this stage, your app is marked with a yellow dot and the status “Prepare for Submission” in the left-hand panel under “App Store”. Select the build you want to configure. This is where you will add the information for your product page on the App Store.

      Release Build

    4. Upload your app’s screenshots (in JPEG or PNG format and without status bars). You can upload a set of screenshots for one device and use them for all the other sizes.
    5. Click on Save in the upper right-hand corner of the window after your screenshots have finished uploading.
    6. Scroll down and enter your app’s description, keywords, support URL, and marketing URL.
    7. Your app’s description and keywords are critical. Make sure you optimize them for discovery.
    8. The support URL can be as simple as a landing page with a contact form.
    9. The marketing URL can be your app’s website and is optional.

      Release-Build

    10. In the “General App Information” section below, upload your app’s icon, enter its version number, and copyright and contact information.
    11. The version number should exactly match the one in Xcode.
    12. The copyright info typically looks like this: “Copyright (c) 2020, Company Name”
    13. The contact info here is what will be displayed to users.
    14. Click on Edit next to “Rating” and select the applicable options for your app. Be honest — your app can be rejected during review if it doesn’t match its rating.

      Release-Build

    15. Under the “App Review Information” section, enter your contact info, any notes you have for the reviewer, and set the version release date.
    16. The contact information here is for the reviewer in case they need to reach you directly.
    17. Notes for the reviewer can include information about specific hardware they might need to use or user account information they might need for access.
    18. For first releases, you should typically leave the version release date as automatic.
    19. In the top right-hand corner, click Save. Now you’re almost ready to “Submit for Review”.
  5. Submit your app for review
    1. Scroll to the “Build” section in your app’s App Store Connect record.

      Release-Build

    2. Click on “Select a build before you submit your app.”
    3. Choose the build that you uploaded through Xcode. Click Done in the bottom right-hand corner, then Save in the top-right hand corner, then Submit for Review.

      Release-Build

    4. Finally, answer the Export Compliance, Content Rights, and Advertising Identifier questions and click Submit.

      Release-Build

    5. Your app’s status is now “Waiting For Review”.
  6. Check on the status of your app
    1. In App Store Connect, select Activity in the top horizontal menu, then App Store Versions in the left-hand panel.

      Release-Build

    2. HOW LONG DOES IT TAKE TO GET APP STORE APPROVAL?
      1. In most cases, it takes about one to three days to receive approval, and it can take up to 24 hours for your app to appear in the App Store after approval. Check current average app store review times here.
      2. You’ll receive e-mail notifications at each stage. Read more about each status here.
      3. If you’re on a tight timeline and need to align your release with a specific event or if you need to release a new version with an urgent bug fix, you can request an expedited review.
    3. IF YOUR APP IS REJECTED
      1. You’ll have to make the necessary fixes before you can submit your app again for review. Use the Resolution Center in App Store Connect to communicate with Apple about any questions you may have. You can also escalate the issue and submit an appeal if you believe your app was wrongly rejected.
      2. One of the most common reasons for rejections from the Apple App Store is performance. Make sure that your app is complete and that you’ve tested it thoroughly and fixed all bugs. Using a bug reporting tool while beta testing will help reduce your app’s chances of being rejected due to performance issues.
    4. IF YOUR APP IS APPROVED
      1. Congratulations! You’re now on the App Store. You can view downloads, sales, ratings, and reviews directly in App Store Connect.

      Release-Build

Obtaining a google maps API key

  • Go to google cloud console by clicking the following link. Select your project and click on open. Let’s open My Food App. https://console.cloud.google.com

    Visual Studio

  • Click on side menu and select API and Services and click on Dashboard.

    Visual Studio

  • Click on ENABLE API AND SERVICES . Activate following apis to get started.

    Visual Studio

  • Click on the navigation menu, select API & Services and click on credentials and On the Credentials page, click Create credentials > API key.

    Visual Studio

  • To make the APIs work you need to link a billing account or create a billing account.

    Visual Studio

  • Start creating a billing account by clicking CREATE BILLING ACCOUNT.

    Visual Studio

  • Accept terms of service and click on continue.
  • Then add personal and payment details and click on START MY FREE TRIAL .
  • After this we are ready to use the MAP API key in the app.

    Visual Studio

    Visual Studio

    Visual Studio

Firebase Setup

  1. Go to firebase console by clicking on the following url.
    https://console.firebase.google.com/
  2. Sign in to your google account, after successful login , you will land into the firebase console home page.

    Firebase-Setup

  3. Click on Create a project, provide a project name, accept the firebase terms and click on continue.

    Firebase-Setup

  4. Click on Continue

    Firebase-Setup

  5. Choose the analytics location, accept the terms and conditions and click on create project.

    Firebase-Setup

  6. Click on continue
  7. Your new project is ready
  8. Click on the highlighted icon to add your iOS app.

    Firebase-Setup

  • Provide the bundle identifier and register app and download the google-services,json file.

    Firebase-Setup

  • Download GoogleService-Info.plist

    Firebase-Setup

  • Add GoogleService-Info.plist in Xcode as shown in screenshot above.
  • Click next -> next and then click Skip this step .
  • Click on Project settings.

    Firebase-Setup

  • Click on Cloud Messaging and note the server key , which you need to set in backend for notification purposes.

    Firebase-Setup

  • Next go to Project Settings -> Cloud Messaging as shown in the screenshot below:

    Firebase-Setup

  • Scroll down to the iOS app configuration section and upload the p12 file that we exported before. At time of upload, we will need to enter the password, which we entered at time of exporting the p12 file. (Hint: We set the password as "admin”)

    Firebase-Setup

  • We are done with Firebase setup. In your Xcode project, move to AppDelegate.m file and add 2 lines as highlighted in the screenshot below and we are done with push notifications and Firebase setup:

    Firebase-Setup

Support Pre-requisites

Eatance Support team thanks and welcomes you onboard for a benevolent digital experience.

We’re committed to giving you the best support, and so we have worked on a solution for you.

  • You should have the following setup ready with you in your system before initiating the Restaurant Application Setup:
    1. Android Studio Complete Setup
    2. Xcode Code Support Path Set-up
    3. Visual Studio Set-up
    4. Node Set-Up (Please Find Reference: https://reactnative.dev/docs/environment-setup)
    5. React Native: (Please Find Reference 🙂
    6. Open/import projects in appropriate IDE.

After Payment, our team will start deploying the App via Remote Access; we would like to ensure that you perform the following Prerequisite.

  • You should have the following details to make your app live in the store
  • Name of the Application
  • Language to be supported (Client need to provide Content)
  • LOGO: 1024×1024 PNG Format
  • PSD/AI for splash screen OR a PNG image for it in 1242×2208 resolution
  • The primary/theme color to be considered for the application.
  • If you need to change the font, then provide the font family name. It will support a single font family. If you want to add multiple fonts, then you need to pay an additional customization charge.
  • Google Maps API key will be needed in all the cases to start work on the project/customization
  • If the back-end is not to be hosted on Evince server, then we will need cPanel access for the client’s server.
  • If the mobile apps are not uploaded from Evince accounts, we will need access to the client’s Apple Developer Account and Play Publish account. We will provide our e-mail address to a client, and he/she has to grant admin access
  • For his/her store accounts so we can function without having the dependency of 2 factor authentication (in the case of Apple) and e-mail verification (in the case of Google), leading to an increase in the turnaround time for project completion.
  • App category
  • Short & long description for play store.
  • Selected images to be uploaded.
  • For IOS, the UID must be appropriately linked.
  • If payment gateway integration then needs to support react-native SDK.
  • CPanel credential must support his CodeIgniter.
  • Server requirement for Eatance Restaurant App:
    1. Operating System – Linux
    2. Web Server – Apache
    3. Database – MySQL
Note:
  • All applications related to Healthcare or Medical category must be uploaded under the name of a registered medical organization or entity. Evince will not be responsible for iOS app publishing if your business is not registered under Registered Medical Organization or Entity.
  • If you own an Apple Developer Account in your restaurant’s name, then only Apple will accept your publishing application.
  • If you’re not able to follow these pre-requisites, you need to request additional paid support hours. You need to send us a request for paid support, and we will send you a link to purchase the paid hours.
  • Our Technical team will do the App Deployment for you after you pay for paid support.
  • To Get Installation Support, you need to provide Remote Access. If you fail to provide remote access, we will not be liable to refund the money paid for installation.
  • Before purchase, please ask for documentation from the support team. If you have any questions related to support, please contact to support team at [email protected].

In the “General App Information” section below, upload your app’s icon, enter its version number, and copyright and contact information.

The version number should exactly match the one in Xcode.

The copyright info typically looks like this: “Copyright (c) 2020, Company Name.”

The contact info here is what will be displayed to users.

Click on Edit next to “Rating” and select the appropriate options for your app. Be honest — your app can be rejected during the review if it doesn’t match its rating.

Under the “App Review Information” section, enter your contact info, any notes for the reviewer, and set the version release date.

The contact information here is for the reviewer in case they need to reach you directly.

Notes for the reviewer can include information about specific hardware they might need to use or user account information they might need for access.

For first releases, you should typically leave the version release date as automatic.

In the top right-hand corner, click Save. Now you’re almost ready to “Submit for Review.”

Submit your app for review
  1. Scroll to the “Build” section in your app’s App Store Connect record.

Click on “Select a build before you submit your app.”

Choose the build that you uploaded through Xcode.

Click Done in the bottom right-hand corner, then Save in the top-right hand corner, then Submit for Review.

Finally, answer the Export Compliance, Content Rights, and Advertising Identifier questions and click Submit.

Your app’s status is now “Waiting For Review.”

Check on the status of your app

  1. In-App Store Connect, selectivity in the top horizontal menu, then App Store Versions in the left-hand panel.

HOW LONG DOES IT TAKE TO GET APP STORE APPROVAL?
  1. In most cases, it takes about one to three days to receive approval, and it can take up to 24 hours for your app to appear in the App Store after approval. Check the app, and You’ll have to make the necessary fixes before submitting your app again for current average app store review times here.
  2. You’ll receive e-mail notifications at each stage. Read more about each status here.
  3. If you’re on a tight timeline and need to align your release with a specific event or if you need to release a new version with an urgent bug fix, you can request an expedited review.
IF YOUR APP IS REJECTED
  1. You’ll have to make the necessary fixes before you can submit your app again for review. Use the Resolution Center in App Store Connect to communicate with Apple about any questions you may have. You can also escalate the issue and submit an appeal if you believe your app was wrongly rejected.
  2. One of the most common reasons for rejections from the Apple App Store is performance. Make sure that your app is complete and that you’ve tested it thoroughly and fixed all bugs. Using a bug reporting tool while beta testing will help reduce your app’s chances of being rejected due to performance issues.
IF YOUR APP IS APPROVED

Congratulations! You’re now on the App Store. You can view downloads, sales, ratings, and reviews directly in App Store Connect.

Thank You for choosing us in your journey of building digital excellence and providing the best food ordering experience at the doorstep.

We warmly welcome you to our Eatance Family. We are committed to providing trusted and efficient support as a Consultant, Service Provider, and Solution Expert in the best possible manner.