> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.coinflow.cash/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.coinflow.cash/_mcp/server.

# Fee pass-through

Card fees are charged on the **total amount the customer pays**, not on your product price. When you pass a fee to the customer, the fee gets charged on itself — so a "3% fee" always ends up costing a little more than 3%.

> **The one rule to remember**
>
> Fees are charged on the total amount of the purchase, not the subtotal/settlement amount.

## A simple example

You sell a \$10 sandwich and want the customer to cover a 3% card fee.

#### What most people expect

Sandwich: **\$10.00**

Add 3%: **\$0.30**

Customer pays: **\$10.30**

You keep: **\$10.00**

#### What actually happens

The network charges 3% on the full **\$10.30**.

Fee = 3% × \$10.30 = **\$0.31**

You keep = \$10.30 − \$0.31 = **\$9.99**

You added exactly 3%, but still came up short — because the fee applied to the fee.

> **To actually net your full price**
>
> Charge \$10 ÷ (1 − 0.03) = **\$10.31**. The 3% fee on \$10.31 is \$0.31, leaving you exactly **\$10.00**.

This isn't a Coinflow quirk. Every payment system works this way — Visa interchange, chargeback protection, all of it applies to the full transaction amount. Chargeback protection in particular insures the *entire* purchase, so its variable fee applies to the *entire* amount too.

## The math

**`Subtotal`** `amount`

Your product price — what you want to keep.

---

**`Total`** `amount`

What the customer actually pays.

---

**`Variable`** `decimal`

The percentage fee as a decimal (e.g. `0.045` = 4.5%).

---

**`Fixed`** `amount`

The flat per-transaction fee.

---

Because the variable fee applies to the **Total**, the relationship is:

**`The fee applies to the total, not the subtotal`**

```text title="The fee applies to the total, not the subtotal"
Total = Variable × Total + Subtotal + Fixed
```

Note that `Variable` is multiplied by `Total`, not by `Subtotal`. That's the whole point. Solving for `Total`:

**`Solving for the total`**

```text title="Solving for the total"
Total = (Subtotal + Fixed) / (1 − Variable)
```

**`Example — Subtotal $100, Variable 0.045, Fixed $0.45`**

```text title="Example — Subtotal $100, Variable 0.045, Fixed $0.45"
Total = ($100 + $0.45) / (1 − 0.045)
Total = $100.45 / 0.955
Total = $105.18
```

> **Info**
>
> The customer pays **\$105.18** — that's 5.18% on top of the \$100 subtotal, not 4.5%, because the 4.5% applies to the full total and there's a fixed fee on top.

## Three ways to handle fees

Under the hood, every fee dimension — the credit card processing fee, chargeback protection fee, gas fee, FX fee, and network fee — is independently configurable per payment method via a setting Coinflow calls a **fee payer mode**. It has three possible values: `user`, `merchant`, and `invoice`.

#### Customer pays fees (default)

Fee payer mode: `user`

The customer is charged the product price **plus** all fees. The full amount hits their card, the processor deducts the fees, and you receive your full product price. This is the case the math above covers, and it's the default for every fee dimension on every payment method unless your account has been configured otherwise.

#### Merchant pays fees

Fee payer mode: `merchant`

The customer is charged only the product price. The fees come out of your settlement for that transaction instead. Here the math is simpler, because `Subtotal = Total`:

**`Merchant-pays formulas`**

```text title="Merchant-pays formulas"
Fees = Variable × Subtotal + Fixed
Settlement = Subtotal − Fees
```

**`Example — Subtotal $100, Variable 0.045, Fixed $0.45`**

```text title="Example — Subtotal $100, Variable 0.045, Fixed $0.45"
Fees = ($100 × 0.045) + $0.45
Fees = $4.50 + $0.45
Fees = $4.95

Settlement = $100 − $4.95
Settlement = $95.05
```

> **Note**
>
> The effective fee here is 4.95% (the fixed fee has an outsized impact on small purchases). It matches your MSA rates exactly, because the fee is charged on the subtotal rather than a grossed-up total.

> **Switching modes**
>
> Merchant-pays isn't the default. Contact the Coinflow team to reconfigure your account.

#### Invoice

Fee payer mode: `invoice`

The customer is charged only the product price, exactly like merchant-pays — `Subtotal = Total`, and the fee is calculated the same way:

**`Invoice formulas (same calculation as merchant-pays)`**

```text title="Invoice formulas (same calculation as merchant-pays)"
Fees = Variable × Subtotal + Fixed
```

The difference is **when and how you're charged**. In merchant-pays mode, the fee is deducted from that transaction's settlement immediately. In invoice mode, nothing is deducted from the individual transaction's settlement — instead, the fee accrues against your account and Coinflow invoices you for the accumulated total at the end of your billing period.

> **Same net cost, different cash-flow timing**
>
> Whether a fee dimension is set to `merchant` or `invoice`, you ultimately pay the same amount. `merchant` mode nets it out transaction-by-transaction; `invoice` mode bills it to you in bulk later. Choose based on how you want the cash flow to hit your books, not because one is cheaper than the other.

> **Switching modes**
>
> Invoice mode isn't the default and is configured per fee dimension per payment method. Contact the Coinflow team to enable it for your account.

> **Don't confuse this with invoiced payout fees**
>
> If you cover withdrawal/payout processing fees on behalf of your customers, those are also billed via a monthly invoice — but that's a separate withdrawal-fee setting, not the pay-in fee payer mode described here. See [Add Your Own Payout Fees](/guides/payouts/payout-scenarios/custom-withdraw-fees) for that flow.