Blog5 min read

Add a service charge in WooCommerce

Add a percentage service charge at WooCommerce checkout — optionally scoped to dine-in or delivery — with the fee carried onto your Clover receipts.

Service charges are everywhere in food service — dine-in service fees, packaging fees on delivery, small-order surcharges. WooCommerce can technically add fees, but only via code; there's no setting for it. Here's the landscape, plus how CloverWoo's Service Charge feature does it with a toggle and carries the fee through to your Clover receipts.

First: do it transparently

Wherever you operate, the direction of regulation is the same: fees must be disclosed clearly before payment, not discovered on the receipt. A service charge that appears as a labelled line item at checkout — '10% dine-in service charge' — is fine almost everywhere. A surprise fee is a refund request and a one-star review. Label it, show it in the order summary, and keep the percentage reasonable.

Your options in WooCommerce

  • Code: WC()->cart->add_fee() in a woocommerce_cart_calculate_fees hook. Flexible and free, but it's custom code in your theme — unversioned, fragile across theme changes, and invisible to your successor.
  • Fee plugins: several handle percentage or fixed fees with conditions. Workable; one more plugin.
  • Built into CloverWoo: Service Charge ships in the restaurant feature pack — percentage fee, optional order-type scoping, synced to the Clover order.

Setting up Service Charge in CloverWoo

  1. WordPress admin → Clover → Settings → Restaurant Features.
  2. Toggle on Service Charge.
  3. Set the percentage (e.g. 10%) and a customer-facing label.
  4. Optionally scope it to specific order types — e.g. dine-in only, leaving pickup and delivery untouched.
  5. Save. The fee appears as a labelled line in the cart, checkout, and order totals.

The order-type scoping is the restaurant-specific part: a dine-in service charge that doesn't punish pickup customers, or a delivery packaging fee that doesn't apply at the counter. And because CloverWoo creates real Clover orders, the charge arrives on the Clover side as a line on the order — so the printed receipt, the POS totals, and your settlement reports all agree with what the customer saw online.

Tip: Service charge and tipping are different lines with different jobs — the service charge is yours, the tip is the staff's. CloverWoo supports both: run a scoped service charge alongside optional tipping presets, clearly labelled, and customers will treat them as the separate things they are.

Frequently asked questions

Can WooCommerce add a service charge without code?

Not natively — core WooCommerce only exposes fees programmatically via add_fee(). You either add a snippet, install a fee plugin, or use CloverWoo's built-in Service Charge from the restaurant feature pack.

Can I apply the charge only to dine-in orders?

Yes — that's the headline feature. Scope the percentage to specific order types (dine-in, takeaway, delivery), so the fee lands only where it reflects a real cost.

Does the service charge show up on the Clover receipt?

Yes. The charge syncs onto the Clover order as a line item, so the printed receipt and POS reporting match the online checkout exactly — no reconciliation surprises.

Is a service charge the same as a tip?

No. A service charge is a mandatory, disclosed fee that goes to the business; a tip is optional and goes to staff. Keep them as separate, clearly-labelled lines — CloverWoo supports both simultaneously.

Run Clover + WooCommerce as one system

CloverWoo — sync, payments, and POS operations in one plugin for $60/month.