storekeeper / magento2-plugin
Storekeeper plugin
Installs: 164
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 1
Open Issues: 1
Type:magento2-module
Requires
- php: ^8.1 | ^8.2
- brick/money: 0.5.* | 0.6.* | 0.7.* | 0.9.*
- erusev/parsedown: v1.7.4
- magento/product-community-edition: ^2.4.6
- picqer/php-barcode-generator: *
- storekeeper/api-wrapper: ^6.2
- symfony/polyfill-uuid: *
- dev-master
- 2.1.75
- 2.1.74
- 2.1.72
- 2.1.64
- 2.1.56
- 2.1.55
- 2.1.52
- 2.1.21
- 2.1.12
- 2.1.10
- 2.1.9
- 2.1.6
- 2.1.5
- 2.0.3
- 2.0.0
- 1.5.0
- 1.4.13
- 1.4.12
- 1.4.11
- 1.4.10
- 1.4.9
- 1.4.8
- 1.4.7
- 1.4.6
- 1.4.5
- 1.4.2
- 1.4.0
- 1.3.2
- 1.3.0
- 1.2.5
- 1.2.1
- 1.2.0
- 1.1.0
- 1.0.0
- 0.0.4
- 0.0.3
- 0.0.1
- dev-CU-8696673ec_Incorrect-Data-Synced-Back-to-Magento-Shipping-ID-Issue
- dev-CU-8696395vb_Customer-export-stuck-in-progress
- dev-CU-869639bwt_NL-translation
- dev-CU-869635vzp_Product-activated-event-enabling-of-product-not-working
- dev-CU-86963x6ak_Correct-handling-of-Storekeeper-Product-Id-value
- dev-CU-869634tk2_Stock-update-send-saleable-stock-instead-of-real-stock
- dev-CU-869625p3u_Order-Sync-extend-Mass-action-logic
- dev-CU-86961w3vn_Catalog-Products-Export-error-during-matching-csv-headers
- dev-CU-869603bge_Import-consumer-handle-single-store-and-multi-store-modes
- dev-CU-86960rkx7_Sync-Order-column-Undefined-array-key-is_failed
- dev-CU-86960rkx7
- dev-CU-8695y2jwg_Category-sync-Integration-tests
- dev-CU-8695y1n8v_Category-sync-created-event-processed-incorrectly
- dev-CU-8695xnaqw_Golive-hotfixes
- dev-CU-8695we966_Product-Import-products-stuck-in-progress
- dev-CU-8695w5c7r_SK-backoffice-product-view-sales-channel-url-not-available
- dev-CU-8695kkahu_Product-sync-add-config-which-handles-images-sync
- dev-CU-8695khp2c_Product-sync-Ignore-description-with-img-media-tag
- dev-CU-8695jrbb6_Product-Stock-Management-handle-M2-stock-reservations
- dev-CU-8695jr6xp_Product-sync-attribute-type-boolean-processed-inorrectly
- dev-CU-8695jr1zn_Order-sync-filter-orders-by-order_detached
- dev-CU-8695j3pd9_Category-Export-handle-published-field
- dev-CU-8695f67cg_Product-Export-configurable_assign-activeinactive-status
- dev-CU-8695f68zt_Product-Export-image-duplicates-during-save-from-SK
- dev-CU-8695eburm_Blueprints-Export-multi-word-attribute-mapped-incorrectly
- dev-CU-8695f68nk_Product-Export-products-collection-sorting-with-images
- dev-CU-8695egybu_Attribute-Options-export-unable-to-create-options-for-certain-attribute-Diameter
- dev-CU-8695dwfja_Product-Import-No-variation-products-assinged-to-configurable
- dev-CU-8695e7fk4_Product-Import-handle-configurable-product-price
- dev-CU-8695dw0ju_Product-Import-Error-Value-should-be-more-than-0-when-in-stock
- dev-CU-8695d1mmp_Product-export-handle-configurable-products-kind-related-simple-product-and-its-type
- dev-CU-8695d1f8w_Product-export-update-main_categoryslug-and-extra_category_slugs
- dev-CU-86958xq6c_Category-Export-ignore-unsupported-images
- dev-CU-86957p1qv_Category-export-ignore-default-category
- dev-CU-86957jq90_Product-export-handle-description-field-content-during-export-and-import
- dev-CU-86957k3jx_Product-export-handle-vat-country-based-on-default-store-country
- dev-CU-86955x96a_Check-effect-of-images-categories-import-from-sk-to-magento
- dev-CU-8695717mp_Product-import-Incorrect-price-saved-on-Product-update-webhook
- dev-CU-86955wkrm_Product-export-correct-csv-structure-for-custom-attributes
- dev-CU-86955wjg0_Product-export-handle-product-with-gif-images
- dev-CU-86955wh2k_Category-Export-update-slug
- dev-CU-8694mf5ad_Preparations-for-pilot-customer
- dev-CU-86951qr16_Non-SK-Payments-sync
- dev-CU-86953m5xr_Update-Shipment-sync-Create-shipment-when-order-fully-shipped
- dev-CU-869516u69_Shipment-Tracking-Url
- dev-CU-86950b4bv_Order-shipment-sync-M2---SK-Integration-test-queue-removed
- dev-CU-86950b3em_Order-shipment-sync-M2---SK
- dev-CU-86950b4bv_Order-shipment-sync-M2---SK-Integration-test
- dev-CU-8694zgq2j_Order-sync-data-conflict-during-consumer-queues-processing
- dev-php8.1-m2.4.6-packages-compatibility
- dev-CU-8694x48m6_Correct-product-images-sync
- dev-test-release
- dev-CU-8694wv9cm_Extend-list-of-ignored-product-attributes-during-import
- dev-CU-8694wv8kf_Update-Resync-failed-orders-mass-action
- dev-CU-8694wv8a3_Disallow-order-sync-on-sync-mode-none-and-products
- dev-CU-8694eqmtm_Integration-Test-for-Custom-Shipping-Carrier
- dev-CU-8694eqmnw_Develop-Custom-Shipping-Carrier
- dev-CU-8694eqcrb_Add-and-verify-new-infohook-data
- dev-CU-861n2mugw_Error-on-order-synchronziation-dicounts-needs-to-have-sku-and-name
- dev-CU-8694eqfkb_Product-with-Variations-Magento-Configurable-Products-Integration-Test
- dev-CU-8694eqf2z_Product-with-Variations-Implementation-Magento-Configurable-Products
- dev-CU-8694qnez1_Attribute-Set-creation-during-Import
- dev-CU-8694eqfrr_Attribute-Import-logic
- dev-CU-8694eqg1h_Attribute-Import-Integration-Test
- dev-CU-8694eqn00_Task-logs
- dev-CU-8694eqn38_Sync-processing-status
- dev-CU-8694hw7j3_Order-sync-change-from-cron-to-consumer
- dev-CU-8694eqn1x_Event-logs
- dev-CU-861mzbffe_Check-the-queue-and-cron-is-running
- dev-8694eqeag-orderable-stock
- dev-8694eqgy8-downloadable-order-test
- dev-861n26rfb-clean-storekeeper-id-on-connect-disconnect
- dev-8694eqc95-update-docker-github-actions-m-247
- dev-brick-money-update
- dev-861mwafbu-initial-data-exports-from-magento
- dev-869487hd6-magento-data-export
- dev-861mu747r-unit-tests-in-docker
- dev-861mkv7wf-unit-tests-fixes
- dev-861mzbch2-add-check-for-the-tax-settings
- dev-861mkv7wf-unit-tests
- dev-861n2cbue-synchronizing-storekeeper-products-as-simple-products
- dev-861mzchda-order-payment-redirect
- dev-85zrzp9rt-resync-mass-action-on-orders-admin-grid
- dev-861mkv7wf-unit-tests-payload-example
- dev-861mvenr3-send-task-information-back-to-storekeeper
- dev-85zrzycay-refactor_helper_api_auth_class_into_service_contract
- dev-861mv5zp8-storekeeper-payments-with-refund
- dev-85zrzmqrq-cronjob-entity
- dev-85zrwx8jr-code-update-246
- dev-861mkt7z8-change-initial-connection-and-extra-info
- dev-861mkv8kv-adding-extra-payment-methods
- dev-861mc9j18-initial-code-changes
- dev-861mezejg-storekeeper-payment-gateway-integration
- dev-8677djn7f-bundle-config-products-combined
- dev-861mca4eg-update-composer-json-requirements
- dev-8677e8089-negative-stock-rewrite
- dev-develop
- dev-hotfix/20221205
- dev-staging
- dev-hotfix/20221202
- dev-hotfix/STORE-43
- dev-feature/STORE-53
- dev-acceptance
- dev-backup-staging
This package is auto-updated.
Last update: 2024-11-17 07:17:42 UTC
README
Connect your Magento 2 stores to StoreKeeper.
Important Notices
Before using module make sure that your shop have all tax rules, classes and rates configured accordingly to your shop's region. Please follow this official Magento guide.
If your project is using Multi-Source Inventory (MSI) functionality and/or MSI-related modules are enabled, please install this addon module.
Installation
- Go to your Magento 2 directory and install the plugin via
composer
:
composer require storekeeper/magento2-plugin
- Recompile your Magento 2 installation by running:
bin/magento setup:upgrade;
bin/magento setup:di:compile;
bin/magento setup:static-content:deploy;
bin/magento cache:clean;
Configuration
-
Log into your Magento 2 backend and go to
Stores
->Configuration
->StoreKeeper
->General
-
Select your store by navigating to the deepest level in the top left store navigation
-
Enable the plugin by setting the field
Enabled
toYes
-
Click button
StoreKeeper Connect
next toEnabled
, and you will be redirected to StoreKeeper Connection page -
Follow the onscreen instructions and enter your StoreKeeper account name
-
If it is valid - click
Connect
and you will be redirected to your StoreKeeper account Dashboard -
Get back to Magento admin
Stores
->Configuration
->StoreKeeper
->General
and clickRefresh store information
in order to receive Store ID and Store Name reserved by StoreKeeper for current integration
Sync Modes clarification
Current extension operates in one of 4 modes:
- None - No data exchange between M2 and Storekeeper systems
- Products - Only product related data will be synced (products creation, activation, deactivation and stock updates)
- Orders - Only orders related data will be synced (order body, statuses, items, payments, shipments) and products stock
- All - Combination of two methods described above
Sync mode can be adjusted under Stores
-> Configuration
-> StoreKeeper
-> General
-> Sync Mode
section
Notice: Order shipments created from Magento admin will be synced into StoreKeeper backoffice as Fully Delivered due to lack of shpimnet statuses between dispatched and delivered in Magento
Delivery Methods Configuration
In order to use StoreKeeper Multi-Carrier Shipping delivery option activate it under:
Stores -> Configuration -> Sales -> Delivery Methods -> StoreKeeper Multi-Carrier Shipping
After that all Shipping offers configured on your StoreKeeper backoffice will be available on Magento checout
Payment Methods Configuration
Payment methods avaliable via Storekeeper Payment Gateway can be activated in two places:
- As an option of StoreKeeper Payments payment method, available under:
Stores -> Configuration -> Sales -> Payment Methods -> Other Payment Methods -> StoreKeeper Payments (Yes/No)
In this case customer will see all Payment options activated on their storekeeper account.
2. As separate Payment option:
In order to display in Magento Checkout any of Payment Methods available on storekeeper account as an individual payment option, admin user needs to activate method under:
Stores->Configuration->Storekeeper->StoreKeeper Payments
In this case activated Payment Method(s) will appear as individual Payment Method option, and dissapear as sub-option on StoreKeeper Payments
Payment methods that does not have own logo will receive current store logo set in Content->Design->Configuration area of Magento admin panel
Export
Module allows to export such Magento entities as: Products, Customers, Categories, Attribute Sets, Attributes, Attribute Options, Blueprints (possible combinations of simple prodcuts for compose configurables).
Exported data saved as csv in a format suitable for StoreKeeper backend. Generating and downloading of it available by path: System->Data Transfer->StoreKeeper Export Data
All fields are premapped, while project-specific product attributes can be mapped via 'Featured Attributes' tab under: Stores->Configuration->Storekeeper->.Export
Notice: Barcode field by default mapped to SKU attribute, and will export sku's that meets EAN13 requirements as barcode mapped attribute.
If your store have dedicated custom barcode attribute - fell free to map it via Featured Attributes tab.
Queues
This plugin uses the Magento 2 queue consumer functionality. If you want to run queues manually you can use following commands:
Run consumer that handles StoreKeeper webhook events
bin/magento queue:consumer:start storekeeper.queue.events
Run consumer that handles Magento entities export for StoreKeeper
bin/magento queue:consumer:start storekeeper.data.export
Run consumer that orders sync process with StoreKeeper
bin/magento queue:consumer:start storekeeper.queue.sync.orders
Disconnecting
Disconnecting your Magento 2 store can be done in two ways
Disconnect from StoreKeeper
-
Log into your StoreKeeper environment
-
Select your StoreKeeper Sales Channel
-
Go to
Settings
-
Scroll down to the
Disconnect
button and click it
Disconnect from Magento 2
-
Log into your Magento 2 backend
-
Log into your Magento 2 backend and go to
Stores
->Configuration
->StoreKeeper
->General
-
Select your store by navigating to the deepest level in the top left store navigation
-
Click on
Disconnect from StoreKeeper
button at the bottom of current config section
Troubleshooting
Debugging
If you're having any issues using the plugin, the first thing to do would be checking the magento2/var/log/storekeeper.log
for any errors.
Tasks and Events Logging
Every incoming webhook event data are logged and can be reviewed under:
System -> Action Logs -> StoreKeeper Event Log tab.
This grid collects info about request route, body, method, action, response code and timesteamp of every incoming webhook.
Every StoreKeeper related task from mesage queue are logged under:
System -> Action Logs -> StoreKeeper Task Log tab.
This grid collects info about topic name, json-formatted request body, update time, status and number of trials made by Magento core queue managed in order to complete task.
Task log registers every addition of order to sync queue, its processing, as well as every operation with product sync (import, export, updates)
Running integration tests
-
Prepare your enviroment according to Magento 2 integration testing documentation https://developer.adobe.com/commerce/testing/guide/integration/
-
To run integration tests from a specific directory tree in Magento 2, use the following command:
cd dev/tests/integration
../../../vendor/bin/phpunit ../../../vendor/storekeeper/magento2-plugin/Test/Integration
- To run a single test class in Magento 2, use the following command:
cd dev/tests/integration
../../../vendor/bin/phpunit ../../../vendor/storekeeper/magento2-plugin/Test/Integration/OrderCreationTest.php