This guidance only apply for POS Enterprise

Take a backup

Backup is always a good way to go back if we do something wrong with the system, don’t forget to do that before making any change to your system

Disable Magestore modules

  1. Turn on maintenance mode

    php bin/magento maintenance:enable

  2. Switch to developer mode

    php bin/magento deploy:mode:set developer

  3. Remove cron

    php bin/mageto cron:remove

  4. Disable all Magestore modules

    php bin/magento module:status | grep -i 'Magestore' | xargs php bin/magento module:disable

Remove data

  1. Login to your database

  2. Turn off foreign key checks

    SET FOREIGN_KEY_CHECKS=0;

  3. Drop tables created by Magestore modules
    (blue star) You can ignore tables that do not exist

    DROP TABLE IF EXISTS credit_code;
    DROP TABLE IF EXISTS credit_transaction;
    DROP TABLE IF EXISTS customer_credit;
    DROP TABLE IF EXISTS giftcard_template;
    DROP TABLE IF EXISTS giftvoucher;
    DROP TABLE IF EXISTS giftvoucher_credit;
    DROP TABLE IF EXISTS giftvoucher_credit_history;
    DROP TABLE IF EXISTS giftvoucher_customer_voucher;
    DROP TABLE IF EXISTS giftvoucher_history;
    DROP TABLE IF EXISTS giftvoucher_product;
    DROP TABLE IF EXISTS giftvoucher_sets;
    DROP TABLE IF EXISTS giftvoucher_template;
    DROP TABLE IF EXISTS ms_stocktaking;
    DROP TABLE IF EXISTS ms_stocktaking_archive;
    DROP TABLE IF EXISTS ms_stocktaking_archive_item;
    DROP TABLE IF EXISTS ms_stocktaking_item;
    DROP TABLE IF EXISTS os_adjuststock;
    DROP TABLE IF EXISTS os_adjuststock_product;
    DROP TABLE IF EXISTS os_barcode;
    DROP TABLE IF EXISTS os_barcode_created_history;
    DROP TABLE IF EXISTS os_barcode_template;
    DROP TABLE IF EXISTS os_dropship_cancel;
    DROP TABLE IF EXISTS os_dropship_cancel_item;
    DROP TABLE IF EXISTS os_dropship_request;
    DROP TABLE IF EXISTS os_dropship_request_item;
    DROP TABLE IF EXISTS os_dropship_shipment;
    DROP TABLE IF EXISTS os_dropship_shipment_item;
    DROP TABLE IF EXISTS os_dropship_supplier_pricelist_upload;
    DROP TABLE IF EXISTS os_dropship_supplier_shipment;
    DROP TABLE IF EXISTS os_fulfilsuccess_batch;
    DROP TABLE IF EXISTS os_fulfilsuccess_package;
    DROP TABLE IF EXISTS os_fulfilsuccess_package_item;
    DROP TABLE IF EXISTS os_fulfilsuccess_packrequest;
    DROP TABLE IF EXISTS os_fulfilsuccess_packrequest_item;
    DROP TABLE IF EXISTS os_fulfilsuccess_pickrequest;
    DROP TABLE IF EXISTS os_fulfilsuccess_pickrequest_item;
    DROP TABLE IF EXISTS os_increment_id;
    DROP TABLE IF EXISTS os_inventorytransfer;
    DROP TABLE IF EXISTS os_inventorytransfer_product;
    DROP TABLE IF EXISTS os_inventorytransfer_receive;
    DROP TABLE IF EXISTS os_inventorytransfer_receive_product;
    DROP TABLE IF EXISTS os_ordersuccess_batch;
    DROP TABLE IF EXISTS os_purchase_order;
    DROP TABLE IF EXISTS os_purchase_order_code;
    DROP TABLE IF EXISTS os_purchase_order_history;
    DROP TABLE IF EXISTS os_purchase_order_invoice;
    DROP TABLE IF EXISTS os_purchase_order_invoice_item;
    DROP TABLE IF EXISTS os_purchase_order_invoice_payment;
    DROP TABLE IF EXISTS os_purchase_order_invoice_refund;
    DROP TABLE IF EXISTS os_purchase_order_item;
    DROP TABLE IF EXISTS os_purchase_order_item_received;
    DROP TABLE IF EXISTS os_purchase_order_item_returned;
    DROP TABLE IF EXISTS os_purchase_order_item_transferred;
    DROP TABLE IF EXISTS os_return_order;
    DROP TABLE IF EXISTS os_return_order_item;
    DROP TABLE IF EXISTS os_return_order_item_transferred;
    DROP TABLE IF EXISTS os_supplier;
    DROP TABLE IF EXISTS os_supplier_pricinglist;
    DROP TABLE IF EXISTS os_supplier_product;
    DROP TABLE IF EXISTS os_warehouse;
    DROP TABLE IF EXISTS os_inventory_movement;
    DROP TABLE IF EXISTS os_order_potential_error;
    DROP TABLE IF EXISTS pos_order_aggregated_created;
    DROP TABLE IF EXISTS pos_order_aggregated_updated;
    DROP TABLE IF EXISTS pos_order_payment_aggregated;
    DROP TABLE IF EXISTS reportsuccess_bookmark;
    DROP TABLE IF EXISTS reportsuccess_cron_manual;
    DROP TABLE IF EXISTS rewardpoints_customer;
    DROP TABLE IF EXISTS rewardpoints_rate;
    DROP TABLE IF EXISTS rewardpoints_rule;
    DROP TABLE IF EXISTS rewardpoints_transaction;
    DROP TABLE IF EXISTS type_transaction;
    DROP TABLE IF EXISTS webpos_action_log;
    DROP TABLE IF EXISTS webpos_authorization_role;
    DROP TABLE IF EXISTS webpos_authorization_rule;
    DROP TABLE IF EXISTS webpos_cash_denomination;
    DROP TABLE IF EXISTS webpos_cash_transaction;
    DROP TABLE IF EXISTS webpos_category_deleted;
    DROP TABLE IF EXISTS webpos_customer_deleted;
    DROP TABLE IF EXISTS webpos_location;
    DROP TABLE IF EXISTS webpos_order;
    DROP TABLE IF EXISTS webpos_order_deleted;
    DROP TABLE IF EXISTS webpos_order_payment;
    DROP TABLE IF EXISTS webpos_order_payment_error;
    DROP TABLE IF EXISTS webpos_payment_offline;
    DROP TABLE IF EXISTS webpos_pos;
    DROP TABLE IF EXISTS webpos_product_deleted;
    DROP TABLE IF EXISTS webpos_session;
    DROP TABLE IF EXISTS webpos_shift;
    DROP TABLE IF EXISTS webpos_staff;
    DROP TABLE IF EXISTS webpos_stripe_terminal_connected_reader;
    DROP TABLE IF EXISTS webpos_performance_aggregated;
    DROP TABLE IF EXISTS webpos_performance_track;

  4. Turn on foreign key checks

    SET FOREIGN_KEY_CHECKS=1;

  5. Delete attributes created by Magestore modules

    DELETE FROM `eav_attribute`
    WHERE `attribute_code` IN ('mac', 'storecredit_type','storecredit_rate', 'storecredit_value', 'storecredit_from', 'storecredit_to', 'storecredit_dropdown',
    'gift_template_ids', 'gift_type', 'gift_value', 'gift_price', 'gift_from', 'gift_to', 'gift_dropdown', 'gift_price_type', 'gift_code_sets', 'gift_card_type',
    'webpos_visible', 'created_location_id', 'customer_telephone', 'tmp_customer_id', 'sub_id');

  6. Remove registered module

    DELETE FROM `setup_module` WHERE `module` LIKE 'Magestore%'

  7. Remove patches applied

    DELETE FROM patch_list where patch_name like 'Magestore%';

Remove module code and dependencies

  1. Remove code

    rm -rf app/code/Magestore pub/apps

  2. Remove 3rd module dependencies
    (blue star) If you have any modules that depend on the Magestore modules, you need to disable or remove them in this step too.

  3. Run compilation

    php bin/magento setup:di:compile

  4. Turn on production

    php bin/magento deploy:mode:set production

  5. Install cron

    php bin/magento cron:install

There you go, you have completely removed Magestore POS