Card processing is a line on your P&L that your customers decide the size of. Every operator eventually asks whether the customer who chooses to pay by card can pay the cost of that choice. The answer is yes, but the way you do it matters, because "add 3% for cards" and "the price is X, or Y if you pay by check" are legally different things.
Surcharge versus cash discount
A surcharge adds a fee when the customer pays by card. The listed price is the cash price; the card price is higher. Card networks allow it on credit cards within a cap, never on debit, and several states ban or restrict it. The compliance rules are real and they change.
A cash discount program goes the other way. The listed price is the card price. Cash, check and ACH get a discount. Because you are discounting rather than adding, the card-network surcharge rules and most state restrictions do not apply. This is the model gas stations have used for decades, and it is the one we recommend for an invoice-based business.
The rule that keeps a discount program honest: the discount is your actual card cost, not more. If cards cost you 2.9%, the cash price is 2.9% less than the card price. A "discount" of 4% is a surcharge wearing a hat.
What the invoice has to show
Both prices, every time. A line that says "Pay by card $327.20" and under it "Pay by cash, check or ACH $320.00", with a short disclosure explaining the program. The itemized lines carry the card price, because that is the listed price. Customers who pay by card see nothing unusual; customers who pay by check see they saved $7.20.
This is also why the program has to be on at the invoice, not applied at payment. If the invoice lists only the cash price and the card is charged more, that is a surcharge. In PortaPro the card price is stamped on the invoice when it is created, the cash snapshot sits beside it, and the pay page charges whichever method the customer picks.
Which methods earn the discount
Cash, check and ACH are the standard set. Add your own if you take them: a Zelle payment is an eligible method if you say so. Debit cards are the tricky one, because at payment time nothing can tell a debit card from a credit card, so a program that promises a discount for debit promises one the pay page cannot deliver. Leave debit out.
Partial payments and overpayments
The cash price is earned when the invoice settles at it. A customer who sends a $200 check against a $327.20 card price has paid $200 toward it; the remainder still carries both prices, and whatever pays the rest decides. A customer who sends a check for the full card price by mistake has overpaid by the discount; the clean answers are a credit on account, or accepting it as payment in full with a smaller discount, and the office should be asked which, not have it decided for them.
Account credit remembers how it was funded
A prepayment by check is cash money and should earn the cash price when it is applied next cycle. A card-funded credit should not. The simplest way to get this wrong is a credit ledger that stores only the amount. Store the funding method with every credit, and apply it the way a check would be applied.
Setting it up
- Find your real blended card cost from last month's statement.
- Set the discount to that rate. Pick which methods earn it.
- Write the disclosure in plain words. "Prices shown are card prices. Pay by cash, check or bank transfer and save 2.9%."
- Turn it on for new invoices only. Do not re-price invoices already sent.
- Tell customers once, in the next invoice email. Most will not notice; the ones who pay by check will be pleased.
For the card side itself, our post on Docket's published rates works through what card and bank transfer fees add up to across a month of invoices.