Skip to content
K.D. Vassiliou Group
ProductsOpen source

ACS CourierforWooCommerce

Create courier vouchers, print labels, issue pickup lists and track shipments from inside WooCommerce, for Greece and Cyprus. Free, with no licence key and no telemetry.

Built with

  • PHP
  • WordPress
  • WooCommerce
  • Composer
  • PHPUnit
  • PHPStan

A WooCommerce plugin that turns a paid order into a shipment without leaving WordPress. It creates the voucher, validates the order before spending an API call on it, prints labels in thermal or A4 format, issues and prints the pickup list, tracks the parcel, and offers collection from a courier shop or locker at checkout. Greek and Cypriot addresses are handled with the right postcode rules for each, weights are converted from whatever unit the store uses, and cash on delivery takes its amount from the order.

It is free and complete. There is no paid tier, no licence key, no usage limit and no telemetry, and it never contacts us.

Architecturally it is four layers with dependencies pointing one way, and the courier client at the bottom has no WordPress dependency at all. That is what makes the awkward parts testable: business errors that arrive with a success status code, a misspelled response envelope, rate limiting reported as an unexpected status, a pricing endpoint that works in one country but not the other, and pickup lists that make their vouchers permanently undeletable. Each of those behaviours is covered by a test against a recorded response, so the whole contract runs in milliseconds with no WordPress bootstrap.

The pickup point directory synchronises itself on a schedule; the current sync holds 1,776 points across both countries.

What it handles

  • Vouchers created from an order, validated before an API call is spent on them
  • Labels in thermal or A4 format, and the pickup list
  • Tracking, including the reasons a parcel was not delivered
  • Collection from an ACS shop or locker, chosen at checkout
  • Live rates for Greece, a rate table for Cyprus, and a fallback when ACS is down
  • Cash on delivery, taking its amount from the order

Requirements

WordPress 6.0 or later, WooCommerce 8.0 or later and PHP 8.0 to 8.4, with either order storage, high-performance or legacy. You need your own ACS business account: the plugin is not affiliated with or endorsed by ACS Courier.

Installing it

Upload it on the Plugins screen, then enter your ACS credentials under WooCommerce, Settings, Shipping, ACS Courier. In production the credentials can live in wp-config.php instead, which keeps them out of the database and locks the fields on the settings screen.

Need somethinglike this,but yours?

Tell us what your shop or your team is working around, and we will tell you what it would take.

Tell us what is slow or broken, when you need it, and your budget range.