WooCommerce Pakettikauppa


Pakettikauppa is a shipping service provider in Finland. This plugin integrates their service into WooCommerce. To start shipping, all your WooCommerce needs is this plugin and a API credentials of your account registered with Pakettikauppa.

Note! If you already have shipping contracts with Posti, Matkahuolto, DB Schenker, Asendia or GLS with reduced prices, you can contact the customer support of Pakettikauppa to get those contracts via Pakettikauppa so you can use the WooCommerce Pakettikauppa plugin with your current shipping contracts. No need to use logistics services own integrations (e.g. Posti SmartShip / Prinetti )

This plugin requires at least WooCommerce version 4.7.0.

Register and start shipping

Register through www.pakettikauppa.fi. Process only takes few minutes.


  • Integrates Pakettikauppa with WooCommerce
  • Based on the official Pakettikauppa API library
  • Supports WooCommerce shipping zones and classes (though Pakettikauppa is currently only available in Finland)
  • Customers can choose to ship products to an address or to any pickup point available from the Pakettikauppa shipping methods
  • Store owners can add pickup points to any shipping zones shipping method
  • Store owners can use whatever shipping pricing plugin
  • Store owners can generate the shipping label in one click
  • Store owners can generate shipping labels as mass action from orders view
  • Store owners and customers get tracking code links and status information
  • Support for Cash-On-Delivery
  • Test mode available that uses the testing API without registration

Developer notes


  • pakettikauppa_prepare_create_shipment

arguments: $order, $service_id, $additional_services

  • pakettikauppa_post_create_shipment

arguments: $order


  • pakettikauppa_create_shipments

Call for example:

$pdf = '';
$order_ids = array (15, 16, 17);
$args = array( $order_ids, &$pdf );
do_action_ref_array('pakettikauppa_create_shipments', $args);"
  • pakettikauppa_fetch_shipping_labels

Call for example:

$args = array( $order_id, &$tracking_code );
do_action_ref_array('pakettikauppa_fetch_tracking_codes', $args);
  • pakettikauppa_fetch_tracking_codes

Call for example:

$args = array( $order_id, $order_id2, ... );
do_action('pakettikauppa_create_shipments', $args);


  • Checkout in twentynineteen theme
  • Order confirmation in twentynineteen theme
  • Order screen in admin
  • Setup wizard


  1. Install the plugin through the WordPress plugins screen directly or upload the plugin files to the /wp-content/plugins/woo-pakettikauppa directory.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress
  3. Use the Settings->WooCommerce Pakettikauppa screen to configure the plugin
  4. The plugin requires WooCommerce to be installed, with shipping zones configured and this plugin activated and settings set.

This plugin can also be installed directly from Github or using composer require seravo/woo-pakettikauppa.


Is this ready for production use?

Yes! If you encounter any issues related to this plugin, please report at https://github.com/Seravo/woo-pakettikauppa/issues or to asiakaspalvelu@pakettikauppa.fi

Can Shipping method names be translated?

You can use plugin (f.ex. Polylang) to translate shipping method names.


noýabr 26, 2018
Pakettikauppa has been able to help with the usage of the plugin and also create new features when requested. Plugin Just Works.
Read all 5 reviews

Contributors & Developers

“WooCommerce Pakettikauppa” is open source software. The following people have contributed to this plugin.




  • Fix missing variable preventing list type of pickup points showing at checkout
  • Fix PHP 8.2 related fixes


  • WP and Woo compatibility update
  • Update to latest API library
  • Various small fixes


  • WP compatibility update
  • Bug fix: Attach tracking info to email


  • New feature: Support for order pickups
  • New feature: Pickup point filtering
  • New feature: Email info as template
  • New feature: Custom bulk create order
  • New feature: Option to create return labels automatically
  • Bug fix: Weight and volume information to shipping labels if variable product


  • Support for shortcodes
  • Support for variable products SKU on shipping labels


  • Fix small pickup point search bug


  • Fix for pickup point searches
  • Fix for pakettikauppa_fetch_tracking_codes -action
  • Various small fixes


  • New feature: Support for different label sizes
  • New feature: Shipping phone number optional / mandatory settings
  • New feature: Show estimated price of the shipment in the admin view
  • New feature: LV translations
  • Refactoring: Arranging settings regrading checkout settings


  • Bug fix: load product class when not in admin view


  • Bug fix


  • New feature: LQ-shipments
  • New feature: If shipping postcode is missing, use billing address
  • New feature: LT translation
  • Tested against woocommerce 4.6.1 and wordpress 5.9.2
  • Various bug fixes


  • Diagnostic tool bug fix when using Posti Shipping version
  • Add error message if mass action operation fails
  • Update automated tests and PHP 8.x tests
  • Convert API secret as password field for added security
  • Update Pakettikauppa API library to latest version


  • Bug fix


  • Customer facing templates (checkout & view order) can now be replaced in own theme dir
  • Minumum woocommerce version is now 4.7.0 and tested against woocommerce 6.1.0


  • Bug fix related to token caching


  • New feature: Updated diagnostic tool to check versions and cached tokens
  • New feature: Additional info to shipping labels in custom shipment
  • New feature: Instuction if no configured shipping method
  • Fine tuning: Wizard fixes in settings
  • Fine tuning: Double check that cached token is really expired after TTL
  • Bug fix: Automated test fixes
  • Bug fix: Refactoring, small bug fixes


  • New feature: Diagnostic tool to check everything is working correctly
  • New feature: If using only one provider in pickup point searches, don’t show the provider name
  • Bug fix: Allow saving if more than 16 shipping methods
  • Bug fix: Various small bug fixes


  • Minor bugfix for token authentication


  • Minor bugfix


  • Fix timing issue preventing working from most installations


  • Add support for additional info to shipping labels
  • Various bug fixes


  • Backwards compatibility for bulk actions


  • If product does not exists, display “unknown product”


  • Create multiple shipping labels from order view
  • Allow editing of order phone number and email address
  • Make pickup point search optional
  • Various bug fixes


  • Fix bug in pickup point saving in checkout


  • Remove Pakettikauppa shipping method option
  • Add possibility to choose pickup point in order view
  • Fix bug for pickup point not saving in checkout


  • New pickup point chooser for checkout
  • Fixing pickup point related bugs


  • Some plugins brake because of forced validation of chosen pickup points. This update loosens the validation little bit


  • Fix to validation that checks if pickup point is chosen
  • Add checks that billing email and/or phone exists before adding those to shipping


  • Fix to help to fill orders from previous versions when using pickup points as shipping method


  • Many small changes: f.ex. adding new fields to checkout and to sender configuration
  • Fixes compatibility with Klarna
  • Fixes return shipments


  • Properly catch exceptions so faulty orders don’t cause a fatal error
  • Allow supplying a different address for pickup point search
  • Fix headers so files download properly


  • Fixed a bug breaking the setup wizard


  • Fixed a bug breaking shipping methods created the old way.


  • Plugin refactored to better support future development. No visible functional changes.


  • New feature: Setup wizard
  • Enhancements: Round weight and volume to more precise number
  • Enhancements: Refactoring code


  • Version skipped


  • New feature: Change order status after shipping label is printed
  • Enhancements: When choosing pickup point in checkout, do ajax call to save that pickup point to session as a backup.


  • New feature: Create multiple return shipments from order view
  • New feature: Option for automatic creation of shipping labels when order is complete
  • Tested against woocommerce 3.7.0
  • Enhancements: Show “Pakettikauppa shipping method” settings option
  • Enhancements: Changing texts on settings page to make it easier to understand
  • Enhancements: Make note to Pakettikauppa shipping method that it is not required to be used. Shipping methods already available to woo can do more than our own shipping method. Our own shipping method might be removed in the future as obsolete.
  • Enhancements: Small refactoring of admin metabox
  • Bug fixes: add more data validation

  • Bug fix: bulk and quick actions now work


  • Bug fix: Fix for MPS (Multi Parcel Shipment) creation


  • New feature: Possibility to send shipping labels to custom URL on creation to help automations
  • New feature: You can define if shipping label is to be displayed on a browser or downloaded
  • New feature: add new hooks: pakettikauppa_prepare_create_shipment and pakettikauppa_post_create_shipment.
  • Bug fixes: Pickup point search now uses shipping method codes instead of shipping provider names


  • New feature: Allow creation of COD shipments from custom shipment creation
  • New feature: Allow using all shipping methods and automatically display it’s pickup points if available
  • Enhancements: refactored COD functionality
  • Enhancements: enhancements to automatic testing
  • Bug fixes: misc fixes to translations, checking variables, etc

  • Bug fixes


  • New feature: Alternative show pickup points as radio button list
  • New feature: New UI for creating custom shipping label
  • New feature: Enable multi parcel shipments
  • Enhancements: Added more data validation to admin functions, COD settings to own section in settings, admin CSS fix


  • New feature: show label code (Helpostikoodi / aktivointikoodi) if it’s present
  • Enhancements: Actions from order view are now handled as Ajax -requests
  • Enhancements: Added more data validation to admin functions
  • Bug fix: compatibility issue with action scheduler is now fixed
  • Fix: Mysql support for automatic Travis tests


  • New feature: Add selected pickup point information to the confirmation email
  • Enhancements: Added more data validation to admin functions


  • New feature: Add HS tariff number and country of origin to products shipping options
  • New feature: Send contents of the order with the shipment creation method
  • Enhancements: redo functions using deprecated get_product_from_item function


  • Enhancement: Orders action will open the PDF in the new window/tab


  • New feature: Define shipping method for non-Pakettikauppa shipments
  • New feature: Define additional services for non-Pakettikauppa shipments
  • Enhancement: Don’t create shipping label from orders page for local pickups
  • Fixes: Don’t display error in the logs, if provided shipping method in the checkout page does not have instance_id
  • New feature: Implement hooks to be able to implement Pakettikauppa features in another plugins
  • Bug fix: Validate pickup point selection in non-Pakettikauppa shipping methods


  • New feature: support for free shipping coupon code
  • Bug fix: Quick action printing of shipping label now prints with correct shipping service


  • New feature: Create quick action to print shipping label for a order


  • New feature: Create and fetch shipping labels from multiple orders


  • Fix an error message when there is no settings available for shipping method


  • Changed the way array is merged with another array


  • Added possibility to add pickup point chooser to any shipping method defined as shipping zone shipping method


  • Allow Pakettikauppa to create shipping labels even if original shipping method is not from Pakettikauppa shipping method.
  • Allow shipping method to be changed (does not allow pickup point to be changed).


  • Internal changes / fixes / improvements
  • In latest woo pickup points only worked if shipping had testing on


  • Fixed shipping method id in the settings


  • Shipping zone and shipping class support!
  • COD-support if payment method is WooCommerce COD (cash-on-delivery) payment method (or extended class)
  • This update breaks pricing from 1.x branches – You have to create new prices by adding Pakettikauppa as a new shipping method to Shipping zones


  • Alternative name for the shipping method


  • Updated readme -file with new tags
  • Travis-CI Updates
  • Sort shipping methods based on shipping code


  • Fixed printing of label


  • Possibility to choose which shiment method to use when none is selected


  • Fixes issues with VAT calculation with shipping costs. You have to enter shipping costs in the settings including VAT. In the Tax -settings page, when chosen option “Shipping tax class based on cart items”, it will calculate the shipping taxes “backwards” from the given price correctly. For instance if you have 14% and 24% VAT products in the cart then shipping costs will have also 14% and 24% VAT in the correct proportions.
  • Small internal code refactoring changes


  • Initial release for General Availability.