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
Checkout the branch for the appropriate environment at your local
Place the package in the Project Root Directory
Extract the package to the Project Root Directory
cd <project_root_directory> tar -xf <package_name>
Add Laminas Barcode package
composer require laminas/laminas-barcode ^2.8
Configure deploy client app static at
.magento.app.yaml
Check how many client apps are in your POS package
$ ls app/code/Magestore/Webpos/build/apps/ pos clickandcollect mobile_pos
The result above indicates that we have 3 client apps:
pos
,clickandcollect
,mobile_pos
. Let’s configure to deploy these apps.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
"/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
Do the same thing with other apps like
clickandcollect
,mobile_pos,
and so on.
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 editorScroll down to
session
section as belowEdit the value
max_concurrency
to a suitable number. Magento recommends 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.
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 conditionsPOS 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 QueueIn case you want to change the Message Broker to RabbitMQ so please follow the guide Configure Magestore POS to use RabbitMQ on Magento.
Set indexer mode on server to real-time
php bin/magento indexer:set-mode realtime
Add the changed file and push it to the remote
git add app/code/Magestore .magento.app.yaml composer.json composer.lock git commit -m "Init Magestore POS" git push origin <branch-name>
Waiting for deployment completed
Set indexer mode back to the schedule
php bin/magento indexer:set-mode schedule