Hello JoomShaper Support,
I am currently developing a custom shipping carrier plugin for EasyStore, following your developer documentation and the sample shipping plugin provided.
I have successfully achieved the following:
- Installed the sample-based plugin successfully in Joomla 5.
- Activated the plugin successfully.
- Confirmed that EasyStore recognises the plugin as a shipping carrier.
- Confirmed that the carrier configuration screen loads correctly.
- Confirmed that custom plugin parameters (API key, Site ID, package defaults, etc.) can be saved successfully.
However, I have encountered an issue when testing the checkout process.
The carrier appears correctly in the EasyStore administration area, but during checkout no shipping options are returned.
While investigating, I noticed that the sample plugin implementation appears to use an older event style:
onEasyStoreGetShippingMethods($cart, $address)
However, the current EasyStore source code appears to use the newer Joomla event-based approach. For example, the current CommonShippingPlugin.php contains:
abstract public function onEasyStoreGetShippingMethods(Event $event);
and the shipping calculation code appears to dispatch the event and then retrieve results from the event argument:
$shippingMethods = $event->getArgument('shippingMethods');
This suggests that the sample plugin may relate to an earlier EasyStore release and may not match the current Joomla 5 / latest EasyStore architecture.
Could you please confirm the correct implementation approach for the current EasyStore version?
If available, could you please provide a current sample shipping carrier plugin compatible with:
- Joomla 5
- Latest EasyStore release
- The current event-driven plugin architecture
This would be greatly appreciated.
Thank you for your assistance.
Kind regards,
Bruce