Feature Guide: Recurring Linked Products & Refundable Deposit for YeeSubscriptions

1. Introduction: The Real-World Business Challenge

In recurring subscription models, many store owners face a common challenge: How do you charge a refundable deposit or attach a mandatory recurring accessory fee on every subscription renewal?

Common Real-World Use Cases:

  • Beverage Subscriptions with Container Deposit (e.g., German/EU Pfand, Can & Bottle Deposits): Delivering a case of beer or soda on a weekly or monthly subscription requires collecting a deposit per can/bottle (e.g., €0.25/can × 24 cans = €6.00 deposit). When customers return the empty containers, the store refunds the deposit.
  • Water Dispenser / 5-Gallon Bottle Delivery: Water subscription services need to charge a bottle deposit for every bottle delivered in the recurring cycle.
  • Hardware & Equipment Rentals: Subscriptions for Wi-Fi routers, smart devices, air purifiers, or thermal delivery crates often require a security deposit on each delivery.

The Problem with Standard WooCommerce Setups:

  • If deposit fees are added as standalone products, customers can manually delete the deposit item from their cart or tamper with deposit quantities to avoid paying the required amount.
  • Standard WooCommerce subscription workflows only renew the primary subscription product, completely omitting one-time or linked items from recurring renewal orders. As a result, merchants lose deposit fees on subsequent renewals.

The YeeSubscriptions Solution: Built directly into YeeSubscriptions 2.1.0+, the Recurring Linked Products & Refundable Deposit feature automates the entire process: it automatically attaches the deposit, locks and synchronizes cart quantities, and guarantees that the deposit item recurs on every automated renewal order.


2. Key Highlights & Capabilities

  1. Auto-Add to Cart: When a shopper adds a subscription product to their cart, the linked deposit item is instantly and automatically added alongside it.
  2. Cart Tamper Protection & Synchronization (Cart Security):
    • Hidden Remove Link: The [x] remove button is completely hidden for linked deposit items, preventing shoppers from removing the deposit independently.
    • Read-Only Quantity: The deposit quantity input is rendered as a locked, read-only badge. Shoppers cannot manually edit deposit quantities.
    • Dynamic Quantity Sync: If the customer updates the primary subscription quantity (e.g., from 1 case to 2 cases), the deposit item quantity automatically scales up accordingly.
    • Cascade Deletion & Self-Healing: Deleting the parent subscription automatically cleans up the deposit item. If a customer attempts to force-remove the deposit via URL parameters, the cart total calculation automatically detects the parent subscription and restores the deposit.
  3. Quantity Multiplier Support:
    • Configure how many deposit units correspond to each subscription unit. For instance, if 1 subscription pack contains 24 cans, set the multiplier to 24. When buying 2 packs, the cart automatically calculates 48 deposit units.
  4. Included in Every Recurring Renewal Order:
    • The deposit item is permanently attached to the created Subscription object. Every automated renewal order generated in the future will contain both the main subscription item and the recurring deposit item.
  5. Custom Price Override:
    • Use a single generic deposit product (e.g., “Standard Container Deposit”) across your store, but specify custom deposit prices for individual subscription products without creating duplicate products.

3. Step-by-Step Configuration Guide

Step 1: Create the Deposit Product

  1. In your WordPress admin dashboard, navigate to Products > Add New.
  2. Name your product, for example: Can Deposit (Pfand) or Water Bottle Deposit.
  3. Set Product type to: Simple product.
  4. Enter the default price (e.g., 0.25 or $5.00).
  5. Under Publish > Catalog visibility, choose Hidden (this keeps the deposit product hidden from the shop catalog so customers cannot purchase it on its own).
  6. Click Publish.

Step 2: Configure Linked Deposit on the Subscription Product

  1. Go to Products and edit the subscription product you want to attach deposits to (e.g., Craft Beer Monthly Box).
  2. In the Product Data meta box, navigate to the General tab and scroll down to: “Recurring Deposit / Linked Product”:Setting FieldConfiguration GuideEnable Recurring Deposit / Linked ProductCheck “Enable a linked product/deposit that recurs with each subscription renewal” to activate.Linked Deposit ProductSearch and select the deposit product created in Step 1 using the product search field.Quantity MultiplierEnter the number of deposit units per subscription item. (Default: 1. If 1 case has 24 cans, enter 24).Custom Deposit Price (Optional)Enter a custom price to override the deposit product’s regular price for this specific subscription. Leave blank to use the product’s regular price.
  3. Click Update to save changes.

4. End-to-End User Experience

A. Customer Experience (Cart & Checkout)

  • When a customer clicks “Sign Up Now” or “Add to Cart” on the subscription page:
    • The cart displays two linked line items:
      1. Primary Subscription Item: e.g., Craft Beer Monthly Box — $45.00 / month.
      2. Linked Deposit Item with Badge: e.g., Can Deposit (Pfand) [DEPOSIT] with meta notes Deposit for Craft Beer Monthly Box and Included in every renewal.
    • The deposit line has no remove [x] icon and displays a clean read-only quantity badge.
    • Updating the subscription quantity automatically recalculates and synchronizes the deposit line item.

B. Store Manager Experience (Order & Renewal Management)

  • Once the initial checkout is placed:
    • Initial Order (Parent Order): Contains the subscription item and the deposit item.
    • Subscription Record: Under WooCommerce > Subscriptions, viewing the subscription details confirms both items are active in the subscription package.
    • Renewal Orders: When renewal triggers (weekly, monthly, or yearly), the automatic renewal order includes the deposit line item, accurately billing the customer via their saved payment method.

5. Handling Returns and Deposit Refunds

Because deposit charges are kept as distinct, itemized lines in WooCommerce orders:

  1. When empty containers/bottles are returned: The merchant can issue a partial refund on the latest order (Refund button in WooCommerce order edit screen) or issue store credit/coupons.
  2. When the subscription is cancelled: The subscription ends with no further renewals, and the store performs a final deposit reconciliation with the customer.