Customer case study · Plumbing

He didn’t raise his rates.
He just stopped eating Stripe fees.

After switching to PayXT, an independent plumber started passing the card processing cost to customers as a convenience fee. Same labor quotes. Same jobs. About $1,200 extra in his pocket every month.

$1,200

Kept / month

2.9% + $0.30

Now customer-paid

100%

Of quoted price

Independent plumber on a job site reviewing a PayXT invoice on his phone
Invoice, tax, and convenience fee — from the job site, before the van leaves.

The leak nobody notices until tax time

Marcus runs a one-van plumbing shop. Emergency drain jobs, water-heater swaps, and the occasional main-line replacement. He was already getting paid by card — homeowners prefer Apple Pay to writing a check on a wet kitchen floor. The problem was not collections. It was the quiet 2.9% + $0.30 Stripe took off every charge.

On a $4,500 tankless install, that is more than $130 gone before the money hits the bank. Across a typical month of card volume — roughly $40,000 — those processor fees add up to about $1,200. That is a new water heater, a month of van insurance, or a week of take-home pay. Marcus was quoting a fair labor rate and then donating the processing cost.

“I thought I was charging $450 for a drain. I was actually keeping about $437. Multiply that by every card job and it was real money walking out the door.”

— Marcus, independent plumber

What changed after PayXT

Before

He paid Stripe out of his quote

  • 2.9% + $0.30 came off every card payment
  • A $4,500 water heater netted about $4,369
  • No clean way to show the fee on the invoice
  • Card readers and wet hands on emergency calls

After

Customers cover the processing cost

  • Convenience-fee toggle set to 2.9% + $0.30
  • Checkout grosses up so he still nets the quoted price
  • Tax, fee, and line items on one SMS invoice
  • Homeowner pays Apple Pay or card on their own phone
PayXT dashboard tiles showing tax at 8.5%, convenience fee of 2.9% plus $0.30, and SMS itemization
Marcus’s typical send: local tax, Stripe convenience fee, itemized SMS invoice.
PayXT convenience fee tile showing 2.9% plus $0.30

The math behind $1,200

Stripe’s common US card rate is 2.9% plus $0.30 per successful charge. PayXT’s convenience-fee toggle uses those same numbers by default, then grosses up the checkout so after Stripe takes its cut, the plumber still receives the amount he quoted.

Example month Without fee pass With PayXT
Card volume (~90 jobs) $41,000 $41,000 quoted
Stripe 2.9% + $0.30 −$1,200 Paid by customer
What he keeps ~$39,800 ~$41,000

Figures are rounded for a typical independent plumbing month. Actual Stripe pricing can vary by country, card type, and account. Convenience-fee pass-through must follow your local laws and card-network rules.

How he bills now

  1. 1

    Finish the job. Drain snaked, heater installed, leak stopped. No card reader, no wet paper invoice.

  2. 2

    Build the invoice in PayXT. Saved services for “Emergency drain,” “Water heater,” and trip fees. Tax toggle on. Convenience fee left on at 2.9% + $0.30.

  3. 3

    Text the Stripe Checkout link. The homeowner pays with Apple Pay, Google Pay, or card on their own phone while Marcus loads the van.

  4. 4

    Keep the quoted price. Stripe still charges its fee. The customer covered it. Marcus’s deposit matches the number he said out loud in the kitchen.

PayXT does not take a cut of the job. He pays a Pro subscription after a 7-day free trial. Stripe still processes the card. The only change is who funds that 2.9% + $0.30.

Stop donating 3% of every card job

Turn on the convenience-fee toggle, text the invoice, and keep the price you quoted. Same 7-day free trial every plumber starts on.

Start Free Trial

Also see PayXT for plumbers and the fee gross-up toggle.