Skip to main content

Processing fees

When a restaurant pays an invoice online, the card processor takes a fee. By default the restaurant pays the card fee on top of the invoice; the supplier can choose to absorb it. The invoice balance is never affected: the fee is collected on top and recorded separately.

Who uses it​

  • Restaurants see the fee at checkout.
  • Supplier staff see the fee they bear as an expense in Bookkeeping.

How it works​

MethodWho pays the feeFeeShows as paid
CardThe restaurant, unless the supplier absorbs it2.9% of the amount owed + $0.30, rounded to the centWithin moments
PayPalNot offered when paying a current invoice (verify)——
Bank (ACH)Always the supplierWhatever the processor chargesProcessing for a few business days (verify timing), then Paid
Cash, check, otherNo fee—When recorded
  • Absorbing the card fee has no setting in the app. Clipp switches it on for a supplier. Then the restaurant pays only the balance, and the card fee warning isn't shown at checkout (PFP-005).
  • The checkout shows the fee as its own Card processing fee line under Invoice balance.
  • The PDF doesn't list the fee the restaurant paid; the restaurant's copy used to show it as Transaction Fee.
  • The recorded payment is the invoice amount only. The fee never counts toward what's paid or owed.

Calculations​

Invoice owes $100.00, paid by card, supplier not absorbing:

Amount
Card fee: 100.00 × 2.9% + 0.30$3.20
Restaurant is charged$103.20
Payment recorded on the invoice$100.00
Balance due after$0.00
Checkout linesInvoice balance $100.00 + Card processing fee $3.20

The supplier's books, for the same payment:

CaseBookkeeping
Restaurant paid the fee, processor charged $3.20Order Payment Received · Income · Online Payment · +$100.00. No fee expense (fully covered).
Supplier absorbs, processor charged $3.20Order Payment Received · Income · Online Payment · +$100.00, and Order Transaction Processing Fees · Expense · Other Expense – Transaction Processing Fees · $3.20
Bank payment of $100.00Order Payment Received · Income · ACH Payment · +$100.00. Once it clears, the processor's whole fee as an Order Transaction Processing Fees expense, dated the day it cleared. No fee expense while it's clearing.

The supplier's books show the total expense (processor fee + Clipp platform fee combined). The individual line breakdown (Payment provider fee and Base platform fee) appears in the detailed bookkeeping rows but not in the summary (PFP-011).

Where it shows up​

The pay page and card checkout, and Bookkeeping. Setting up online payments is on Payments & refunds.

Permissions​

Absorbing the card fee is set by Clipp. Suppliers see the expense rows if they have accounting access.

Decisions​

  • The card fee is passed to the customer by default; a supplier can absorb it. (processing-fee-passthrough spec)
  • The fee the supplier bears is an expense in its own category, separate from payment income. (#2071, PFP-006)

Specs​

processing-fee-passthrough.feature
# prefix: PFP
Feature: Payment Processing Fee Passthrough
Suppliers normally pass the card (Stripe) processing fee on to the customer at
checkout. A supplier may instead choose to absorb the card fee — the customer is
charged only the balance owed, and the supplier receives less. Absorbing the fee
is configurable for card payments only; other methods are unaffected. PayPal
always charges its convenience fee to the customer and is not configurable.

Whatever part of the processor's fee the customer does not cover is the supplier's
expense and is recorded in their accounting. Bank (ACH) payments never carry a
customer fee, so the supplier bears the whole amount — recorded once the payment
settles, since that is when the processor's charge becomes known.

QA setup note:
The absorb setting has no supplier-facing UI. Toggle it via the
`upsertSupplierSettings` mutation with `skipSurchargeCollection: { card: <bool> }`:

- `card: false` (the default, and the behavior when the setting is absent) →
the customer pays the card fee.
- `card: true` → the supplier absorbs the card fee.

Background:
Given a restaurant owes a balance on an order

Rule: The card processing fee is added to the customer's payment by default

Scenario: PFP-001 customer pays the card processing fee when the supplier has not opted to absorb it
Given the supplier has not chosen to absorb the card processing fee
When the restaurant pays the balance by card
Then the processing fee is added to the amount the restaurant pays
And the invoice shows the processing fee as a separate charge

Rule: A supplier can absorb the card processing fee instead of charging the customer

Scenario: PFP-002 customer is not charged the card processing fee when the supplier absorbs it
Given the supplier has chosen to absorb the card processing fee
When the restaurant pays the balance by card
Then no processing fee is added to the amount the restaurant pays
And the recorded payment equals the balance owed
And the invoice does not show any processing fee

Rule: The processor's fee borne by the supplier is recorded as an expense

Scenario: PFP-006 the supplier-borne card processing fee is recorded as an Other Expense, including when absorbed
Given the restaurant pays a card balance
When the payment is recorded
Then the part of the processor's fee not covered by the customer's fee payment is recorded in the supplier's accounting
And it is recorded as an expense in the dedicated "Other Expense – Transaction Processing Fees" category, separate from the payment income
And it is recorded even when the supplier has chosen to absorb the card fee (the full fee is then the supplier's expense)
And no expense is recorded when the customer's fee payment fully covers the processor's fee

Rule: The processor's fee on a bank payment is recorded once the payment settles

Scenario: PFP-008 the bank payment processing fee is recorded as an expense at settlement
Given the restaurant pays a balance by ACH
And the customer was never charged a processing fee for it
When the bank payment settles
Then the whole processor's fee is recorded in the supplier's accounting as an expense
And it is recorded in the same "Other Expense – Transaction Processing Fees" category used for card
And it is dated the day the payment settled, not the day it was submitted

Scenario: PFP-009 no expense is recorded while a bank payment is still in flight
Given the restaurant has paid a balance by ACH
When the bank payment has not settled yet
Then no processing fee expense is recorded for it

Scenario: PFP-010 a settled bank payment records its fee only once
Given a settled ACH payment whose processing fee has been recorded
When the settlement is processed again
Then the processing fee expense is not recorded a second time

Rule: The supplier sees one fee amount; its parts stay internal

Scenario: PFP-011 the recorded fee is the total the supplier was charged
Given a supplier on a contract with a platform fee
When a payment's processing fee is recorded
Then the expense is the total charged, covering both the processor's fee and Clipp's platform fee
And the supplier is never shown how that total splits between the two

Scenario: PFP-012 the split is kept for Clipp's own reporting
When a payment's processing fee is recorded
Then the processor's charge and Clipp's platform fee are stored separately against the payment
And they are not published on the API the supplier reads

Rule: Payment methods that never carry a card processing fee are unaffected

Scenario Outline: PFP-004 the absorb setting has no effect on fee-free payment methods
Given the restaurant pays the balance by <method>
When the payment is completed
Then no processing fee is added to the amount the restaurant pays, regardless of the supplier's absorb setting

Examples:
| method |
| ACH |
| cash |
| check |

Rule: PayPal always charges its convenience fee to the customer

Scenario: PFP-007 the PayPal convenience fee is always added and is not configurable
Given the restaurant pays the balance by PayPal
When the restaurant pays the balance
Then the convenience fee is added to the amount the restaurant pays
And the absorb setting has no effect on the PayPal convenience fee

Rule: Customers are only warned about a fee they will actually be charged

Scenario Outline: PFP-005 the card fee disclaimer matches whether the customer will be charged
Given the supplier has <absorb setting> for the card processing fee
When the restaurant reviews payment options for card
Then the processing fee disclaimer is <visibility>

Examples:
| absorb setting | visibility |
| chosen to absorb | hidden |
| not chosen to absorb | shown |

Known limitations​

  • There's no supplier-facing switch for absorbing the card fee.
  • The exact bank-payment clearing time comes from the processor; Clipp shows Processing until it's told.
  • The restaurant's copy of the invoice PDF no longer shows the card fee as Transaction Fee.

FAQ​

Why did the customer pay $103.20 on a $100 invoice? The card fee of $3.20 (2.9% + $0.30) is added at checkout. The invoice records $100.00.

Why is the payment still Processing? It's a bank (ACH) payment. It takes a few business days to clear.