=== Express Label Maker ===
Contributors: expresslabelmaker
Tags: woocommerce, shipping, label printing, shipping labels
Requires at least: 5.3
Tested up to: 6.9
Requires PHP: 7.3.3
Stable tag: 26.1.12.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Print shipping labels and track parcels for multiple couriers directly from WooCommerce.

== Description ==

Express Label Maker connects your WooCommerce store with your shipping carriers so you can generate labels and track parcels without leaving the Orders screen.

The plugin adds buttons and bulk actions directly to WooCommerce orders, allowing you to:

* generate single or multiple shipping labels,
* download and print labels in one click,
* send parcels for collection (where supported),
* track parcel statuses from within WooCommerce.

Currently supported couriers:

* DPD Croatia
* GLS Croatia
* Overseas Express
* Croatian Post (Hrvatska pošta)

Both legacy orders and High-Performance Order Storage (HPOS) are supported.

= Key features =

* Print individual labels directly from the order actions column.
* Bulk-generate labels for multiple orders at once.
* Automatically fetch and display parcel status (where available).
* Filter orders by parcel status using a custom filter in the Orders list.
* Parcel locker / parcel shop selection for supported carriers.
* Separate tabbed settings pages for each carrier.
* Works with both legacy WooCommerce orders and HPOS.

= Checkout compatibility =

* Parcel locker / parcel shop selection is integrated into the **classic WooCommerce checkout** (shortcode-based checkout) via the `woocommerce_after_shipping_rate` hook.
* Parcel locker selection is **not currently compatible** with the new **React-based Cart & Checkout blocks (WooCommerce Checkout blocks)**. If you need parcel lockers on checkout, use the classic checkout instead of the block-based one.

= External services and data usage =

This plugin relies on ExpressLabelMaker.com (a third-party service) to generate shipping labels, manage label credits, and optionally provide documentation links inside the plugin. An ExpressLabelMaker.com account and a service key are required.

Terms of Use: https://www.expresslabelmaker.com/en/legal/terms-of-use
Privacy Policy: https://expresslabelmaker.com/en/legal/privacy-policy

The plugin may also connect to courier APIs for shipment creation, label generation and tracking (depending on your configuration):

* DPD Croatia web services
* GLS Croatia web services
* Overseas Express web services
* Croatian Post (Hrvatska pošta) web services

Data sent to these services typically includes order details such as:

* customer name and address,
* phone and email,
* order number,
* parcel weight and dimensions (where configured),
* selected parcel locker / parcel shop.

Please refer to each carrier’s privacy policy and to the ExpressLabelMaker.com Privacy Policy above for more information about how data is processed.

== Installation ==

1. Upload the plugin files to the `/wp-content/plugins/express-label-maker` directory or install the plugin through the WordPress “Plugins > Add New” screen.
2. Activate the plugin through the “Plugins” screen in WordPress.
3. Go to **WooCommerce → Settings → Express Label Maker**.
4. Open each carrier tab (DPD, GLS, Overseas, Croatian Post) and enter the credentials you received from the carrier (username, password, client number / API key, as applicable).
5. Make sure you enter the sender details in each carrier tab so labels can be generated correctly.
6. Save the settings.

Once configured, you will see new buttons and bulk actions on the WooCommerce Orders screen for generating and printing labels.

== Frequently Asked Questions ==

= Do I need a contract with the carrier? =

Yes. You must have an active account and the required API credentials for each carrier you want to use. These are provided by the carrier (DPD, GLS, Overseas Express, Croatian Post) and entered into the plugin settings.

= Does this plugin work with HPOS (High-Performance Order Storage)? =

Yes. Express Label Maker supports both legacy order storage and HPOS. You can safely enable HPOS in WooCommerce and continue using the plugin.

= Can I print labels for multiple orders at once? =

Yes. Use the bulk actions on the WooCommerce Orders list to generate labels for multiple selected orders and download them together.

= Does the plugin modify my shipping methods or rates? =

No. The plugin focuses on label generation and parcel tracking. Your shipping methods and rates are handled by WooCommerce and any shipping rate extensions you use.

= Does parcel locker selection work with the new WooCommerce Checkout blocks? =

Parcel locker / parcel shop selection is currently available only on the **classic shortcode-based WooCommerce checkout**, where it is injected below the shipping methods via `woocommerce_after_shipping_rate`.  
The new **React-based Cart & Checkout blocks (WooCommerce Checkout blocks)** are not supported for parcel locker selection at this time.

== Screenshots ==

1. Main Express Label Maker settings screen with carrier tabs.
2. WooCommerce Orders list with new label and tracking actions.
3. Bulk label generation for multiple orders.
4. Example of parcel status displayed in the order list.

== Changelog ==

= 25.12.12.1 =
* Initial public release on WordPress.org.
* Support for DPD Croatia, GLS Croatia, Overseas Express, and Croatian Post.
* Single and bulk label generation from the WooCommerce Orders screen.
* Parcel status tracking and filtering.
* Parcel locker / parcel shop selection for supported carriers.
* HPOS (High-Performance Order Storage) compatibility.

== Upgrade Notice ==

= 25.12.12.1 =
Initial public release. Update to this version to get full support for DPD, GLS, Overseas Express and Croatian Post, including bulk label generation and parcel status tracking.

== Third-party resources ==

This plugin bundles the following third-party libraries:

- Leaflet (BSD-2-Clause). Source: https://github.com/Leaflet/Leaflet
- Leaflet.markercluster (MIT). Source: https://github.com/Leaflet/Leaflet.markercluster
- SweetAlert2 (MIT). Source: https://github.com/sweetalert2/sweetalert2

License files are included in the /licenses directory.
The bundled files may be minified; the original sources are available at the links above.