Fees and pricing
Who pays what on a purchase: the price the buyer sees, the platform fee, the seller's net, and why a full refund leaves no fee behind.
The three numbers of a purchase
A purchase has three numbers and only three: the price, the fee and the seller's net. The buyer pays the price. The fee comes out of the seller's side. The seller collects the difference.
| Number | Who sets it | Who pays it | How it is calculated |
|---|---|---|---|
| Price | The seller | The buyer | What the listing shows, in USDC |
| Fee | The platform | The seller, out of their side | 3.8% of the order amount |
| Seller's net | It follows from the other two | Nobody | The amount minus the fee |
- The buyer pays the price and nothing else: the fee is not added on top.
- Everything settles in USDC on Polygon, with no currency conversion in between.
- When the fee is calculated, rounding always falls on the seller's side.
- The seller is credited inside the contract and withdraws the balance whenever they want.
The fee is fixed per order
When you request payment, the platform issues a signed quote with the amount and the fee of that order. That fee is frozen right there.
- If the platform fee changes tomorrow, old orders are not recalculated.
- The quote expires after 15 minutes; past that window you ask for a new one.
- The contract holds a governed maximum and rejects any quote above it.
- A quote only works once.
That is why the amount in your dashboard may not match a calculation made with today's fee: the one the order carried wins.
Discounts and codes
A seller can discount their own templates with discount codes. The discount changes the price and therefore changes the fee, because the fee is calculated on the order amount.
- The seller's code applies a percentage to their own templates.
- The fee is calculated on the discounted amount, not on the list price.
- A discount does not change the fee percentage, only the base it applies to.
- Platform codes are for the seller membership and do not touch the price of a template.
Refunds and disputes
The fee never comes out of your side. In a dispute resolved with a split, the contract charges the smaller of two numbers: the fee on the amount, or what the seller keeps.
- Full refund to the buyer: the fee is zero.
- Split: the fee is calculated only on what the seller keeps.
- Dispute closed because the deadline passed: the buyer receives the whole amount and the fee is zero.
- A refund from the seller themselves, before any dispute: the buyer gets the whole amount back.
The fee of an order that has already been released does not come back. If you want to undo a sale, do it before the payment is released.
The cap and how it changes
The percentage cannot be moved in a single block, nor raised without limit.
- The contract sets an absolute cap of 10%, written into the verified code.
- Changing the fee is proposed, waits 48 hours and expires after 7 days if nobody applies it.
- While it waits, the proposal is public: anyone can read it on the explorer.
- The destination of the fee, the treasury, changes with the same 48-hour ritual.
You can check the maximum in force yourself. We show you how on On-chain escrow.
Taxes and invoicing
Bernuvia does not calculate or withhold taxes for you.
- The numbers on this page are gross: price, fee and net, with no taxes.
- Every seller is responsible for declaring what they earn in their country.
- Every buyer is responsible for their own obligations.
- You have the history of your orders in the dashboard for your bookkeeping.
This is not tax or legal advice.
Keep going
To see where the money lives and when it moves:
The documentation explains how this works; the help centre walks you through it. Go to the help centre.

