LokiCheckout_ShipperHQEnhanced
This is an add-on package to the LokiCheckout to integrate the ShipperHQ Enhanced Checkout into the checkout. The integration offers custom GraphQL calls to sync the state of Magento with the remote ShipperHQ API. It also supports selectable options like delivery type.
Installation
Install this package via composer (assuming you have setup the composer.yireo.com repository correctly already):
composer require loki-checkout/magento2-shipper-hq-enhanced
Next, enable this module:
bin/magento module:enable LokiCheckout_ShipperHQEnhanced
Support
For getting support, create an Issue under the following project URL:
https://gitlab.yireo.com/loki-checkout/LokiCheckout_ShipperHQEnhanced.git
Loki Components
The following LokiComponents are created or references in this module:
loki-checkout-shipper-hq-enhanced.methods.shipperhq-enhanced.component
Module Dependencies
The following dependencies are declared in the module its `etc/module.xml` file:
LokiCheckout_Core
Loki_Base
Loki_Components
Loki_CssUtils
Loki_FieldComponents
Loki_MapComponents
Magento_Backend
Magento_Catalog
Magento_CatalogInventory
Magento_Checkout
Magento_CheckoutAgreements
Magento_Cms
Magento_Config
Magento_Customer
Magento_Directory
Magento_Eav
Magento_Indexer
Magento_Newsletter
Magento_Payment
Magento_Quote
Magento_Sales
Magento_SalesRule
Magento_Shipping
Magento_Store
Magento_Tax
Magento_Vault
ShipperHQ_Server
Yireo_CspUtilities
Composer details
LokiCheckout_ShipperHQEnhancedloki-checkout/magento2-shipper-hq-enhanced
ext-json: *
loki-checkout/magento2-core: ^2.1
loki/magento2-components: ^2.2
loki/magento2-css-utils: ^1.0
magento/framework: ^103.0
magento/module-catalog: ^104.0
magento/module-checkout: ^100.4
magento/module-customer: ^103.0
magento/module-quote: ^101.2
magento/module-store: ^101.1
shipperhq/module-shq-server: ^20.17
Releases
| 1.0.15 | 12 June 2026 |
| 1.0.14 | 12 June 2026 |
| 1.0.13 | 12 June 2026 |
| 1.0.12 | 12 June 2026 |
| 1.0.11 | 12 June 2026 |
| 1.0.10 | 12 June 2026 |
| 1.0.9 | 12 June 2026 |
| 1.0.8 | 12 June 2026 |
| 1.0.7 | 12 June 2026 |
| 1.0.6 | 12 June 2026 |
| 1.0.5 | 12 June 2026 |
| 1.0.4 | 12 June 2026 |
| 1.0.3 | 12 June 2026 |
| 1.0.2 | 12 June 2026 |
| 1.0.1 | 12 June 2026 |
| 1.0.0 | 12 June 2026 |
Changelog
[1.0.15] - 04 June 2026
Fixed
- Only reset ShipperHQ quote data when there is existing SHQ state to discard
- Rewrite DI plugin to make usage of
isShipperHQMethodutil - Make sure deleteTransactionId is true
[1.0.14] - 02 June 2026
Fixed
- When resetting all, also reset transaction ID in session
- If there are no shipments, do not make the final GQL call
- Exclude new
labelandpricefrom GQL query - Rewrite quote reset towards event
loki_checkout_shipping_method_update - Reset SHQ details when SHQ is not the selected method
[1.0.13] - 21 May 2026
Fixed
- Save price and label of rate for easier reusage
- Correct totals collection when dealing with multicarrier
- Add custom SelectedOptions repository to add label and price
- Do not bypass collectShippingRates but simply re-enter lost details
[1.0.12] - 21 May 2026
Fixed
- When component updates, always set the shipping method
- Prevent Address::collectShippingRates from resetting shipping method
- Additional translations
- Always pass shipping method validation when set to
multicarrier_multicarrier - Show custom sidebar also when method is
multicarrier_multicarrier - Fix typo in Alpine object
- Add unique ID to each carrier to avoid duplicates
[1.0.11] - 08 May 2026
Fixed
- Reset payment because of
\ShipperHQ\Server\Model\Carrier\Shipper::isInPlaceOrder()
[1.0.10] - 25 February 2026
Fixed
- Fix typo
[1.0.9] - 25 February 2026
Fixed
- Make sure
lokiCheckoutLocalStorage.cart_itemsexists - Remove shipping methods starting with
multicarrier
[1.0.8] - 24 February 2026
Fixed
- Fatal Error in SelectedOptionsViewModel when shipping method still empty
[1.0.7] - 20 February 2026
Fixed
- When changing options, make sure to re-save the shipping method
- Add
SelectedOptionsViewModel::getShippingMethod()helper - Fix 400 error in GraphQL query
- Loop through shipping rates by carrier
- Performance improvements
- Make sure shipping rate resembles label in sidebar
SelectedOptionsViewModel::isShipperHQShipment()did not return boolean but int- Fix carriers not being returned
[1.0.6] - 19 February 2026
Fixed
- Int was compared with string
- Make sure to refresh
loki-checkout.shipping.methods - Override
method_infoin sidebar for SHQ specific details - Remove old React build script
- Invalid call to shipments
[1.0.5] - 16 February 2026
Fixed
- Fix wrong variables for GraphQL mutation
- Extend ViewModel from CheckoutViewModel for better step-behaviour
- Make call to Alpine.store('LocalStorage').get('loki-checkout') async
[1.0.4] - 16 February 2026
Fixed
- Retrieve all cart items once
- Prevent multiple shipping rate radiobox-options from being selected
- Move cartType and requestedOptions in public method to allow for DI plugin
- Move attribute types into DI type configuration
- Update all CSS classes to include
$css() - Prevent null value from breaking options display in sidebar
- Sort all shipping rates by price
[1.0.3] - 03 February 2026
Fixed
- Make sure monetary units are rendered in cents
[1.0.2] - 13 January 2026
Fixed
- Add
$css()wrapper to PHTML templates - Improve layout and add matched products per shipment
- Finalize multi-shipping
[1.0.1] - 21 November 2025
Fixed
- Split blocks in smaller parts
- Add address detail for pickup location
- Update README
[1.0.0] - 19 November 2025
Added
- Integration based on AlpineJS
- Custom GraphQL calls to ShipperHQ API
- Support for selectable options (SELECT-only)
- Address Type option (business / residential)
- Check for cart items without weight
- Check for incomplete address
[dev] - March-October 2025
- Initial versions based on React