Zum Inhalt springen

Tipping

Dieser Inhalt ist noch nicht in deiner Sprache verfügbar.

Tipping adds an optional tip or donation control to the WooCommerce checkout. The customer picks a preset amount, a percentage of their order or a fixed figure, and the tip is added to the order totals as a native WooCommerce fee, recalculated live through the checkout’s own AJAX. “No tip” is preselected, so the control is fully opt-in.

Cafés, service businesses, charities and creators want a clean way to accept a little extra at checkout without bolting on a heavy donation plugin. Tipping uses a standard WooCommerce fee, no custom totals logic, so the tip flows through order totals, emails and reports the same way shipping or a discount does. The free edition is the full GPL product, not a trial with hidden limits.

  • Preset tip amounts, either percentages of the cart subtotal (5, 10, 15 → 5%, 10%, 15%) or fixed currency values (2, 5, 10).
  • Native WooCommerce cart fee, the tip shows in totals, on the order, in emails and in reports.
  • Live totals, choosing an amount recalculates the checkout through WooCommerce’s update_checkout AJAX; percentage tips track the live subtotal.
  • Editable label and description, the heading and supporting line shown above the buttons.
  • Opt-in by default, “No tip” is preselected and the tip is added as a non-taxable fee.
  • Renders nothing when unusable, disabled, or enabled with no presets, means no markup and no assets on the storefront.
  • Accessible buttons, native <button> controls with aria-pressed, a visible focus ring, an aria-live status line and prefers-reduced-motion handling.
  • Order audit meta, the applied amount is saved as _tipping_amount on the order.

Tipping registers a fee on woocommerce_cart_calculate_fees. The customer’s choice is stored in the WooCommerce session over a nonce-protected AJAX call, then the checkout recalculates and the fee appears in the totals. A percentage preset is computed from the pre-tip, tax-exclusive items subtotal each time totals are calculated, so it never goes stale if the cart changes. At checkout the resolved amount is written to the order as _tipping_amount meta for auditing, the tip itself is already part of the totals as a fee.

The control is added to the classic (shortcode) checkout at woocommerce_review_order_before_payment, just above the payment methods. Tipping declares compatibility with WooCommerce HPOS and the Cart/Checkout Blocks feature, but the control’s render hook is a classic-checkout hook: on a block-based checkout the fee logic still runs if a selection exists, but the buttons are not rendered.

  • Free on WordPress.org, percentage or fixed presets, live totals, editable copy, order meta.
  • Pro (planned), round-up tipping and other amount adjustments via the tipping/fee_amount filter, plus extra settings cards on the same screen. See Configuration for the hooks Pro builds on.
  • Getting started, install, enable, set your presets, verify on the checkout.