How to Install Brand New Customized Magestore POS on Magento Cloud

Customized Magestore POS Package is the customer environment-specific package, it contains the Original POS Package that you are purchased and all customized works that we have done for you (including bug fixing, new features, integration with 3rd extension).

Notice

This guide applies to the brand new installation of Customized Magestore POS on your website (you don’t have any Magestore POS installed on your website yet). In case that you want to migrate from the old Magestore POS system or upgrade across lines of POS, please contact with Magestore Support Team to get a suitable guideline.

If you are looking for a guide to update Customized Magestore POS, it’s here.

Compatibility Check

Please check the link below to make sure that the POS version you are having is compatible with your current Magento version.

Prerequisite

Magestore POS Line 4 (POS Pro 4, POS Pro Commerce 4, POS Enterprise 4, POS Enterprise Commerce 4) requires MSI to be installed and enabled before installing the POS. You can follow the guide Install Inventory Management from Magento to install and enable MSI.

POS Installation

1. Checkout the branch at local

2. Place the package at Project Root Directory

3. Extract the package to Project Root Directory

1 2 cd <project_root_directory> tar -xf <package_name>

4. Add Laminas Barcode package

1 composer require laminas/laminas-barcode ^2.8

5. Configure deploy client app static at .magento.app.yaml

Check how many client app in your POS package

1 2 $ ls app/code/Magestore/Webpos/build/apps/ pos

As you can see here above there is only one app named pos you need to add the code block below to the file .magento.app.yaml

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 "/apps/pos": root: "app/code/Magestore/Webpos/build/apps/pos" allow: false scripts: false index: - index.html rules: \.(html|css|js|svg|json|map|hbs|gif|jpe?g|png|tiff|wbmp|ico|jng|bmp|svgz|midi?|mp?ga|mp2|mp3|m4a|ra|weba|3gpp?|mp4|mpe?g|mpe|ogv|mov|webm|flv|mng|asx|asf|wmv|avi|ogx|swf|jar|ttf|eot|woff|otf)$: allow: true passthru: "/get.php" "/apps/pos/static": root: "app/code/Magestore/Webpos/build/apps/pos/static" allow: true scripts: false passthru: "/front-static.php" rules: ^/apps/pos/static\d+/(?<resource>.*)$: passthru: "/static/$resource"

The result looks like this image

If you have any further application like clickandcollect or mobile_pos in the directory app/code/Magestore/Webpos/build/apps/, add the corresponding code with adjusted app name

6. Add changed file and push to remote

1 2 3 git add app/code/Magestore .magento.app.yaml composer.json composer.lock git commit -m "Init Magestore POS" git push origin <branch-name>

7. Waiting for deployment completed

8. Connect to the environment on Magento Cloud via SSH

9. Adjust Redis session configuration

Note: This is an optional configuration if you are using Redis for Magento Session.

  • Open file app/etc/env.php in your favorite editor

  • Scroll down to session section as below

Redis coniguration
  • Edit the value max_concurrency to a suitable number. Magento recommend we set that number by 10% of the number of PHP processes. If you don’t know that then try in the range from 6 to 24 is fine. For example 20.

10. Configure Message Queue

Note: Magestore POS default supported to work with Magento Message Queue with no special configuration needed (only need Magento Cron installed and running) if the POS you are having meets the below conditions

  • POS Enterprise Commerce >= v4.8.0

  • POS Enterprise >= v4.13.8

  • POS Pro Commerce >= v4.5.0

  • POS Pro >= v4.15.0

Read more: Configure Magento Message Queue

In case that you want to change the Message Broker to RabbitMQ so please follow the guide Configure Magestore POS to use RabbitMQ on Magento.

11. Run redeploy on from Magento Cloud CLI

12. Waiting for deployment completed