DingPack for WooCommerce

Description

DingPack for WooCommerce connects your store to the DingPack automatic printing service. When a customer places an order and payment is confirmed, DingPack instantly queues a print job and your designated printer fires off the packing slip — hands-free.

How it works

  1. A customer places an order on your WooCommerce store.
  2. This plugin securely sends the order details to DingPack over HTTPS.
  3. The lightweight DingPack desktop agent (Windows/Mac) running on your fulfillment computer picks up the job within seconds and prints the packing slip automatically.

Features

  • Automatic printing triggered on your chosen order status (Processing, Completed, or On Hold).
  • One-click Connect to DingPack — OAuth popup, no copy-pasting of API keys.
  • Manual “Send to DingPack” order action on the Edit Order screen for re-printing or one-off jobs.
  • Order notes logged every time an order is sent, duplicated, or fails — full audit trail inside WooCommerce.
  • Compatible with WooCommerce High-Performance Order Storage (HPOS).
  • Lightweight — no external libraries bundled, uses only WordPress core HTTP functions.

Requirements

  • A free or paid DingPack account.
  • The DingPack desktop agent installed and running on the computer connected to your printer.
  • WooCommerce 6.0 or later.
  • WordPress 5.8 or later, PHP 7.4 or later.

Privacy & External Services

This plugin transmits order data to the DingPack service (dingpack.com) in order to queue print jobs. Only data necessary for printing (order number, items, shipping address, customer name) is sent. No payment card data is ever included.

  • DingPack Privacy Policy: https://dingpack.com/privacy
  • DingPack Terms of Service: https://dingpack.com/terms

Installation

  1. In your WordPress admin, go to Plugins Add New Plugin, search for “DingPack for WooCommerce”, and click Install Now.
  2. Activate the plugin — you’ll be taken to the settings page automatically.
  3. Click Connect to DingPack. A secure window opens — sign in to your DingPack account and approve the connection. No copy-pasting required.
  4. Choose which order status should trigger printing (default: Processing).
  5. Make sure the DingPack desktop agent is running on your fulfillment computer. That’s it!

FAQ

Do I need to manually enter an API key?

No. Click Connect to DingPack on the settings page and sign in to your DingPack account in the popup — the connection is set up automatically with no copy-pasting.

Which order status should I choose?

Processing is recommended for most stores — it fires as soon as payment is confirmed. Choose Completed if you only want to print after manually marking an order done, or On Hold if you use that status for orders awaiting payment review.

Can I reprint an order?

Yes. Open the order in WooCommerce admin, find the Order Actions dropdown (top right), select Send to DingPack (print now), and click the arrow button.

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

Yes — the plugin explicitly declares HPOS compatibility.

What data is sent to DingPack?

Order number, order date, line items (name, SKU, quantity, price), shipping address, customer name, phone, email, order notes, and shipping method. No payment card data is included.

Is the connection secure?

Yes. All data is transmitted over HTTPS with SSL certificate verification enabled.

What happens if DingPack is unreachable?

A note is added to the WooCommerce order with the error message. You can retry at any time using the manual order action.

Will test prints count against my monthly limit?

No. Prints sent with the is_test_print flag (e.g. from the DingPack dashboard) do not count against your monthly quota.

Does this plugin store any data?

The plugin stores your API key, trigger status, and enable/disable preference in standard WordPress options. No order data is stored by the plugin itself — it is sent directly to DingPack.

Reviews

There are no reviews for this plugin.

Contributors & Developers

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

Contributors

Changelog

1.1.8

  • Fix: Renamed all PHP classes from DingPack_WC_* to Dingpack_WC_* to ensure a single consistent prefix across all plugin symbols, resolving the WordPress.org plugin review prefix-consistency check.
  • Fix: Corrected plugin folder name in installation instructions.

1.1.7

  • Improvement: Moved DingPack settings page from Settings menu to WooCommerce menu.

1.1.6

  • Fix: Replaced all inline and tags with wp_enqueue_script(), wp_enqueue_style(), and wp_localize_script() per WordPress.org guidelines.
  • Fix: Added Requires Plugins: woocommerce header.
  • Fix: Updated Plugin URI to a live page.

1.1.4

  • Fix: Added missing translators comments on all sprintf() calls with placeholders.
  • Fix: Escape output at point of use in inline script block.
  • Fix: Added explicit sanitize_text_field() wrapper on API key POST input.
  • Fix: Created languages/ directory to satisfy Domain Path header.
  • Fix: Updated Stable tag and Tested up to values in readme.txt.
  • Tweak: Renamed plugin text domain to dingpack-for-woocommerce per WordPress.org slug requirements.

1.1.3

  • Fix: DingPack column header and print button now both align left in the WooCommerce orders list.

1.1.2

  • Feature: DingPack print column on the orders list — print any order in one click without opening it.
  • Improvement: Auto-redirect to plugin settings page after activation.
  • Improvement: DingPack column header now shows the name instead of an icon.
  • Fix: Connect button not responding on some WordPress configurations.

1.1.1

  • Feature: Manual “Send to DingPack” order action on the Edit Order screen for one-off reprints.
  • Improvement: WooCommerce HPOS (High-Performance Order Storage) compatibility declared.

1.0.0

  • Initial release.
  • Automatic printing triggered on configurable order status (Processing, Completed, or On Hold).
  • Settings page with live connection test.
  • Order notes logged for every print event (sent, duplicate skipped, or failed).