I’m pleased to announce CoCart v3 is now available. It’s my biggest release yet for CoCart and may be a while before I release any further updates as I get CoCart Pro ready for it’s next big update.
This release brings a new API providing more than before. Thanks to the amazing feedback from users, CoCart v3 brings a much better cart response designed for all with an all-new flow experience, new options and support for developers to utilize.
Adding grouped products is also now possible while adding variable products has become simpler. Error validation has also be improved so even the smallest of errors caused, a developer can get a clear explanation as to what went wrong.
Basic authentication is also now built in with additional support for use of email address for the username. So you don’t have to use the JSON Basic Authentication plugin no more which is also outdated.
Updating to the new API is simple and makes building your headless store easier than before. Most parameters are the same, other parameters have changed for the better including the default values.
Simply follow the upgrade guide and your good to go.
If your not new to CoCart I think your going to love this update. If you are new to CoCart, well I can already feel your smile of appreciation.
What’s New with CoCart v3?
- 🥇 NEW: API v2 with new routes to help with the flow.
- 💯 NEW: Better cart response based on the experimental free add-on “Get Cart Enhanced“.
- ⛓️ NEW: Carts can sync for guest customers between app and web once “Load Cart from Session” feature has been used.
- 🔑 NEW: Basic Authentication now built in with the ability to authenticate via email instead of username. 🥳
- 🔒 NEW: Each route can be forced to check if the user (meaning only a logged in user) has permission to use the API. This requires the use of a new filter. See article for more information.
- 🔎 NEW: Browse and Search CoCart add-ons or supported extensions from the plugin install page.
- Search suggestions are added at the bottom of the plugin search results on the first page only if matching key words match.
- New plugin install section “CoCart” displays information on available add-ons or supported extensions with compatibility information and links to more details.
- 🧾 NEW: Support for TaxJar for WooCommerce plugin if you have v3.2.5 or above.
- 🚢 NEW: Support for WooCommerce Advanced Shipping Packages extension.
- 🎁 NEW: Support for WooCommerce Free Gift Coupons extension.
- 🗝️ NEW: Support for JWT Auth plugin by Useful Team.
- 🌗 NEW: Compatible with WP-GraphQL WooCommerce add-on.
- Tweaked: Session data now handled by new abstract to gain more control over it.
- Tweaked: Cart key now returns in the cart response the first time round. 🥳
- Tweaked: The loading of the session handler for better initialization by filtering it outside the action hook
woocommerce_loaded
. - Tweaked: Loading a cart from session is now prevented if a user is already logged in.
- Tweaked: Loading a cart from session is now prevented if a user is not logged in and the cart key requested matches any registered user.
- Tweaked: Cart session now stores when the cart was created, it’s source and hash.
- Tweaked: WooCommerce System Status Tools are made available even if
COCART_WHITE_LABEL
is set to true. - Deprecated: Redirect to cart after using load cart from session.
- Tested: ✔️ Compatible with WooCommerce v5.3
- Dev: 🐸 NEW Update database manually for CoCart via WP-CLI.
- Dev: 🐸 NEW Get the current version of CoCart via WP-CLI.
- Dev: Forked
get_customer_unique_id()
from WooCommerce session handler for backwards compatibility. Introduced to help with unit tests in WooCommerce since version 5.3. Not needed for CoCart.
There is a whole lot of action filters and hooks now available which you can view in the full changelog.
Minimum Requirements
PHP requirement has been bumped to v7.3 to ensure you are getting the best of CoCart. However, web hosts will soon be updating the default PHP version to v7.4 and deprecating support for PHP 7.3 and below. CoCart v3 is ready for that.
Documentation changes
New documentation for v3 is available so you can get stuck into using the new release asap. Wish to access documentation for the previous API version?
Database changes
This release does introduce changes to the CoCart session table to store when the cart was created, it’s source and cart hash.
If you have been keeping CoCart up to date until now then you will have no issues upgrading when your ready.
Just another warning encase you missed the first one.
If you have not updated CoCart to at least v2.9 then I must warn you. If you have large stores and you update CoCart directly to v3 ignoring previous patches, then the database upgrade will run automatically in the background without notice.
So please update to v2.9 before updating to v3 for a smoother upgrade process.