Charging processing fees to families

How the fee passthrough toggle works and the math behind it.

When a parent pays online, Stripe takes a small cut. By default the troop absorbs that cost. You can flip it so the parent pays the fee instead.

Toggling passthrough

In Admin > Settings > Stripe > Processing Fee Passthrough:

  • Troop absorbs fees (default): the parent pays the listed amount; Stripe deducts its fee from your payout.
  • Fees passed to parents: the parent's total is bumped up so that — after Stripe's cut — the troop receives exactly the listed amount.

When passthrough is on, two numbers appear:

  • Fee % — the percentage Stripe charges (default 2.9).
  • Fixed fee in cents — the per-transaction flat fee (default 30 for US cards).

Match these to your Stripe pricing. Most US troops can leave the defaults alone.

How the math works

For an event listed at $50 with default fees:

chargeAmount = ceil(($50 + $0.30) / (1 - 2.9 / 100))
            ≈ $51.79

The parent sees and pays $51.79. Stripe deducts roughly $1.80 in fees. The troop's payout is $49.99 ≈ $50 (rounding).

The fee surcharge is applied per event when payments are turned on. The toggle isn't applied retroactively to events that already exist — it affects new charges only.

When to use it

  • Pass through when fees are a meaningful portion of small payments (e.g., $5 dues) — they'd otherwise eat 10–15%.
  • Absorb when the troop wants the listed price to be the price the parent pays, especially for round-numbered amounts (like $20 popcorn).

Related articles