All documentation · Plugin overview

Extra costs and option sales

Documentation for development version 0.1.0-alpha.19.

Cart and checkout item details show the base product line value, each selected extra, the options total and the configuration subtotal before discounts. A once-per-line charge is distinguished from a per-item charge. Changing quantity recalculates the breakdown. WooCommerce still calculates the actual discounted order total, taxes and shipping.

At checkout these details are saved on the order item. Order details and HTML/plain-text emails show the purchased amounts even if you later change the option definition. Existing orders are not rewritten.

Assign an extra code (Pro)

Open Product Options & Add-Ons, edit a group and expand Extra code (optional; no stock management) on a field. Enter an optional code such as ENGRAVE. For a choice field, assign a choice code such as WRAP-GOLD; a nonempty choice code overrides the field code. Save the group. Codes accept up to 80 letters, numbers, dots, underscores or hyphens. They identify extras in reports; they do not create inventory products or decrement stock.

View and export option sales (Pro)

Open Option sales, choose From/To dates and click Apply. Export CSV downloads the same report. Access requires WooCommerce management permissions.

The period uses order creation dates and includes currently processing/completed paid orders. Net quantity counts configured product units, subtracting item quantity refunds; it does not count a once-per-line fee as a separate inventory unit. Sales allocate the remaining order-line amount to each extra in proportion to its purchased price, after line discounts and item refunds, excluding tax. Different currencies remain separate.

Example: two products at €20 each plus €5 engraving each produce €50. After a €5 line discount, engraving receives €9 of the €45 net sales. Refunding half the line reduces its allocated engraving sales to €4.50.

Order-level refunds without item allocation cannot be attributed to individual extras. Historical orders without the base-price snapshot show an unallocated count rather than invented revenue. Reports accept up to 366 days and 5,000 orders; shorten the period if requested. This is an option-sales analysis, not an accounting ledger.

Try the examples →