Skip to content

Swft Digital

Detects downloadable and virtual products in the cart, skips the shipping step for all-digital orders, and shows download links on the Swft Checkout confirmation screen the moment payment completes.

Swft Digital is free. There is no configuration — it works the second you activate it.

For carts containing only virtual products (no shipping required), Swft Digital removes the shipping step entirely. The shopper goes details → payment → confirmation with one fewer screen.

For carts containing downloadable products, the confirmation screen surfaces download links immediately. Links also appear in WooCommerce’s order confirmation email per the normal WC behaviour.

  • WordPress 6.0+
  • WooCommerce 8.0+
  • PHP 7.4+
  • Swft Checkout active
  • Products marked as Downloadable or Virtual in the WooCommerce product editor
  1. Install the Swft Digital plugin from your Swft dashboard’s downloads section.
  2. Activate it.
  3. That’s it. Mark your products as Downloadable and/or Virtual in the product editor.

There’s a Swft → Swft Digital admin page that shows how many downloadable products the plugin has detected, but no configuration is needed.

On every checkout session creation, the plugin hooks swft_session_extensions to scan the cart. If every product is virtual, extensions.digital.all_virtual is set to true — Swft Checkout uses this to skip the shipping step. If any product is downloadable, extensions.digital.has_downloads is set, and the checkout knows to expect download URLs on the confirmation screen.

When payment completes and the WooCommerce order is created, the plugin hooks woocommerce_payment_complete, asks WooCommerce for the download URLs for each item in the order, and stores them in the order’s _swft_digital_downloads meta. The Swft API reads that meta when serving the confirmation screen.

Cart containsShipping stepDownload links
Only virtual productsSkippedN/A
Only downloadable products (some are virtual, some need shipping)Shown — shopper still needs to give an addressShown on confirmation
Mix of physical + virtualShownShown on confirmation
Only physical productsShownNone
  • Products must be marked Downloadable in the WooCommerce product editor. The plugin doesn’t auto-detect digital products by SKU or category.
  • Download link expiry and access limits are controlled by WooCommerce’s product download settings — Swft Digital just surfaces the links.
  • Virtual products that aren’t downloadable (e.g. service bookings) still skip shipping but won’t show download links — they don’t have any.